Esempio n. 1
0
    def test_union_with_iterable(self):
        oset1 = OrderedSet([1])

        self.assertEqual(oset1.union([2, 1]), OrderedSet([1, 2]))
        self.assertEqual(
            OrderedSet([1, 2]) | OrderedSet([3, 1, 2, 4]),
            OrderedSet([1, 2, 3, 4]))

        # union with unordered set should work,
        # though the order will be arbitrary
        self.assertEqual(oset1.union(set([2])), OrderedSet([1, 2]))
Esempio n. 2
0
    def test_union_and_update(self):
        oset = OrderedSet(self.lst)
        lst = self.lst

        oset2 = oset.union([3, 9, 27])
        self.assertEqual(oset2, OrderedSet(lst + [27]))

        # make sure original oset isn't changed
        self.assertEqual(oset, OrderedSet(lst))

        oset1 = OrderedSet(self.lst)
        oset2 = OrderedSet(self.lst)

        oset3 = oset1 | oset2
        self.assertEqual(oset3, oset1)

        self.assertEqual(oset3, oset1.union(oset2))

        oset1 |= OrderedSet("abc")
        self.assertEqual(oset1, oset2.union("abc"))

        oset1 = OrderedSet(self.lst)
        oset1.update("abc")
        self.assertEqual(oset1, oset2.union("abc"))