aboutsummaryrefslogtreecommitdiff
path: root/tests/test_ctl.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_ctl.py')
-rw-r--r--tests/test_ctl.py32
1 files changed, 27 insertions, 5 deletions
diff --git a/tests/test_ctl.py b/tests/test_ctl.py
index ddac775..f58ce5a 100644
--- a/tests/test_ctl.py
+++ b/tests/test_ctl.py
@@ -3,18 +3,40 @@ import tempfile
from tornado.testing import AsyncTestCase, gen_test
-from pyapd import ctl, config
+from pyapd import ctl, config, app
-class TestCtlServer(AsyncTestCase):
+class TestCtlServerCommands(AsyncTestCase):
def setUp(self):
super().setUp()
self.tempdir = tempfile.TemporaryDirectory()
- conf = config.Config('tests/data/test_config.yaml')
- conf.ctl_socket = os.path.join(self.tempdir.name, 'pyapd.sock')
- self.ctl_server = ctl.CtlServer(conf)
+ test_app = app.App(config.Config('tests/data/test_config.yaml'))
+ test_app.config.ctl_socket = os.path.join(
+ self.tempdir.name,
+ 'pyapd.sock'
+ )
+ self.ctl_server = ctl.CtlServer(test_app)
@gen_test
def test_ping_command(self):
res = yield self.ctl_server.get_command('{"command": "ping"}')
self.assertIn('pong', res)
+
+ @gen_test
+ def test_add_object_command(self):
+ self.assertEqual(len(self.ctl_server.app.store.objects), 0)
+ obj = '''
+ {
+ "id": "http://example.org/123456",
+ "type": "object"
+ }
+ '''
+ res = yield (self.ctl_server.get_command('''
+ {{
+ "command": "add_object",
+ "obj": {obj}
+ }}
+ '''.format(obj=obj)
+ ))
+ self.assertIn('ok', res)
+ self.assertEqual(len(self.ctl_server.app.store.objects), 1)