Esempio n. 1
0
 def test_request(self):
     persistence = Persistence('test.db')
     now = datetime.utcnow().replace(microsecond=0)
     dt0 = now - timedelta(seconds=30)
     persistence.store(dt0, 100.0, 100.0, 100.0, 100.0)
     service = Service(persistence)
     response = service.request(self.start_response)
     self.assertEqual(
         response.next(),
         'data: {"dest": "archive", "items": [], "type": "preload"}\n\n')
     self.assertEqual(
         response.next(),
         'data: {"dest": "recent", "items": [{"dt": "%sZ", "humidity": 100.0, "temperature": 100.0, "moisture": 100.0, "luminence": 100.0}], "type": "preload"}\n\n'
         % dt0.isoformat())
     dt1 = now
     service.enqueue('recent', 'realtime', [{
         'dt': dt1,
         'moisture': 200.0,
         'luminence': 200.0,
         'temperature': 200.0,
         'humidity': 200.0
     }])
     self.assertEqual(
         response.next(),
         'data: {"dest": "recent", "items": [{"dt": "%sZ", "humidity": 200.0, "temperature": 200.0, "moisture": 200.0, "luminence": 200.0}], "type": "realtime"}\n\n'
         % dt1.isoformat())