From a1c99594b3eed035eb5ca7dfacdb8a6977732d8a Mon Sep 17 00:00:00 2001 From: Kay Kurokawa Date: Mon, 5 Jun 2017 16:17:19 -0400 Subject: [PATCH] add tests for CLI flags --- lbrynet/lbrynet_daemon/Daemon.py | 11 +++++++---- tests/integration/test_integration.py | 23 +++++++++++++++++++---- 2 files changed, 26 insertions(+), 8 deletions(-) diff --git a/lbrynet/lbrynet_daemon/Daemon.py b/lbrynet/lbrynet_daemon/Daemon.py index 81c9baec0..a835fbcae 100644 --- a/lbrynet/lbrynet_daemon/Daemon.py +++ b/lbrynet/lbrynet_daemon/Daemon.py @@ -2501,22 +2501,25 @@ class Daemon(AuthJSONRPCServer): defer.returnValue(response) @defer.inlineCallbacks - def jsonrpc_cli_test_command(self, pos_arg, pos_args=[], pos_arg2=None, pos_arg3=None): + @AuthJSONRPCServer.flags(a_arg='-a', b_arg='-b') + def jsonrpc_cli_test_command(self, pos_arg, pos_args=[], pos_arg2=None, pos_arg3=None, + a_arg=False, b_arg=False): """ This command is only for testing the CLI argument parsing Usage: - cli_test_command ( | --pos_arg=) + cli_test_command [-a] [-b] ( | --pos_arg=) [...] [--pos_arg2=] [--pos_arg3=] Options: + -a, --a_arg : a arg + -b, --b_arg : b arg , --pos_arg2= : pos arg 2 , --pos_arg3= : pos arg 3 - Returns: pos args """ - out = (pos_arg, pos_args, pos_arg2, pos_arg3) + out = (pos_arg, pos_args, pos_arg2, pos_arg3, a_arg, b_arg) response = yield self._render_response(out) defer.returnValue(response) diff --git a/tests/integration/test_integration.py b/tests/integration/test_integration.py index ef6fd1797..521d93844 100644 --- a/tests/integration/test_integration.py +++ b/tests/integration/test_integration.py @@ -77,21 +77,36 @@ class TestIntegration(unittest.TestCase): out,err = lbrynet_cli(['cli_test_command','1']) out = json.loads(out) - self.assertEqual([1,[],None,None], out) + self.assertEqual([1,[],None,None,False,False], out) out,err = lbrynet_cli(['cli_test_command','1','--pos_arg2=1']) out = json.loads(out) - self.assertEqual([1,[],1,None], out) + self.assertEqual([1,[],1,None,False,False], out) out,err = lbrynet_cli(['cli_test_command','1', '--pos_arg2=2','--pos_arg3=3']) out = json.loads(out) - self.assertEqual([1,[],2,3], out) + self.assertEqual([1,[],2,3,False,False], out) out,err = lbrynet_cli(['cli_test_command','1','2','3']) out = json.loads(out) # TODO: variable length arguments don't have guess_type() on them - self.assertEqual([1,['2','3'],None,None], out) + self.assertEqual([1,['2','3'],None,None,False,False], out) + + + out,err = lbrynet_cli(['cli_test_command','1','-a']) + out = json.loads(out) + self.assertEqual([1,[],None,None,True,False], out) + + out,err = lbrynet_cli(['cli_test_command','1','--a_arg']) + out = json.loads(out) + self.assertEqual([1,[],None,None,True,False], out) + + + out,err = lbrynet_cli(['cli_test_command','1','-a','-b']) + out = json.loads(out) + self.assertEqual([1,[],None,None,True,True], out) + def test_status(self):