Return-Path: Delivered-To: apmail-xml-xalan-cvs-archive@xml.apache.org Received: (qmail 99774 invoked by uid 500); 14 Sep 2001 21:07:49 -0000 Mailing-List: contact xalan-cvs-help@xml.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: list-post: Reply-To: Delivered-To: mailing list xalan-cvs@xml.apache.org Received: (qmail 99760 invoked from network); 14 Sep 2001 21:07:49 -0000 Date: 14 Sep 2001 21:02:49 -0000 Message-ID: <20010914210249.18182.qmail@icarus.apache.org> From: pauldick@apache.org To: xml-xalan-cvs@apache.org Subject: cvs commit: xml-xalan/c/Tests/Conf conf.cpp X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N pauldick 01/09/14 14:02:49 Modified: c/Tests/Conf conf.cpp Log: Numerous changes; provide better logging and results Revision Changes Path 1.3 +37 -43 xml-xalan/c/Tests/Conf/conf.cpp Index: conf.cpp =================================================================== RCS file: /home/cvs/xml-xalan/c/Tests/Conf/conf.cpp,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- conf.cpp 2001/08/30 17:48:53 1.2 +++ conf.cpp 2001/09/14 21:02:49 1.3 @@ -94,7 +94,7 @@ #endif const char* const excludeStylesheets[] = -{ +{/* "attribset17.xsl", "attribvaltemplate08.xsl", "copy38.xsl", @@ -120,8 +120,11 @@ "output17.xsl", "output18.xsl", "output25.xsl", - "output26.xsl", - "output31.xsl", + "output26.xsl", */ + "output28.xsl", + "output80.xsl", + "numberformat06.xsl", +/* "output31.xsl", "output33.xsl", "output34.xsl", "output35.xsl", @@ -156,7 +159,7 @@ "sort30.xsl", "sort31.xsl", "sort35.xsl", - "sort37.xsl", + "sort37.xsl", */ 0 }; @@ -240,6 +243,7 @@ if(i < argc && argv[i][0] != '-') { assign(goldRoot, XalanDOMString(argv[i])); + insert(goldRoot, 0, pathSep); fsetGold = false; } else @@ -284,28 +288,30 @@ goldRoot = baseDir; append(goldRoot,XalanDOMString("-gold")); f.checkAndCreateDir(goldRoot); - append(goldRoot,pathSep); + //append(goldRoot,pathSep); } // Add the path seperator to the end of the base directory // here after we've finished using it for all directory creation. append(baseDir,pathSep); + append(goldRoot,pathSep); return fSuccess; } + inline bool checkForExclusion(XalanDOMString currentFile) { + for (int i=0; excludeStylesheets[i] != 0; i++) + { + if (equals(currentFile, XalanDOMString(excludeStylesheets[i]))) + { + return true; + } + } - for (int i=0; excludeStylesheets[i] != 0; i++) - { - if (equals(currentFile, XalanDOMString(excludeStylesheets[i]))) - { - return true; - } - } - return false; + return false; } int @@ -324,8 +330,8 @@ XalanTransformer::initialize(); { - Hashtable runAttrs; // Attribute list for perfdata element - int transResult = 0; + Hashtable runAttrs; // Attribute lists for conformance testing. + int theResult = 0; XalanDOMString category; // Test all of base dir by default XalanDOMString baseDir, outputRoot, goldRoot; @@ -358,7 +364,7 @@ // Create run entry that contains runid and number of iterations used for averages. runAttrs.insert(Hashtable::value_type(XalanDOMString("UniqRunid"), UniqRunid)); runAttrs.insert(Hashtable::value_type(XalanDOMString("Xerces-Version "), futil.getXercesVersion())); - logFile.logElement(10, "Rundata", runAttrs, "xxx"); + logFile.logElementWAttrs(10, "RunAttrs", runAttrs, "xxx"); // Get the list of Directories that are below conf const FileNameVectorType dirs = futil.getDirectoryNames(baseDir); @@ -385,13 +391,9 @@ for(FileNameVectorType::size_type i = 0; i < files.size(); i++) { - Hashtable attrs; const XalanDOMString currentFile(files[i]); - - //attrs.insert(Hashtable::value_type(XalanDOMString("idref"), currentFile)); - //attrs.insert(Hashtable::value_type(XalanDOMString("UniqRunid"),UniqRunid)); - //attrs.insert(Hashtable::value_type(XalanDOMString("processor"),processorType)); + futil.data.testOrFile = currentFile; if (checkForExclusion(currentFile)) continue; @@ -403,18 +405,12 @@ const XalanDOMString outbase = outputRoot + currentDir + pathSep + currentFile; const XalanDOMString theOutputFile = futil.GenerateFileName(outbase, "out"); - //cout << endl << endl << "Processing: " << currentFile << endl; const XSLTInputSource xslInputSource(c_wstr(theXSLFile)); const XSLTInputSource xmlInputSource(c_wstr(theXMLFile)); - const XSLTInputSource goldInputSource(c_wstr(theGoldFile)); + //const XSLTInputSource goldInputSource(c_wstr(theGoldFile)); + const XSLTResultTarget resultFile(theOutputFile); - // Use a XalanSourceTreeDocument to create the XSLTResultTarget. - XalanSourceTreeDocument* dom = parserLiaison.createXalanSourceTreeDocument(); - FormatterToSourceTree domOut(dom); - XSLTResultTarget domResultTarget; - domResultTarget.setDocumentHandler(&domOut); - // // Parsing(compile) the XSL stylesheet and report the results.. // @@ -422,6 +418,7 @@ xalan.compileStylesheet(xslInputSource, compiledSS); if (compiledSS == 0 ) { + cout << "Failed to PARSE stylesheet for " << currentFile << endl; continue; } @@ -432,26 +429,21 @@ xalan.parseSource(xmlInputSource, parsedSource); if (parsedSource == 0) { + cout << "Failed to PARSE source document for " << currentFile << endl; continue; } // - // Perform One transform using parsed stylesheet and unparsed xml source, report results... + // Perform One transform using parsed stylesheet and parsed xml source, report results... // - transResult = xalan.transform(*parsedSource, compiledSS, domResultTarget); - - if(!transResult) + theResult = xalan.transform(*parsedSource, compiledSS, resultFile); + if (!theResult) { - futil.compareResults(theOutputFile, compiledSS, dom, currentFile, goldInputSource); + futil.checkResults(theOutputFile, + theGoldFile, + logFile); } - else - { - cout << xalan.getLastError(); // This never seems to be called!! - return 0; - } - logFile.logCheckPass(currentFile); - parserLiaison.reset(); xalan.destroyParsedSource(parsedSource); xalan.destroyStylesheet(compiledSS); @@ -462,13 +454,15 @@ } //for directories - logFile.logTestFileClose("Conformance ", "Done"); - logFile.close(); + futil.reportPassFail(logFile); + logFile.logTestFileClose("Conformance ", "Done"); + logFile.close(); } //if getParams } XalanTransformer::terminate(); + return 0; --------------------------------------------------------------------- To unsubscribe, e-mail: xalan-cvs-unsubscribe@xml.apache.org For additional commands, e-mail: xalan-cvs-help@xml.apache.org