Hey- Erik Uzureau wrote: > Tim, this is a nice new addition to the testing suite. Great work! > > a) do you think you could put a copy of this email in a wiki > somewhere? It would probably be nice to be able to refer back to this > in the future
Sure. Without a more appropriate place (but wiki's aren't really about appropriate places are they?) to put it, I've added some stuff to the WritingUnitTests page: http://trac.openlayers.org/wiki/WritingUnitTests#ModificationstoTest.AnotherWay If anybody else wants to document any other changes to testing stuff [1], it could be tacked on there. > > b) have you contacted the Test.Anotherway people to see if they would > be interested in a patch? > Well, let's see how it works for us before we go trying to sell it. Tim > Erik > > On 2/22/08, Tim Schaub wrote: >> Hey- >> >> So, I assume that the people for whom this is relevant already read >> commit messages, but I thought I'd document an addition to our testing >> framework here anyway. >> >> If you're writing tests for anything that does parsing of XML, I've >> added a method to Test.AnotherWay test objects that will be useful. The >> new xml_eq method is similar to html_eq except it works for generic xml >> (and works in Safari and FF3 where html_eq fails). >> >> Use is pretty straightforward. You can compare element nodes to element >> nodes, nodes to strings, or strings to strings. >> >> I added a single script to our run-tests.html page that extends >> Test.AnotherWay: >> http://trac.openlayers.org/browser/trunk/openlayers/tests/xml_eq.js >> >> Though I grimace when I see this much code in email, I'll paste a couple >> examples: >> >> // Pretend we're on a test page in a test function >> var format = new OpenLayers.Format.XML(); >> var doc, got, exp; >> >> // Create a doc and check that root is equivalent to some string >> doc = format.read( >> "<chicken>soup</chicken>" >> ); >> got = doc.documentElement; >> exp = "<chicken>soup</chicken>"; >> t.xml_eq(got, exp, "passes"); >> >> // See what happens with bad expectations >> exp = "<chicken>fat</chicken>"; >> t.xml_eq(got, exp, "fails"); >> // Fails with the following message: >> // Bad child 0 for element chicken: Node value mismatch: got soup >> // but expected fat >> >> // Test xml with different namespace aliases >> got = "<foo:chicken xmlns:foo='namespace'>soup</foo:chicken>"; >> exp = "<bar:chicken xmlns:bar='namespace'>soup</bar:chicken>"; >> t.xml_eq(got, exp, "passes"); >> >> // Assert that prefixes are equal >> t.xml_eq(got, exp, "fails", {prefix: true}); >> // Fails with the following message: >> // Node name mismatch: got foo:chicken but expected bar:chicken >> >> >> Etc. >> >> Tim >> >> _______________________________________________ >> Dev mailing list >> [email protected] >> http://openlayers.org/mailman/listinfo/dev >> > > !DSPAM:4033,47bf4b4d47441030819293! > _______________________________________________ Dev mailing list [email protected] http://openlayers.org/mailman/listinfo/dev
