Example #1
0
    def test__6(self):
        ''' Make sure that depth_visit() visits in the expected order '''

        # The result depends on the OS
        expected = [
            os.sep.join(['', 'foo', 'bar']),
            os.sep.join(['', 'foo', 'bar', 'baz']),
            os.sep.join([
                '',
                'foo',
                'bar',
                'baz',
                'barbar',
            ]),
            os.sep.join(['', 'foo', 'bar', 'baz', 'barbar', 'bazbaz']),
        ]

        visit_order = []

        def on_visit_called(*args):
            ''' Just an helper function '''
            visit_order.append(args[0])

        components = ['bar', 'baz', 'barbar', 'bazbaz']
        utils_path.depth_visit('/foo', components, on_visit_called)
        self.assertEqual(visit_order, expected)
Example #2
0
    def test__1(self):
        ''' Make sure that depth_visit() works OK w/ empty components '''

        visit_called = [0]
        def on_visit_called(*args):
            ''' Just an helper function '''
            visit_called[0] += 1

        utils_path.depth_visit('/foo', [], on_visit_called)

        self.assertFalse(visit_called[0])
Example #3
0
    def test__1(self):
        ''' Make sure that depth_visit() works OK w/ empty components '''

        visit_called = [0]

        def on_visit_called(*args):
            ''' Just an helper function '''
            visit_called[0] += 1

        utils_path.depth_visit('/foo', [], on_visit_called)

        self.assertFalse(visit_called[0])
Example #4
0
    def test__7(self):
        ''' Make sure that depth_visit() correctly flags the leaf node '''

        # The result depends on the OS
        expected = os.sep.join(['', 'foo', 'bar', 'baz',
                                'barbar', 'bazbaz'])

        failure = [False]
        def on_visit_called(*args):
            ''' Just an helper function '''
            if args[1] and args[0] != expected:
                failure[0] = True

        components = ['bar', 'baz', 'barbar', 'bazbaz']
        utils_path.depth_visit('/foo', components, on_visit_called)
        self.assertFalse(failure[0])
Example #5
0
    def test__7(self):
        ''' Make sure that depth_visit() correctly flags the leaf node '''

        # The result depends on the OS
        expected = os.sep.join(['', 'foo', 'bar', 'baz', 'barbar', 'bazbaz'])

        failure = [False]

        def on_visit_called(*args):
            ''' Just an helper function '''
            if args[1] and args[0] != expected:
                failure[0] = True

        components = ['bar', 'baz', 'barbar', 'bazbaz']
        utils_path.depth_visit('/foo', components, on_visit_called)
        self.assertFalse(failure[0])
Example #6
0
    def test__6(self):
        ''' Make sure that depth_visit() visits in the expected order '''

        # The result depends on the OS
        expected = [
                    os.sep.join(['', 'foo', 'bar']),
                    os.sep.join(['', 'foo', 'bar', 'baz']),
                    os.sep.join(['', 'foo', 'bar', 'baz', 'barbar',]),
                    os.sep.join(['', 'foo', 'bar', 'baz', 'barbar', 'bazbaz']),
                   ]

        visit_order = []
        def on_visit_called(*args):
            ''' Just an helper function '''
            visit_order.append(args[0])

        components = ['bar', 'baz', 'barbar', 'bazbaz']
        utils_path.depth_visit('/foo', components, on_visit_called)
        self.assertEqual(visit_order, expected)
Example #7
0
    def test__2(self):
        ''' Make sure that depth_visit() accepts a non-ascii prefix '''

        visit = {
            "count":
            0,
            "expect_path": [
                six.b("/foo\xc3\xa8").decode("utf-8") + "/bar",
                six.b("/foo\xc3\xa8").decode("utf-8") + "/bar" + "/baz",
            ],
            "expect_leaf": [False, True],
        }

        def on_visit_called(path, leaf):
            ''' Just an helper function '''
            self.assertEqual(path, visit["expect_path"][visit["count"]])
            self.assertEqual(leaf, visit["expect_leaf"][visit["count"]])
            visit["count"] += 1

        utils_path.depth_visit(six.b('/foo\xc3\xa8'), ['bar', 'baz'],
                               on_visit_called)
Example #8
0
    def test__2(self):
        ''' Make sure that depth_visit() accepts a non-ascii prefix '''

        visit = {
            "count": 0,
            "expect_path": [
                six.b("/foo\xc3\xa8").decode("utf-8") + "/bar",
                six.b("/foo\xc3\xa8").decode("utf-8") + "/bar" + "/baz",
            ],
            "expect_leaf": [
                False,
                True
            ],
        }

        def on_visit_called(path, leaf):
            ''' Just an helper function '''
            self.assertEqual(path, visit["expect_path"][visit["count"]])
            self.assertEqual(leaf, visit["expect_leaf"][visit["count"]])
            visit["count"] += 1

        utils_path.depth_visit(six.b('/foo\xc3\xa8'), ['bar',
          'baz'], on_visit_called)