You can subscribe to this list here.
2007 |
Jan
|
Feb
(3) |
Mar
(18) |
Apr
(39) |
May
(15) |
Jun
(12) |
Jul
(3) |
Aug
(23) |
Sep
|
Oct
(1) |
Nov
(1) |
Dec
(3) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2008 |
Jan
(21) |
Feb
(23) |
Mar
(33) |
Apr
(8) |
May
(1) |
Jun
(22) |
Jul
|
Aug
(1) |
Sep
(1) |
Oct
(6) |
Nov
|
Dec
(11) |
2009 |
Jan
(5) |
Feb
|
Mar
(2) |
Apr
(24) |
May
(36) |
Jun
(18) |
Jul
(2) |
Aug
(3) |
Sep
(9) |
Oct
(3) |
Nov
(1) |
Dec
|
2010 |
Jan
(5) |
Feb
(3) |
Mar
|
Apr
(15) |
May
(24) |
Jun
(11) |
Jul
(8) |
Aug
(34) |
Sep
(42) |
Oct
|
Nov
|
Dec
|
2011 |
Jan
(13) |
Feb
(32) |
Mar
(35) |
Apr
(31) |
May
(33) |
Jun
(30) |
Jul
(32) |
Aug
(31) |
Sep
(30) |
Oct
(31) |
Nov
(32) |
Dec
(31) |
2012 |
Jan
(35) |
Feb
(31) |
Mar
(31) |
Apr
(30) |
May
(31) |
Jun
(34) |
Jul
(23) |
Aug
(30) |
Sep
(30) |
Oct
(29) |
Nov
(30) |
Dec
(32) |
2013 |
Jan
(25) |
Feb
(39) |
Mar
(1) |
Apr
(18) |
May
(1) |
Jun
|
Jul
(1) |
Aug
(20) |
Sep
(41) |
Oct
(32) |
Nov
(9) |
Dec
(31) |
2014 |
Jan
(31) |
Feb
(30) |
Mar
(34) |
Apr
(60) |
May
(31) |
Jun
(28) |
Jul
(32) |
Aug
(28) |
Sep
(26) |
Oct
(32) |
Nov
(43) |
Dec
(115) |
2015 |
Jan
(106) |
Feb
(101) |
Mar
(51) |
Apr
(32) |
May
(63) |
Jun
(18) |
Jul
|
Aug
(18) |
Sep
|
Oct
(1) |
Nov
(84) |
Dec
(63) |
2016 |
Jan
(26) |
Feb
(17) |
Mar
(104) |
Apr
(30) |
May
(6) |
Jun
(30) |
Jul
|
Aug
|
Sep
|
Oct
(3) |
Nov
(48) |
Dec
(22) |
2017 |
Jan
(15) |
Feb
(29) |
Mar
(43) |
Apr
(29) |
May
(25) |
Jun
(28) |
Jul
(62) |
Aug
(35) |
Sep
(35) |
Oct
(72) |
Nov
(10) |
Dec
(4) |
2018 |
Jan
(7) |
Feb
(4) |
Mar
|
Apr
(46) |
May
(20) |
Jun
(12) |
Jul
(9) |
Aug
(42) |
Sep
(4) |
Oct
(17) |
Nov
(32) |
Dec
(31) |
2019 |
Jan
(21) |
Feb
(14) |
Mar
|
Apr
(74) |
May
(25) |
Jun
(43) |
Jul
(2) |
Aug
(1) |
Sep
|
Oct
(2) |
Nov
|
Dec
(10) |
2020 |
Jan
(1) |
Feb
|
Mar
(26) |
Apr
(8) |
May
(62) |
Jun
(4) |
Jul
(25) |
Aug
|
Sep
(21) |
Oct
(24) |
Nov
(26) |
Dec
(9) |
2021 |
Jan
|
Feb
(4) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(1) |
Sep
(1) |
Oct
(11) |
Nov
(1) |
Dec
(12) |
2022 |
Jan
(47) |
Feb
|
Mar
(2) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(14) |
2023 |
Jan
(3) |
Feb
|
Mar
(60) |
Apr
(9) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2024 |
Jan
(5) |
Feb
|
Mar
|
Apr
(10) |
May
(1) |
Jun
|
Jul
|
Aug
(17) |
Sep
(2) |
Oct
|
Nov
|
Dec
(1) |
2025 |
Jan
|
Feb
|
Mar
(88) |
Apr
(64) |
May
(47) |
Jun
(20) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <bo...@us...> - 2007-08-01 04:15:37
|
Revision: 225 http://xmlunit.svn.sourceforge.net/xmlunit/?rev=225&view=rev Author: bodewig Date: 2007-07-31 21:15:38 -0700 (Tue, 31 Jul 2007) Log Message: ----------- new signatures Modified Paths: -------------- trunk/xmlunit/KEYS Modified: trunk/xmlunit/KEYS =================================================================== --- trunk/xmlunit/KEYS 2007-07-31 04:47:41 UTC (rev 224) +++ trunk/xmlunit/KEYS 2007-08-01 04:15:38 UTC (rev 225) @@ -1,13 +1,3 @@ -This file contains the PGP keys of various developers. - -Users: pgp < KEYS - gpg --import KEYS -Developers: - pgp -kxa <your name> and append it to this file. - (pgpk -ll <your name> && pgpk -xa <your name>) >> this file. - (gpg --list-sigs <your name> - && gpg --armor --export <your name>) >> this file. - pub 1024D/5F6B8B72 2001-05-28 uid Stefan Bodewig <bo...@ap...> sig 3 5F6B8B72 2001-05-28 Stefan Bodewig <bo...@ap...> @@ -62,6 +52,13 @@ sig 0B7E6CFA 2007-05-06 Sami Siren <si...@ap...> sig 3 01530235 2007-05-02 Luc Maisonobe (SpaceRoots) <lu...@sp...> sig 40581837 2007-05-08 Nick Kew <ni...@we...> +sig 6BD872A0 2007-05-17 Michael Busch (Lucene Committer) <bu...@ap...> +sig 6210BFC0 2007-05-17 Jean-Frederic Clere <jf...@ap...> +sig 0F143BC1 2007-05-22 Matt Hogstrom <ma...@ho...> +sig A46C4CA1 2007-05-22 Matt Hogstrom <hog...@ap...> +sig D1AAEA60 2007-05-31 [User ID not found] +sig 084C9113 2007-07-24 Brett Porter <br...@ap...> +sig AF5EC452 2007-07-30 Dennis Lundberg (CODE SIGNING KEY) <de...@ap...> uid Stefan Bodewig <ste...@fr...> sig 3 5F6B8B72 2003-03-07 Stefan Bodewig <bo...@ap...> sig 3 F88341D9 2003-03-17 Lars Eilebrecht <la...@ei...> @@ -109,6 +106,13 @@ sig 3 DE8884A0 2007-05-07 Xavier Hanin <xav...@gm...> sig 3 01530235 2007-05-02 Luc Maisonobe (SpaceRoots) <lu...@sp...> sig 40581837 2007-05-08 Nick Kew <ni...@we...> +sig 6BD872A0 2007-05-17 Michael Busch (Lucene Committer) <bu...@ap...> +sig 6210BFC0 2007-05-17 Jean-Frederic Clere <jf...@ap...> +sig 0F143BC1 2007-05-22 Matt Hogstrom <ma...@ho...> +sig A46C4CA1 2007-05-22 Matt Hogstrom <hog...@ap...> +sig D1AAEA60 2007-05-31 [User ID not found] +sig 084C9113 2007-07-24 Brett Porter <br...@ap...> +sig AF5EC452 2007-07-30 Dennis Lundberg (CODE SIGNING KEY) <de...@ap...> uid Stefan Bodewig <st...@sa...> sig 3 5F6B8B72 2005-05-31 Stefan Bodewig <bo...@ap...> sig 51898504 2005-06-21 Conor MacNeill <co...@co...> @@ -148,6 +152,13 @@ sig 0B7E6CFA 2007-05-06 Sami Siren <si...@ap...> sig 3 01530235 2007-05-02 Luc Maisonobe (SpaceRoots) <lu...@sp...> sig 40581837 2007-05-08 Nick Kew <ni...@we...> +sig 6BD872A0 2007-05-17 Michael Busch (Lucene Committer) <bu...@ap...> +sig 6210BFC0 2007-05-17 Jean-Frederic Clere <jf...@ap...> +sig 0F143BC1 2007-05-22 Matt Hogstrom <ma...@ho...> +sig A46C4CA1 2007-05-22 Matt Hogstrom <hog...@ap...> +sig D1AAEA60 2007-05-31 [User ID not found] +sig 084C9113 2007-07-24 Brett Porter <br...@ap...> +sig AF5EC452 2007-07-30 Dennis Lundberg (CODE SIGNING KEY) <de...@ap...> sub 1024g/24774157 2001-05-28 sig 5F6B8B72 2001-05-28 Stefan Bodewig <bo...@ap...> @@ -249,146 +260,167 @@ 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 @@ -452,29 +484,39 @@ iEoEEBECAAoFAkY494cDBQM8AAoJEHPdjBYBUwI1fdkAniPtNsi5EqpnSZTAVX1R PY6E/6QQAJ4yZcsKLd/D0vBbaHZYgnzb6p+lSIhGBBARAgAGBQJGQLZMAAoJEG0L xzpAWBg3H1cAn20um0ttFdRJZ7kAQKH7JotMo286AJ93s7aw0CK4fvwZFyCaOyBd -DcvoFbQoU3RlZmFuIEJvZGV3aWcgPHN0ZWZhbi5ib2Rld2lnQGVwb3N0LmRlPoh3 -BDARAgA3BQJCxUrqMB0gSSBubyBsb25nZXIgaGF2ZSBhY2Nlc3MgdG8gdGhhdCBl -bWFpbCBhZGRyZXNzLgAKCRCiEVrhX2uLctbvAJ0RzqF0KvT3hrwsb5yFN347MbF8 -VQCdHcW+24byy/frsqeTTJsyek4z/iGIRgQQEQIABgUCPnekGgAKCRAVP6DNdaZ2 -kvV7AJ45J7uU65+FzeZ9Nezt5K+oQK3z2gCfRUz5iBAdt91WnfZgTse3o3oY9/SI -mQQTAQIABgUCPnXfDwAKCRA+j7fy+INB2Q/tA+Y9lc+LubrBGIuh+xOUcJsGtH56 -FahJKoKYdCM3UMZG1qYYTpfxBswi20P40un65PHyP8TSwZR0+daSTLp/C3V/cBh6 -gCAJc28+h7CwLqZmfcUx0Sjq8lzjcWaGxR+6Y626e8Y0Gdd0zwZIIn5EFL8BIyNG -sQIXXb/XjHCDLIhXBBMRAgAXBQI8Pto2BQsHCgMEAxUDAgMWAgECF4AACgkQohFa -4V9ri3Kz/gCg0PlCER3JUjKkG8JQe/lIJoApx38AoMW2G1lOuMX54RiWS08tG0j3 -ON4TiEYEExECAAYFAj6NzjUACgkQymk5dIEDo36MAgCghwB4Igq3ZAE+cC2GdSTg -OGWYzsUAoIDQjP1m61cZvaX6nyzuGEXf5j0viEYEExECAAYFAj512scACgkQ7tHq -OSJh0HOLzgCdF128HK4Oh2XkpoJJ2l7qT1piQuoAmgL+53bxfQzjvwqWZpxVWNv4 -+rMEiD8DBRA+daou/W+IxiHQpxsRAnoPAJ9/3XwtGKAVTIS9iPTgLXayjzsk1QCf -RE0XD4/X9JH0yv8lCY7MlWGXB2uIRgQQEQIABgUCQsUyhgAKCRCb8iNFL+KLz7Bn -AJ9G99bo3IGgCnuhL0gtEc1iHYZuGwCdFgazWFJoYrisbGb9+arGP4O+oja5AQ0E -OxIiVBAEAM1SlkvEK5MrMnW0ybtv9eMCG89gqIvd2gBnpcAsF0sX+dCaWHWNy5HL -3dBak/G3BJ8+NzAksfL5Srm0LVKcfVjBiG+IsbUoSyeJQGuhSZXYcnIc/3Z8Ujcs -+TfFurG8uHU1cWnNK5aMYwDrqxmp4Ru0zLYHw4tHBBKF0cgFaCsjAAMFA/49aSZu -DaatppSaBOzCt7wIYCsGBxX5ZibrJqr0gLUbhXU9eaWzCawOWwCvpQN0lTjoYVkw -iLZaYUkdqsSQgHAU3jjKlIuaIRXApEkTb8Jg7R/vNAdwXoZRLBCjZPGd5qGtnIez -sZ2+lxFx+bRieUL8fUInemXwWl8e23PMisgm+IhOBBgRAgAGBQI7EiJUABIJEKIR -WuFfa4tyB2VHUEcAAQENMgCgnc22kj8TfjktU6u4SUUqud25ZZcAn0B2b0zPjKjG -uiwdKSnkFbNcFS3g -=1whY +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 +=EdkF -----END PGP PUBLIC KEY BLOCK----- This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bo...@us...> - 2007-07-31 04:47:43
|
Revision: 224 http://xmlunit.svn.sourceforge.net/xmlunit/?rev=224&view=rev Author: bodewig Date: 2007-07-30 21:47:41 -0700 (Mon, 30 Jul 2007) Log Message: ----------- add an optional dependency on JUnit 3.x Modified Paths: -------------- trunk/xmlunit/src/etc/xmlunit.pom Modified: trunk/xmlunit/src/etc/xmlunit.pom =================================================================== --- trunk/xmlunit/src/etc/xmlunit.pom 2007-07-05 08:19:14 UTC (rev 223) +++ trunk/xmlunit/src/etc/xmlunit.pom 2007-07-31 04:47:41 UTC (rev 224) @@ -1,3 +1,11 @@ +<?xml version="1.0"?> +<!-- + + This POM is not usable as means to build XMLUnit with Maven2, it is + a minimal POM to allow XMLUnit's artifacts to be added to a Maven + repository. + +--> <project> <modelVersion>4.0.0</modelVersion> <groupId>@GROUP@</groupId> @@ -16,5 +24,12 @@ <scm> <url>http://xmlunit.svn.sourceforge.net/viewvc/xmlunit/</url> </scm> - <dependencies/> + <dependencies> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>3.8.2</version> + <optional>true</optional> + </dependency> + </dependencies> </project> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: SourceForge.net <no...@so...> - 2007-07-27 20:55:53
|
Feature Requests item #1762410, was opened at 2007-07-27 16:55 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=377771&aid=1762410&group_id=23187 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Ken Estes (kestesisme) Assigned to: Nobody/Anonymous (nobody) Summary: use tolerance for floating point values in XML Initial Comment: We produce XML which has numerical values scattered through out the XML both in nodes and attributes. <svg xmlns="http://www.w3.org/2000/svg" width="0.085in" height="0.085in"> <text text-anchor="end" y="92" x="15">36</text> <fo:block-container height="2pc" width="46.5pc" left="2.5pc" top="64pc"> The numerical values can be produced by computations which are carried out in software or hardware. Because of round off errors we need to have a custom string equals function which will allow for round off in the numeric portions of the string. Enclosed please find a file which will perform such numeric comparisons. Here is my suggestion for how to hook it into XMLUnit. /** * Test two non-null values for inequality * @param expected * @param actual * @return TRUE if the values are not equals() equal (taking whitespace * into account if necessary) */ private boolean unequalNotNull(Object expected, Object actual) { boolean bothStrings = (expected instanceof String && actual instanceof String); if (!bothStrings) { return !(expected.equals(actual)); } String expectedString = (String) expected; String actualString = (String) actual; if (XMLUnit.getIgnoreWhitespace()) { expectedString = expected.trim(); actualString = actual.trim(); } if (XMLUnit.getNormalizeWhitespace()) { expectedString = normalizeWhitespace(expectedString); actualString = normalizeWhitespace(actualString); } if (XMLUnit.getTolerantNumericCompare) { return !StringCmpNumericTolerance.equals(expected,actualString); } return !expectedString.equals(actualString); } ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=377771&aid=1762410&group_id=23187 |
From: <bo...@us...> - 2007-07-05 08:19:13
|
Revision: 223 http://xmlunit.svn.sourceforge.net/xmlunit/?rev=223&view=rev Author: bodewig Date: 2007-07-05 01:19:14 -0700 (Thu, 05 Jul 2007) Log Message: ----------- Add information required by Maven peeps for repository uploads Modified Paths: -------------- trunk/xmlunit/src/etc/xmlunit.pom Modified: trunk/xmlunit/src/etc/xmlunit.pom =================================================================== --- trunk/xmlunit/src/etc/xmlunit.pom 2007-06-29 04:55:52 UTC (rev 222) +++ trunk/xmlunit/src/etc/xmlunit.pom 2007-07-05 08:19:14 UTC (rev 223) @@ -3,14 +3,18 @@ <groupId>@GROUP@</groupId> <artifactId>@ARTIFACT@</artifactId> <packaging>@TYPE@</packaging> + <name>XMLUnit for Java</name> <version>@VERSION@</version> + <url>http://xmlunit.sourceforge.net/</url> <description>@DESCRIPTION@</description> - <url>http://xmlunit.sourceforge.net/</url> <licenses> <license> <name>@LICENSE@</name> <url>@LICENSE_URL@</url> </license> </licenses> + <scm> + <url>http://xmlunit.svn.sourceforge.net/viewvc/xmlunit/</url> + </scm> <dependencies/> </project> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bo...@us...> - 2007-06-29 04:55:53
|
Revision: 222 http://xmlunit.svn.sourceforge.net/xmlunit/?rev=222&view=rev Author: bodewig Date: 2007-06-28 21:55:52 -0700 (Thu, 28 Jun 2007) Log Message: ----------- Update site Modified Paths: -------------- trunk/xmlunit/src/site/index.html Modified: trunk/xmlunit/src/site/index.html =================================================================== --- trunk/xmlunit/src/site/index.html 2007-06-27 11:45:24 UTC (rev 221) +++ trunk/xmlunit/src/site/index.html 2007-06-29 04:55:52 UTC (rev 222) @@ -63,9 +63,8 @@ <tr> <td colspan="2"> <p>The current stable release is <a - href="http://sourceforge.net/project/showfiles.php?group_id=23187&release_id=155097">XMLUnit -1.0</a>, April 2003 (release notes are <a - href="http://xmlunit.svn.sourceforge.net/viewvc/*checkout*/xmlunit/tags/v1_0/xmlunit/README.txt">here</a>), the latest release is XMLUnit 1.1 beta 2 released in May 2007. It can be downloaded from <a href="http://sourceforge.net/project/showfiles.php?group_id=23187">here</a>.</p> + href="https://sourceforge.net/project/showfiles.php?group_id=23187&package_id=15921&release_id=519570">XMLUnit + 1.1</a>, June 2007.</p> <p>XMLUnit for Java provides two JUnit extension classes, <code>XMLAssert</code> and <code>XMLTestCase</code>, and a set of supporting classes (e.g. <code>Diff</code>, <code>DetailedDiff</code>,<code>Transform</code>,<code>SimpleXpathEngine</code>,<code>Validator</code>,<code>NodeTest</code>) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bo...@us...> - 2007-06-27 11:45:21
|
Revision: 221 http://xmlunit.svn.sourceforge.net/xmlunit/?rev=221&view=rev Author: bodewig Date: 2007-06-27 04:45:24 -0700 (Wed, 27 Jun 2007) Log Message: ----------- bump version Modified Paths: -------------- trunk/xmlunit/build.xml trunk/xmlunit/src/java/org/custommonkey/xmlunit/XMLUnit.java Modified: trunk/xmlunit/build.xml =================================================================== --- trunk/xmlunit/build.xml 2007-06-27 11:44:23 UTC (rev 220) +++ trunk/xmlunit/build.xml 2007-06-27 11:45:24 UTC (rev 221) @@ -4,7 +4,7 @@ <property file="build.properties"/> <!-- Version --> - <property name="xmlunit.version" value="1.1beta3"/> + <property name="xmlunit.version" value="1.2alpha"/> <!-- some locations --> <property name="src.dir" value="src"/> Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/XMLUnit.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/XMLUnit.java 2007-06-27 11:44:23 UTC (rev 220) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/XMLUnit.java 2007-06-27 11:45:24 UTC (rev 221) @@ -477,7 +477,7 @@ * @return current version */ public static String getVersion() { - return "1.1beta3"; + return "1.2alpha"; } /** This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bo...@us...> - 2007-06-27 11:44:21
|
Revision: 220 http://xmlunit.svn.sourceforge.net/xmlunit/?rev=220&view=rev Author: bodewig Date: 2007-06-27 04:44:23 -0700 (Wed, 27 Jun 2007) Log Message: ----------- Tag XMLUnit-Java 1.1 Modified Paths: -------------- tags/XMLUnit-Java-1.1/build.xml tags/XMLUnit-Java-1.1/src/java/org/custommonkey/xmlunit/XMLUnit.java Added Paths: ----------- tags/XMLUnit-Java-1.1/ Copied: tags/XMLUnit-Java-1.1 (from rev 219, trunk/xmlunit) Modified: tags/XMLUnit-Java-1.1/build.xml =================================================================== --- trunk/xmlunit/build.xml 2007-06-27 06:50:33 UTC (rev 219) +++ tags/XMLUnit-Java-1.1/build.xml 2007-06-27 11:44:23 UTC (rev 220) @@ -4,7 +4,7 @@ <property file="build.properties"/> <!-- Version --> - <property name="xmlunit.version" value="1.1beta3"/> + <property name="xmlunit.version" value="1.1"/> <!-- some locations --> <property name="src.dir" value="src"/> Modified: tags/XMLUnit-Java-1.1/src/java/org/custommonkey/xmlunit/XMLUnit.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/XMLUnit.java 2007-06-27 06:50:33 UTC (rev 219) +++ tags/XMLUnit-Java-1.1/src/java/org/custommonkey/xmlunit/XMLUnit.java 2007-06-27 11:44:23 UTC (rev 220) @@ -477,7 +477,7 @@ * @return current version */ public static String getVersion() { - return "1.1beta3"; + return "1.1"; } /** This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: SourceForge.net <no...@so...> - 2007-06-27 06:52:49
|
Bugs item #1742826, was opened at 2007-06-25 15:07 Message generated for change (Comment added) made by bodewig You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=377768&aid=1742826&group_id=23187 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: Interface (example) Group: v1.0 (example) >Status: Closed Resolution: None Priority: 5 Private: No Submitted By: Stephen Smith (stephen_smith) Assigned to: Nobody/Anonymous (nobody) Summary: Transform#getTransformer should set URIResolver first. Initial Comment: At present Transformer#getTransformer(Source) instantiates the XSL stylesheet before setting the URI resolver. This means that if the XSL stylesheet contains any include statements, the URI resolver is not yet present and XSL compilation will fail. I can't find a workaround for this in the current Transform API. Could the URI resolver be set just before the stylesheet is instantiated please? ---------------------------------------------------------------------- >Comment By: Stefan Bodewig (bodewig) Date: 2007-06-27 08:52 Message: Logged In: YES user_id=113148 Originator: NO Good catch! And just in time for the release. Fixed in svn trunk, will be fixed in XMLUnit 1.1 final. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=377768&aid=1742826&group_id=23187 |
From: <bo...@us...> - 2007-06-27 06:50:31
|
Revision: 219 http://xmlunit.svn.sourceforge.net/xmlunit/?rev=219&view=rev Author: bodewig Date: 2007-06-26 23:50:33 -0700 (Tue, 26 Jun 2007) Log Message: ----------- Fix for Bug 1742826 Modified Paths: -------------- trunk/xmlunit/src/java/org/custommonkey/xmlunit/Transform.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/XMLUnit.java Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/Transform.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/Transform.java 2007-06-27 06:50:14 UTC (rev 218) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/Transform.java 2007-06-27 06:50:33 UTC (rev 219) @@ -196,9 +196,6 @@ Transformer t = stylesheetSource == null ? factory.newTransformer() : factory.newTransformer(stylesheetSource); - if (XMLUnit.getURIResolver() != null) { - t.setURIResolver(XMLUnit.getURIResolver()); - } return t; } catch (javax.xml.transform.TransformerConfigurationException ex) { throw new ConfigurationException(ex); Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/XMLUnit.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/XMLUnit.java 2007-06-27 06:50:14 UTC (rev 218) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/XMLUnit.java 2007-06-27 06:50:33 UTC (rev 219) @@ -397,6 +397,9 @@ public static TransformerFactory getTransformerFactory() { if (transformerFactory == null) { transformerFactory = TransformerFactory.newInstance(); + if (uriResolver != null) { + transformerFactory.setURIResolver(uriResolver); + } } return transformerFactory; } @@ -405,7 +408,11 @@ * Sets the URIResolver to use during transformations. */ public static void setURIResolver(URIResolver resolver) { - uriResolver = resolver; + if (uriResolver != resolver) { + uriResolver = resolver; + transformerFactory = null; + getTransformerFactory(); + } } /** This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bo...@us...> - 2007-06-27 06:50:13
|
Revision: 218 http://xmlunit.svn.sourceforge.net/xmlunit/?rev=218&view=rev Author: bodewig Date: 2007-06-26 23:50:14 -0700 (Tue, 26 Jun 2007) Log Message: ----------- Test for Bug 1742826 Modified Paths: -------------- trunk/xmlunit/tests/java/org/custommonkey/xmlunit/test_Transform.java Modified: trunk/xmlunit/tests/java/org/custommonkey/xmlunit/test_Transform.java =================================================================== --- trunk/xmlunit/tests/java/org/custommonkey/xmlunit/test_Transform.java 2007-05-29 12:44:41 UTC (rev 217) +++ trunk/xmlunit/tests/java/org/custommonkey/xmlunit/test_Transform.java 2007-06-27 06:50:14 UTC (rev 218) @@ -39,7 +39,11 @@ import java.io.File; import java.io.FileReader; +import org.custommonkey.xmlunit.exceptions.ConfigurationException; + import javax.xml.transform.OutputKeys; +import javax.xml.transform.Source; +import javax.xml.transform.URIResolver; import junit.framework.TestCase; import junit.framework.TestSuite; @@ -116,6 +120,30 @@ assertEquals("<creepycrawly/>", transform.getResultString()); } + /** + * Issue 1742826 + */ + public void testURIResolverForStylesheet() throws Exception { + TestResolver tr = new TestResolver(); + try { + XMLUnit.setURIResolver(tr); + String s = "<foo/>"; + String xsl = test_Constants.XML_DECLARATION + + test_Constants.XSLT_START + + "<xsl:include href=\"urn:bar\"/>" + + test_Constants.XSLT_END; + try { + Transform transform = new Transform(s, xsl); + fail("should fail because of unknown include URI"); + } catch (ConfigurationException tce) { + // expected exception + } + assertTrue("URIResolver has been called", tr.called); + } finally { + XMLUnit.setURIResolver(null); + } + } + private void assertNotEquals(Object expected, Object actual) { if (expected.equals(actual)) { fail("Expected " + expected + " different to actual!"); @@ -130,13 +158,6 @@ animal = new File(test_Constants.BASEDIR + "/tests/etc/animal.xsl"); } - /** - * Return the test suite containing this test - */ - public static TestSuite suite(){ - return new TestSuite(test_Transform.class); - } - private static String stripLineFeeds(String s) { int index = s.indexOf(test_Constants.LINE_SEPARATOR); while (index > -1) { @@ -146,5 +167,14 @@ } return s; } + + private static class TestResolver implements URIResolver { + private boolean called = false; + + public Source resolve(String h, String b) { + called = true; + return null; + } + } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: SourceForge.net <no...@so...> - 2007-06-25 13:07:15
|
Bugs item #1742826, was opened at 2007-06-25 13:07 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=377768&aid=1742826&group_id=23187 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: Interface (example) Group: v1.0 (example) Status: Open Resolution: None Priority: 5 Private: No Submitted By: Stephen Smith (stephen_smith) Assigned to: Nobody/Anonymous (nobody) Summary: Transform#getTransformer should set URIResolver first. Initial Comment: At present Transformer#getTransformer(Source) instantiates the XSL stylesheet before setting the URI resolver. This means that if the XSL stylesheet contains any include statements, the URI resolver is not yet present and XSL compilation will fail. I can't find a workaround for this in the current Transform API. Could the URI resolver be set just before the stylesheet is instantiated please? ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=377768&aid=1742826&group_id=23187 |
From: SourceForge.net <no...@so...> - 2007-06-08 11:27:51
|
Bugs item #1731980, was opened at 2007-06-06 14:16 Message generated for change (Comment added) made by bodewig You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=377768&aid=1731980&group_id=23187 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None >Status: Closed >Resolution: Invalid Priority: 5 Private: No Submitted By: Rooks (rooks_sf) Assigned to: Nobody/Anonymous (nobody) Summary: XMLUnit say indentical xmls are different Initial Comment: Consider the 2 attached xmls : They are same but for whitespaces but following code says they are different. public static boolean compareFiles(File f1, File f2) throws Exception { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document d1 = builder.parse(f1); DocumentBuilder builder1 = factory.newDocumentBuilder(); Document d2 = builder1.parse(f2); Diff xmlDiff = XMLUnit.compareXML(d1, d2); debug("XML Diff :: " + xmlDiff.toString()); return xmlDiff.identical() || xmlDiff.similar(); } The debug diff printed out is : XML Diff :: org.custommonkey.xmlunit.Diff [different] Expected number of child nodes '8' but was '9' - comparing <hierarchy...> at /hierarchy[1] to <hierarchy...> at /hierarchy[1] ---------------------------------------------------------------------- >Comment By: Stefan Bodewig (bodewig) Date: 2007-06-08 13:27 Message: Logged In: YES user_id=113148 Originator: NO The two files you've attached are not identical, there is an additional newline between the closing tag of namespaces and the opening one of hierarchyVersion in exportHierarchy. Whitespace between elements is significant unless you tell XMLUnit to ignore it (which is what "nobody" suggested in the previous comment). In the absence of a DTD or an XML Schema XMLUnit cannot know whether an element supports mixed content so it cannot know whether the whitespace-only text content is significant or not. The default is to assume that whitespace is significant. Since you provide a Schema, it might work if you turn on validation on your DocumentBuilder since this may suppress the whitespace node completely. I haven't tried that, though. I'm closing the bug report as invalid since XMLUnit behaves as expected. ---------------------------------------------------------------------- Comment By: Nobody/Anonymous (nobody) Date: 2007-06-08 10:34 Message: Logged In: NO Add the following line b4 u do the comparison: XMLUnit.setIgnoreWhitespace(true); ---------------------------------------------------------------------- Comment By: Rooks (rooks_sf) Date: 2007-06-06 14:19 Message: Logged In: YES user_id=1535638 Originator: YES This happens in both 1.0 and XMLUnit 1.1 beta 2. ---------------------------------------------------------------------- Comment By: Rooks (rooks_sf) Date: 2007-06-06 14:17 Message: Logged In: YES user_id=1535638 Originator: YES File Added: testExportHierarchy_Output.xml ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=377768&aid=1731980&group_id=23187 |
From: SourceForge.net <no...@so...> - 2007-06-08 08:34:02
|
Bugs item #1731980, was opened at 2007-06-06 05:16 Message generated for change (Comment added) made by nobody You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=377768&aid=1731980&group_id=23187 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Rooks (rooks_sf) Assigned to: Nobody/Anonymous (nobody) Summary: XMLUnit say indentical xmls are different Initial Comment: Consider the 2 attached xmls : They are same but for whitespaces but following code says they are different. public static boolean compareFiles(File f1, File f2) throws Exception { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document d1 = builder.parse(f1); DocumentBuilder builder1 = factory.newDocumentBuilder(); Document d2 = builder1.parse(f2); Diff xmlDiff = XMLUnit.compareXML(d1, d2); debug("XML Diff :: " + xmlDiff.toString()); return xmlDiff.identical() || xmlDiff.similar(); } The debug diff printed out is : XML Diff :: org.custommonkey.xmlunit.Diff [different] Expected number of child nodes '8' but was '9' - comparing <hierarchy...> at /hierarchy[1] to <hierarchy...> at /hierarchy[1] ---------------------------------------------------------------------- Comment By: Nobody/Anonymous (nobody) Date: 2007-06-08 01:34 Message: Logged In: NO Add the following line b4 u do the comparison: XMLUnit.setIgnoreWhitespace(true); ---------------------------------------------------------------------- Comment By: Rooks (rooks_sf) Date: 2007-06-06 05:19 Message: Logged In: YES user_id=1535638 Originator: YES This happens in both 1.0 and XMLUnit 1.1 beta 2. ---------------------------------------------------------------------- Comment By: Rooks (rooks_sf) Date: 2007-06-06 05:17 Message: Logged In: YES user_id=1535638 Originator: YES File Added: testExportHierarchy_Output.xml ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=377768&aid=1731980&group_id=23187 |
From: SourceForge.net <no...@so...> - 2007-06-06 12:19:06
|
Bugs item #1731980, was opened at 2007-06-06 12:16 Message generated for change (Comment added) made by rooks_sf You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=377768&aid=1731980&group_id=23187 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Rooks (rooks_sf) Assigned to: Nobody/Anonymous (nobody) Summary: XMLUnit say indentical xmls are different Initial Comment: Consider the 2 attached xmls : They are same but for whitespaces but following code says they are different. public static boolean compareFiles(File f1, File f2) throws Exception { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document d1 = builder.parse(f1); DocumentBuilder builder1 = factory.newDocumentBuilder(); Document d2 = builder1.parse(f2); Diff xmlDiff = XMLUnit.compareXML(d1, d2); debug("XML Diff :: " + xmlDiff.toString()); return xmlDiff.identical() || xmlDiff.similar(); } The debug diff printed out is : XML Diff :: org.custommonkey.xmlunit.Diff [different] Expected number of child nodes '8' but was '9' - comparing <hierarchy...> at /hierarchy[1] to <hierarchy...> at /hierarchy[1] ---------------------------------------------------------------------- >Comment By: Rooks (rooks_sf) Date: 2007-06-06 12:19 Message: Logged In: YES user_id=1535638 Originator: YES This happens in both 1.0 and XMLUnit 1.1 beta 2. ---------------------------------------------------------------------- Comment By: Rooks (rooks_sf) Date: 2007-06-06 12:17 Message: Logged In: YES user_id=1535638 Originator: YES File Added: testExportHierarchy_Output.xml ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=377768&aid=1731980&group_id=23187 |
From: SourceForge.net <no...@so...> - 2007-06-06 12:17:23
|
Bugs item #1731980, was opened at 2007-06-06 12:16 Message generated for change (Comment added) made by rooks_sf You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=377768&aid=1731980&group_id=23187 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Rooks (rooks_sf) Assigned to: Nobody/Anonymous (nobody) Summary: XMLUnit say indentical xmls are different Initial Comment: Consider the 2 attached xmls : They are same but for whitespaces but following code says they are different. public static boolean compareFiles(File f1, File f2) throws Exception { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document d1 = builder.parse(f1); DocumentBuilder builder1 = factory.newDocumentBuilder(); Document d2 = builder1.parse(f2); Diff xmlDiff = XMLUnit.compareXML(d1, d2); debug("XML Diff :: " + xmlDiff.toString()); return xmlDiff.identical() || xmlDiff.similar(); } The debug diff printed out is : XML Diff :: org.custommonkey.xmlunit.Diff [different] Expected number of child nodes '8' but was '9' - comparing <hierarchy...> at /hierarchy[1] to <hierarchy...> at /hierarchy[1] ---------------------------------------------------------------------- >Comment By: Rooks (rooks_sf) Date: 2007-06-06 12:17 Message: Logged In: YES user_id=1535638 Originator: YES File Added: testExportHierarchy_Output.xml ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=377768&aid=1731980&group_id=23187 |
From: SourceForge.net <no...@so...> - 2007-06-06 12:16:53
|
Bugs item #1731980, was opened at 2007-06-06 12:16 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=377768&aid=1731980&group_id=23187 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Rooks (rooks_sf) Assigned to: Nobody/Anonymous (nobody) Summary: XMLUnit say indentical xmls are different Initial Comment: Consider the 2 attached xmls : They are same but for whitespaces but following code says they are different. public static boolean compareFiles(File f1, File f2) throws Exception { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document d1 = builder.parse(f1); DocumentBuilder builder1 = factory.newDocumentBuilder(); Document d2 = builder1.parse(f2); Diff xmlDiff = XMLUnit.compareXML(d1, d2); debug("XML Diff :: " + xmlDiff.toString()); return xmlDiff.identical() || xmlDiff.similar(); } The debug diff printed out is : XML Diff :: org.custommonkey.xmlunit.Diff [different] Expected number of child nodes '8' but was '9' - comparing <hierarchy...> at /hierarchy[1] to <hierarchy...> at /hierarchy[1] ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=377768&aid=1731980&group_id=23187 |
From: SourceForge.net <no...@so...> - 2007-05-30 21:19:53
|
Feature Requests item #1728598, was opened at 2007-05-30 17:19 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=377771&aid=1728598&group_id=23187 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: KingArgyle (kingargyle1) Assigned to: Nobody/Anonymous (nobody) Summary: XML Schema Validation Initial Comment: The following files add support for validating a W3C Schema to make sure it is a valid schema document. This is different than validating an XML instance against a Schema. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=377771&aid=1728598&group_id=23187 |
From: <bo...@us...> - 2007-05-29 12:44:40
|
Revision: 217 http://xmlunit.svn.sourceforge.net/xmlunit/?rev=217&view=rev Author: bodewig Date: 2007-05-29 05:44:41 -0700 (Tue, 29 May 2007) Log Message: ----------- duplicate code Modified Paths: -------------- trunk/xmlunit/src/java/org/custommonkey/xmlunit/XMLAssert.java Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/XMLAssert.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/XMLAssert.java 2007-05-29 12:31:26 UTC (rev 216) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/XMLAssert.java 2007-05-29 12:44:41 UTC (rev 217) @@ -1,6 +1,6 @@ /* ****************************************************************** -Copyright (c) 2001, Jeff Martin, Tim Bacon +Copyright (c) 2001-2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without @@ -450,14 +450,8 @@ String testXpath, Document testDocument) throws XpathException { - XpathEngine xpath = XMLUnit.newXpathEngine(); - Diff diff = new Diff(asXpathResultDocument(XMLUnit.newControlParser(), - xpath.getMatchingNodes(controlXpath, - controlDocument)), - asXpathResultDocument(XMLUnit.newTestParser(), - xpath.getMatchingNodes(testXpath, - testDocument))); - assertXMLEqual(diff, true); + assertXpathEquality(controlXpath, controlDocument, testXpath, + testDocument, true); } /** @@ -559,6 +553,25 @@ String testXpath, Document testDocument) throws XpathException { + assertXpathEquality(controlXpath, controlDocument, testXpath, + testDocument, false); + } + + /** + * Assert that the node lists of two Xpaths in two documents are + * equal or not. + * @param xpathOne + * @param xpathTwo + * @param document + * @param equality whether the values should be equal. + * @see XpathEngine + */ + private static void assertXpathEquality(String controlXpath, + Document controlDocument, + String testXpath, + Document testDocument, + boolean equal) + throws XpathException { XpathEngine xpath = XMLUnit.newXpathEngine(); Diff diff = new Diff(asXpathResultDocument(XMLUnit.newControlParser(), xpath.getMatchingNodes(controlXpath, @@ -566,7 +579,7 @@ asXpathResultDocument(XMLUnit.newTestParser(), xpath.getMatchingNodes(testXpath, testDocument))); - assertXMLEqual(diff, false); + assertXMLEqual(diff, equal); } /** This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bo...@us...> - 2007-05-29 12:31:29
|
Revision: 216 http://xmlunit.svn.sourceforge.net/xmlunit/?rev=216&view=rev Author: bodewig Date: 2007-05-29 05:31:26 -0700 (Tue, 29 May 2007) Log Message: ----------- fix PMD detected problems, nothing major Modified Paths: -------------- trunk/xmlunit/src/java/org/custommonkey/xmlunit/DetailedDiff.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/Diff.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/DifferenceEngine.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/DoctypeReader.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/DoctypeSupport.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/ElementNameQualifier.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/NodeInputStream.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/SimpleXpathEngine.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/TolerantSaxDocumentBuilder.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/Transform.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/Validator.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/XpathEngine.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/XpathNodeTracker.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/examples/MultiLevelElementNameAndTextQualifier.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/examples/XPathRegexAssert.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/exceptions/XMLUnitException.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/exceptions/XMLUnitRuntimeException.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/exceptions/XpathException.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/jaxp13/Jaxp13XpathEngine.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/jaxp13/XMLUnitNamespaceContext2Jaxp13.java Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/DetailedDiff.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/DetailedDiff.java 2007-05-29 11:35:11 UTC (rev 215) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/DetailedDiff.java 2007-05-29 12:31:26 UTC (rev 216) @@ -1,6 +1,6 @@ /* ****************************************************************** -Copyright (c) 2001, Jeff Martin, Tim Bacon +Copyright (c) 2001-2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without @@ -73,7 +73,6 @@ */ public int differenceFound(Difference difference) { final int returnValue = super.differenceFound(difference); - Difference localDifference = null; switch (returnValue) { case RETURN_IGNORE_DIFFERENCE_NODES_IDENTICAL: return returnValue; @@ -82,6 +81,11 @@ case RETURN_IGNORE_DIFFERENCE_NODES_SIMILAR: difference.setRecoverable(true); break; + default: + throw new IllegalArgumentException(returnValue + + " is not a defined " + + " DifferenceListener" + + ".RETURN_... value"); } allDifferences.add(difference); return returnValue; Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/Diff.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/Diff.java 2007-05-29 11:35:11 UTC (rev 215) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/Diff.java 2007-05-29 12:31:26 UTC (rev 216) @@ -1,6 +1,6 @@ /* ****************************************************************** -Copyright (c) 2001, Jeff Martin, Tim Bacon +Copyright (c) 2001-2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without @@ -279,7 +279,7 @@ * @param difference */ private void appendDifference(StringBuffer appendTo, Difference difference) { - appendTo.append(" ").append(difference).append('\n'); + appendTo.append(' ').append(difference).append('\n'); } /** Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/DifferenceEngine.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/DifferenceEngine.java 2007-05-29 11:35:11 UTC (rev 215) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/DifferenceEngine.java 2007-05-29 12:31:26 UTC (rev 216) @@ -37,7 +37,6 @@ package org.custommonkey.xmlunit; import java.util.ArrayList; -import java.util.Collection; import java.util.HashMap; import java.util.Iterator; import java.util.List; @@ -264,7 +263,7 @@ boolean flag = n.hasChildNodes(); if (flag && XMLUnit.getIgnoreComments()) { List nl = nodeList2List(n.getChildNodes()); - flag = nl.size() > 0; + flag = !nl.isEmpty(); } return flag ? Boolean.TRUE : Boolean.FALSE; } Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/DoctypeReader.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/DoctypeReader.java 2007-05-29 11:35:11 UTC (rev 215) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/DoctypeReader.java 2007-05-29 12:31:26 UTC (rev 216) @@ -1,6 +1,6 @@ /* ****************************************************************** -Copyright (c) 2001, Jeff Martin, Tim Bacon +Copyright (c) 2001-2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/DoctypeSupport.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/DoctypeSupport.java 2007-05-29 11:35:11 UTC (rev 215) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/DoctypeSupport.java 2007-05-29 12:31:26 UTC (rev 216) @@ -1,6 +1,6 @@ /* ****************************************************************** -Copyright (c) 2001, Jeff Martin, Tim Bacon +Copyright (c) 2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without @@ -76,7 +76,7 @@ StringBuffer sb = new StringBuffer(DOCTYPE_OPEN_DECL); sb.append(DOCTYPE).append(name).append(SYSTEM) - .append(systemId).append("\"").append(DOCTYPE_CLOSE_DECL); + .append(systemId).append('\"').append(DOCTYPE_CLOSE_DECL); String s = sb.toString(); IntegerBuffer buf = new IntegerBuffer(s.length() * (characters ? 1 : 2)); Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/ElementNameQualifier.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/ElementNameQualifier.java 2007-05-29 11:35:11 UTC (rev 215) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/ElementNameQualifier.java 2007-05-29 12:31:26 UTC (rev 216) @@ -1,6 +1,6 @@ /* ****************************************************************** -Copyright (c) 2001, Jeff Martin, Tim Bacon +Copyright (c) 2001-2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/NodeInputStream.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/NodeInputStream.java 2007-05-29 11:35:11 UTC (rev 215) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/NodeInputStream.java 2007-05-29 12:31:26 UTC (rev 216) @@ -1,6 +1,6 @@ /* ****************************************************************** -Copyright (c) 2001, Jeff Martin, Tim Bacon +Copyright (c) 2001-2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/SimpleXpathEngine.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/SimpleXpathEngine.java 2007-05-29 11:35:11 UTC (rev 215) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/SimpleXpathEngine.java 2007-05-29 12:31:26 UTC (rev 216) @@ -1,6 +1,6 @@ /* ****************************************************************** -Copyright (c) 2001, Jeff Martin, Tim Bacon +Copyright (c) 2001-2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without @@ -228,10 +228,10 @@ prefix = ""; } - if (uri.indexOf("'") != -1) { + if (uri.indexOf('\'') != -1) { quoteStyle = "\""; } - nsDecls.append(" ").append(XMLNS_PREFIX); + nsDecls.append(' ').append(XMLNS_PREFIX); if (prefix.length() > 0) { nsDecls.append(':'); } Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/TolerantSaxDocumentBuilder.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/TolerantSaxDocumentBuilder.java 2007-05-29 11:35:11 UTC (rev 215) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/TolerantSaxDocumentBuilder.java 2007-05-29 12:31:26 UTC (rev 216) @@ -1,6 +1,6 @@ /* ****************************************************************** -Copyright (c) 2001, Jeff Martin, Tim Bacon +Copyright (c) 2001-2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without @@ -158,7 +158,6 @@ return; } - String nodeName; Node parentNode = null; boolean atDocumentRoot = false, foundTagToEnd = false; Element startElement = currentElement; Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/Transform.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/Transform.java 2007-05-29 11:35:11 UTC (rev 215) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/Transform.java 2007-05-29 12:31:26 UTC (rev 216) @@ -1,6 +1,6 @@ /* ****************************************************************** -Copyright (c) 2001, Jeff Martin, Tim Bacon +Copyright (c) 2001-2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without @@ -37,6 +37,7 @@ package org.custommonkey.xmlunit; import org.custommonkey.xmlunit.exceptions.ConfigurationException; +import org.custommonkey.xmlunit.exceptions.XMLUnitRuntimeException; import java.io.File; import java.io.StringReader; @@ -178,7 +179,8 @@ try { return PWD.toURL().toExternalForm(); } catch (MalformedURLException e) { - throw new RuntimeException("Unable to determine current working directory!"); + throw new XMLUnitRuntimeException("Unable to determine current " + + "working directory!", e); } } /** Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/Validator.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/Validator.java 2007-05-29 11:35:11 UTC (rev 215) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/Validator.java 2007-05-29 12:31:26 UTC (rev 216) @@ -1,6 +1,6 @@ /* ****************************************************************** -Copyright (c) 2001, Jeff Martin, Tim Bacon +Copyright (c) 2001-2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/XpathEngine.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/XpathEngine.java 2007-05-29 11:35:11 UTC (rev 215) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/XpathEngine.java 2007-05-29 12:31:26 UTC (rev 216) @@ -1,6 +1,6 @@ /* ****************************************************************** -Copyright (c) 2001, Jeff Martin, Tim Bacon +Copyright (c) 2006-2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without @@ -36,11 +36,9 @@ package org.custommonkey.xmlunit; -import org.custommonkey.xmlunit.exceptions.ConfigurationException; import org.custommonkey.xmlunit.exceptions.XpathException; import org.w3c.dom.Document; -import org.w3c.dom.Node; import org.w3c.dom.NodeList; /** Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/XpathNodeTracker.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/XpathNodeTracker.java 2007-05-29 11:35:11 UTC (rev 215) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/XpathNodeTracker.java 2007-05-29 12:31:26 UTC (rev 216) @@ -62,7 +62,7 @@ * Simple constructor */ public XpathNodeTracker() { - indent(); + newLevel(); } /** @@ -81,6 +81,10 @@ if (currentEntry != null) { currentEntry.clearTrackedAttribute(); } + newLevel(); + } + + private void newLevel() { currentEntry = new TrackingEntry(); indentationList.add(currentEntry); } @@ -138,6 +142,9 @@ case Node.TEXT_NODE: visitedNode(node, XPATH_CHARACTER_NODE_IDENTIFIER); break; + default: + // ignore unhandled node types + break; } } @@ -203,15 +210,15 @@ value = startAt; } - public final void increment() { + public void increment() { ++value; } - public final int getValue() { + public int getValue() { return value; } - public final Integer toInteger() { + public Integer toInteger() { return new Integer(value); } } @@ -237,7 +244,7 @@ * @param visited the non-attribute node visited * @param value the String-ified value of the non-attribute node visited */ - public final void trackNode(Node visited, String value) { + public void trackNode(Node visited, String value) { if (nodeReferenceMap == null || trackNodeReferences) { Int occurrence = lookup(value); if (occurrence == null) { @@ -260,14 +267,14 @@ * Keep a reference to the visited attribute at the current visited node * @param value the attribute visited */ - public final void trackAttribute(String visited) { + public void trackAttribute(String visited) { currentAttribute = visited; } /** * Clear any reference to the current visited attribute */ - public final void clearTrackedAttribute() { + public void clearTrackedAttribute() { currentAttribute = null; } @@ -275,7 +282,7 @@ * Append the details of the current visited node to a StringBuffer * @param buf the StringBuffer to append to */ - public final void appendEntryTo(StringBuffer buf) { + public void appendEntryTo(StringBuffer buf) { if (currentValue == null) { return; } Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/examples/MultiLevelElementNameAndTextQualifier.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/examples/MultiLevelElementNameAndTextQualifier.java 2007-05-29 11:35:11 UTC (rev 215) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/examples/MultiLevelElementNameAndTextQualifier.java 2007-05-29 12:31:26 UTC (rev 216) @@ -38,8 +38,6 @@ import org.w3c.dom.Element; import org.w3c.dom.Node; -import org.w3c.dom.NodeList; -import org.w3c.dom.Text; import org.custommonkey.xmlunit.ElementNameAndTextQualifier; import org.custommonkey.xmlunit.ElementNameQualifier; Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/examples/XPathRegexAssert.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/examples/XPathRegexAssert.java 2007-05-29 11:35:11 UTC (rev 215) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/examples/XPathRegexAssert.java 2007-05-29 12:31:26 UTC (rev 216) @@ -1,7 +1,7 @@ // -*- Mode: JDE -*- /* ****************************************************************** -Copyright (c) 2001, Jeff Martin, Tim Bacon +Copyright (c) 2006-2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without @@ -56,6 +56,8 @@ */ public class XPathRegexAssert { + // no instances + private XPathRegexAssert() {} public static void assertXPathMatches(String message, String regex, String xpath, Document doc) Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/exceptions/XMLUnitException.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/exceptions/XMLUnitException.java 2007-05-29 11:35:11 UTC (rev 215) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/exceptions/XMLUnitException.java 2007-05-29 12:31:26 UTC (rev 216) @@ -1,6 +1,6 @@ /* ****************************************************************** -Copyright (c) 2001, Jeff Martin, Tim Bacon +Copyright (c) 2006-2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/exceptions/XMLUnitRuntimeException.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/exceptions/XMLUnitRuntimeException.java 2007-05-29 11:35:11 UTC (rev 215) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/exceptions/XMLUnitRuntimeException.java 2007-05-29 12:31:26 UTC (rev 216) @@ -1,6 +1,6 @@ /* ****************************************************************** -Copyright (c) 2001, Jeff Martin, Tim Bacon +Copyright (c) 2006-2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without @@ -55,6 +55,15 @@ } /** + * Inititializes an exeption without cause. + * + * @param message the detail message + */ + public XMLUnitRuntimeException(String message) { + this(message, null); + } + + /** * Root cause of the exception, if any. */ public Throwable getCause() { Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/exceptions/XpathException.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/exceptions/XpathException.java 2007-05-29 11:35:11 UTC (rev 215) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/exceptions/XpathException.java 2007-05-29 12:31:26 UTC (rev 216) @@ -1,6 +1,6 @@ /* ****************************************************************** -Copyright (c) 2001, Jeff Martin, Tim Bacon +Copyright (c) 2006-2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/jaxp13/Jaxp13XpathEngine.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/jaxp13/Jaxp13XpathEngine.java 2007-05-29 11:35:11 UTC (rev 215) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/jaxp13/Jaxp13XpathEngine.java 2007-05-29 12:31:26 UTC (rev 216) @@ -48,7 +48,6 @@ import javax.xml.xpath.XPathFactory; import org.w3c.dom.Document; -import org.w3c.dom.Node; import org.w3c.dom.NodeList; /** Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/jaxp13/XMLUnitNamespaceContext2Jaxp13.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/jaxp13/XMLUnitNamespaceContext2Jaxp13.java 2007-05-29 11:35:11 UTC (rev 215) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/jaxp13/XMLUnitNamespaceContext2Jaxp13.java 2007-05-29 12:31:26 UTC (rev 216) @@ -1,6 +1,6 @@ /* ****************************************************************** -Copyright (c) 2001, Jeff Martin, Tim Bacon +Copyright (c) 2006-2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without @@ -52,7 +52,7 @@ public class XMLUnitNamespaceContext2Jaxp13 implements javax.xml.namespace.NamespaceContext { - private final HashMap/*<String, String>*/ nsMap; + private final Map/*<String, String>*/ nsMap; public XMLUnitNamespaceContext2Jaxp13(NamespaceContext ctx) { nsMap = turnIntoMap(ctx); @@ -91,7 +91,7 @@ return i.hasNext() ? (String) i.next() : null; } - private static HashMap turnIntoMap(NamespaceContext ctx) { + private static Map turnIntoMap(NamespaceContext ctx) { HashMap/*<String, String>*/ m = new HashMap(); for (Iterator i = ctx.getPrefixes(); i.hasNext(); ) { String prefix = (String) i.next(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bo...@us...> - 2007-05-29 11:36:06
|
Revision: 215 http://xmlunit.svn.sourceforge.net/xmlunit/?rev=215&view=rev Author: bodewig Date: 2007-05-29 04:35:11 -0700 (Tue, 29 May 2007) Log Message: ----------- fix FindBugs detected problems, nothing major Modified Paths: -------------- trunk/xmlunit/src/java/org/custommonkey/xmlunit/Difference.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/ElementNameAndAttributeQualifier.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/HTMLDocumentBuilder.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/NodeDescriptor.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/NodeTest.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/NodeTestException.java trunk/xmlunit/src/java/org/custommonkey/xmlunit/XpathNodeTracker.java Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/Difference.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/Difference.java 2007-05-25 08:07:33 UTC (rev 214) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/Difference.java 2007-05-29 11:35:11 UTC (rev 215) @@ -1,6 +1,6 @@ /* ****************************************************************** -Copyright (c) 2001, Jeff Martin, Tim Bacon +Copyright (c) 2001-2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without @@ -148,6 +148,13 @@ } /** + * hashcode implementation to go with equals. + */ + public int hashCode() { + return id; + } + + /** * @return a basic representation of the object state and identity * and if <code>NodeDetail</code> instances are populated append * their details also Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/ElementNameAndAttributeQualifier.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/ElementNameAndAttributeQualifier.java 2007-05-25 08:07:33 UTC (rev 214) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/ElementNameAndAttributeQualifier.java 2007-05-29 11:35:11 UTC (rev 215) @@ -1,6 +1,6 @@ /* ****************************************************************** -Copyright (c) 2001, Jeff Martin, Tim Bacon +Copyright (c) 2001-2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without @@ -36,6 +36,7 @@ package org.custommonkey.xmlunit; +import java.util.Arrays; import org.w3c.dom.Attr; import org.w3c.dom.Element; import org.w3c.dom.NamedNodeMap; @@ -49,7 +50,7 @@ * @see Diff#overrideElementQualifier(ElementQualifier) */ public class ElementNameAndAttributeQualifier extends ElementNameQualifier { - public static final String[] ALL_ATTRIBUTES = {"*"}; + private static final String[] ALL_ATTRIBUTES = {"*"}; private final String[] qualifyingAttrNames; @@ -76,7 +77,9 @@ * elements can be compared further for differences */ public ElementNameAndAttributeQualifier(String[] attrNames) { - this.qualifyingAttrNames = attrNames; + this.qualifyingAttrNames = new String[attrNames.length]; + System.arraycopy(attrNames, 0, qualifyingAttrNames, 0, + attrNames.length); } /** @@ -109,7 +112,7 @@ String controlValue, testValue; Attr[] qualifyingAttributes; NamedNodeMap namedNodeMap = control.getAttributes(); - if (qualifyingAttrNames == ALL_ATTRIBUTES) { + if (matchesAllAttributes(qualifyingAttrNames)) { qualifyingAttributes = new Attr[namedNodeMap.getLength()]; for (int n=0; n < qualifyingAttributes.length; ++n) { qualifyingAttributes[n] = (Attr) namedNodeMap.item(n); @@ -150,4 +153,7 @@ return true; } + private static boolean matchesAllAttributes(String[] attributes) { + return Arrays.equals(attributes, ALL_ATTRIBUTES); + } } Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/HTMLDocumentBuilder.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/HTMLDocumentBuilder.java 2007-05-25 08:07:33 UTC (rev 214) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/HTMLDocumentBuilder.java 2007-05-29 11:35:11 UTC (rev 215) @@ -1,6 +1,6 @@ /* ****************************************************************** -Copyright (c) 2001, Jeff Martin, Tim Bacon +Copyright (c) 2001-2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without @@ -121,7 +121,7 @@ * to a Sax-aware ContentHandler. */ public class SwingEvent2SaxAdapter extends HTMLEditorKit.ParserCallback { - private final boolean IGNORE_HTML_CHAR_SET = true; + private static final boolean IGNORE_HTML_CHAR_SET = true; private final AttributesImpl attributes; private final ParserDelegator delegator; private boolean lastTagWasSimpleTag; Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/NodeDescriptor.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/NodeDescriptor.java 2007-05-25 08:07:33 UTC (rev 214) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/NodeDescriptor.java 2007-05-29 11:35:11 UTC (rev 215) @@ -1,6 +1,6 @@ /* ****************************************************************** -Copyright (c) 2001, Jeff Martin, Tim Bacon +Copyright (c) 2001-2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without @@ -45,7 +45,7 @@ * Class for describing Nodes */ public class NodeDescriptor implements XMLConstants { - protected static String DOCUMENT_NODE_DESCRIPTION = "Document Node "; + protected static final String DOCUMENT_NODE_DESCRIPTION = "Document Node "; /** * Convert a Node into a simple String representation Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/NodeTest.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/NodeTest.java 2007-05-25 08:07:33 UTC (rev 214) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/NodeTest.java 2007-05-29 11:35:11 UTC (rev 215) @@ -1,6 +1,6 @@ /* ****************************************************************** -Copyright (c) 2001, Jeff Martin, Tim Bacon +Copyright (c) 2001-2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without @@ -160,7 +160,7 @@ * Node type specific Node Filter: accepts Nodes of those types specified * in constructor, rejects all others */ - private class NodeTypeNodeFilter implements NodeFilter { + private static class NodeTypeNodeFilter implements NodeFilter { private final short[] nodeTypes; /** Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/NodeTestException.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/NodeTestException.java 2007-05-25 08:07:33 UTC (rev 214) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/NodeTestException.java 2007-05-29 11:35:11 UTC (rev 215) @@ -1,6 +1,6 @@ /* ****************************************************************** -Copyright (c) 2001, Jeff Martin, Tim Bacon +Copyright (c) 2001-2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without @@ -44,7 +44,7 @@ * @see NodeTest */ public class NodeTestException extends Exception { - private final Node node; + private transient final Node node; /** * Constructor for specific node and message Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/XpathNodeTracker.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/XpathNodeTracker.java 2007-05-25 08:07:33 UTC (rev 214) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/XpathNodeTracker.java 2007-05-29 11:35:11 UTC (rev 215) @@ -58,8 +58,6 @@ private final List indentationList = new ArrayList(); private TrackingEntry currentEntry; - private boolean trackRepeatedVisits = false; - /** * Simple constructor */ @@ -198,7 +196,7 @@ * Wrapper class around a mutable <code>int</code> value * Avoids creation of many immutable <code>Integer</code> objects */ - private final class Int { + private static final class Int { private int value; public Int(int startAt) { @@ -222,7 +220,7 @@ * Holds node tracking details - one instance is used for each level of indentation in a DOM * Provides reference between a String-ified Node value and the xpath index of that value */ - private final class TrackingEntry { + private static final class TrackingEntry { private final Map valueMap = new HashMap(); private String currentValue, currentAttribute; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bo...@us...> - 2007-05-25 08:07:31
|
Revision: 214 http://xmlunit.svn.sourceforge.net/xmlunit/?rev=214&view=rev Author: bodewig Date: 2007-05-25 01:07:33 -0700 (Fri, 25 May 2007) Log Message: ----------- More places where the version needs to be updated Modified Paths: -------------- trunk/xmlunit/src/java/org/custommonkey/xmlunit/XMLUnit.java trunk/xmlunit/src/site/index.html Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/XMLUnit.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/XMLUnit.java 2007-05-25 04:06:03 UTC (rev 213) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/XMLUnit.java 2007-05-25 08:07:33 UTC (rev 214) @@ -470,7 +470,7 @@ * @return current version */ public static String getVersion() { - return "1.1beta2"; + return "1.1beta3"; } /** Modified: trunk/xmlunit/src/site/index.html =================================================================== --- trunk/xmlunit/src/site/index.html 2007-05-25 04:06:03 UTC (rev 213) +++ trunk/xmlunit/src/site/index.html 2007-05-25 08:07:33 UTC (rev 214) @@ -65,7 +65,7 @@ <p>The current stable release is <a href="http://sourceforge.net/project/showfiles.php?group_id=23187&release_id=155097">XMLUnit 1.0</a>, April 2003 (release notes are <a - href="http://xmlunit.svn.sourceforge.net/viewvc/*checkout*/xmlunit/tags/v1_0/xmlunit/README.txt">here</a>), the latest release is XMLUnit 1.1 beta 1 released in April 2007. It can be downloaded from <a href="http://sourceforge.net/project/showfiles.php?group_id=23187">here</a>.</p> + href="http://xmlunit.svn.sourceforge.net/viewvc/*checkout*/xmlunit/tags/v1_0/xmlunit/README.txt">here</a>), the latest release is XMLUnit 1.1 beta 2 released in May 2007. It can be downloaded from <a href="http://sourceforge.net/project/showfiles.php?group_id=23187">here</a>.</p> <p>XMLUnit for Java provides two JUnit extension classes, <code>XMLAssert</code> and <code>XMLTestCase</code>, and a set of supporting classes (e.g. <code>Diff</code>, <code>DetailedDiff</code>,<code>Transform</code>,<code>SimpleXpathEngine</code>,<code>Validator</code>,<code>NodeTest</code>) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bo...@us...> - 2007-05-25 04:06:07
|
Revision: 213 http://xmlunit.svn.sourceforge.net/xmlunit/?rev=213&view=rev Author: bodewig Date: 2007-05-24 21:06:03 -0700 (Thu, 24 May 2007) Log Message: ----------- tag 1.1beta2, bump version in trunk Modified Paths: -------------- trunk/xmlunit/build.xml Added Paths: ----------- tags/XMLUnit-Java-1.1-beta2/ Copied: tags/XMLUnit-Java-1.1-beta2 (from rev 212, trunk/xmlunit) Modified: trunk/xmlunit/build.xml =================================================================== --- trunk/xmlunit/build.xml 2007-05-18 10:38:09 UTC (rev 212) +++ trunk/xmlunit/build.xml 2007-05-25 04:06:03 UTC (rev 213) @@ -4,7 +4,7 @@ <property file="build.properties"/> <!-- Version --> - <property name="xmlunit.version" value="1.1beta2"/> + <property name="xmlunit.version" value="1.1beta3"/> <!-- some locations --> <property name="src.dir" value="src"/> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bo...@us...> - 2007-05-18 10:38:09
|
Revision: 212 http://xmlunit.svn.sourceforge.net/xmlunit/?rev=212&view=rev Author: bodewig Date: 2007-05-18 03:38:09 -0700 (Fri, 18 May 2007) Log Message: ----------- document new Difference types Modified Paths: -------------- trunk/xmlunit/src/user-guide/XMLUnit-Java.xml Modified: trunk/xmlunit/src/user-guide/XMLUnit-Java.xml =================================================================== --- trunk/xmlunit/src/user-guide/XMLUnit-Java.xml 2007-05-18 10:37:41 UTC (rev 211) +++ trunk/xmlunit/src/user-guide/XMLUnit-Java.xml 2007-05-18 10:38:09 UTC (rev 212) @@ -1137,6 +1137,24 @@ <entry>Two nodes in the two pieces of XML share the same local name but use different XML Namespace URIs.</entry> </row> + <row> + <entry><literal>SCHEMA_LOCATION_ID</literal></entry> + <entry><literal>SCHEMA_LOCATION</literal></entry> + <entry><literal>true</literal></entry> + <entry>Two nodes have different values for the + <literal>schemaLocation</literal> attribute of the + XMLSchema-Instance namespace. The attribute could be + present on only one of the two nodes.</entry> + </row> + <row> + <entry><literal>NO_NAMESPACE_SCHEMA_LOCATION_ID</literal></entry> + <entry><literal>NO_NAMESPACE_SCHEMA_LOCATION</literal></entry> + <entry><literal>true</literal></entry> + <entry>Two nodes have different values for the + <literal>noNamespaceSchemaLocation</literal> attribute + of the XMLSchema-Instance namespace. The attribute + could be present on only one of the two nodes.</entry> + </row> </tbody> </tgroup> </table> @@ -1402,6 +1420,16 @@ <entry>The Namespace URI.</entry> </row> <row> + <entry><literal>SCHEMA_LOCATION_ID</literal></entry> + <entry>The attribute's value or "[attribute absent]" if + it has not been specified.</entry> + </row> + <row> + <entry><literal>NO_NAMESPACE_SCHEMA_LOCATION_ID</literal></entry> + <entry>The attribute's value or "[attribute absent]" if + it has not been specified.</entry> + </row> + <row> <entry><literal>ELEMENT_TAG_NAME_ID</literal></entry> <entry>The tag name with any Namespace information stripped.</entry> @@ -3032,6 +3060,38 @@ test element. Excess children of the test element were not reported at all.</para> </listitem> + + <listitem> + <para>The <literal>schemaLocation</literal> and + <literal>noNamespaceSchemaLocation</literal> attributes of + the XMLSchema-Instance Namespace are now treated in a + different way from "normal" attributes. They will be + flagged as new kinds of <literal>Difference</literal> that + is recoverable.</para> + + <para>This means that two pieces of XML that were + different in XMLUnit 1.0 because they differed in one of + the two attributes will be similar in XMLUnit 1.1.</para> + </listitem> + + <listitem> + <para>When comparing two elements that differ on + attributes the comparision is now symmetric.</para> + + <para>In XMLUnit 1.0 if an attribute was present on the + test but not the control element this wasn't flagged as a + <literal>Difference</literal>; in XMLUnit 1.1 it + is.</para> + + <para>In most practical cases this doesn't cause any + problems since the two elements either have a different + number of attributes or there are attributes in the + control element that are missing in the test element - so + the pieces of XML have been flagged as different before as + well. If you are using <literal>DetailiedDiff</literal> + this change may lead to more detected + <literal>Difference</literal>s, though.</para> + </listitem> </itemizedlist> </section> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bo...@us...> - 2007-05-18 10:37:41
|
Revision: 211 http://xmlunit.svn.sourceforge.net/xmlunit/?rev=211&view=rev Author: bodewig Date: 2007-05-18 03:37:41 -0700 (Fri, 18 May 2007) Log Message: ----------- minor refactoring Modified Paths: -------------- trunk/xmlunit/src/java/org/custommonkey/xmlunit/DifferenceEngine.java Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/DifferenceEngine.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/DifferenceEngine.java 2007-05-18 05:25:53 UTC (rev 210) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/DifferenceEngine.java 2007-05-18 10:37:41 UTC (rev 211) @@ -69,6 +69,7 @@ public class DifferenceEngine implements DifferenceConstants { private static final String NULL_NODE = "null"; private static final String NOT_NULL_NODE = "not null"; + private static final String ATTRIBUTE_ABSENT = "[attribute absent]"; private final ComparisonController controller; private final XpathNodeTracker controlTracker; private final XpathNodeTracker testTracker; @@ -485,11 +486,11 @@ NamedNodeMap testAttr, DifferenceListener listener) throws DifferenceFoundException { - ArrayList allTestAttrs = new ArrayList(); + ArrayList unmatchedTestAttrs = new ArrayList(); for (int i=0; i < testAttr.getLength(); ++i) { Attr nextAttr = (Attr) testAttr.item(i); if (!isXMLNSAttribute(nextAttr)) { - allTestAttrs.add(nextAttr); + unmatchedTestAttrs.add(nextAttr); } } @@ -510,7 +511,7 @@ } if (compareTo != null) { - allTestAttrs.remove(compareTo); + unmatchedTestAttrs.remove(compareTo); } if (isRecognizedXMLSchemaInstanceAttribute(nextAttr)) { @@ -523,7 +524,7 @@ if (!XMLUnit.getIgnoreAttributeOrder()) { Attr attributeItem = (Attr) testAttr.item(i); - String testAttrName = "[attribute absent]"; + String testAttrName = ATTRIBUTE_ABSENT; if (attributeItem != null) { testAttrName = getUnNamespacedNodeName(attributeItem); @@ -538,7 +539,7 @@ } } - for (Iterator iter = allTestAttrs.iterator(); iter.hasNext(); ) { + for (Iterator iter = unmatchedTestAttrs.iterator(); iter.hasNext(); ) { Attr nextAttr = (Attr) iter.next(); if (isRecognizedXMLSchemaInstanceAttribute(nextAttr)) { compareRecognizedXMLSchemaInstanceAttribute(null, nextAttr, @@ -616,8 +617,8 @@ testTracker.visited(test); } - compare(control != null ? control.getValue() : "[not specified]", - test != null ? test.getValue() : "[not specified]", + compare(control != null ? control.getValue() : ATTRIBUTE_ABSENT, + test != null ? test.getValue() : ATTRIBUTE_ABSENT, control, test, listener, d); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bo...@us...> - 2007-05-18 05:25:54
|
Revision: 210 http://xmlunit.svn.sourceforge.net/xmlunit/?rev=210&view=rev Author: bodewig Date: 2007-05-17 22:25:53 -0700 (Thu, 17 May 2007) Log Message: ----------- make attribute check symmetric Modified Paths: -------------- trunk/xmlunit/src/java/org/custommonkey/xmlunit/DifferenceEngine.java trunk/xmlunit/tests/java/org/custommonkey/xmlunit/test_DetailedDiff.java trunk/xmlunit/tests/java/org/custommonkey/xmlunit/test_Diff.java trunk/xmlunit/tests/java/org/custommonkey/xmlunit/test_DifferenceEngine.java Modified: trunk/xmlunit/src/java/org/custommonkey/xmlunit/DifferenceEngine.java =================================================================== --- trunk/xmlunit/src/java/org/custommonkey/xmlunit/DifferenceEngine.java 2007-05-16 11:25:23 UTC (rev 209) +++ trunk/xmlunit/src/java/org/custommonkey/xmlunit/DifferenceEngine.java 2007-05-18 05:25:53 UTC (rev 210) @@ -485,6 +485,14 @@ NamedNodeMap testAttr, DifferenceListener listener) throws DifferenceFoundException { + ArrayList allTestAttrs = new ArrayList(); + for (int i=0; i < testAttr.getLength(); ++i) { + Attr nextAttr = (Attr) testAttr.item(i); + if (!isXMLNSAttribute(nextAttr)) { + allTestAttrs.add(nextAttr); + } + } + for (int i=0; i < controlAttr.getLength(); ++i) { Attr nextAttr = (Attr) controlAttr.item(i); if (isXMLNSAttribute(nextAttr)) { @@ -501,6 +509,10 @@ compareTo = (Attr) testAttr.getNamedItem(attrName); } + if (compareTo != null) { + allTestAttrs.remove(compareTo); + } + if (isRecognizedXMLSchemaInstanceAttribute(nextAttr)) { compareRecognizedXMLSchemaInstanceAttribute(nextAttr, compareTo, @@ -525,6 +537,20 @@ } } } + + for (Iterator iter = allTestAttrs.iterator(); iter.hasNext(); ) { + Attr nextAttr = (Attr) iter.next(); + if (isRecognizedXMLSchemaInstanceAttribute(nextAttr)) { + compareRecognizedXMLSchemaInstanceAttribute(null, nextAttr, + listener); + } else { + compare(null, + getUnNamespacedNodeName(nextAttr, + isNamespaced(nextAttr)), + control, test, listener, ATTR_NAME_NOT_FOUND); + } + } + controlTracker.clearTrackedAttribute(); testTracker.clearTrackedAttribute(); } @@ -577,17 +603,20 @@ Attr test, DifferenceListener listener) throws DifferenceFoundException { + Attr nonNullNode = control != null ? control : test; Difference d = XMLConstants.W3C_XML_SCHEMA_INSTANCE_SCHEMA_LOCATION_ATTR - .equals(control.getLocalName()) + .equals(nonNullNode.getLocalName()) ? SCHEMA_LOCATION : NO_NAMESPACE_SCHEMA_LOCATION; - controlTracker.visited(control); + if (control != null) { + controlTracker.visited(control); + } if (test != null) { testTracker.visited(test); } - compare(control.getValue(), + compare(control != null ? control.getValue() : "[not specified]", test != null ? test.getValue() : "[not specified]", control, test, listener, d); } Modified: trunk/xmlunit/tests/java/org/custommonkey/xmlunit/test_DetailedDiff.java =================================================================== --- trunk/xmlunit/tests/java/org/custommonkey/xmlunit/test_DetailedDiff.java 2007-05-16 11:25:23 UTC (rev 209) +++ trunk/xmlunit/tests/java/org/custommonkey/xmlunit/test_DetailedDiff.java 2007-05-18 05:25:53 UTC (rev 210) @@ -81,15 +81,18 @@ List differences = detailedDiff.getAllDifferences(); - assertEquals("size: " + detailedDiff, 4, differences.size()); + assertEquals("size: " + detailedDiff, 5, differences.size()); assertEquals("first: " + detailedDiff, DifferenceConstants.ELEMENT_NUM_ATTRIBUTES, differences.get(0)); assertEquals("second: " + detailedDiff, DifferenceConstants.ATTR_VALUE, differences.get(1)); assertEquals("third: " + detailedDiff, DifferenceConstants.ATTR_SEQUENCE, differences.get(2)); - assertEquals("fourth: " + detailedDiff, - DifferenceConstants.HAS_CHILD_NODES, differences.get(3)); + assertEquals("forth: " + detailedDiff, + DifferenceConstants.ATTR_NAME_NOT_FOUND, + differences.get(3)); + assertEquals("fifth: " + detailedDiff, + DifferenceConstants.HAS_CHILD_NODES, differences.get(4)); } public void testPrototypeIsADetailedDiff() throws Exception { Modified: trunk/xmlunit/tests/java/org/custommonkey/xmlunit/test_Diff.java =================================================================== --- trunk/xmlunit/tests/java/org/custommonkey/xmlunit/test_Diff.java 2007-05-16 11:25:23 UTC (rev 209) +++ trunk/xmlunit/tests/java/org/custommonkey/xmlunit/test_Diff.java 2007-05-18 05:25:53 UTC (rev 210) @@ -1,6 +1,6 @@ /* ****************************************************************** -Copyright (c) 200, Jeff Martin, Tim Bacon +Copyright (c) 2001-2007, Jeff Martin, Tim Bacon All rights reserved. Redistribution and use in source and binary forms, with or without @@ -686,7 +686,7 @@ /** * inspired by {@link * http://day-to-day-stuff.blogspot.com/2007/05/comparing-xml-in-junit-test.html - * Erik von Oosten's Weblog }, made us implement special handling + * Erik von Oosten's Weblog}, made us implement special handling * of schemaLocation. */ public void testNamespacePrefixDiff() throws Exception { Modified: trunk/xmlunit/tests/java/org/custommonkey/xmlunit/test_DifferenceEngine.java =================================================================== --- trunk/xmlunit/tests/java/org/custommonkey/xmlunit/test_DifferenceEngine.java 2007-05-16 11:25:23 UTC (rev 209) +++ trunk/xmlunit/tests/java/org/custommonkey/xmlunit/test_DifferenceEngine.java 2007-05-18 05:25:53 UTC (rev 210) @@ -801,9 +801,9 @@ Element test = document.createElement("foo"); engine.compare(control, test, listener, null); assertEquals(expectedDifference, listener.comparingWhat); - //resetListener(); - //engine.compare(test, control, listener, null); - //assertEquals(expectedDifference, listener.comparingWhat); + resetListener(); + engine.compare(test, control, listener, null); + assertEquals(expectedDifference, listener.comparingWhat); } public void testDifferentSchemaLocation() throws Exception { @@ -831,6 +831,15 @@ assertEquals(expectedDifference, listener.comparingWhat); } + public void testMissingAttribute() throws Exception { + Element control = document.createElement("foo"); + control.setAttribute("bar", "baz"); + Element test = document.createElement("foo"); + test.setAttribute("baz", "bar"); + engine.compare(control, test, listener, null); + assertEquals(ATTR_NAME_NOT_FOUND_ID, listener.comparingWhat); + } + private void listenToDifferences(String control, String test) throws SAXException, IOException { Document controlDoc = XMLUnit.buildControlDocument(control); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |