コード例 #1
0
 def test_init(self):
     path = Path('attr.attr2')
     assert path.path == 'attr.attr2'
コード例 #2
0
 def test_init(self):
     path = AttrPath(self.SubSection, 'section.document')
     assert path.class_ == self.SubSection
     assert path.path == Path('section.document')
コード例 #3
0
class TestPath(object):
    def test_init(self):
        path = Path('attr.attr2')
        assert path.path == 'attr.attr2'

    def test_init_with_path_object(self):
        path = Path(Path('attr.attr2'))
        assert path.path == 'attr.attr2'

    def test_iter(self):
        path = Path('s.s2.s3')
        assert list(path) == ['s', 's2', 's3']

    @mark.parametrize(('path', 'length'),
                      ((Path('s.s2.s3'), 3), (Path('s.s2'), 2), (Path(''), 0)))
    def test_len(self, path, length):
        return len(path) == length

    def test_reversed(self):
        path = Path('s.s2.s3')
        assert list(reversed(path)) == ['s3', 's2', 's']

    def test_repr(self):
        path = Path('s.s2')
        assert repr(path) == "Path('s.s2')"

    def test_getitem(self):
        path = Path('s.s2')
        assert path[0] == 's'
        assert path[1] == 's2'

    def test_str(self):
        assert str(Path('s.s2')) == 's.s2'

    def test_index(self):
        assert Path('s.s2.s3').index('s2') == 1

    def test_unicode(self):
        assert six.text_type(Path('s.s2')) == u's.s2'

    def test_getitem_with_slice(self):
        path = Path('s.s2.s3')
        assert path[1:] == Path('s2.s3')

    @mark.parametrize(('test', 'result'),
                      ((Path('s.s2') == Path('s.s2'), True),
                       (Path('s.s2') == Path('s.s3'), False)))
    def test_eq(self, test, result):
        assert test is result

    @mark.parametrize(('test', 'result'),
                      ((Path('s.s2') != Path('s.s2'), False),
                       (Path('s.s2') != Path('s.s3'), True)))
    def test_ne(self, test, result):
        assert test is result
コード例 #4
0
 def test_unicode(self):
     assert six.text_type(Path('s.s2')) == u's.s2'
コード例 #5
0
 def test_getitem_with_slice(self):
     path = Path('s.s2.s3')
     assert path[1:] == Path('s2.s3')
コード例 #6
0
 def test_str(self):
     assert str(Path('s.s2')) == 's.s2'
コード例 #7
0
 def test_index(self):
     assert Path('s.s2.s3').index('s2') == 1
コード例 #8
0
 def test_getitem(self):
     path = Path('s.s2')
     assert path[0] == 's'
     assert path[1] == 's2'
コード例 #9
0
 def test_repr(self):
     path = Path('s.s2')
     assert repr(path) == "Path('s.s2')"
コード例 #10
0
 def test_reversed(self):
     path = Path('s.s2.s3')
     assert list(reversed(path)) == ['s3', 's2', 's']
コード例 #11
0
 def test_iter(self):
     path = Path('s.s2.s3')
     assert list(path) == ['s', 's2', 's3']
コード例 #12
0
 def test_init_with_path_object(self):
     path = Path(Path('attr.attr2'))
     assert path.path == 'attr.attr2'