106500c8aa660aeb6ae964c7a840e21b928f906c3Daniel Veillard# 206500c8aa660aeb6ae964c7a840e21b928f906c3Daniel Veillard# Definition for the tests from W3C 306500c8aa660aeb6ae964c7a840e21b928f906c3Daniel Veillard# 4b1da40c144565de4fe0331d0a048f8b9e7041557Daniel VeillardPYSCRIPTS=nist-test.py ms-test.py sun-test.py 51ace20342ac2992b021d3db1bf64b394320a706cKasimier T. BuchcikTESTDIR=Tests 61ace20342ac2992b021d3db1bf64b394320a706cKasimier T. BuchcikTESTDIRS=$(TESTDIR)/msxsdtest $(TESTDIR)/suntest $(TESTDIR)/Datatypes 71ace20342ac2992b021d3db1bf64b394320a706cKasimier T. BuchcikTARBALL=xsts-2002-01-16.tar.gz 81ace20342ac2992b021d3db1bf64b394320a706cKasimier T. BuchcikTARBALL_2=xsts-2004-01-14.tar.gz 91ace20342ac2992b021d3db1bf64b394320a706cKasimier T. BuchcikTSNAME=xmlschema2002-01-16 101ace20342ac2992b021d3db1bf64b394320a706cKasimier T. BuchcikTSNAME_2=xmlschema2004-01-14 111ace20342ac2992b021d3db1bf64b394320a706cKasimier T. BuchcikTARBALLURL=http://www.w3.org/XML/2004/xml-schema-test-suite/$(TSNAME)/$(TARBALL) 121ace20342ac2992b021d3db1bf64b394320a706cKasimier T. BuchcikTARBALLURL_2=http://www.w3.org/XML/2004/xml-schema-test-suite/$(TSNAME_2)/$(TARBALL_2) 131ace20342ac2992b021d3db1bf64b394320a706cKasimier T. BuchcikMSTESTDEF=MSXMLSchema1-0-20020116.testSet 141ace20342ac2992b021d3db1bf64b394320a706cKasimier T. BuchcikSUNTESTDEF=SunXMLSchema1-0-20020116.testSet 151ace20342ac2992b021d3db1bf64b394320a706cKasimier T. BuchcikNISTTESTDEF=NISTXMLSchema1-0-20020116.testSet 161ace20342ac2992b021d3db1bf64b394320a706cKasimier T. BuchcikNISTTESTDEF_2=NISTXMLSchemaDatatypes.testSet 17b1da40c144565de4fe0331d0a048f8b9e7041557Daniel Veillard 1806500c8aa660aeb6ae964c7a840e21b928f906c3Daniel Veillard# 1906500c8aa660aeb6ae964c7a840e21b928f906c3Daniel Veillard# The local data and scripts 2006500c8aa660aeb6ae964c7a840e21b928f906c3Daniel Veillard# 211ace20342ac2992b021d3db1bf64b394320a706cKasimier T. BuchcikEXTRA_DIST=xstc.py xstc-to-python.xsl 2206500c8aa660aeb6ae964c7a840e21b928f906c3Daniel Veillard# 2306500c8aa660aeb6ae964c7a840e21b928f906c3Daniel Veillard# Nothing is done by make, only make tests and 2406500c8aa660aeb6ae964c7a840e21b928f906c3Daniel Veillard# only if Python and Schemas are enabled. 2506500c8aa660aeb6ae964c7a840e21b928f906c3Daniel Veillard# 26b1da40c144565de4fe0331d0a048f8b9e7041557Daniel Veillardall: 27b1da40c144565de4fe0331d0a048f8b9e7041557Daniel Veillard 2806500c8aa660aeb6ae964c7a840e21b928f906c3Daniel Veillard# 291ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik# Rule to load the test description and extract the informations 301ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik# 31d8e10448d16392d9b966b1455c4ef92a81ba92a1Kasimier T. Buchcik$(TESTDIRS) Tests/Metadata/$(NISTTESTDEF_2) Tests/Metadata/$(MSTTESTDEF) Tests/Metadata/$(SUNTESTDEF): 321ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik -@(if [ ! -d Tests ] ; then \ 331ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik mkdir Tests ; \ 341ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik fi) 351ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik -@(if [ ! -f $(TARBALL_2) ] ; then \ 3633a2de9921d093c6c69de03ac10f2829b0073de0Daniel Veillard if [ -f $(srcdir)/$(TARBALL_2) ] ; then \ 3733a2de9921d093c6c69de03ac10f2829b0073de0Daniel Veillard $(LN_S) $(srcdir)/$(TARBALL_2) $(TARBALL_2) ; else \ 381ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik echo "Missing the test suite description (2004-01-14), trying to fetch it" ;\ 3933a2de9921d093c6c69de03ac10f2829b0073de0Daniel Veillard if [ -x "$(WGET)" ] ; then \ 4033a2de9921d093c6c69de03ac10f2829b0073de0Daniel Veillard $(WGET) $(TARBALLURL_2) ; \ 4133a2de9921d093c6c69de03ac10f2829b0073de0Daniel Veillard else echo "Dont' know how to fetch $(TARBALLURL_2)" ; fi ; fi ; fi) 421ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik -@(if [ -f $(TARBALL_2) ] ; then \ 431ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik echo -n "extracting test data (NIST)..." ; \ 443130fe95dbb2e5fc6e30cb7611b221e1382ad11bDaniel Veillard $(TAR) -xzf $(TARBALL_2) --wildcards '*/Datatypes' '*/Metadata/$(NISTTESTDEF_2)' ; \ 4534b9a9c063916aa28f77e7263b26b91b928a2b6eKasimier T. Buchcik echo "done" ; \ 4634b9a9c063916aa28f77e7263b26b91b928a2b6eKasimier T. Buchcik fi) 4734b9a9c063916aa28f77e7263b26b91b928a2b6eKasimier T. Buchcik -@(if [ ! -f $(TARBALL) ] ; then \ 4833a2de9921d093c6c69de03ac10f2829b0073de0Daniel Veillard if [ -f $(srcdir)/$(TARBALL) ] ; then \ 4933a2de9921d093c6c69de03ac10f2829b0073de0Daniel Veillard $(LN_S) $(srcdir)/$(TARBALL) $(TARBALL) ; else \ 5034b9a9c063916aa28f77e7263b26b91b928a2b6eKasimier T. Buchcik echo "Missing the test suite description (2002-01-16), trying to fetch it" ;\ 5133a2de9921d093c6c69de03ac10f2829b0073de0Daniel Veillard if [ -x "$(WGET)" ] ; then \ 5233a2de9921d093c6c69de03ac10f2829b0073de0Daniel Veillard $(WGET) $(TARBALLURL) ; \ 5333a2de9921d093c6c69de03ac10f2829b0073de0Daniel Veillard else echo "Dont' know how to fetch $(TARBALLURL)" ; fi ; fi ; fi) 5434b9a9c063916aa28f77e7263b26b91b928a2b6eKasimier T. Buchcik -@(if [ -f $(TARBALL) ] ; then \ 5534b9a9c063916aa28f77e7263b26b91b928a2b6eKasimier T. Buchcik echo -n "extracting test data (Sun, Microsoft)..." ; \ 563130fe95dbb2e5fc6e30cb7611b221e1382ad11bDaniel Veillard $(TAR) -C Tests -xzf $(TARBALL) --wildcards '*/suntest' '*/msxsdtest' '*/$(MSTESTDEF)' '*/$(SUNTESTDEF)' ; \ 57d8e10448d16392d9b966b1455c4ef92a81ba92a1Kasimier T. Buchcik if [ -d Tests/suntest ] ; then rm -r Tests/suntest ; fi ; \ 58d8e10448d16392d9b966b1455c4ef92a81ba92a1Kasimier T. Buchcik if [ -d Tests/msxsdtest ] ; then rm -r Tests/msxsdtest ; fi ; \ 5934b9a9c063916aa28f77e7263b26b91b928a2b6eKasimier T. Buchcik mv Tests/xmlschema2002-01-16/* Tests ; \ 6034b9a9c063916aa28f77e7263b26b91b928a2b6eKasimier T. Buchcik mv Tests/*.testSet Tests/Metadata ; \ 6134b9a9c063916aa28f77e7263b26b91b928a2b6eKasimier T. Buchcik rm -r Tests/xmlschema2002-01-16 ; \ 621ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik echo "done" ; \ 631ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik fi) 641ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik 651ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik# 6606500c8aa660aeb6ae964c7a840e21b928f906c3Daniel Veillard# The python tests are generated via XSLT 6706500c8aa660aeb6ae964c7a840e21b928f906c3Daniel Veillard# 68d8e10448d16392d9b966b1455c4ef92a81ba92a1Kasimier T. Buchciknist-test.py: Tests/Metadata/$(NISTTESTDEF_2) xstc-to-python.xsl 691ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik -@(if [ -x $(XSLTPROC) ] ; then \ 701ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik echo "Rebuilding script (NIST)" $@ ; \ 711ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik $(XSLTPROC) --nonet --stringparam vendor NIST-2 \ 721ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik $(srcdir)/xstc-to-python.xsl \ 7334b9a9c063916aa28f77e7263b26b91b928a2b6eKasimier T. Buchcik $(srcdir)/Tests/Metadata/$(NISTTESTDEF_2) > $@ ; \ 74b1da40c144565de4fe0331d0a048f8b9e7041557Daniel Veillard chmod +x $@ ; fi ) 75b1da40c144565de4fe0331d0a048f8b9e7041557Daniel Veillard 76d8e10448d16392d9b966b1455c4ef92a81ba92a1Kasimier T. Buchcikms-test.py: Tests/Metadata/$(MSTTESTDEF) xstc-to-python.xsl 771ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik -@(if [ -x $(XSLTPROC) ] ; then \ 781ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik echo "Rebuilding script (Microsoft)" $@ ; \ 791ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik $(XSLTPROC) --nonet --stringparam vendor MS \ 801ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik $(srcdir)/xstc-to-python.xsl \ 8134b9a9c063916aa28f77e7263b26b91b928a2b6eKasimier T. Buchcik $(srcdir)/Tests/Metadata/$(MSTESTDEF) > $@ ; \ 82b1da40c144565de4fe0331d0a048f8b9e7041557Daniel Veillard chmod +x $@ ; fi ) 83b1da40c144565de4fe0331d0a048f8b9e7041557Daniel Veillard 84d8e10448d16392d9b966b1455c4ef92a81ba92a1Kasimier T. Buchciksun-test.py: Tests/Metadata/$(SUNTESTDEF) xstc-to-python.xsl 851ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik -@(if [ -x $(XSLTPROC) ] ; then \ 861ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik echo "Rebuilding script (Sun)" $@ ; \ 871ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik $(XSLTPROC) --nonet --stringparam vendor SUN \ 881ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik $(srcdir)/xstc-to-python.xsl \ 8934b9a9c063916aa28f77e7263b26b91b928a2b6eKasimier T. Buchcik $(srcdir)/Tests/Metadata/$(SUNTESTDEF) > $@ ; \ 90b1da40c144565de4fe0331d0a048f8b9e7041557Daniel Veillard chmod +x $@ ; fi ) 91b1da40c144565de4fe0331d0a048f8b9e7041557Daniel Veillard 9206500c8aa660aeb6ae964c7a840e21b928f906c3Daniel Veillard# 9306500c8aa660aeb6ae964c7a840e21b928f906c3Daniel Veillard# The actual test run if present. PYTHONPATH is updated to make sure 9406500c8aa660aeb6ae964c7a840e21b928f906c3Daniel Veillard# we run the version from the loacl build and not preinstalled bindings 9506500c8aa660aeb6ae964c7a840e21b928f906c3Daniel Veillard# 96b1da40c144565de4fe0331d0a048f8b9e7041557Daniel Veillardpytests: $(PYSCRIPTS) $(TESTDIRS) 971ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik -@(if [ -x nist-test.py -a -d $(TESTDIR)/Datatypes ] ; then \ 981ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik echo "## Running XML Schema tests (NIST)"; \ 9933a2de9921d093c6c69de03ac10f2829b0073de0Daniel Veillard PYTHONPATH="../python:../python/.libs:..:../.libs:$$PYTHONPATH" ;\ 100aa9a352fc7a8379f83be17b320035b53380f08b2Daniel Veillard export PYTHONPATH; \ 101a22da29921fc1f070084320428c2975e53acc184William M. Brack LD_LIBRARY_PATH="$(top_builddir)/.libs:$$LD_LIBRARY_PATH" ; \ 102a22da29921fc1f070084320428c2975e53acc184William M. Brack export LD_LIBRARY_PATH; \ 103f31187d31be0303c3844186ec01cb8fc819addf5Daniel Veillard $(CHECKER) $(PYTHON) nist-test.py -s -b $(srcdir) ; fi) 1041ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik -@(if [ -x sun-test.py -a -d $(TESTDIR)/suntest ] ; then \ 1051ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik echo "## Running Schema tests (Sun)"; \ 10633a2de9921d093c6c69de03ac10f2829b0073de0Daniel Veillard PYTHONPATH="../python:../python/.libs:..:../.libs:$$PYTHONPATH" ;\ 107aa9a352fc7a8379f83be17b320035b53380f08b2Daniel Veillard export PYTHONPATH; \ 108a22da29921fc1f070084320428c2975e53acc184William M. Brack LD_LIBRARY_PATH="$(top_builddir)/.libs:$$LD_LIBRARY_PATH" ; \ 109a22da29921fc1f070084320428c2975e53acc184William M. Brack export LD_LIBRARY_PATH; \ 110f31187d31be0303c3844186ec01cb8fc819addf5Daniel Veillard $(CHECKER) $(PYTHON) sun-test.py -s -b $(srcdir) ; fi) 1111ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik -@(if [ -x ms-test.py -a -d $(TESTDIR)/msxsdtest ] ; then \ 1121ace20342ac2992b021d3db1bf64b394320a706cKasimier T. Buchcik echo "## Running Schema tests (Microsoft)"; \ 11333a2de9921d093c6c69de03ac10f2829b0073de0Daniel Veillard PYTHONPATH="../python:../python/.libs:..:../.libs:$$PYTHONPATH" ;\ 114aa9a352fc7a8379f83be17b320035b53380f08b2Daniel Veillard export PYTHONPATH; \ 115a22da29921fc1f070084320428c2975e53acc184William M. Brack LD_LIBRARY_PATH="$(top_builddir)/.libs:$$LD_LIBRARY_PATH" ; \ 116a22da29921fc1f070084320428c2975e53acc184William M. Brack export LD_LIBRARY_PATH; \ 117f31187d31be0303c3844186ec01cb8fc819addf5Daniel Veillard $(CHECKER) $(PYTHON) ms-test.py -s -b $(srcdir) ; fi) 118b1da40c144565de4fe0331d0a048f8b9e7041557Daniel Veillard 119b1da40c144565de4fe0331d0a048f8b9e7041557Daniel Veillardtests: 120b1da40c144565de4fe0331d0a048f8b9e7041557Daniel Veillard -@(if [ -x $(PYTHON) ] ; then \ 1215706b6d8767e3c3f2e5b277b54e1af68035bc111Daniel Richard G $(MAKE) pytests ; fi); 122b1da40c144565de4fe0331d0a048f8b9e7041557Daniel Veillard 12306500c8aa660aeb6ae964c7a840e21b928f906c3Daniel Veillard# 12406500c8aa660aeb6ae964c7a840e21b928f906c3Daniel Veillard# Heavy, works well only on RHEL3 12506500c8aa660aeb6ae964c7a840e21b928f906c3Daniel Veillard# 126f31187d31be0303c3844186ec01cb8fc819addf5Daniel Veillardvalgrind: 127f31187d31be0303c3844186ec01cb8fc819addf5Daniel Veillard -@(if [ -x $(PYTHON) ] ; then \ 128f31187d31be0303c3844186ec01cb8fc819addf5Daniel Veillard echo '## Running the regression tests under Valgrind' ; \ 1295706b6d8767e3c3f2e5b277b54e1af68035bc111Daniel Richard G $(MAKE) CHECKER='valgrind -q' pytests ; fi); 130f31187d31be0303c3844186ec01cb8fc819addf5Daniel Veillard 131ff8b5417b7e30a2cc04dba2e1cda36b734d29cf1Daniel VeillardCLEANFILES=$(PYSCRIPTS) test.log 132b1da40c144565de4fe0331d0a048f8b9e7041557Daniel Veillard 133