diff options
Diffstat (limited to 'rrd/tests/test_mqtt.py')
-rw-r--r-- | rrd/tests/test_mqtt.py | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/rrd/tests/test_mqtt.py b/rrd/tests/test_mqtt.py index 0a7b90d..66ced97 100644 --- a/rrd/tests/test_mqtt.py +++ b/rrd/tests/test_mqtt.py @@ -1,8 +1,10 @@ +import os import time import django.test +from django.conf import settings -from .. import mqtt +from .. import models, mqtt class TestMQTT(django.test.TestCase): @@ -12,9 +14,12 @@ class TestMQTT(django.test.TestCase): time.sleep(0.1) if not self.mqtt.connected: self.skipTest("Could not find an mqtt server") + self.files = [] def tearDown(self): self.mqtt.loop_stop() + for path in self.files: + os.remove(path) def test_disconnect(self): # after disconnecting from the mqtt server, we should @@ -29,3 +34,20 @@ class TestMQTT(django.test.TestCase): time.sleep(2) self.assertFalse(self.mqtt.connected) self.assertFalse(self.mqtt.reconnect) + + def test_receive_data(self): + os.makedirs(settings.RRD_DB_PATH, exist_ok=True) + self.files.append(os.path.join(settings.RRD_DB_PATH, "test.rrd")) + self.mqtt.client.publish( + topic=settings.MQTT_TOPIC + "test", + payload="10", + ) + time.sleep(1) + ds = models.DataSource.objects.get(topic="test") + self.assertEqual(ds.lastupdate[1], 10) + + def test_receive_data_non_existing_ds(self): + pass + + def test_receive_invalid_data(self): + pass |