def test_set(self): """Test OrderedSet.set(). """ # Create a set with dummy values. my_set = OrderedSet() RANGE = 10 for i in range(RANGE): my_set.add(create_dummy_var(i)) my_len = len(my_set) self.assertEqual(my_len, RANGE) # Copy it to another set. other_set = OrderedSet() self.assertEqual(len(other_set), 0) other_set.set(my_set) # Both sets should contain the same values, in the same order. iterator = iter(my_set) for item in other_set: self.assertTrue(item == iterator.next()) with self.assertRaises(StopIteration): iterator.next() self.assertEqual(my_len, len(other_set)) # But the sets are different. Changing one will not affect the other. self.assertFalse(other_set is my_set) other_var = 'something_else' other_set.add(other_var) self.assertEqual(my_len + 1, len(other_set)) self.assertEqual(my_len, len(my_set)) self.assertNotIn(other_var, my_set)
def setUp(self): self.__set = OrderedSet()