Петър обнови решението на 18.04.2012 23:31 (преди над 12 години)
+class BiDict(dict):
+
+ def inverse(self):
+ for key in self:
+ self[self[key]]= key
+ del self[key]
+
.EEEE..FF.F.F..E ====================================================================== ERROR: test_assign_value_and_reverse (__main__.BiDictTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/tmp/test20120627-22085-1g8xe22", line 18, in test_assign_value_and_reverse self.assertEqual(self.person['Кънчов'], 'last_name') KeyError: 'Кънчов' ====================================================================== ERROR: test_circular_values (__main__.BiDictTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/tmp/test20120627-22085-1g8xe22", line 49, in test_circular_values circular = self.solutions.BiDict({1: 2, 2: 3, 3: 1}) AttributeError: 'BiDictTestCase' object has no attribute 'solutions' ====================================================================== ERROR: test_copied_circular_values (__main__.BiDictTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/tmp/test20120627-22085-1g8xe22", line 57, in test_copied_circular_values inversed_circular.inverse() AttributeError: 'dict' object has no attribute 'inverse' ====================================================================== ERROR: test_double_inverse (__main__.BiDictTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/tmp/test20120627-22085-1g8xe22", line 23, in test_double_inverse self.assertEqual(self.person['name'], 'Кънчо') KeyError: 'name' ====================================================================== ERROR: test_lots_of_odd_inverses (__main__.BiDictTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/tmp/test20120627-22085-1g8xe22", line 42, in test_lots_of_odd_inverses self.assertEqual(self.person['Кънчо'], 'name') KeyError: 'Кънчо' ====================================================================== FAIL: test_hashing_self (__main__.BiDictTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/tmp/test20120627-22085-1g8xe22", line 65, in test_hashing_self self.assertRaises(TypeError, self.person.update, {'clone': self.person}) AssertionError: TypeError not raised by update ====================================================================== FAIL: test_insert_existing_key_with_existing_value (__main__.BiDictTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/tmp/test20120627-22085-1g8xe22", line 78, in test_insert_existing_key_with_existing_value self.assertNotIn('age', new_person.keys()) AssertionError: 'age' unexpectedly found in dict_keys(['age', 'name', 'sex']) ====================================================================== FAIL: test_insert_none_existing_key_with_existing_value (__main__.BiDictTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/tmp/test20120627-22085-1g8xe22", line 92, in test_insert_none_existing_key_with_existing_value self.assertNotIn('age', new_person.keys()) AssertionError: 'age' unexpectedly found in dict_keys(['age', 'name', 'none', 'sex']) ====================================================================== FAIL: test_invalid_value (__main__.BiDictTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/tmp/test20120627-22085-1g8xe22", line 62, in test_invalid_value self.assertRaises(TypeError, self.person.update, {'sports': ['boxing',]}) AssertionError: TypeError not raised by update ---------------------------------------------------------------------- Ran 16 tests in 0.003s FAILED (failures=4, errors=5)