[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1001419: python-css-parser: (autopkgtest) needs update for python3.10: Right exception, wrong message: got 'can't set attribute 'literalname'' instead of 'can't set attribute'



Source: python-css-parser
Version: 1.0.6-1
Severity: serious
X-Debbugs-CC: debian-ci@lists.debian.org
Tags: sid bookworm
User: debian-ci@lists.debian.org
Usertags: needs-update
User: debian-python@lists.debian.org
Usertags: python3.10
Control: affects -1 src:python3-defaults

Dear maintainer(s),

We are in the transition of adding python3.10 to the supported Python versions [0]. With a recent upload of python3-defaults the autopkgtest of python-css-parser fails in testing when that autopkgtest is run with the binary packages of python3-defaults from unstable. It passes when run with only packages from testing. In tabular form:

                       pass            fail
python3-defaults       from testing    3.9.8-1
python-css-parser      from testing    1.0.6-1
all others             from testing    from testing

I copied some of the output at the bottom of this report.

Currently this regression is blocking the migration of python3-defaults to testing [1]. https://docs.python.org/3/whatsnew/3.10.html lists what's new in Python3.10, it may help to identify what needs to be updated.

More information about this bug and the reason for filing it can be found on
https://wiki.debian.org/ContinuousIntegration/RegressionEmailInformation

Paul

[0] https://bugs.debian.org/996584
[1] https://qa.debian.org/excuses.php?package=python3-defaults

https://ci.debian.net/data/autopkgtest/testing/amd64/p/python-css-parser/17420647/log.gz

=================================== FAILURES =================================== ______________________ PropertyTestCase.test_literalname _______________________

self = <css_parser_tests.test_property.PropertyTestCase testMethod=test_literalname>
excClass = <class 'AttributeError'>, msg = "can't set attribute"
callableObj = <method-wrapper '__setattr__' of Property object at 0x7fd187f22d10>
args = ('literalname', 'color'), kwargs = {}
excMsg = "can't set attribute 'literalname'"

    def assertRaisesMsg(self, excClass, msg, callableObj, *args, **kwargs):
        """
        Just like unittest.TestCase.assertRaises,
        but checks that the message is right too.
            Usage::
                self.assertRaisesMsg(
                MyException, "Exception message",
                my_function, (arg1, arg2)
                )
            from
        http://www.nedbatchelder.com/blog/200609.html#e20060905T064418
        """
        try:
          callableObj(*args, **kwargs)
E           AttributeError: can't set attribute 'literalname'

/tmp/autopkgtest-lxc.ysif6shm/downtmp/autopkgtest_tmp/python-css-parser/css_parser_tests/basetest.py:168: AttributeError

During handling of the above exception, another exception occurred:

self = <css_parser_tests.test_property.PropertyTestCase testMethod=test_literalname>

    def test_literalname(self):
        "Property.literalname"
        p = css_parser.css.property.Property(r'c\olor', 'red')
        self.assertEqual(r'c\olor', p.literalname)
      self.assertRaisesMsg(AttributeError, "can't set attribute", p.__setattr__,
                             'literalname', 'color')

/tmp/autopkgtest-lxc.ysif6shm/downtmp/autopkgtest_tmp/python-css-parser/css_parser_tests/test_property.py:165: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <css_parser_tests.test_property.PropertyTestCase testMethod=test_literalname>
excClass = <class 'AttributeError'>, msg = "can't set attribute"
callableObj = <method-wrapper '__setattr__' of Property object at 0x7fd187f22d10>
args = ('literalname', 'color'), kwargs = {}
excMsg = "can't set attribute 'literalname'"

    def assertRaisesMsg(self, excClass, msg, callableObj, *args, **kwargs):
        """
        Just like unittest.TestCase.assertRaises,
        but checks that the message is right too.
            Usage::
                self.assertRaisesMsg(
                MyException, "Exception message",
                my_function, (arg1, arg2)
                )
            from
        http://www.nedbatchelder.com/blog/200609.html#e20060905T064418
        """
        try:
            callableObj(*args, **kwargs)
        except excClass as exc:
            excMsg = str(exc)
            if not msg:
                # No message provided: any message is fine.
                return
            elif excMsg == msg:
                # Message provided, and we got the right message: passes.
                return
            else:
                # Message provided, and it didn't match: fail!
              raise self.failureException(
"Right exception, wrong message: got '%s' instead of '%s'" %
                    (excMsg, msg))
E AssertionError: Right exception, wrong message: got 'can't set attribute 'literalname'' instead of 'can't set attribute'

/tmp/autopkgtest-lxc.ysif6shm/downtmp/autopkgtest_tmp/python-css-parser/css_parser_tests/basetest.py:179: AssertionError ______________________ SelectorTestCase.test_specificity _______________________

self = <css_parser_tests.test_selector.SelectorTestCase testMethod=test_specificity>
excClass = <class 'AttributeError'>, msg = "can't set attribute"
callableObj = <function SelectorTestCase.test_specificity.<locals>._set at 0x7fd1880565f0>
args = (), kwargs = {}, excMsg = "can't set attribute 'specificity'"

    def assertRaisesMsg(self, excClass, msg, callableObj, *args, **kwargs):
        """
        Just like unittest.TestCase.assertRaises,
        but checks that the message is right too.
            Usage::
                self.assertRaisesMsg(
                MyException, "Exception message",
                my_function, (arg1, arg2)
                )
            from
        http://www.nedbatchelder.com/blog/200609.html#e20060905T064418
        """
        try:
          callableObj(*args, **kwargs)

/tmp/autopkgtest-lxc.ysif6shm/downtmp/autopkgtest_tmp/python-css-parser/css_parser_tests/basetest.py:168: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  def _set(): selector.specificity = 1
E   AttributeError: can't set attribute 'specificity'

/tmp/autopkgtest-lxc.ysif6shm/downtmp/autopkgtest_tmp/python-css-parser/css_parser_tests/test_selector.py:414: AttributeError

During handling of the above exception, another exception occurred:

self = <css_parser_tests.test_selector.SelectorTestCase testMethod=test_specificity>

    def test_specificity(self):
        "Selector.specificity"
        selector = css_parser.css.Selector()
            # readonly
        def _set(): selector.specificity = 1
      self.assertRaisesMsg(AttributeError, "can't set attribute", _set)

/tmp/autopkgtest-lxc.ysif6shm/downtmp/autopkgtest_tmp/python-css-parser/css_parser_tests/test_selector.py:415: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <css_parser_tests.test_selector.SelectorTestCase testMethod=test_specificity>
excClass = <class 'AttributeError'>, msg = "can't set attribute"
callableObj = <function SelectorTestCase.test_specificity.<locals>._set at 0x7fd1880565f0>
args = (), kwargs = {}, excMsg = "can't set attribute 'specificity'"

    def assertRaisesMsg(self, excClass, msg, callableObj, *args, **kwargs):
        """
        Just like unittest.TestCase.assertRaises,
        but checks that the message is right too.
            Usage::
                self.assertRaisesMsg(
                MyException, "Exception message",
                my_function, (arg1, arg2)
                )
            from
        http://www.nedbatchelder.com/blog/200609.html#e20060905T064418
        """
        try:
            callableObj(*args, **kwargs)
        except excClass as exc:
            excMsg = str(exc)
            if not msg:
                # No message provided: any message is fine.
                return
            elif excMsg == msg:
                # Message provided, and we got the right message: passes.
                return
            else:
                # Message provided, and it didn't match: fail!
              raise self.failureException(
"Right exception, wrong message: got '%s' instead of '%s'" %
                    (excMsg, msg))
E AssertionError: Right exception, wrong message: got 'can't set attribute 'specificity'' instead of 'can't set attribute'

/tmp/autopkgtest-lxc.ysif6shm/downtmp/autopkgtest_tmp/python-css-parser/css_parser_tests/basetest.py:179: AssertionError

Attachment: OpenPGP_signature
Description: OpenPGP digital signature


Reply to: