Beispiel #1
0
class TestMultiRange(unittest.TestCase):
    def setUp(self):
        self.mr = MultiRange()
        self.mr.add_range(FastRange(10,20))
        self.mr.add_range(FastRange(15, 30))
        self.mr.add_range(FastRange(1000, 2000))

    def test_init(self):
        self.assertTrue(self.mr)
        
    def test_number_in(self):
        self.assertTrue(12 in self.mr)
    
    def test_number_in_on_range_overlap(self):
        self.assertTrue(16 in self.mr)
        
    def test_number_outside_of_range(self):
        self.assertFalse(55 in self.mr)

    def test_count_of_range(self):
        self.assertEqual(self.mr.count_in(16), 2)

    def test_max_of_range(self):
        self.assertEqual(setr_max(self.mr), 1999)

    def test_min_of_range(self):
        self.assertEqual(setr_min(self.mr), 10)

    def test_safely_flatten(self):
        new_mr = self.mr.safely_flatten()
        self.assertEqual(len(new_mr.ranges), 2)
        self.assertEqual(len(self.mr.ranges), 3)
        self.assertEqual(setr_min(new_mr), setr_min(self.mr))
        self.assertEqual(setr_max(new_mr), setr_max(self.mr))
    
    def test_flatten(self):
        self.mr.flatten()
        self.assertEqual(len(self.mr.ranges), 2)
Beispiel #2
0
 def setUp(self):
     self.mr = MultiRange()
     self.mr.add_range(FastRange(10,20))
     self.mr.add_range(FastRange(15, 30))
     self.mr.add_range(FastRange(1000, 2000))