1
0
mirror of https://gitlab.gnome.org/GNOME/libxslt synced 2025-08-01 14:06:55 +03:00

31 Commits

Author SHA1 Message Date
971d5c4dd1 tests: Port most of the test suite to C
Use runtest.c from libxml2 as a starting point.

This finally allows us to run most of tests with CMake and Autotools
VPATH builds.
2022-09-07 22:18:55 +02:00
57c3ed0514 Make valgrind tests work with libtool
Run valgrind with the actual executable, not the libtool wrapper script.
Also add --leak-check=full.
2016-04-20 11:43:49 +02:00
343ef27424 Cleanups some of the test makefiles
* Added missing $(srcdir)/ qualification to some "[ -s ... ]"
  stderr-output reference file checks

* When printing log output for failed tests, quote the log variable, so
  that diff output is formatted the way it should be (with newlines!)
and
  is not all collapsed into one line

* Updated tests/REC/test-7.1.1-3.out with current output to get rid of a
  spurious test failure
2012-09-07 16:11:07 +08:00
39b0c27af8 Remove .cvsignore files which are not needed anymore 2012-09-04 14:28:28 +08:00
a2cd8a03ac Various "make distcheck" and other fixes
Makefile.am:

* Use $(VAR), not @VAR@, as the former is the correct form for AC_SUBST'ed
   variables in Makefile.am files

