Ejemplo n.º 1
0
 def test_intersection(self):
     i = self.s.intersection(self.otherword)
     for c in self.letters:
         self.assertEqual(c in i, c in self.d and c in self.otherword)
     self.assertEqual(self.s, self.thetype(self.word))
     # self.assertEqual(type(i), self.thetype)
     self.assertIsInstance(i, self.thetype)
     self.assertRaises(PassThru, self.s.intersection, check_pass_thru())
     for C in set, frozenset, dict.fromkeys, str, list, tuple:
         self.assertEqual(
             self.thetype("abcba").intersection(C("cdc")), set("cc"))
         self.assertEqual(
             self.thetype("abcba").intersection(C("efgfe")), set(""))
         self.assertEqual(
             self.thetype("abcba").intersection(C("ccb")), set("bc"))
         self.assertEqual(
             self.thetype("abcba").intersection(C("ef")), set(""))
         self.assertEqual(
             self.thetype("abcba").intersection(C("cbcf"), C("bag")),
             set("b"))
     s = self.thetype("abcba")
     z = s.intersection()
     if self.thetype == frozenset():
         self.assertEqual(id(s), id(z))
     else:
         self.assertNotEqual(id(s), id(z))
Ejemplo n.º 2
0
    def test_union(self):
        # Same test as inherrited in python 2.7, but without
        # type equality tests
        u = self.s.union(self.otherword)
        for c in self.letters:
            self.assertEqual(c in u, c in self.d or c in self.otherword)

        self.assertEqual(self.s, self.thetype(self.word))
        # self.assertEqual(type(u), self.thetype)
        self.assertIsInstance(u, self.thetype)
        self.assertRaises(PassThru, self.s.union, check_pass_thru())
        self.assertRaises(TypeError, self.s.union, [[]])
        for C in set, frozenset, dict.fromkeys, str, list, tuple:
            self.assertEqual(
                self.thetype("abcba").union(C("cdc")), set("abcd"))
            self.assertEqual(
                self.thetype("abcba").union(C("efgfe")), set("abcefg"))
            self.assertEqual(self.thetype("abcba").union(C("ccb")), set("abc"))
            self.assertEqual(
                self.thetype("abcba").union(C("ef")), set("abcef"))
            self.assertEqual(
                self.thetype("abcba").union(C("ef"), C("fg")), set("abcefg"))

        # Issue #6573
        x = self.thetype()
        self.assertEqual(x.union({1}, x, {2}), self.thetype([1, 2]))
Ejemplo n.º 3
0
    def test_union(self):
        # Same test as inherrited in python 2.7, but without
        # type equality tests
        u = self.s.union(self.otherword)
        for c in self.letters:
            self.assertEqual(c in u, c in self.d or c in self.otherword)

        self.assertEqual(self.s, self.thetype(self.word))
        #self.assertEqual(type(u), self.thetype)
        self.assertIsInstance(u, self.thetype)
        self.assertRaises(PassThru, self.s.union, check_pass_thru())
        self.assertRaises(TypeError, self.s.union, [[]])
        for C in set, frozenset, dict.fromkeys, str, unicode, list, tuple:
            self.assertEqual(
                self.thetype('abcba').union(C('cdc')), set('abcd'))
            self.assertEqual(
                self.thetype('abcba').union(C('efgfe')), set('abcefg'))
            self.assertEqual(self.thetype('abcba').union(C('ccb')), set('abc'))
            self.assertEqual(
                self.thetype('abcba').union(C('ef')), set('abcef'))
            self.assertEqual(
                self.thetype('abcba').union(C('ef'), C('fg')), set('abcefg'))

        # Issue #6573
        x = self.thetype()
        self.assertEqual(x.union(set([1]), x, set([2])), self.thetype([1, 2]))
Ejemplo n.º 4
0
 def test_intersection(self):
     i = self.s.intersection(self.otherword)
     for c in self.letters:
         self.assertEqual(c in i, c in self.d and c in self.otherword)
     self.assertEqual(self.s, self.thetype(self.word))
     #self.assertEqual(type(i), self.thetype)
     self.assertIsInstance(i, self.thetype)
     self.assertRaises(PassThru, self.s.intersection, check_pass_thru())
     for C in set, frozenset, dict.fromkeys, str, unicode, list, tuple:
         self.assertEqual(
             self.thetype('abcba').intersection(C('cdc')), set('cc'))
         self.assertEqual(
             self.thetype('abcba').intersection(C('efgfe')), set(''))
         self.assertEqual(
             self.thetype('abcba').intersection(C('ccb')), set('bc'))
         self.assertEqual(
             self.thetype('abcba').intersection(C('ef')), set(''))
         self.assertEqual(
             self.thetype('abcba').intersection(C('cbcf'), C('bag')),
             set('b'))
     s = self.thetype('abcba')
     z = s.intersection()
     if self.thetype == frozenset():
         self.assertEqual(id(s), id(z))
     else:
         self.assertNotEqual(id(s), id(z))
