Esempio n. 1
0
def test_validation_invalid_no_obj():
    A, B, subject, obj, predicate = _generate_message_params()
    msg = gd.Message(sender=A,
                     receiver=B,
                     subject=subject,
                     predicate=predicate)
    assert not msg.is_valid()
def test_serialise_mesage():
    tx = "AU"
    rx = "CN"
    s = str(uuid.uuid4())
    t = str(uuid.uuid4())
    p = str(uuid.uuid4())

    msg = gd.Message(sender=c.Country(tx),
                     receiver=c.Country(rx),
                     subject=u.URI(s),
                     obj=u.URI(t),
                     predicate=u.URI(p))

    expected_json = """
       {{
            "sender": "{}",
            "receiver": "{}",
            "subject": "{}",
            "obj": "{}",
            "predicate": "{}"
       }}
    """.format(tx, rx, s, t, p)

    msg_json = json.dumps(msg, cls=ser.MessageJSONEncoder)

    assert json.loads(msg_json) == json.loads(expected_json)
Esempio n. 3
0
def test_validation_bogus_parameter():
    A, B, subject, obj, predicate = _generate_message_params()
    msg = gd.Message(bogus=True,
                     sender=A,
                     receiver=B,
                     subject=subject,
                     obj=obj)
    assert not msg.is_valid()
Esempio n. 4
0
 def _create_message_objects(self, results):
     return [
         message.Message(sender=q.sender,
                         receiver=q.receiver,
                         subject=q.subject,
                         obj=q.obj,
                         predicate=q.predicate,
                         sender_ref=q.sender_ref,
                         status=q.status) for q in results
     ]
Esempio n. 5
0
def test_validation_invalid_predicate():
    A, B, subject, obj, predicate = _generate_message_params()
    for x in _generate_invalid_uri_list():
        predicate = x
        msg = gd.Message(sender=A,
                         receiver=B,
                         subject=subject,
                         obj=obj,
                         predicate=predicate)
        assert not msg.is_valid()
Esempio n. 6
0
def test_whitelist_one_attr():
    m = protocol.Message(**kwargs)
    for test_attr in kwargs.keys():
        f = gmf.DiscreteGenericMessageFilter()
        for k in kwargs.keys():
            if k != test_attr:
                f.allow_any(k)
            else:
                f.whitelist(k, kwargs[k])
        assert not f.screen_message(m)
Esempio n. 7
0
 def _create_message_objects(self, results):  # pragma: no cover
     # TODO: think about moving it somewhere else to mix the
     # business logic with the storage logic less
     return [
         message.Message(sender=q.sender,
                         receiver=q.receiver,
                         subject=q.subject,
                         obj=q.obj,
                         predicate=q.predicate,
                         sender_ref=q.sender_ref) for q in results
     ]
Esempio n. 8
0
def test_blacklist():
    m = protocol.Message(**kwargs)
    for test_attr in kwargs.keys():
        f = gmf.DiscreteGenericMessageFilter()
        for k in kwargs.keys():
            if k != test_attr:
                f.allow_any(k)
            else:
                f.blacklist(k, kwargs[k])
            assert f.screen_message(m)

        f = gmf.DiscreteGenericMessageFilter()
        for k in kwargs.keys():
            f.allow_any(k)
            if k == test_attr:
                f.blacklist(k, kwargs[k])
            assert f.screen_message(m)
Esempio n. 9
0
def test_allow_none():
    f = gmf.DiscreteGenericMessageFilter()
    m = protocol.Message(**kwargs)
    assert f.screen_message(m)
Esempio n. 10
0
def test_allow_any():
    f = gmf.DiscreteGenericMessageFilter()
    for k in kwargs.keys():
        f.allow_any(k)
    m = protocol.Message(**kwargs)
    assert not f.screen_message(m)