def test_initialization_sets_up_default_client_correctly(self): nt.assert_equal(self.token, self.client.token) nt.assert_dict_contains_subset( { 'X-Rundeck-Auth-Token': self.token, 'User-Agent': 'PyRundeck v ' + __version__ }, self.client.client_args['headers']) new_client = RundeckApiClient( self.token, config.root_url, client_args={'headers': { 'User-Agent': 'dummy agent string' }}) nt.assert_equal(self.token, new_client.token) nt.assert_dict_contains_subset( { 'X-Rundeck-Auth-Token': self.token, 'User-Agent': 'dummy agent string' }, new_client.client_args['headers']) newest_client = RundeckApiClient( self.token, config.root_url, client_args={'headers': { 'bogus_header': 'bogus_value' }}) nt.assert_dict_contains_subset( { 'X-Rundeck-Auth-Token': self.token, 'User-Agent': 'PyRundeck v ' + __version__ }, newest_client.client_args['headers']) nt.assert_equal(self.token, newest_client.token)
def setup(self): self.token = 'dummy token' self.client = RundeckApiClient(self.token, config.root_url) class Object(object): pass self.resp = Object() # Dummy response object self.resp.status_code = 200 self.resp.text = """<test_xml attribute="foo">
def test_perform_request_calls_request_correctly_with_https( self, mock_request): mock_request.return_value = self.resp https_url = 'https://rundeck.example.com' client = RundeckApiClient(self.token, https_url) client._perform_request(https_url) args, kwargs = mock_request.call_args nt.assert_dict_contains_subset({'verify': True}, kwargs) path_to_pem = '/path/to/pem/file' other_client = RundeckApiClient(self.token, https_url, pem_file_path=path_to_pem) other_client._perform_request(https_url) args, kwargs = mock_request.call_args nt.assert_dict_contains_subset({'verify': path_to_pem}, kwargs)
def test_initialization_strips_final_slash_from_url(self): url = 'http://rundeck.example.com/' client = RundeckApiClient(self.token, url) nt.assert_equal(client.root_url, url[:-1])