from unittest.case import TestCase from typing import Tuple from tudelft.utilities.tools.dictkeys import Keys from _collections_abc import Set class dictKeysTest(TestCase): def testSimple(self): d={'a':1,'b':2} keys=Keys(d) self.assertTrue(isinstance(keys,Set)) self.assertEquals(2, len(keys)) self.assertTrue('a' in keys) self.assertFalse('d' in keys) #self.assertFalse(d in keys) self.assertEquals(None, keys.pop('d')) self.assertEquals(1, keys.pop('a')) self.assertEquals(1, len(d)) def testFrozen(self): d={'a':1,'b':2} keys=Keys(d) print(frozenset(keys)) self.assertEqual(2, len(frozenset(keys))) def test_difference_update(self): d={'a':1,'b':2,'c':3} keys=Keys(d) keys.difference_update(set(['a','b'])) self.assertEquals(set(['c']), keys)