From f39b4f955e855897414610c729fc6da9ab2df2f1 Mon Sep 17 00:00:00 2001 From: Elena ``of Valhalla'' Grandi Date: Mon, 10 Jun 2019 11:44:51 +0200 Subject: Add ctl command to add arbitrary objects --- tests/test_ctl.py | 32 +++++++++++++++++++++++++++----- 1 file changed, 27 insertions(+), 5 deletions(-) (limited to 'tests') 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) -- cgit v1.2.3