Ejemplo n.º 1
0
    def test_usage_pattern(self):
        sched = schedules()

        sched.add(self.A)
        sched.add(self.C)

        self.assertTrue(self.A in sched)
        self.assertTrue(self.C in sched)
        self.assertFalse(self.B in sched)

        self.assertRaises(schedule_error, sched.add, self.B)

        self.assertFalse(self.B in sched)

        self.assertEqual(sched, sched)

        sched.remove(self.A)

        self.assertFalse(self.A in sched)
        self.assertFalse(self.B in sched)
        self.assertTrue(self.C in sched)

        sched.remove(self.C)

        self.assertFalse(self.B in sched)
        self.assertFalse(self.C in sched)
Ejemplo n.º 2
0
    def test_equality(self):
        sched1 = schedules()
        sched2 = schedules()

        self.assertEqual(sched1, sched2)

        sched1.add(self.A)
        sched1.add(self.B)

        sched2.add(self.A)
        sched2.add(self.B)
        sched2.add(self.C)

        self.assertNotEqual(sched1, sched2)

        sched1.add(self.C)

        self.assertEqual(sched1, sched2)
Ejemplo n.º 3
0
    def test_equality(self):
        sched1 = schedules()
        sched2 = schedules()

        self.assertEqual(sched1, sched2)

        sched1.add(self.A)
        sched1.add(self.B)

        sched2.add(self.A)
        sched2.add(self.B)
        sched2.add(self.C)

        self.assertNotEqual(sched1, sched2)

        sched1.add(self.C)

        self.assertEqual(sched1, sched2)
Ejemplo n.º 4
0
    def test_store(self):
        fake_file = self.mocker.mock()

        fake_file.store_object('test_schedule', IN(self.tasks))
        self.mocker.count(len(self.tasks))

        self.mocker.replay()

        schedule = schedules('test_schedule')
        for task in self.tasks:
            schedule.add(task)

        schedule.store(fake_file)
Ejemplo n.º 5
0
    def test_store(self):
        fake_file = self.mocker.mock()

        fake_file.store_object('test_schedule', IN(self.tasks))
        self.mocker.count(len(self.tasks))

        self.mocker.replay()

        schedule = schedules('test_schedule')
        for task in self.tasks:
            schedule.add(task)

        schedule.store(fake_file)
    def test_save_and_restore(self):
        sched1 = schedules()

        sched1.add(self.A)
        sched1.add(self.B)
        sched1.add(self.C)

        store1 = file('test_schedules_and_file.sqlite')
        sched1.store(store1)

        del sched1
        del store1

        store2 = file('test_schedules_and_file.sqlite')
        sched2 = schedules.load(store2)

        self.assertEqual(set([x.begins for x in sched2.tasks]), set([3, 5, 7]))
Ejemplo n.º 7
0
    def test_usage_pattern(self):
        sched1 = schedules()

        sched1.add(self.A)
        sched1.add(self.B)
        sched1.add(self.C)
        sched1.add(self.D)
        sched1.add(self.E)

        store1 = file('test_system.sqlite')
        sched1.store(store1)

        del store1

        store2 = file('test_system.sqlite')
        sched2 = schedules.load(store2)

        self.assertEqual(sched1, sched2)

        sched2.remove(self.D)
        sched2.remove(self.E)

        self.assertNotEqual(sched1, sched2)

        sched2.add(self.F)

        self.assertTrue(self.F in sched2)
        self.assertFalse(self.F in sched1)

        self.assertRaises(schedule_error, sched2.add, self.D)
        self.assertRaises(schedule_error, sched2.add, self.E)

        self.assertTrue(self.A in sched1)
        self.assertTrue(self.B in sched1)
        self.assertTrue(self.C in sched1)
        self.assertTrue(self.D in sched1)
        self.assertTrue(self.E in sched1)
        self.assertFalse(self.F in sched1)

        self.assertTrue(self.A in sched2)
        self.assertTrue(self.B in sched2)
        self.assertTrue(self.C in sched2)
        self.assertFalse(self.D in sched2)
        self.assertFalse(self.E in sched2)
        self.assertTrue(self.F in sched2)
Ejemplo n.º 8
0
    def test_usage_pattern(self):
        sched1 = schedules()

        sched1.add(self.A)
        sched1.add(self.B)
        sched1.add(self.C)
        sched1.add(self.D)
        sched1.add(self.E)

        store1 = file('test_system.sqlite')
        sched1.store(store1)

        del store1

        store2 = file('test_system.sqlite')
        sched2 = schedules.load(store2)

        self.assertEqual(sched1, sched2)

        sched2.remove(self.D)
        sched2.remove(self.E)

        self.assertNotEqual(sched1, sched2)

        sched2.add(self.F)

        self.assertTrue(self.F in sched2)
        self.assertFalse(self.F in sched1)

        self.assertRaises(schedule_error, sched2.add, self.D)
        self.assertRaises(schedule_error, sched2.add, self.E)

        self.assertTrue(self.A in sched1)
        self.assertTrue(self.B in sched1)
        self.assertTrue(self.C in sched1)
        self.assertTrue(self.D in sched1)
        self.assertTrue(self.E in sched1)
        self.assertFalse(self.F in sched1)

        self.assertTrue(self.A in sched2)
        self.assertTrue(self.B in sched2)
        self.assertTrue(self.C in sched2)
        self.assertFalse(self.D in sched2)
        self.assertFalse(self.E in sched2)
        self.assertTrue(self.F in sched2)
Ejemplo n.º 9
0
 def test_add_distinct_exclude(self):
     schedule = schedules()
     schedule.add(self.distinct_include)
     schedule.add(self.distinct_exclude)
Ejemplo n.º 10
0
 def test_in_after_add(self):
     schedule = schedules()
     schedule.add(self.fake)
     self.assertTrue(self.fake in schedule)
Ejemplo n.º 11
0
 def test_in_before_add(self):
     schedule = schedules()
     self.assertFalse(self.fake in schedule)
Ejemplo n.º 12
0
 def test_add_over_distinct_include(self):
     schedule = schedules()
     schedule.add(self.distinct_include)
     schedule.add(self.overlap_include)
Ejemplo n.º 13
0
 def test_add_distinct_exclude(self):
     schedule = schedules()
     schedule.add(self.distinct_include)
     schedule.add(self.distinct_exclude)
Ejemplo n.º 14
0
 def test_in_after_add(self):
     schedule = schedules()
     schedule.add(self.fake)
     self.assertTrue(self.fake in schedule)
Ejemplo n.º 15
0
 def test_in_before_add(self):
     schedule = schedules()
     self.assertFalse(self.fake in schedule)
Ejemplo n.º 16
0
 def test_add_over_distinct_exclude(self):
     schedule = schedules()
     schedule.add(self.distinct_exclude)
     self.assertRaises(schedule_error, schedule.add, self.overlap_include)
Ejemplo n.º 17
0
 def test_add_over_distinct_include(self):
     schedule = schedules()
     schedule.add(self.distinct_include)
     schedule.add(self.overlap_include)
Ejemplo n.º 18
0
 def test_add_over_distinct_exclude(self):
     schedule = schedules()
     schedule.add(self.distinct_exclude)
     self.assertRaises(schedule_error,
                       schedule.add,
                       self.overlap_include)