Пример #1
0
 def test_init_active_and_down(self):
     self.database.get_session_spans.return_value = [
         Span(self.beginning, self.now, model.Active())
     ]
     self.controller.init(self.now)
     self.timer.schedule.assert_called_once_with(timedelta(0), model.Up())
     self.hardware.light.assert_called_once_with(model.Active())
     self.hardware.go.assert_not_called()
Пример #2
0
 def test_update_timer_active_duration(self, compute_active_time):
     compute_active_time.return_value = timedelta(minutes=10)
     self.database.get_session_spans.return_value = [
         Span(self.beginning, self.now, model.Active())
     ]
     self.controller.update_timer(self.now)
     self.timer.schedule.assert_called_with(
         timedelta(minutes=40), model.Up())
Пример #3
0
    def test_webserver_get_session(self):
        self.database.return_value.get_session_spans.return_value = [
            Span(0, 1, model.Inactive())
        ]
        rv = self.app.get('/api/session')
        self.assertEqual(b'0', rv.data)

        self.database.return_value.get_session_spans.return_value = [
            Span(0, 1, model.Active())
        ]
        rv = self.app.get('/api/session')
        self.assertEqual(b'1', rv.data)
Пример #4
0
    def test_set_desk_down(self, compute_active_time):
        compute_active_time.return_value = timedelta(0)
        self.database.get_session_spans.return_value = [
            Span(self.beginning, self.now, model.Active())
        ]
        self.database.get_desk_spans.return_value = [
            Span(self.beginning, self.now, model.Down())
        ]
        event = Event(datetime(2017, 2, 13, 12, 0, 0), model.Down())

        self.controller.set_desk(event.index, event.data)
        self.database.insert_desk_event.assert_called_with(event)
        self.hardware.go.assert_called_with(event.data)
        self.timer.stop.assert_not_called()
        self.timer.schedule.assert_called_with(
            timedelta(minutes=50), model.Up())
Пример #5
0
 def test_set_session_active(self):
     event = Event(datetime(2017, 2, 13, 12, 0, 0), model.Active())
     self.controller.set_session(event.index, event.data)
     self.database.insert_session_event.assert_called_with(event)
     self.hardware.light.assert_called_with(event.data)