示例#1
0
 def testCopy(self):
     ks = KeyedSet(firstLetter, ["apple", "avocado", "banana"])
     ks2 = ks.copy()
     self.assertEqual(sorted(ks), ["apple", "avocado", "banana"])
     self.assertEqual(sorted(ks2), ["apple", "avocado", "banana"])
     self.assertEqual(sorted(ks.keys()), ["a", "b"])
     self.assertEqual(sorted(ks2.keys()), ["a", "b"])
     ks2.add("acacia")
     ks2.add("cheese")
     ks2.remove("banana")
     self.assertEqual(sorted(ks), ["apple", "avocado", "banana"])
     self.assertEqual(sorted(ks2), ["acacia", "apple", "avocado", "cheese"])
     self.assertEqual(sorted(ks.keys()), ["a", "b"])
     self.assertEqual(sorted(ks2.keys()), ["a", "c"])
     self.assertEqual(ks2.subset_by_key("a"), set(["acacia", "apple", "avocado"]))
     self.assertEqual(ks2.subset_by_key("b"), set())
     self.assertEqual(ks2.subset_by_key("c"), set(["cheese"]))
示例#2
0
 def testCopy(self):
     ks = KeyedSet(firstLetter, ["apple", "avocado", "banana"])
     ks2 = ks.copy()
     self.assertEqual(sorted(ks), ["apple", "avocado", "banana"])
     self.assertEqual(sorted(ks2), ["apple", "avocado", "banana"])
     self.assertEqual(sorted(ks.keys()), ["a", "b"])
     self.assertEqual(sorted(ks2.keys()), ["a", "b"])
     ks2.add("acacia")
     ks2.add("cheese")
     ks2.remove("banana")
     self.assertEqual(sorted(ks), ["apple", "avocado", "banana"])
     self.assertEqual(sorted(ks2), ["acacia", "apple", "avocado", "cheese"])
     self.assertEqual(sorted(ks.keys()), ["a", "b"])
     self.assertEqual(sorted(ks2.keys()), ["a", "c"])
     self.assertEqual(ks2.subset_by_key("a"),
                      set(["acacia", "apple", "avocado"]))
     self.assertEqual(ks2.subset_by_key("b"), set())
     self.assertEqual(ks2.subset_by_key("c"), set(["cheese"]))
示例#3
0
    def testDiscard(self):
        ks = KeyedSet(firstLetter, ["apple", "avocado", "banana"])
        for item in ["apple", "acacia", "banana", "cheese"]:
            ks.discard(item)
        self.assertEqual(ks, set(["avocado"]))

        # Proper key sets
        self.assertEqual(ks.keys(), ["a"])
        self.assertEqual(ks.subset_by_key("a"), set(["avocado"]))
        self.assertEqual(ks.subset_by_key("b"), set())
        self.assertEqual(ks.subset_by_key("c"), set())
示例#4
0
    def testDiscard(self):
        ks = KeyedSet(firstLetter, ["apple", "avocado", "banana"])
        for item in ["apple", "acacia", "banana", "cheese"]:
            ks.discard(item)
        self.assertEqual(ks, set(["avocado"]))

        # Proper key sets
        self.assertEqual(ks.keys(), ['a'])
        self.assertEqual(ks.subset_by_key("a"), set(["avocado"]))
        self.assertEqual(ks.subset_by_key("b"), set())
        self.assertEqual(ks.subset_by_key("c"), set())
示例#5
0
    def testAdd(self):
        ks = KeyedSet(firstLetter, ["apple", "avocado", "banana"])
        for item in ["apple", "acacia", "cheese"]:
            ks.add(item)
        self.assertEqual(
            ks, set(["apple", "avocado", "banana", "acacia", "cheese"]))

        # Proper key sets
        self.assertEqual(sorted(ks.keys()), ['a', 'b', 'c'])
        self.assertEqual(ks.subset_by_key("a"),
                         set(["apple", "avocado", "acacia"]))
        self.assertEqual(ks.subset_by_key("b"), set(["banana"]))
        self.assertEqual(ks.subset_by_key("c"), set(["cheese"]))
        self.assertEqual(ks.subset_by_key("d"), set())
示例#6
0
    def testRemove(self):
        ks = KeyedSet(firstLetter, ["apple", "avocado", "banana"])
        for item in ["apple", "banana"]:
            ks.remove(item)
        for item in ["acacia", "cheese"]:
            try:
                ks.remove(item)
            except KeyError:
                self.assertTrue(True)
            except:
                self.assertTrue(False)
            else:
                self.assertTrue(False)
        self.assertEqual(ks, set(["avocado"]))

        # Proper key sets
        self.assertEqual(ks.keys(), ["a"])
        self.assertEqual(ks.subset_by_key("a"), set(["avocado"]))
        self.assertEqual(ks.subset_by_key("b"), set())
        self.assertEqual(ks.subset_by_key("c"), set())
示例#7
0
    def testRemove(self):
        ks = KeyedSet(firstLetter, ["apple", "avocado", "banana"])
        for item in ["apple", "banana"]:
            ks.remove(item)
        for item in ["acacia", "cheese"]:
            try:
                ks.remove(item)
            except KeyError:
                self.assertTrue(True)
            except:
                self.assertTrue(False)
            else:
                self.assertTrue(False)
        self.assertEqual(ks, set(["avocado"]))

        # Proper key sets
        self.assertEqual(ks.keys(), ['a'])
        self.assertEqual(ks.subset_by_key("a"), set(["avocado"]))
        self.assertEqual(ks.subset_by_key("b"), set())
        self.assertEqual(ks.subset_by_key("c"), set())
示例#8
0
 def testKeys(self):
     ks = KeyedSet(firstLetter, ["apple", "avocado", "banana"])
     self.assertEqual(sorted(ks.keys()), ["a", "b"])
示例#9
0
 def testKeys(self):
     ks = KeyedSet(firstLetter, ["apple", "avocado", "banana"])
     self.assertEqual(sorted(ks.keys()), ["a", "b"])