Esempio n. 1
0
    def test_remove_child(self):
        "A child can be removed"
        source = TreeSource(data={
            ('first', 111):
            None,
            ('second', 222): [],
            ('third', 333): [('third.one', 331), ('third.two', 332)]
        },
                            accessors=['val1', 'val2'])

        self.assertEqual(len(source), 3)
        self.assertEqual(len(source[2]), 2)

        listener = Mock()
        source.add_listener(listener)

        # Remove "third.two"
        node = source.remove(source[2][1])

        self.assertEqual(len(source), 3)
        self.assertEqual(len(source[2]), 1)

        listener.remove.assert_called_once_with(item=node,
                                                index=1,
                                                parent=source[2])

        # Remove "third.one"
        node = source.remove(source[2][0])

        self.assertEqual(len(source), 3)
        self.assertEqual(len(source[2]), 0)

        listener.remove.assert_any_call(item=node, index=0, parent=source[2])
Esempio n. 2
0
    def test_remove_child(self):
        "A child can be removed"
        source = TreeSource(
            data={
                ('first', 111): None,
                ('second', 222): [],
                ('third', 333): [
                    ('third.one', 331),
                    ('third.two', 332)
                ]
            },
            accessors=['val1', 'val2']
        )

        self.assertEqual(len(source), 3)
        self.assertEqual(len(source[2]), 2)

        listener = Mock()
        source.add_listener(listener)

        # Remove the child element
        node = source.remove(source[2][1])

        self.assertEqual(len(source), 3)
        self.assertEqual(len(source[2]), 1)

        listener.remove.assert_called_once_with(item=node)
Esempio n. 3
0
    def test_remove_root(self):
        "A root can be removed"
        source = TreeSource(data={
            ('first', 111):
            None,
            ('second', 222): [],
            ('third', 333): [('third.one', 331), ('third.two', 332)]
        },
                            accessors=['val1', 'val2'])

        self.assertEqual(len(source), 3)
        self.assertEqual(len(source[2]), 2)

        listener = Mock()
        source.add_listener(listener)

        # Remove the root element
        node = source.remove(source[1])

        self.assertEqual(len(source), 2)
        self.assertEqual(len(source[1]), 2)

        listener.remove.assert_called_once_with(item=node,
                                                index=1,
                                                parent=None)