blob: 4db39974cdf6a53863994c7e8077d141ae4f31e5 [file] [log] [blame]
Eduardo Sousa4d611d32018-05-09 19:20:37 +01001import http
2import pytest
3
4from osm_common.msgbase import MsgBase, MsgException
5
6
7def exception_message(message):
8 return "messaging exception " + message
9
10@pytest.fixture
11def msg_base():
12 return MsgBase()
13
14def test_constructor():
15 msgbase = MsgBase()
16
17 assert msgbase != None
18 assert isinstance(msgbase, MsgBase)
19
20def test_connect(msg_base):
Eduardo Sousa5ffda642018-05-09 19:42:00 +010021 msg_base.connect(None)
Eduardo Sousa4d611d32018-05-09 19:20:37 +010022
23def test_disconnect(msg_base):
24 msg_base.disconnect()
25
26def test_write(msg_base):
27 with pytest.raises(MsgException) as excinfo:
28 msg_base.write("test", "test", "test")
29 assert str(excinfo.value).startswith(exception_message("Method 'write' not implemented"))
30 assert excinfo.value.http_code == http.HTTPStatus.INTERNAL_SERVER_ERROR
31
32def test_read(msg_base):
33 with pytest.raises(MsgException) as excinfo:
34 msg_base.read("test")
35 assert str(excinfo.value).startswith(exception_message("Method 'read' not implemented"))
36 assert excinfo.value.http_code == http.HTTPStatus.INTERNAL_SERVER_ERROR
37
38def test_aiowrite(msg_base, event_loop):
39 with pytest.raises(MsgException) as excinfo:
40 event_loop.run_until_complete(msg_base.aiowrite("test", "test", "test", event_loop))
41 assert str(excinfo.value).startswith(exception_message("Method 'aiowrite' not implemented"))
42 assert excinfo.value.http_code == http.HTTPStatus.INTERNAL_SERVER_ERROR
43
44def test_aioread(msg_base, event_loop):
45 with pytest.raises(MsgException) as excinfo:
46 event_loop.run_until_complete(msg_base.aioread("test", event_loop))
47 assert str(excinfo.value).startswith(exception_message("Method 'aioread' not implemented"))
48 assert excinfo.value.http_code == http.HTTPStatus.INTERNAL_SERVER_ERROR