def test_insert_first_child(self): "If a node previously didn't allow children, inserting changes this" 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.assertFalse(source[0].can_have_children()) self.assertEqual(len(source[0]), 0) listener = Mock() source.add_listener(listener) # Insert the new element node = source.insert(source[0], 0, val1='new element', val2=999) self.assertEqual(len(source), 3) self.assertTrue(source[0].can_have_children()) self.assertEqual(len(source[0]), 1) self.assertEqual(source[0][0], node) self.assertEqual(node.val1, 'new element') self.assertEqual(node.val2, 999) listener.insert.assert_called_once_with(parent=source[0], index=0, item=node)
def test_insert_first_child(self): "If a node previously didn't allow children, inserting changes this" 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.assertFalse(source[0].can_have_children()) self.assertEqual(len(source[0]), 0) listener = Mock() source.add_listener(listener) # Insert the new element node = source.insert(source[0], 0, val1='new element', val2=999) self.assertEqual(len(source), 3) self.assertTrue(source[0].can_have_children()) self.assertEqual(len(source[0]), 1) self.assertEqual(source[0][0], node) self.assertEqual(node.val1, 'new element') self.assertEqual(node.val2, 999) listener.insert.assert_called_once_with(parent=source[0], index=0, item=node)
def test_insert_child_kwargs(self): "A new child can be inserted using kwargs" 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) # Insert the new element node = source.insert(source[2], 1, val1='new element', val2=999) self.assertEqual(len(source), 3) self.assertEqual(len(source[2]), 3) self.assertEqual(source[2][1], node) self.assertEqual(node.val1, 'new element') self.assertEqual(node.val2, 999) listener.insert.assert_called_once_with(parent=source[2], index=1, item=node)
def test_insert_child_kwargs(self): "A new child can be inserted using kwargs" 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) # Insert the new element node = source.insert(source[2], 1, val1='new element', val2=999) self.assertEqual(len(source), 3) self.assertEqual(len(source[2]), 3) self.assertEqual(source[2][1], node) self.assertEqual(node.val1, 'new element') self.assertEqual(node.val2, 999) listener.insert.assert_called_once_with(parent=source[2], index=1, item=node)