Beispiel #1
0
 def test_parse_args_multiple_where(self):
     args = parse_args(
         ['list-jobs', '--where', 'team_id:abc,remoteci_id:def'])
     self.assertEqual(args.where, [
         {'key': 'team_id', 'value': 'abc'},
         {'key': 'remoteci_id', 'value': 'def'}
     ])
Beispiel #2
0
def main(args=sys.argv[1:]):
    args = parse_args(args)

    c = dci_lite.client.DCIClient.for_user(dci_login=args['dci_login'],
                                           dci_password=args['dci_password'],
                                           dci_cs_url=args['dci_cs_url'])

    resource = getattr(c, args['resource'])
    action = getattr(resource, args['action'])

    ret = action(**args['action_args'])
    if isinstance(ret, types.GeneratorType):
        for i in ret:
            print(i)
    else:
        print(ret)
Beispiel #3
0
 def test_parse_args_default_command(self):
     args = parse_args([])
     self.assertEqual(args.command, 'status')
Beispiel #4
0
 def test_parse_args_limit(self):
     args = parse_args(['list-jobs', '--limit', '1'])
     self.assertEqual(args.limit, 1)
Beispiel #5
0
 def test_parse_args_verbose(self):
     args = parse_args(['--verbose'])
     self.assertEqual(args.verbose, True)
Beispiel #6
0
 def test_parse_args_command(self):
     args = parse_args(['list-jobs'])
     self.assertEqual(args.command, 'list-jobs')
Beispiel #7
0
 def test_parse_args_where(self):
     args = parse_args(['list-jobs', '--where', 'team_id:abc'])
     self.assertEqual(args.where, [{'key': 'team_id', 'value': 'abc'}])
Beispiel #8
0
 def test_parse_args_DCI_CS_URL_env_variable(self):
     with patch.dict('os.environ', {'DCI_CS_URL': 'https://api.example.org'}):
         args = parse_args([])
         self.assertEqual(args.dci_cs_url, 'https://api.example.org')
Beispiel #9
0
 def test_parse_args_DCI_PASSWORD_env_variable(self):
     with patch.dict('os.environ', {'DCI_PASSWORD': '******'}):
         args = parse_args([])
         self.assertEqual(args.dci_password, 'bar')
Beispiel #10
0
 def test_parse_args_default_sort(self):
     args = parse_args([])
     self.assertEqual(args.sort, None)
Beispiel #11
0
 def test_cli_overload_DCI_LOGIN_env_variable(self):
     with patch.dict('os.environ', {'DCI_LOGIN': '******'}):
         args = parse_args(['--dci-login', 'foo'])
         self.assertEqual(args.dci_login, 'foo')
Beispiel #12
0
 def test_parse_args_dci_password(self):
     args = parse_args(['--dci-password', 'bar'])
     self.assertEqual(args.dci_password, 'bar')
Beispiel #13
0
 def test_parse_args_DCI_LOGIN_env_variable(self):
     with patch.dict('os.environ', {'DCI_LOGIN': '******'}):
         args = parse_args([])
         self.assertEqual(args.dci_login, 'foo')
Beispiel #14
0
 def test_parse_args_no_dci_login(self):
     args = parse_args([])
     self.assertEqual(args.dci_login, None)
Beispiel #15
0
 def test_parse_args_dci_login(self):
     args = parse_args(['--dci-login', 'foo'])
     self.assertEqual(args.dci_login, 'foo')
Beispiel #16
0
 def test_parse_args_default_limit(self):
     args = parse_args([])
     self.assertEqual(args.limit, 10)
Beispiel #17
0
 def test_cli_overload_DCI_PASSWORD_env_variable(self):
     with patch.dict('os.environ', {'DCI_PASSWORD': '******'}):
         args = parse_args(['--dci-password', 'foo'])
         self.assertEqual(args.dci_password, 'foo')
Beispiel #18
0
 def test_parse_args_sort(self):
     args = parse_args(['list-jobs', '--sort', 'created_at'])
     self.assertEqual(args.sort, 'created_at')
Beispiel #19
0
 def test_parse_args_default_where(self):
     args = parse_args([])
     self.assertEqual(args.where, [])
Beispiel #20
0
 def test_parse_args_dci_cs_url(self):
     args = parse_args(['--dci-cs-url', 'https://api.example.org'])
     self.assertEqual(args.dci_cs_url, 'https://api.example.org')
Beispiel #21
0
 def test_parse_args_no_verbose(self):
     args = parse_args([])
     self.assertEqual(args.verbose, False)
Beispiel #22
0
 def test_parse_args_no_dci_password(self):
     args = parse_args([])
     self.assertEqual(args.dci_password, None)
Beispiel #23
0
 def test_parse_args_default_dci_cs_url(self):
     args = parse_args([])
     self.assertEqual(args.dci_cs_url, 'https://api.distributed-ci.io')