Ejemplo n.º 5
0
 def test_symmetric_difference(self):
     i = self.s.symmetric_difference(self.otherword)
     for c in self.letters:
         self.assertEqual(c in i, (c in self.d) ^ (c in self.otherword))
     self.assertEqual(self.s, self.thetype(self.word))
     #self.assertEqual(type(i), self.thetype)
     self.assertIsInstance(i, self.thetype)
     self.assertRaises(PassThru, self.s.symmetric_difference, check_pass_thru())
     self.assertRaises(TypeError, self.s.symmetric_difference, [[]])
     for C in set, frozenset, dict.fromkeys, str, unicode, list, tuple:
         self.assertEqual(self.thetype('abcba').symmetric_difference(C('cdc')), set('abd'))
         self.assertEqual(self.thetype('abcba').symmetric_difference(C('efgfe')), set('abcefg'))
         self.assertEqual(self.thetype('abcba').symmetric_difference(C('ccb')), set('a'))
         self.assertEqual(self.thetype('abcba').symmetric_difference(C('ef')), set('abcef'))
Ejemplo n.º 6
0
 def test_difference(self):
     i = self.s.difference(self.otherword)
     for c in self.letters:
         self.assertEqual(c in i, c in self.d and c not in self.otherword)
     self.assertEqual(self.s, self.thetype(self.word))
     # self.assertEqual(type(i), self.thetype)
     self.assertIsInstance(i, self.thetype)
     self.assertRaises(PassThru, self.s.difference, check_pass_thru())
     self.assertRaises(TypeError, self.s.difference, [[]])
     for C in set, frozenset, dict.fromkeys, str, unicode, list, tuple:
         self.assertEqual(self.thetype("abcba").difference(C("cdc")), set("ab"))
         self.assertEqual(self.thetype("abcba").difference(C("efgfe")), set("abc"))
         self.assertEqual(self.thetype("abcba").difference(C("ccb")), set("a"))
         self.assertEqual(self.thetype("abcba").difference(C("ef")), set("abc"))
         self.assertEqual(self.thetype("abcba").difference(), set("abc"))
         self.assertEqual(self.thetype("abcba").difference(C("a"), C("b")), set("c"))
Ejemplo n.º 7
0
 def test_intersection(self):
     i = self.s.intersection(self.otherword)
     for c in self.letters:
         self.assertEqual(c in i, c in self.d and c in self.otherword)
     self.assertEqual(self.s, self.thetype(self.word))
     #self.assertEqual(type(i), self.thetype)
     self.assertIsInstance(i, self.thetype)
     self.assertRaises(PassThru, self.s.intersection, check_pass_thru())
     for C in set, frozenset, dict.fromkeys, str, unicode, list, tuple:
         self.assertEqual(self.thetype('abcba').intersection(C('cdc')), set('cc'))
         self.assertEqual(self.thetype('abcba').intersection(C('efgfe')), set(''))
         self.assertEqual(self.thetype('abcba').intersection(C('ccb')), set('bc'))
         self.assertEqual(self.thetype('abcba').intersection(C('ef')), set(''))
         self.assertEqual(self.thetype('abcba').intersection(C('cbcf'), C('bag')), set('b'))
     s = self.thetype('abcba')
     z = s.intersection()
     if self.thetype == frozenset():
         self.assertEqual(id(s), id(z))
     else:
         self.assertNotEqual(id(s), id(z))
Ejemplo n.º 8
0
    def test_union(self):
        # Same test as inherrited in python 2.7, but without
        # type equality tests
        u = self.s.union(self.otherword)
        for c in self.letters:
            self.assertEqual(c in u, c in self.d or c in self.otherword)

        self.assertEqual(self.s, self.thetype(self.word))
        #self.assertEqual(type(u), self.thetype)
        self.assertIsInstance(u, self.thetype)
        self.assertRaises(PassThru, self.s.union, check_pass_thru())
        self.assertRaises(TypeError, self.s.union, [[]])
        for C in set, frozenset, dict.fromkeys, str, unicode, list, tuple:
            self.assertEqual(self.thetype('abcba').union(C('cdc')), set('abcd'))
            self.assertEqual(self.thetype('abcba').union(C('efgfe')), set('abcefg'))
            self.assertEqual(self.thetype('abcba').union(C('ccb')), set('abc'))
            self.assertEqual(self.thetype('abcba').union(C('ef')), set('abcef'))
            self.assertEqual(self.thetype('abcba').union(C('ef'), C('fg')), set('abcefg'))

        # Issue #6573
        x = self.thetype()
        self.assertEqual(x.union(set([1]), x, set([2])), self.thetype([1, 2]))
Ejemplo n.º 9
0
 def test_symmetric_difference(self):
     i = self.s.symmetric_difference(self.otherword)
     for c in self.letters:
         self.assertEqual(c in i, (c in self.d) ^ (c in self.otherword))
     self.assertEqual(self.s, self.thetype(self.word))
     # self.assertEqual(type(i), self.thetype)
     self.assertIsInstance(i, self.thetype)
     self.assertRaises(PassThru, self.s.symmetric_difference,
                       check_pass_thru())
     self.assertRaises(TypeError, self.s.symmetric_difference, [[]])
     for C in set, frozenset, dict.fromkeys, str, list, tuple:
         self.assertEqual(
             self.thetype("abcba").symmetric_difference(C("cdc")),
             set("abd"))
         self.assertEqual(
             self.thetype("abcba").symmetric_difference(C("efgfe")),
             set("abcefg"))
         self.assertEqual(
             self.thetype("abcba").symmetric_difference(C("ccb")), set("a"))
         self.assertEqual(
             self.thetype("abcba").symmetric_difference(C("ef")),
             set("abcef"))