Hello community,
here is the log from the commit of package python3-unittest-xml-reporting for
openSUSE:Factory checked in at 2015-04-15 16:24:57
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python3-unittest-xml-reporting (Old)
and /work/SRC/openSUSE:Factory/.python3-unittest-xml-reporting.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python3-unittest-xml-reporting"
Changes:
--------
---
/work/SRC/openSUSE:Factory/python3-unittest-xml-reporting/python3-unittest-xml-reporting.changes
2015-02-16 07:36:36.000000000 +0100
+++
/work/SRC/openSUSE:Factory/.python3-unittest-xml-reporting.new/python3-unittest-xml-reporting.changes
2015-04-15 16:25:00.000000000 +0200
@@ -1,0 +2,10 @@
+Tue Apr 14 22:56:25 UTC 2015 - [email protected]
+
+- update to version 1.12.0:
+ * add xmlrunner.extra to packages.
+ * try to fix #79 by compiling the regex differently
+ * fix issue #77 by adding an addSubTest method to result
+ * make test for issue #77 more thorough
+ * issue #77: add tests for unittest.TestCase.subTest
+
+-------------------------------------------------------------------
Old:
----
unittest-xml-reporting-1.11.0.tar.gz
New:
----
unittest-xml-reporting-1.12.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python3-unittest-xml-reporting.spec ++++++
--- /var/tmp/diff_new_pack.a8xhQv/_old 2015-04-15 16:25:01.000000000 +0200
+++ /var/tmp/diff_new_pack.a8xhQv/_new 2015-04-15 16:25:01.000000000 +0200
@@ -17,7 +17,7 @@
Name: python3-unittest-xml-reporting
-Version: 1.11.0
+Version: 1.12.0
Release: 0
Url: http://github.com/danielfm/unittest-xml-reporting/tree/master/
Summary: PyUnit-based test runner with JUnit like XML reporting
++++++ unittest-xml-reporting-1.11.0.tar.gz ->
unittest-xml-reporting-1.12.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/unittest-xml-reporting-1.11.0/PKG-INFO
new/unittest-xml-reporting-1.12.0/PKG-INFO
--- old/unittest-xml-reporting-1.11.0/PKG-INFO 2015-02-13 09:23:29.000000000
+0100
+++ new/unittest-xml-reporting-1.12.0/PKG-INFO 2015-04-14 23:48:16.000000000
+0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: unittest-xml-reporting
-Version: 1.11.0
+Version: 1.12.0
Summary: unittest-based test runner with Ant/JUnit like XML reporting.
Home-page: http://github.com/xmlrunner/unittest-xml-reporting/tree/master/
Author: Daniel Fernandes Martins
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/unittest-xml-reporting-1.11.0/setup.py
new/unittest-xml-reporting-1.12.0/setup.py
--- old/unittest-xml-reporting-1.11.0/setup.py 2014-12-12 11:06:59.000000000
+0100
+++ new/unittest-xml-reporting-1.12.0/setup.py 2015-04-14 23:43:46.000000000
+0200
@@ -41,7 +41,7 @@
'Topic :: Software Development :: Libraries :: Python Modules',
'Topic :: Software Development :: Testing'
],
- packages = ['xmlrunner'],
+ packages = ['xmlrunner', 'xmlrunner.extra'],
zip_safe = False,
include_package_data = True,
install_requires = install_requires,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/unittest-xml-reporting-1.11.0/tests/testsuite.py
new/unittest-xml-reporting-1.12.0/tests/testsuite.py
--- old/unittest-xml-reporting-1.11.0/tests/testsuite.py 2015-02-13
08:28:41.000000000 +0100
+++ new/unittest-xml-reporting-1.12.0/tests/testsuite.py 2015-04-14
23:43:46.000000000 +0200
@@ -169,6 +169,33 @@
testsuite_output = self.stream.getvalue()
self.assertIn('should be printed', testsuite_output)
+ @unittest.skipIf(not hasattr(unittest.TestCase,'subTest'),
+ 'unittest.TestCase.subTest not present.')
+ def test_unittest_subTest(self):
+ # test for issue #77
+ class DummySubTest(unittest.TestCase):
+ def test_subTest(self):
+ for i in range(2):
+ with self.subTest(i=i):
+ self.fail('this is a subtest.')
+ outdir = BytesIO()
+ runner = xmlrunner.XMLTestRunner(
+ stream=self.stream, output=outdir, verbosity=self.verbosity,
+ **self.runner_kwargs)
+ suite = unittest.TestSuite()
+ suite.addTest(DummySubTest('test_subTest'))
+ runner.run(suite)
+ outdir.seek(0)
+ output = outdir.read()
+ self.assertIn(
+ b'<testcase classname="tests.testsuite.DummySubTest" '
+ b'name="test_subTest (i=0)"',
+ output)
+ self.assertIn(
+ b'<testcase classname="tests.testsuite.DummySubTest" '
+ b'name="test_subTest (i=1)"',
+ output)
+
def test_xmlrunner_pass(self):
suite = unittest.TestSuite()
suite.addTest(self.DummyTest('test_pass'))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/unittest-xml-reporting-1.11.0/unittest_xml_reporting.egg-info/PKG-INFO
new/unittest-xml-reporting-1.12.0/unittest_xml_reporting.egg-info/PKG-INFO
--- old/unittest-xml-reporting-1.11.0/unittest_xml_reporting.egg-info/PKG-INFO
2015-02-13 09:23:28.000000000 +0100
+++ new/unittest-xml-reporting-1.12.0/unittest_xml_reporting.egg-info/PKG-INFO
2015-04-14 23:48:13.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: unittest-xml-reporting
-Version: 1.11.0
+Version: 1.12.0
Summary: unittest-based test runner with Ant/JUnit like XML reporting.
Home-page: http://github.com/xmlrunner/unittest-xml-reporting/tree/master/
Author: Daniel Fernandes Martins
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/unittest-xml-reporting-1.11.0/unittest_xml_reporting.egg-info/SOURCES.txt
new/unittest-xml-reporting-1.12.0/unittest_xml_reporting.egg-info/SOURCES.txt
---
old/unittest-xml-reporting-1.11.0/unittest_xml_reporting.egg-info/SOURCES.txt
2015-02-13 09:23:29.000000000 +0100
+++
new/unittest-xml-reporting-1.12.0/unittest_xml_reporting.egg-info/SOURCES.txt
2015-04-14 23:48:16.000000000 +0200
@@ -12,7 +12,10 @@
xmlrunner/__init__.py
xmlrunner/__main__.py
xmlrunner/builder.py
+xmlrunner/dirtyxml.py
xmlrunner/result.py
xmlrunner/runner.py
xmlrunner/unittest.py
-xmlrunner/version.py
\ No newline at end of file
+xmlrunner/version.py
+xmlrunner/extra/__init__.py
+xmlrunner/extra/djangotestrunner.py
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/unittest-xml-reporting-1.11.0/xmlrunner/dirtyxml.py
new/unittest-xml-reporting-1.12.0/xmlrunner/dirtyxml.py
--- old/unittest-xml-reporting-1.11.0/xmlrunner/dirtyxml.py 1970-01-01
01:00:00.000000000 +0100
+++ new/unittest-xml-reporting-1.12.0/xmlrunner/dirtyxml.py 2015-03-17
16:52:52.000000000 +0100
@@ -0,0 +1,38 @@
+#
+# Matches invalid XML1.0 unicode characters, like control characters:
+# http://www.w3.org/TR/2006/REC-xml-20060816/#charsets
+# For Jython users, see http://bugs.jython.org/issue1836
+#
+
+# INVALID_XML_1_0_UNICODE_RE = re.compile(
+# u'[\u0000-\u0008\u000B\u000C\u000E-\u001F\uD800-\uDFFF\uFFFE\uFFFF]',
+# re.UNICODE
+# )
+
+import sys
+import re
+from six import unichr
+
+_illegal_unichrs = [
+ (0x00, 0x08), (0x0B, 0x0C), (0x0E, 0x1F),
+ (0x7F, 0x84), (0x86, 0x9F),
+ (0xFDD0, 0xFDDF), (0xFFFE, 0xFFFF),
+]
+if sys.maxunicode >= 0x10000: # not narrow build
+ _illegal_unichrs.extend([
+ (0x1FFFE, 0x1FFFF), (0x2FFFE, 0x2FFFF),
+ (0x3FFFE, 0x3FFFF), (0x4FFFE, 0x4FFFF),
+ (0x5FFFE, 0x5FFFF), (0x6FFFE, 0x6FFFF),
+ (0x7FFFE, 0x7FFFF), (0x8FFFE, 0x8FFFF),
+ (0x9FFFE, 0x9FFFF), (0xAFFFE, 0xAFFFF),
+ (0xBFFFE, 0xBFFFF), (0xCFFFE, 0xCFFFF),
+ (0xDFFFE, 0xDFFFF), (0xEFFFE, 0xEFFFF),
+ (0xFFFFE, 0xFFFFF), (0x10FFFE, 0x10FFFF),
+ ])
+
+_illegal_ranges = [
+ "%s-%s" % (unichr(low), unichr(high))
+ for (low, high) in _illegal_unichrs
+]
+
+INVALID_XML_1_0_UNICODE_RE = re.compile(u'[%s]' % u''.join(_illegal_ranges))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/unittest-xml-reporting-1.11.0/xmlrunner/extra/djangotestrunner.py
new/unittest-xml-reporting-1.12.0/xmlrunner/extra/djangotestrunner.py
--- old/unittest-xml-reporting-1.11.0/xmlrunner/extra/djangotestrunner.py
1970-01-01 01:00:00.000000000 +0100
+++ new/unittest-xml-reporting-1.12.0/xmlrunner/extra/djangotestrunner.py
2015-02-13 08:47:20.000000000 +0100
@@ -0,0 +1,38 @@
+# -*- coding: utf-8 -*-
+
+"""
+Custom Django test runner that runs the tests using the
+XMLTestRunner class.
+
+This script shows how to use the XMLTestRunner in a Django project. To learn
+how to configure a custom TestRunner in a Django project, please read the
+Django docs website.
+"""
+
+import xmlrunner
+import django
+from django.conf import settings
+
+# future compatibilty with django
+# in django 1.6 DiscoverRunner bacame default and
+# DjangoTestSuiteRunner became depecated, will be removed in 1.8
+if django.VERSION < (1, 6):
+ from django.test.simple import DjangoTestSuiteRunner
+ _DjangoRunner = DjangoTestSuiteRunner
+else:
+ from django.test.runner import DiscoverRunner
+ _DjangoRunner = DiscoverRunner
+
+
+class XMLTestRunner(_DjangoRunner):
+
+ def run_suite(self, suite, **kwargs):
+ verbosity = getattr(settings, 'TEST_OUTPUT_VERBOSE', 1)
+ # XXX: verbosity = self.verbosity
+ if isinstance(verbosity, bool):
+ verbosity = (1, 2)[verbosity]
+ descriptions = getattr(settings, 'TEST_OUTPUT_DESCRIPTIONS', False)
+ output = getattr(settings, 'TEST_OUTPUT_DIR', '.')
+ return xmlrunner.XMLTestRunner(
+ verbosity=verbosity, descriptions=descriptions,
+ output=output, failfast=self.failfast).run(suite)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/unittest-xml-reporting-1.11.0/xmlrunner/result.py
new/unittest-xml-reporting-1.12.0/xmlrunner/result.py
--- old/unittest-xml-reporting-1.11.0/xmlrunner/result.py 2015-02-13
09:01:18.000000000 +0100
+++ new/unittest-xml-reporting-1.12.0/xmlrunner/result.py 2015-04-14
23:43:46.000000000 +0200
@@ -5,6 +5,7 @@
import six
import re
from os import path
+from six import unichr
from six.moves import StringIO
from .unittest import TestResult, _TextTestResult
@@ -12,10 +13,32 @@
# Matches invalid XML1.0 unicode characters, like control characters:
# http://www.w3.org/TR/2006/REC-xml-20060816/#charsets
-INVALID_XML_1_0_UNICODE_RE = re.compile(
- u'[\x00-\x08\x0B\x0C\x0E-\x1F\uD800-\uDFFF\uFFFE\uFFFF]',
- re.UNICODE
-)
+#
http://stackoverflow.com/questions/1707890/fast-way-to-filter-illegal-xml-unicode-chars-in-python
+
+_illegal_unichrs = [
+ (0x00, 0x08), (0x0B, 0x0C), (0x0E, 0x1F),
+ (0x7F, 0x84), (0x86, 0x9F),
+ (0xFDD0, 0xFDDF), (0xFFFE, 0xFFFF),
+]
+if sys.maxunicode >= 0x10000: # not narrow build
+ _illegal_unichrs.extend([
+ (0x1FFFE, 0x1FFFF), (0x2FFFE, 0x2FFFF),
+ (0x3FFFE, 0x3FFFF), (0x4FFFE, 0x4FFFF),
+ (0x5FFFE, 0x5FFFF), (0x6FFFE, 0x6FFFF),
+ (0x7FFFE, 0x7FFFF), (0x8FFFE, 0x8FFFF),
+ (0x9FFFE, 0x9FFFF), (0xAFFFE, 0xAFFFF),
+ (0xBFFFE, 0xBFFFF), (0xCFFFE, 0xCFFFF),
+ (0xDFFFE, 0xDFFFF), (0xEFFFE, 0xEFFFF),
+ (0xFFFFE, 0xFFFFF), (0x10FFFE, 0x10FFFF),
+ ])
+
+_illegal_ranges = [
+ "%s-%s" % (unichr(low), unichr(high))
+ for (low, high) in _illegal_unichrs
+]
+
+INVALID_XML_1_0_UNICODE_RE = re.compile(u'[%s]' % u''.join(_illegal_ranges))
+
def xml_safe_unicode(base, encoding='utf-8'):
@@ -64,7 +87,7 @@
# Possible test outcomes
(SUCCESS, FAILURE, ERROR, SKIP) = range(4)
- def __init__(self, test_result, test_method, outcome=SUCCESS, err=None):
+ def __init__(self, test_result, test_method, outcome=SUCCESS, err=None,
subTest=None):
self.test_result = test_result
self.outcome = outcome
self.elapsed_time = 0
@@ -81,6 +104,8 @@
self.test_name = testcase_name(test_method)
self.test_id = test_method.id()
+ if subTest:
+ self.test_id = subTest.id()
def id(self):
return self.test_id
@@ -212,6 +237,18 @@
))
self._prepare_callback(testinfo, [], 'ERROR', 'E')
+ def addSubTest(self, testcase, test, err):
+ """
+ Called when a subTest method raises an error.
+ """
+ self._save_output_data()
+ testinfo = _TestInfo(self, testcase, _TestInfo.ERROR, err,
subTest=test)
+ self.errors.append((
+ testinfo,
+ self._exc_info_to_string(err, testcase)
+ ))
+ self._prepare_callback(testinfo, [], 'ERROR', 'E')
+
def addSkip(self, test, reason):
"""
Called when a test method was skipped.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/unittest-xml-reporting-1.11.0/xmlrunner/version.py
new/unittest-xml-reporting-1.12.0/xmlrunner/version.py
--- old/unittest-xml-reporting-1.11.0/xmlrunner/version.py 2015-02-13
09:15:35.000000000 +0100
+++ new/unittest-xml-reporting-1.12.0/xmlrunner/version.py 2015-04-14
23:45:24.000000000 +0200
@@ -1,2 +1,2 @@
-__version__ = '1.11.0'
+__version__ = '1.12.0'