def test_balanced_delete3(self): unbalancedSet = PersistentBalancedSet(5, iterator='preorder').insert( 4).insert(3).insert(3.5).insert(3.6).insert(6) balancedSet = unbalancedSet.delete(3.6) self.assertEqual(unbalancedSet, [4, 3.5, 3, 3.6, 5, 6]) self.assertEqual(balancedSet, [4, 3.5, 3, 5, 6]) balancedSet1 = balancedSet.delete(6) self.assertEqual(unbalancedSet, [4, 3.5, 3, 3.6, 5, 6]) self.assertEqual(balancedSet, [4, 3.5, 3, 5, 6]) self.assertEqual(balancedSet1, [4, 3.5, 3, 5]) balancedSet2 = balancedSet1.delete(3.5) self.assertEqual(unbalancedSet, [4, 3.5, 3, 3.6, 5, 6]) self.assertEqual(balancedSet, [4, 3.5, 3, 5, 6]) self.assertEqual(balancedSet1, [4, 3.5, 3, 5]) self.assertEqual(balancedSet2, [4, 3, 5]) balancedSet3 = balancedSet2.delete(4) self.assertEqual(unbalancedSet, [4, 3.5, 3, 3.6, 5, 6]) self.assertEqual(balancedSet, [4, 3.5, 3, 5, 6]) self.assertEqual(balancedSet1, [4, 3.5, 3, 5]) self.assertEqual(balancedSet2, [4, 3, 5]) self.assertEqual(balancedSet3, [3, 5]) balancedSet4 = balancedSet3.delete(3) self.assertEqual(unbalancedSet, [4, 3.5, 3, 3.6, 5, 6]) self.assertEqual(balancedSet, [4, 3.5, 3, 5, 6]) self.assertEqual(balancedSet1, [4, 3.5, 3, 5]) self.assertEqual(balancedSet2, [4, 3, 5]) self.assertEqual(balancedSet3, [3, 5]) self.assertEqual(balancedSet4, [5]) balancedSet5 = balancedSet4.delete(5) self.assertEqual(unbalancedSet, [4, 3.5, 3, 3.6, 5, 6]) self.assertEqual(balancedSet, [4, 3.5, 3, 5, 6]) self.assertEqual(balancedSet1, [4, 3.5, 3, 5]) self.assertEqual(balancedSet2, [4, 3, 5]) self.assertEqual(balancedSet3, [3, 5]) self.assertEqual(balancedSet4, [5]) self.assertEqual(balancedSet5, [])
def test_balanced_delete4(self): unbalancedSet = PersistentBalancedSet(5, iterator='inorder').insert( 4).insert(3).insert(3.5).insert(3.6).insert(6) balancedSet = unbalancedSet.delete(3.6) self.assertEqual(unbalancedSet, [3, 3.5, 3.6, 4, 5, 6]) self.assertEqual(balancedSet, [3, 3.5, 4, 5, 6])
def test_self_balancing_delete(self): set = PersistentBalancedSet( 11, iterator='preorder').insert(8).insert(13).insert(9).insert(4) self.assertEqual(set.delete(8), [11, 9, 4, 13])