New submission from Stefan Behnel <sco...@users.sourceforge.net>:

These are tests from lxml's ET compatibility test suite that now fail in 
ElementTree:

    def test_delslice_step(self):
        Element = self.etree.Element
        SubElement = self.etree.SubElement

        a = Element('a')
        b = SubElement(a, 'b')
        c = SubElement(a, 'c')
        d = SubElement(a, 'd')
        e = SubElement(a, 'e')

        del a[1::2]
        self.assertEquals(
            [b, d],
            list(a))

    def test_delslice_step_negative(self):
        Element = self.etree.Element
        SubElement = self.etree.SubElement

        a = Element('a')
        b = SubElement(a, 'b')
        c = SubElement(a, 'c')
        d = SubElement(a, 'd')
        e = SubElement(a, 'e')

        del a[::-1]
        self.assertEquals(
            [],
            list(a))

    def test_delslice_step_negative2(self):
        Element = self.etree.Element
        SubElement = self.etree.SubElement

        a = Element('a')
        b = SubElement(a, 'b')
        c = SubElement(a, 'c')
        d = SubElement(a, 'd')
        e = SubElement(a, 'e')

        del a[::-2]
        self.assertEquals(
            [b, d],
            list(a))

The error messages go like this:

    del a[1::2]
    ValueError: attempt to assign sequence of size 0 to extended slice of size 2
    del a[::-1]
    ValueError: attempt to assign sequence of size 0 to extended slice of size 4
    del a[::-2]
    ValueError: attempt to assign sequence of size 0 to extended slice of size 2


Additionally, I get this error:

    self.assertNotEquals(None, e.code)
    AttributeError: 'ParseError' object has no attribute 'code'

for this test:

    required_versions_ET['test_feed_parser_error_position'] = (1,3)
    def test_feed_parser_error_position(self):
        ParseError = self.etree.ParseError
        parser = self.etree.XMLParser()
        try:
            parser.close()
        except ParseError:
            e = sys.exc_info()[1]
            self.assertNotEquals(None, e.code)
            self.assertNotEquals(0, e.code)
            self.assert_(isinstance(e.position, tuple))
            self.assert_(e.position >= (0, 0))


The complete test suite is here:

https://github.com/lxml/lxml/blob/master/src/lxml/tests/test_elementtree.py

----------
components: Library (Lib), XML
messages: 154780
nosy: scoder
priority: normal
severity: normal
status: open
title: Failing tests for ElementTree
type: behavior
versions: Python 3.3

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue14178>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to