1 new commit in pytest:
https://bitbucket.org/hpk42/pytest/changeset/a233e29b1941/ changeset: a233e29b1941 user: hpk42 date: 2012-05-22 17:18:04 summary: fix issue 144 - wrong classname in junitxml affected #: 4 files diff -r 3109649e400927e2b89ad41127ad39c282680126 -r a233e29b19411b9906980dc963c374fa180c3875 CHANGELOG --- a/CHANGELOG +++ b/CHANGELOG @@ -12,6 +12,7 @@ - fix issue #141: switch from the deceased paste.pocoo.org to bpaste.net - fix issue #143: call unconfigure/sessionfinish always when configure/sessionstart where called +- fix issue #144: better mangle test ids to junitxml classnames Changes between 2.2.2 and 2.2.3 ---------------------------------------- diff -r 3109649e400927e2b89ad41127ad39c282680126 -r a233e29b19411b9906980dc963c374fa180c3875 _pytest/junitxml.py --- a/_pytest/junitxml.py +++ b/_pytest/junitxml.py @@ -81,6 +81,11 @@ config.pluginmanager.unregister(xml) +def mangle_testnames(names): + names = [x.replace(".py", "") for x in names if x != '()'] + names[0] = names[0].replace("/", '.') + return names + class LogXML(object): def __init__(self, logfile, prefix): logfile = os.path.expanduser(os.path.expandvars(logfile)) @@ -91,9 +96,7 @@ self.failed = self.errors = 0 def _opentestcase(self, report): - names = report.nodeid.split("::") - names[0] = names[0].replace("/", '.') - names = [x.replace(".py", "") for x in names if x != "()"] + names = mangle_testnames(report.nodeid.split("::")) classnames = names[:-1] if self.prefix: classnames.insert(0, self.prefix) diff -r 3109649e400927e2b89ad41127ad39c282680126 -r a233e29b19411b9906980dc963c374fa180c3875 doc/announce/release-2.2.4.txt --- a/doc/announce/release-2.2.4.txt +++ b/doc/announce/release-2.2.4.txt @@ -34,4 +34,5 @@ - fix issue #141: switch from the deceased paste.pocoo.org to bpaste.net - fix issue #143: call unconfigure/sessionfinish always when configure/sessionstart where called +- fix issue #144: better mangle test ids to junitxml classnames diff -r 3109649e400927e2b89ad41127ad39c282680126 -r a233e29b19411b9906980dc963c374fa180c3875 testing/test_junitxml.py --- a/testing/test_junitxml.py +++ b/testing/test_junitxml.py @@ -279,6 +279,13 @@ if not sys.platform.startswith("java"): assert "hx" in fnode.toxml() +def test_mangle_testnames(): + from _pytest.junitxml import mangle_testnames + names = ["a/pything.py", "Class", "()", "method"] + newnames = mangle_testnames(names) + assert newnames == ["a.pything", "Class", "method"] + + class TestNonPython: def test_summing_simple(self, testdir): testdir.makeconftest(""" Repository URL: https://bitbucket.org/hpk42/pytest/ -- This is a commit notification from bitbucket.org. You are receiving this because you have the service enabled, addressing the recipient of this email. _______________________________________________ py-svn mailing list py-svn@codespeak.net http://codespeak.net/mailman/listinfo/py-svn