* Touch these *.xml/*.syms files in the "dist-hook" target to prevent them
   from being regenerated, because the "make dist" process in itself
   updates the timestamps of the source files when it copies them into
   $(distdir)

* Add EXTRA_LIBS (-lrt on my system) to xsltConf.sh, as this is a required
   dependency when client applications link against -lxslt

   (note that the definition of EXTRA_LIBS has been changed; see below)

* Removed MAKEFLAGS+=--silent bits, as this is not compatible with non-GNU
   Make programs

autogen.sh:

* Add --warnings=all options to automake and autoconf invocations, to
   better catch potential problems (most of which I've fixed in this patch)

configure.in:

* Replaced obsolete macros with their current equivalents; for reference,
   see

     http://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.69/html_node/Obsolete-Macros.html

   (I removed AC_ISC_POSIX outright because the doc states it is no longer
   useful)

* test(1) uses "=" as an operator, not "=="

* Fixed quoting on an AC_LINK_IFELSE() invocation to quell Autoconf errors

* Don't add redundant libraries to EXTRA_LIBS, because (1) this variable
   already contains LibXSLT's own additional system-library deps, and is
   useful in that form, and (2) the LibXML2 deps are already handled by
   Libtool

* Don't delete files in srcdir, and don't create the symlink to
   "Copyright" there either

   (I don't understand why this is being symlinked in the first place...)

doc/Makefile.am:

* Can't use wildcards in EXTRA_DIST, because this breaks dependencies
   (e.g. you can't "make EXSLT/\*.html"), and they only work properly when
   building inside the source tree; these have been replaced with their
   expansions. Other entries have been added here in lieu of the wildcards
   in the dist-hook target, as well as opportunistic use of the $(*PAGES)
   variables.

* Don't define an "all" target, because this steps on Automake's toes; use
   "all-local" instead

* Define and use an "xsltproc" variable to reference an in-tree-built
   version of xsltproc, instead of e.g. $(bindir)/xsltproc

   NOTE: The makefile also uses $(XSLTPROC), which names an external
   instance of the program found at configure time. Some instances of this
   could probably be changed to $(xsltproc) to remove the dependency on an
   existing installed program.

* Qualified various filenames as appropriate with $(srcdir)

* Use $(XMLLINT) consistently instead of $(bindir)/xmllint

* In the "libxslt-api.xml ..." rule, cd into $(srcdir) before invoking
   apibuild.py as this script has to run in srcdir anyway

* In the "clean-local" rule, clear out some additional files to allow
   "make distcheck" to pass

* Eliminated the redundant "maintainer-clean-local" rule

* Added a "distclean-local" rule to clear out the build directory in an
   out-of-source build to allow "make distcheck" to pass

* Added a "check-extra-dist" target to make it easier to check that
   EXTRA_DIST isn't missing anything

* Use $(MKDIR_P), not $(mkinstalldirs), as the latter name is obsolete

* Use $(VAR) instead of @VAR@

* The "dist-hook" target didn't work (if any generated files were in
   builddir and not in srcdir), and is no longer needed thanks to the
   comprehensive EXTRA_DIST variable

* Added an "uninstall-local" rule to allow "make distcheck" to pass

* Updated the .PHONY target list, removed non-existent targets

doc/symbols.xml:

* Needed to add this bit to make the generation scripts shut up

libexslt/Makefile.am:

* AM_CPPFLAGS should be used instead of INCLUDES, as the latter is an
   obsolete name

* Moved $(LIBXML_CFLAGS) to AM_CFLAGS, to segregate CFLAGS from CPPFLAGS

   (Note that $(CFLAGS) need not be added to AM_CFLAGS, because Automake
   already references both in the build rules)

* Use $(VAR) instead of @VAR@

libxslt.pc.in:

* Add EXTRA_LIBS (-lrt on my system), as this is a required dependency
   when client applications link against -lxslt

libxslt/Makefile.am:

* AM_CPPFLAGS should be used instead of INCLUDES, as the latter is an
   obsolete name

* Moved $(LIBXML_CFLAGS) to AM_CFLAGS, to segregate CFLAGS from CPPFLAGS

* Use $(VAR) instead of @VAR@, $(MKDIR_P) instead of $(mkinstalldirs)

* Use $(MKDIR_P), not $(mkinstalldirs), as the latter name is obsolete

libxslt/xsltutils.c:

* Some systems don't know about CLOCK_MONOTONIC; older Solaris knows about
   CLOCK_HIGHRES. Some systems, alas, have no usable alternative to
   CLOCK_REALTIME.

python/Makefile.am:

* AM_CPPFLAGS should be used instead of INCLUDES, as the latter is an
   obsolete name

* Moved $(LIBXML_CFLAGS) to AM_CFLAGS, to segregate CFLAGS from CPPFLAGS

* Because libxslt-py.c is (presumably) supposed to be generated every time
   at build time, don't bundle it in the dist tarball

* Use $(VAR) instead of @VAR@

* libxsltclass.py is a generated file, so it doesn't get qualified with
   $(srcdir)

* Use $(MKDIR_P) instead of (mkinstalldirs)

* Added an uninstall-local rule so that "make distcheck" passes

* Removed the $(srcdir) qualifications in the GENERATED file list, as
   these files may exist in builddir

* In the gen_prog rule, qualify the script invocation with $(srcdir), and
   set the SRCDIR environment variable so that the script can find the
   files it needs when builddir != srcdir

* Don't define an "all" target, as this steps on Automake's toes

python/generator.py:

* Get the source directory from the SRCDIR environment variable, and use
   it appropriately

python/tests/Makefile.am:

* Set CLEANFILES instead of defining a "clean" rule

* Use $(VAR) instead of @VAR@, $(MKDIR_P) instead of $(mkinstalldirs)

tests/*/Makefile.am, tests/exslt/*/Makefile.am:

* Need to clean up .memdump files for "make distcheck" to pass

* Don't define an "all" target, as this steps on Automake's toes

tests/REC/Makefile.am:

* Added two missing *.stand.out files to EXTRA_DIST

tests/XSLTMark/Makefile.am:

* Replaced the GNU-Make-specific %.out bit with a more broadly compatible
   rule

   (the "dummy" bit shuts up Automake)

* Use "$(xsltproc)" instead of "$(top_builddir)/xsltproc/xsltproc"

* Use a less $(MAKE)-heavy invocation in the "tests" target

* Replaced a conflicting "clean" target with CLEANFILES

* Added a dependency on $(xsltproc) to all the test targets

* Added a .PHONY target list

tests/docbook/Makefile.am:

* Ditched the "echo -n" bit, because it wasn't working as advertised

* Create output directories for out-of-source builds

* "$(basename $$i)" is a typo in a makefile

* Don't embed $(srcdir) in $out/$html/$fo/$msg/$xhtml, so that we can
   refer to these files in builddir or srcdir

* Add a trailing "echo" to complete the "echo -n"

* Don't output files unconditionally to srcdir (it may be read-only, for
   starters)

tests/plugins/Makefile.am:

* AM_CPPFLAGS should be used instead of INCLUDES, as the latter is an
   obsolete name

   (Note that the "$(LIBXML_CFLAGS) $(LIBXSLT_CFLAGS)" bit that was here
   can be dropped entirely, because these already appear in
   xmlsoft_org_xslt_testplugin_la_CFLAGS)

* Use noinst_LTLIBRARIES inside the WITH_MODULES conditional instead of
   EXTRA_LTLIBRARIES, as this is cleaner (and disallows building the plugin
   if module support is disabled)

* Need to clean up *.res files for "make distcheck" to pass

* Use the abs_builddir variable conveniently provided to us by Automake
   instead of a GNU Make $(shell ...) construct

xslt-config.in:

* Add EXTRA_LIBS (-lrt on my system), as this is a required dependency
   when client applications link against -lxslt

xsltproc/Makefile.am:

* AM_CPPFLAGS should be used instead of INCLUDES, as the latter is an
   obsolete name

* Moved $(LIBXML_CFLAGS) into AM_CFLAGS

* Use $(VAR) instead of @VAR@

* Need to clean .memdump for "make distcheck" to pass

* Added rules to build lib[e]xslt.la if needed, which allows test
   makefiles to build xsltproc on the fly even if nothing else has been
   built already

* Create .memdump file in the "tests" target, as it's being grepped
   afterward
2012-08-09 19:46:03 +08:00
1cf3e77fc0 tests/namespaces/tst7.xsl: fixed typo detected by new libxml2 code
* Minor cleanup of "typo" and some compilation warnings:
  tests/namespaces/tst7.xsl: fixed typo detected by new libxml2 code
  libxslt/keys.c, libxslt/xsltlocale.c, libexslt/date.c: trivial
  changes for gcc warnings.

svn path=/trunk/; revision=1490
2008-08-06 12:13:06 +00:00
63b4680f80 Fixed regression tests wrt usage of the attributes
* tests/general/bug-36-inc.xsl tests/general/bug-37-inc.xsl
  tests/general/bug-65-inc.xsl tests/general/bug-100.xsl
  tests/REC/test-15-1.xsl tests/REC/test-7.1.1-3.xsl
  tests/namespaces/extra2.xsl tests/extensions/module.xsl
  tests/plugins/plugin.xsl python/tests/extelem.py
  python/tests/extfunc.py: Fixed regression tests wrt
  usage of the attributes "exclude-result-prefixes"
  and "extension-element-prefixes". test-7.1.1-3.xsl fails
  now, since the code still does not exclude ns-decls
  correctly.
2006-03-30 15:31:11 +00:00
e9517d8c4a fix xsltSaveResultToString comment detect loops when computing variables,
* libxslt/xsltutils.c: fix xsltSaveResultToString comment
* libxslt/transform.c: detect loops when computing variables, should
  fix bug #330772
* doc/xsltproc.xml doc/xsltproc.1: fix typo in man page
* tests/namespaces/tst7.out tests/general/bug-152.out: small output
  changes due to libxml2 xhtml meta handling modification
Daniel
2006-02-11 12:14:10 +00:00
0c1c6f2673 fixed #303289 variable in match are forbidden had to fix that test which
* libxslt/pattern.c: fixed #303289 variable in match are forbidden
* tests/general/bug-89.xsl: had to fix that test which was doing this
* tests/general/bug-142.out tests/general/bug-152.out
  tests/namespaces/tst7.out: small output change on libxml2-2.6.21
  new way of serializing encoding meta in HTML
Daniel
2005-09-04 22:09:19 +00:00
cb232b5619 applied patch from Mark Vakoc fixing bug with namespace URI on template
* libxslt/xslt.c: applied patch from Mark Vakoc fixing bug with
  namespace URI on template names.
* tests/namespaces/tst9*, tests/namespaces/Makefile.am: added
  test case for this
2004-12-01 06:52:22 +00:00
fb46ba79d4 fixed handling of #default in namespace-alias for default namespace (bug
* libxslt/namespaces.[ch], transform.c, xslt.c, xsltInternals.h:
  fixed handling of #default in namespace-alias for default
  namespace (bug 149659)
* tests/namespaces/tst7.* tst8.*: added regression tests for above
2004-08-15 04:55:29 +00:00
fe87697123 added extra2.err, tst5.xml, tst5.xsl and tst.out to EXTRA_DIST
* tests/namespaces/Makefile.am: added extra2.err, tst5.xml,
  tst5.xsl and tst.out to EXTRA_DIST
2004-07-06 13:37:51 +00:00
1bc6a1a495 applied patch from Joel Reed to get EXSLT crypto extensions based on
* win32/Makefile.msvc win32/Makefile.mingw libexslt/Makefile.am
  libexslt/exslt.c libexslt/exslt.h config.h.in configure.in
  libexslt/crypto.c: applied patch from Joel Reed to get EXSLT
  crypto extensions based on libgcrypt if found at configure time.
* tests/namespaces/Makefile.am: fixed a small breakage
Daniel
2004-06-30 16:43:53 +00:00
19739dbd5f some enhancement for fixing bug 142768 added regression test for this bug
* libxslt/namespaces: some enhancement for fixing bug 142768
* tests/namespaces/Makefile.am, tests/namespaces/tst6*:
  added regression test for this bug
2004-06-30 04:29:32 +00:00
fc1000b588 prepare release of 1.1.5, made a hard dependancy to libxml2 2.6.8 due to
* configure.in: prepare release of 1.1.5, made a hard dependancy
  to libxml2 2.6.8 due to the dictionnary reference counting change
* doc/*: updated and rebuilt the doc.
* tests/namespaces/Makefile.am: fixed a build problem (tst5 ?)
Daniel
2004-03-23 13:09:49 +00:00
d970e5676e added additional check to prevent superfluous namespace href's being
* libxslt/namespaces.c: added additional check to prevent
  superfluous namespace href's being generated on elements
  (bug 136914)
* tests/namespaces/Makefile.am, tests/namespaces/tst5.x[ms]l:
  added new test for bug 136914
* tests/namespaces, tests/extensions/ tests/reports: fixed
  error in "enhanced" Makefile.am, removed superfluous .err files
  from cvs
2004-03-12 05:03:50 +00:00
efe7443c2b continued interrupt commit for enhanced "make tests" 2004-03-06 15:11:50 +00:00
f6f08bd890 added "make valgrind" targets to run the test suite under the debugger
* Makefile.am tests/Makefile.am tests/*/Makefile.am
  tests/*/*/Makefile.am : added "make valgrind" targets
  to run the test suite under the debugger control
