예제 #1
0
 def test_intersection(self):
     rn1 = RangeSetND([["10", "10-13"], ["10", "9-12"], ["8-9", "12-15"]])
     self.assertEqual(len(rn1), 13)
     self.assertEqual(str(rn1), "8-9; 12-15\n10; 9-13\n")
     rn2 = RangeSetND([["10", "10"], ["9", "12-15"]])
     self.assertEqual(len(rn2), 5)
     self.assertEqual(str(rn2), "9; 12-15\n10; 10\n")
     rni = rn1.intersection(rn2)
     self.assertEqual(len(rni), 5)
     self.assertEqual(str(rni), "9; 12-15\n10; 10\n")
     self.assertEqual(len(rn1), 13)
     self.assertEqual(str(rn1), "8-9; 12-15\n10; 9-13\n")
     self.assertEqual(len(rn2), 5)
     self.assertEqual(str(rn2), "9; 12-15\n10; 10\n")
     # test __and__
     rni2 = rn1 & rn2
     self.assertEqual(len(rni2), 5)
     self.assertEqual(str(rni2), "9; 12-15\n10; 10\n")
     self.assertEqual(len(rn1), 13)
     self.assertEqual(str(rn1), "8-9; 12-15\n10; 9-13\n")
     self.assertEqual(len(rn2), 5)
     self.assertEqual(str(rn2), "9; 12-15\n10; 10\n")
     self.assertEqual(rni, rni2) # btw test __eq__
     try:
         dummy = rn1 & "foobar"
         self.assertFalse("TypeError not raised")
     except TypeError:
         pass
예제 #2
0
 def test_intersection(self):
     rn1 = RangeSetND([["10", "10-13"], ["10", "9-12"], ["8-9", "12-15"]])
     self.assertEqual(len(rn1), 13)
     self.assertEqual(str(rn1), "8-9; 12-15\n10; 9-13\n")
     rn2 = RangeSetND([["10", "10"], ["9", "12-15"]])
     self.assertEqual(len(rn2), 5)
     self.assertEqual(str(rn2), "9; 12-15\n10; 10\n")
     rni = rn1.intersection(rn2)
     self.assertEqual(len(rni), 5)
     self.assertEqual(str(rni), "9; 12-15\n10; 10\n")
     self.assertEqual(len(rn1), 13)
     self.assertEqual(str(rn1), "8-9; 12-15\n10; 9-13\n")
     self.assertEqual(len(rn2), 5)
     self.assertEqual(str(rn2), "9; 12-15\n10; 10\n")
     # test __and__
     rni2 = rn1 & rn2
     self.assertEqual(len(rni2), 5)
     self.assertEqual(str(rni2), "9; 12-15\n10; 10\n")
     self.assertEqual(len(rn1), 13)
     self.assertEqual(str(rn1), "8-9; 12-15\n10; 9-13\n")
     self.assertEqual(len(rn2), 5)
     self.assertEqual(str(rn2), "9; 12-15\n10; 10\n")
     self.assertEqual(rni, rni2)  # btw test __eq__
     try:
         dummy = rn1 & "foobar"
         self.assertFalse("TypeError not raised")
     except TypeError:
         pass