Esempio n. 1
0
    def test_sleep2(self):
        s = HistoricalScheduler()
        n = [0]

        def action(scheduler, state):
            s.sleep(timedelta(3 * 6000))
            n[0] += 1
            s.schedule_absolute(s.now + timedelta(6000), action)

        s.schedule_absolute(s.now + timedelta(6000), action)

        s.advance_to(s.now + timedelta(5 * 6000))

        self.assertEqual(2, n[0])
Esempio n. 2
0
    def test_sleep2(self):
        s = HistoricalScheduler()
        n = [0]

        def action(rec):
            s.sleep(timedelta(3 * 6000))
            n[0] += 1
            rec(s.now + timedelta(6000))

        s.schedule_recursive_with_absolute(s.now + timedelta(6000), action)

        s.advance_to(s.now + timedelta(5 * 6000))

        self.assertEqual(2, n[0])
Esempio n. 3
0
    def test_sleep2(self):
        s = HistoricalScheduler()
        n = [0]

        def action(scheduler, state):
            s.sleep(timedelta(3 * 6000))
            n[0] += 1
            s.schedule_absolute(s.now + timedelta(6000), action)

        s.schedule_absolute(s.now + timedelta(6000), action)

        s.advance_to(s.now + timedelta(5 * 6000))

        self.assertEqual(2, n[0])
Esempio n. 4
0
    def test_advance_to(self):
        s = HistoricalScheduler()

        list = []

        s.schedule_absolute(time(0), lambda a,b: list.append(Timestamped(0, s.now)) )
        s.schedule_absolute(time(1), lambda a,b: list.append(Timestamped(1, s.now)) )
        s.schedule_absolute(time(2), lambda a,b: list.append(Timestamped(2, s.now)) )
        s.schedule_absolute(time(10), lambda a,b: list.append(Timestamped(10, s.now)) )
        s.schedule_absolute(time(11), lambda a,b: list.append(Timestamped(11, s.now)) )

        s.advance_to(time(8))

        self.assertEqual(time(8), s.now)
        self.assertEqual(time(8), s.clock)

        assert_equals(list, [
            Timestamped(0, time(0)),
            Timestamped(1, time(1)),
            Timestamped(2, time(2))
        ])

        s.advance_to(time(8))

        self.assertEqual(time(8), s.now)
        self.assertEqual(time(8), s.clock)

        assert_equals(list, [
            Timestamped(0, time(0)),
            Timestamped(1, time(1)),
            Timestamped(2, time(2))
        ])

        s.schedule_absolute(time(7), lambda a, b: list.append(Timestamped(7, s.now)) )
        s.schedule_absolute(time(8), lambda a, b: list.append(Timestamped(8, s.now)) )

        self.assertEqual(time(8), s.now)
        self.assertEqual(time(8), s.clock)

        assert_equals(list, [
            Timestamped(0, time(0)),
            Timestamped(1, time(1)),
            Timestamped(2, time(2))
        ])

        s.advance_to(time(10))

        self.assertEqual(time(10), s.now)
        self.assertEqual(time(10), s.clock)

        assert_equals(list, [
            Timestamped(0, time(0)),
            Timestamped(1, time(1)),
            Timestamped(2, time(2)),
            Timestamped(7, time(8)),
            Timestamped(8, time(8)),
            Timestamped(10, time(10))
        ])

        s.advance_to(time(100))

        self.assertEqual(time(100), s.now)
        self.assertEqual(time(100), s.clock)

        assert_equals(list, [
            Timestamped(0, time(0)),
            Timestamped(1, time(1)),
            Timestamped(2, time(2)),
            Timestamped(7, time(8)),
            Timestamped(8, time(8)),
            Timestamped(10, time(10)),
            Timestamped(11, time(11))
        ])
Esempio n. 5
0
    def test_advance_to(self):
        s = HistoricalScheduler()

        list = []

        s.schedule_absolute(time(0), lambda a,b: list.append(Timestamped(0, s.now)) )
        s.schedule_absolute(time(1), lambda a,b: list.append(Timestamped(1, s.now)) )
        s.schedule_absolute(time(2), lambda a,b: list.append(Timestamped(2, s.now)) )
        s.schedule_absolute(time(10), lambda a,b: list.append(Timestamped(10, s.now)) )
        s.schedule_absolute(time(11), lambda a,b: list.append(Timestamped(11, s.now)) )

        s.advance_to(time(8))

        self.assertEqual(time(8), s.now)
        self.assertEqual(time(8), s.clock)

        assert_equals(list, [
            Timestamped(0, time(0)),
            Timestamped(1, time(1)),
            Timestamped(2, time(2))
        ])

        s.advance_to(time(8))

        self.assertEqual(time(8), s.now)
        self.assertEqual(time(8), s.clock)

        assert_equals(list, [
            Timestamped(0, time(0)),
            Timestamped(1, time(1)),
            Timestamped(2, time(2))
        ])

        s.schedule_absolute(time(7), lambda a, b: list.append(Timestamped(7, s.now)) )
        s.schedule_absolute(time(8), lambda a, b: list.append(Timestamped(8, s.now)) )

        self.assertEqual(time(8), s.now)
        self.assertEqual(time(8), s.clock)

        assert_equals(list, [
            Timestamped(0, time(0)),
            Timestamped(1, time(1)),
            Timestamped(2, time(2))
        ])

        s.advance_to(time(10))

        self.assertEqual(time(10), s.now)
        self.assertEqual(time(10), s.clock)

        assert_equals(list, [
            Timestamped(0, time(0)),
            Timestamped(1, time(1)),
            Timestamped(2, time(2)),
            Timestamped(7, time(8)),
            Timestamped(8, time(8)),
            Timestamped(10, time(10))
        ])

        s.advance_to(time(100))

        self.assertEqual(time(100), s.now)
        self.assertEqual(time(100), s.clock)

        assert_equals(list, [
            Timestamped(0, time(0)),
            Timestamped(1, time(1)),
            Timestamped(2, time(2)),
            Timestamped(7, time(8)),
            Timestamped(8, time(8)),
            Timestamped(10, time(10)),
            Timestamped(11, time(11))
        ])