* transform.c: valgrind spotted 2 bugs, one related to
  the ordering of the deallocation of the data associated to
  a transofrmation, the second in xsltCopyTree when the new
  node may have been coalesced with an adjacent text node.
  The regression tests now pass cleanly under testgrind.
Daniel
2002-03-19 18:52:17 +00:00
ac6924c939 refactored make tests, make all now don't run the test suite added tests
* Makefile.am configure.in tests/Makefile.am tests/*/Makefile.am
  tests/*/*/Makefile.am: refactored make tests, make all now don't
  run the test suite
* python/Makefile.am: added tests
* python/tests/basic.py python/tests/Makefile.am: added the first
  basic test, memory debug included
Daniel
2002-02-06 10:35:19 +00:00
95f6e42ef7 fixed xsltDebug() to output with the normal error routines updated the
* libxslt/extra.c: fixed xsltDebug() to output with the normal
  error routines
* tests/namespaces/*: updated the tests to separate stdout and
  stderr
* libxslt/transform.c: increasing xsltMaxDepth to 5000
Daniel
2001-11-22 18:10:38 +00:00
45f2619024 fixed an error I propagated to nearly all Makefiles.am on Saturday Daniel
* //Makefile.am : fixed an error I propagated to nearly all
  Makefiles.am on Saturday
Daniel
2001-08-21 11:18:24 +00:00
d025723434 use xmlXPathIsNaN() and xmlXPathIsInf() tag a potential threading problem.
* libexslt/math.c libxslt/numbers.c: use xmlXPathIsNaN() and
  xmlXPathIsInf()
* libxslt/pattern.c: tag a potential threading problem.
Daniel
2001-08-21 11:11:21 +00:00
7b60042845 fixed a serious proble is node-set was called on a nodeset fixed the rule
* libxslt/extra.c: fixed a serious proble is node-set was called
  on a nodeset
* tests//*/Makefile.am: fixed the rule to rebuild xsltproc
Daniel
2001-07-30 13:47:26 +00:00
93a9ef80f2 fixed an ugly problem with namespaces in templates compilation added a
* libxslt/pattern.c: fixed an ugly problem with namespaces
  in templates compilation
