Beispiel #1
0
 def test_handle_event_data_attrs_no_dict(self):
     message = json.dumps({
         "attrs": 80,
         "metadata": {"deviceid": "labtemp", "timestamp": 1567704621, "tenant": "admin"}
     })
     p = Persister()
     p.handle_event_data('admin', message)
def create__device(transaction):

    _create_device = {
        "event": "create",
        "meta": {
            "service": "admin"
        },
        "data": {
            "id": "labtemp",
            "label": "Device 1",
            "templates": [1, 2, 3],
            "attrs": {},
            "created": "2018-02-06T10:43:40.890330+00:00"
        }
    }
    persister = Persister()
    persister.init_mongodb()
    persister.handle_event_devices("admin", json.dumps(_create_device))

    _update_data = {
        "metadata": {
            "deviceid": "labtemp",
            "protocol": "mqtt",
            "payload": "json"
        },
        "attrs": {
            "temperature": "22.12"
        }
    }
    persister.handle_event_data("admin", json.dumps(_update_data))

    _update_data['attrs']['temperature'] = "23.12"
    persister.handle_event_data("admin", json.dumps(_update_data))
Beispiel #3
0
 def test_handle_event_data_no_timestamp(self):
     with pytest.raises(AttributeError):
         message = json.dumps({
             "attrs": {
                 "foo": "bar"
             },
             "metadata": {
                 "deviceid": "labtemp"
             }
         })
         Persister.handle_event_data(self, 'admin', message)
Beispiel #4
0
def setup(transaction):

    _create_device = {
        "event": "create",
        "meta": {
            "service": "admin"
        },
        "data": {
            "id": "labtemp",
            "label": "Device 1",
            "templates": [1, 2, 3],
            "attrs": {},
            "created": "2018-02-06T10:43:40.890330+00:00"
        }
    }
    persister = Persister()
    persister.init_mongodb()
    persister.handle_event_devices("admin", json.dumps(_create_device))

    _update_data = {
        "metadata": {
            "deviceid": "labtemp",
            "protocol": "mqtt",
            "payload": "json",
            "timestamp": 1528226137452
        },
        "attrs": {
            "temperature": "22.12"
        }
    }
    persister.handle_event_data("admin", json.dumps(_update_data))

    _update_data['attrs']['temperature'] = "23.12"
    persister.handle_event_data("admin", json.dumps(_update_data))

    _new_tenant = {"tenant": "admin"}

    persister.handle_new_tenant("admin", json.dumps(_new_tenant))

    _notification = {
        "msgID": "12345",
        "timestamp": 1551111524,
        "metaAttrsFilter": {
            "level": 1,
            "shouldPersist": "True"
        },
        "message": "DEU ALGUMA COISA MUITO ERRADO",
        "subject": "debug"
    }

    persister.handle_notification("admin", json.dumps(_notification))
Beispiel #5
0
 def test_handle_event_data_no_device_id(self):
     message = json.dumps({
         "attrs": {
             "foo": "bar"
         },
         "metadata": {
             "deviceid": None
         }
     })
     assert Persister.handle_event_data(self, 'admin', message) is None
Beispiel #6
0
 def test_handle_event_data_no_attrs(self):
     message = json.dumps(
         {"metadata": {"deviceid": "labtemp"}})
     assert Persister.handle_event_data(self, 'admin', message) is None
Beispiel #7
0
 def test_handle_event_data_no_data(self):
     message = json.dumps({"data": None})
     assert Persister.handle_event_data(self, 'admin', message) is None
Beispiel #8
0
 def test_handle_event_data_invalid_json(self):
     p = Persister()
     message = "Test_Message"
     assert p.handle_event_data('admin', message) is None
Beispiel #9
0
def setup(transaction):

    _create_device = {
        "event": "create",
        "meta": {
            "service": "admin"
        },
        "data": {
            "id": "b374a5",
            "label": "Device 1",
            "templates": [1, 2, 3],
            "attrs": {},
            "created": "2018-02-06T10:43:40.890330+00:00"
        }
    }
    persister = Persister()
    persister.init_mongodb()
    persister.handle_event_devices("admin", json.dumps(_create_device))

    _update_data = {
        "metadata": {
            "deviceid": "b374a5",
            "protocol": "mqtt",
            "payload": "json",
            "timestamp": 1528226137452
        },
        "attrs": {
            "temperature": "22.12",
            "pressure": "1013"
        }
    }
    persister.handle_event_data("admin", json.dumps(_update_data))

    _update_data['attrs']['temperature'] = "23.12"
    persister.handle_event_data("admin", json.dumps(_update_data))

    _update_data['attrs']['temperature'] = "24.10"
    persister.handle_event_data("admin", json.dumps(_update_data))

    _update_data['attrs']['pressure'] = "1033"
    persister.handle_event_data("admin", json.dumps(_update_data))

    _update_data['attrs']['pressure'] = "1053"
    persister.handle_event_data("admin", json.dumps(_update_data))

    _new_tenant = {"tenant": "admin"}

    persister.handle_new_tenant("admin", json.dumps(_new_tenant))

    _notification = {
        "msgID": "12345",
        "timestamp": 1550693872863,
        "metaAttrsFilter": {
            "level": 3,
            "shouldPersist": True
        },
        "message": "Something went wrong.",
        "subject": "user_notification",
    }

    persister.handle_notification("admin", json.dumps(_notification))