* tests/namespaces/tst4.*: added a specific testcase
* libxslt/transform.c: reenabled debug
Daniel
2001-07-25 20:20:57 +00:00
a476e34b2e Integrating EXSLT and cleanup:
* Makefile.am configure.in libexslt/Makefile.am:
  Integration of libexslt in the build system
* libxslt/Makefile.am libxslt/xsltproc.c libxslt/xsltutils.c
  xsltproc/Makefile.am xsltproc/xsltproc.c:
  Moved xsltproc to a separate directory, linked it to libexslt,
  and added exslt version reports to -V
* tests/*/Makefile.am: updated the path to xsltproc
* libexslt/common.c libexslt/exslt.h libexslt/exsltconfig.h.in
  libexslt/functions.c libexslt/math.c libexslt/sets.c: added
  versionning informations, some cleanup, and added documentation
  to a couple of exported functions
Daniel
2001-07-15 18:30:53 +00:00
399ff26ba4 fixed exclude-result-prefixes handling and how namespaces propagate from
* libxslt/transform.c libxslt/xslt.c libxslt/xsltInternals.h:
  fixed exclude-result-prefixes handling and how namespaces
  propagate from the stylesheet to the result in general, this
  is a serious cleanup.
* tests/general/bug-3[67]-inc.xsl tests/general/bug-6-.xsl
  tests/general/itemschoose.out tests/namespaces/extra.xsl
  tests/REC/test-10-1.xsl tests/REC/test-10-2.xsl
  tests/REC/test-11.2-1.xsl tests/REC/test-11.2-2.xsl
  tests/REC/test-11.2-6.xsl tests/REC/test-15-1.xsl
  tests/REC/test-16.1-1.xsl tests/REC/test-16.1-2.xsl
  tests/REC/test-5.4-1.out tests/REC/test-5.4-2.out
  tests/REC/test-5.4-3.out tests/REC/test-5.4-4.out
  tests/REC/test-7.1.1-2.out tests/REC/test-7.1.1-2.xsl
  tests/REC/test-7.1.1-3.out tests/REC/test-7.1.1-3.xsl
  tests/REC/test-7.1.1.out tests/REC/test-7.1.3.xsl
  tests/REC/test-7.3.xsl tests/REC/test-7.4.xsl
  tests/REC/test-7.6.1-1.xsl tests/REC/test-7.6.1-2.xsl
  tests/REC/test-7.6.1-3.xsl tests/REC/test-7.6.2-1.xsl:
  fixed and rechecked all the tests where the namespace
  propagation was wrong either taht the rules were not applied
  correctly or that superfluous namespaces were declared in the
  stylesheets
Daniel
2001-07-09 13:59:13 +00:00
15ea351154 updated do not dump document for which there have been no generated
* FEATURES: updated
* libxslt/xsltutils.c: do not dump document for which there have
  been no generated content
* tests/multiple/result.xml tests/namespaces/extra2.out: fixed
  test output accordingly
* libxslt/transform.c libxslt/preproc.c: added xsl:fallback support
* tests/REC/Makefile.am tests/REC/test-15-1.*: xsl:fallback test
* tests/xmlspec/Makefile.am tests/docbook/Makefile.am: cleanups
Daniel
2001-07-05 08:59:37 +00:00
b58357db78 Adding generated files to .cvsignore -- Hope you don't mind, Daniel 2001-06-18 21:02:58 +00:00
d4ab0d4a43 - tests/documents/Makefile.am tests/general/Makefile.am
tests/multiple/Makefile.am tests/namespaces/Makefile.am
  tests/numbers/Makefile.am tests/xmlspec/Makefile.am
  tests/REC/Makefile.am tests/REC1/Makefile.am tests/REC2/Makefile.am
  tests/XSLTMark/Makefile.am tests/docbook/Makefile.am
  configure.in: Makefiles cleanup from Joe Orton
Daniel
2001-05-20 18:57:32 +00:00
0643448255 - tests/documents/Makefile.am tests/general/Makefile.am
tests/multiple/Makefile.am tests/namespaces/Makefile.am
  tests/numbers/Makefile.am tests/xmlspec/Makefile.am:
  Seems some of the changes I made for 0.9.0 Makefiles were
  not commited ...
Daniel
2001-05-19 16:06:21 +00:00
2c4c0a928e More work on extension support:
- libxslt/extensions.c: fixed stoopid bug
- libxslt/Makefile.am libxslt/extra.[ch]: added a new module
  carrying extensions to the specification. Added node-set()
  for existing saxon and xt namespaces and debug() in libxslt
  namespace (http://xmlsoft.org/XSLT/namespace)
- libxslt/xsltutils.[ch] transform.c: moved xsltDebug to extra.c
  plus cleanup.
- configure.in tests/Makefile.am tests/namespaces: added some
  namespaces tests, including a test calling the extra debugging
  function in libxslt namespace, worked first time !!!
Daniel
2001-02-27 21:09:59 +00:00