def test_client_manager_properly_creates_httpclient_instance(self): self.mox.StubOutWithMock(HTTPClient, '__init__') HTTPClient.__init__( ca_cert=CA_CERT, # we are not really interested in other args auth_strategy=mox.IgnoreArg(), auth_url=mox.IgnoreArg(), endpoint_url=mox.IgnoreArg(), insecure=mox.IgnoreArg(), password=mox.IgnoreArg(), region_name=mox.IgnoreArg(), tenant_name=mox.IgnoreArg(), token=mox.IgnoreArg(), username=mox.IgnoreArg(), user_id=mox.IgnoreArg(), tenant_id=mox.IgnoreArg(), timeout=mox.IgnoreArg(), log_credentials=mox.IgnoreArg(), service_type=mox.IgnoreArg(), endpoint_type=mox.IgnoreArg() ) self.mox.ReplayAll() version = {'network': '2.0'} ClientManager(ca_cert=CA_CERT, api_version=version, url=END_URL, token=AUTH_TOKEN).neutron self.mox.VerifyAll()
def test_client_manager_properly_creates_httpclient_instance(self): self.mox.StubOutWithMock(HTTPClient, '__init__') HTTPClient.__init__( ca_cert=CA_CERT, # we are not really interested in other args auth_strategy=mox.IgnoreArg(), auth_url=mox.IgnoreArg(), auth_plugin=mox.IgnoreArg(), endpoint_url=mox.IgnoreArg(), insecure=mox.IgnoreArg(), password=mox.IgnoreArg(), region_name=mox.IgnoreArg(), tenant_name=mox.IgnoreArg(), token=mox.IgnoreArg(), username=mox.IgnoreArg(), user_id=mox.IgnoreArg(), tenant_id=mox.IgnoreArg(), timeout=mox.IgnoreArg(), log_credentials=mox.IgnoreArg(), service_type=mox.IgnoreArg(), endpoint_type=mox.IgnoreArg()) self.mox.ReplayAll() version = {'network': '2.0'} ClientManager(ca_cert=CA_CERT, api_version=version, url=END_URL, token=AUTH_TOKEN).neutron self.mox.VerifyAll()
def sync_with_ironic(self, auth_server, auth_port, auth_protocol, auth_version, admin_user, admin_password, admin_tenant_name, ironic_server_ip, ironic_server_port): auth_url = '%s://%s:%s/%s' % (auth_protocol, auth_server, auth_port, auth_version) print auth_url httpclient = HTTPClient(username=admin_user, project_name=admin_tenant_name, password=admin_password, auth_url=auth_url) httpclient.authenticate() ironic_url = 'http://%s:%s/v1/nodes/detail' % (ironic_server_ip, ironic_server_port) auth_token = httpclient.auth_token headers = {'X-Auth-Token': str(auth_token)} resp = requests.get(ironic_url, headers=headers) resp_dict = resp.json() node_dict_list = resp_dict["nodes"] self.process_ironic_node_info(node_dict_list)
def test_request_forbidden_is_returned_to_caller(self): rv_should_be = MyResp(403), 'forbidden message' HTTPClient.request(URL, METHOD, headers=mox.IgnoreArg()).AndReturn(rv_should_be) self.mox.ReplayAll() self.assertEqual(rv_should_be, self.http._cs_request(URL, METHOD)) self.mox.VerifyAll()
def setUp(self): super(TestHTTPClient, self).setUp() self.mox = mox.Mox() self.mox.StubOutWithMock(httplib2.Http, 'request') self.addCleanup(self.mox.UnsetStubs) self.http = HTTPClient(token=AUTH_TOKEN, endpoint_url=END_URL)
def test_request_error(self): HTTPClient.request(URL, METHOD, headers=mox.IgnoreArg()).AndRaise( Exception('error msg')) self.mox.ReplayAll() self.assertRaises(exceptions.ConnectionFailed, self.http._cs_request, URL, METHOD) self.mox.VerifyAll()
def test_request_success(self): rv_should_be = MyResp(200), 'test content' HTTPClient.request(URL, METHOD, headers=mox.IgnoreArg()).AndReturn(rv_should_be) self.mox.ReplayAll() self.assertEqual(rv_should_be, self.http._cs_request(URL, METHOD)) self.mox.VerifyAll()
def test_request_forbidden_is_returned_to_caller(self): rv_should_be = MyResp(403), 'forbidden message' HTTPClient.request( URL, METHOD, headers=mox.IgnoreArg() ).AndReturn(rv_should_be) self.mox.ReplayAll() self.assertEqual(rv_should_be, self.http._cs_request(URL, METHOD)) self.mox.VerifyAll()
def test_request_unauthorized(self): rv_should_be = MyResp(401), 'unauthorized message' HTTPClient.request(URL, METHOD, headers=mox.IgnoreArg()).AndReturn(rv_should_be) self.mox.ReplayAll() e = self.assertRaises(exceptions.Unauthorized, self.http._cs_request, URL, METHOD) self.assertEqual('unauthorized message', e.message) self.mox.VerifyAll()
def test_request_success(self): rv_should_be = MyResp(200), 'test content' HTTPClient.request( URL, METHOD, headers=mox.IgnoreArg() ).AndReturn(rv_should_be) self.mox.ReplayAll() self.assertEqual(rv_should_be, self.http._cs_request(URL, METHOD)) self.mox.VerifyAll()
class TestHTTPClient(testtools.TestCase): def setUp(self): super(TestHTTPClient, self).setUp() self.mox = mox.Mox() self.mox.StubOutWithMock(HTTPClient, 'request') self.addCleanup(self.mox.UnsetStubs) self.http = HTTPClient(token=AUTH_TOKEN, endpoint_url=END_URL) def test_request_error(self): HTTPClient.request( URL, METHOD, headers=mox.IgnoreArg() ).AndRaise(Exception('error msg')) self.mox.ReplayAll() self.assertRaises( exceptions.ConnectionFailed, self.http._cs_request, URL, METHOD ) self.mox.VerifyAll() def test_request_success(self): rv_should_be = MyResp(200), 'test content' HTTPClient.request( URL, METHOD, headers=mox.IgnoreArg() ).AndReturn(rv_should_be) self.mox.ReplayAll() self.assertEqual(rv_should_be, self.http._cs_request(URL, METHOD)) self.mox.VerifyAll() def test_request_unauthorized(self): rv_should_be = MyResp(401), 'unauthorized message' HTTPClient.request( URL, METHOD, headers=mox.IgnoreArg() ).AndReturn(rv_should_be) self.mox.ReplayAll() e = self.assertRaises(exceptions.Unauthorized, self.http._cs_request, URL, METHOD) self.assertEqual('unauthorized message', e.message) self.mox.VerifyAll() def test_request_forbidden_is_returned_to_caller(self): rv_should_be = MyResp(403), 'forbidden message' HTTPClient.request( URL, METHOD, headers=mox.IgnoreArg() ).AndReturn(rv_should_be) self.mox.ReplayAll() self.assertEqual(rv_should_be, self.http._cs_request(URL, METHOD)) self.mox.VerifyAll()
def test_proper_exception_is_raised_when_cert_validation_fails(self): http = HTTPClient(token=AUTH_TOKEN, endpoint_url=END_URL) self.mox.StubOutWithMock(HTTPClient, 'request') HTTPClient.request(URL, METHOD, headers=mox.IgnoreArg()).AndRaise( requests.exceptions.SSLError) self.mox.ReplayAll() self.assertRaises(exceptions.SslCertificateValidationError, http._cs_request, URL, METHOD) self.mox.VerifyAll()
def test_request_unauthorized(self): rv_should_be = MyResp(401), 'unauthorized message' HTTPClient.request( URL, METHOD, headers=mox.IgnoreArg() ).AndReturn(rv_should_be) self.mox.ReplayAll() e = self.assertRaises(exceptions.Unauthorized, self.http._cs_request, URL, METHOD) self.assertEqual('unauthorized message', e.message) self.mox.VerifyAll()
def test_request_error(self): HTTPClient.request( URL, METHOD, headers=mox.IgnoreArg() ).AndRaise(Exception('error msg')) self.mox.ReplayAll() self.assertRaises( exceptions.ConnectionFailed, self.http._cs_request, URL, METHOD ) self.mox.VerifyAll()
def test_proper_exception_is_raised_when_cert_validation_fails(self): http = HTTPClient(token=AUTH_TOKEN, endpoint_url=END_URL) self.mox.StubOutWithMock(HTTPClient, 'request') HTTPClient.request( URL, METHOD, headers=mox.IgnoreArg() ).AndRaise(requests.exceptions.SSLError) self.mox.ReplayAll() self.assertRaises( exceptions.SslCertificateValidationError, http._cs_request, URL, METHOD ) self.mox.VerifyAll()
class TestHTTPClient(testtools.TestCase): def setUp(self): super(TestHTTPClient, self).setUp() self.mox = mox.Mox() self.mox.StubOutWithMock(HTTPClient, 'request') self.addCleanup(self.mox.UnsetStubs) self.http = HTTPClient(token=AUTH_TOKEN, endpoint_url=END_URL) def test_request_error(self): HTTPClient.request(URL, METHOD, headers=mox.IgnoreArg()).AndRaise( Exception('error msg')) self.mox.ReplayAll() self.assertRaises(exceptions.ConnectionFailed, self.http._cs_request, URL, METHOD) self.mox.VerifyAll() def test_request_success(self): rv_should_be = MyResp(200), 'test content' HTTPClient.request(URL, METHOD, headers=mox.IgnoreArg()).AndReturn(rv_should_be) self.mox.ReplayAll() self.assertEqual(rv_should_be, self.http._cs_request(URL, METHOD)) self.mox.VerifyAll() def test_request_unauthorized(self): rv_should_be = MyResp(401), 'unauthorized message' HTTPClient.request(URL, METHOD, headers=mox.IgnoreArg()).AndReturn(rv_should_be) self.mox.ReplayAll() e = self.assertRaises(exceptions.Unauthorized, self.http._cs_request, URL, METHOD) self.assertEqual('unauthorized message', e.message) self.mox.VerifyAll() def test_request_forbidden_is_returned_to_caller(self): rv_should_be = MyResp(403), 'forbidden message' HTTPClient.request(URL, METHOD, headers=mox.IgnoreArg()).AndReturn(rv_should_be) self.mox.ReplayAll() self.assertEqual(rv_should_be, self.http._cs_request(URL, METHOD)) self.mox.VerifyAll()
class TestHTTPClient(testtools.TestCase): def setUp(self): super(TestHTTPClient, self).setUp() self.mox = mox.Mox() self.mox.StubOutWithMock(httplib2.Http, 'request') self.addCleanup(self.mox.UnsetStubs) self.http = HTTPClient(token=AUTH_TOKEN, endpoint_url=END_URL) def test_request_error(self): httplib2.Http.request(URL, METHOD, headers=mox.IgnoreArg()).AndRaise( Exception('error msg')) self.mox.ReplayAll() self.assertRaises(exceptions.ConnectionFailed, self.http._cs_request, URL, METHOD) self.mox.VerifyAll() def test_request_success(self): rv_should_be = MyResp(200), 'test content' httplib2.Http.request(URL, METHOD, headers=mox.IgnoreArg()).AndReturn(rv_should_be) self.mox.ReplayAll() self.assertEqual(rv_should_be, self.http._cs_request(URL, METHOD)) self.mox.VerifyAll()
class TestHTTPClient(testtools.TestCase): def setUp(self): super(TestHTTPClient, self).setUp() self.mox = mox.Mox() self.mox.StubOutWithMock(httplib2.Http, 'request') self.addCleanup(self.mox.UnsetStubs) self.http = HTTPClient(token=AUTH_TOKEN, endpoint_url=END_URL) def test_request_error(self): httplib2.Http.request( URL, METHOD, headers=mox.IgnoreArg() ).AndRaise(Exception('error msg')) self.mox.ReplayAll() self.assertRaises( exceptions.ConnectionFailed, self.http._cs_request, URL, METHOD ) self.mox.VerifyAll() def test_request_success(self): rv_should_be = MyResp(200), 'test content' httplib2.Http.request( URL, METHOD, headers=mox.IgnoreArg() ).AndReturn(rv_should_be) self.mox.ReplayAll() self.assertEqual(rv_should_be, self.http._cs_request(URL, METHOD)) self.mox.VerifyAll()
def _run(self, args_str=None, oper=''): self._args = None if not args_str: args_str = ' '.join(sys.argv[1:]) self._parse_args(args_str) if self._quantum == None: httpclient = HTTPClient( username='******', tenant_name='demo', password='******', # region_name=self._region_name, auth_url='http://%s:5000/v2.0' % (self._args.api_server_ip)) httpclient.authenticate() #OS_URL = httpclient.endpoint_url OS_URL = 'http://%s:9696/' % (self._args.api_server_ip) OS_TOKEN = httpclient.auth_token self._quantum = client.Client('2.0', endpoint_url=OS_URL, token=OS_TOKEN) self._vnc_lib = VncApi(username=self._args.admin_user, password=self._args.admin_password, tenant_name=self._args.admin_tenant_name, api_server_host=self._args.api_server_ip, api_server_port=self._args.api_server_port, api_server_url='/', auth_host=self._args.api_server_ip) self._proj_obj = self._vnc_lib.project_read( fq_name=['default-domain', 'default-project']) self._ipam_obj = self._vnc_lib.network_ipam_read(fq_name=[ 'default-domain', 'default-project', 'default-network-ipam' ]) if self._args.oper == 'add': self._create_vn(self._args.vn_name, self._args.public_subnet) elif self._args.oper == 'del': self._delete_vn(self._args.vn_name) elif self._args.oper == 'add-list': self._create_vn_list(self._args.vn_list)
def _run(self, args_str=None, oper=''): self._args = None if not args_str: args_str = ' '.join(sys.argv[1:]) self._parse_args(args_str) if self._quantum == None: httpclient = HTTPClient(username='******', tenant_name='demo', password='******', # region_name=self._region_name, auth_url='http://%s:5000/v2.0' % (self._args.api_server_ip)) httpclient.authenticate() #OS_URL = httpclient.endpoint_url OS_URL = 'http://%s:9696/' % (self._args.api_server_ip) OS_TOKEN = httpclient.auth_token self._quantum = client.Client( '2.0', endpoint_url=OS_URL, token=OS_TOKEN) self._vnc_lib = VncApi(username=self._args.admin_user, password=self._args.admin_password, tenant_name=self._args.admin_tenant_name, api_server_host=self._args.api_server_ip, api_server_port=self._args.api_server_port, api_server_url='/', auth_host=self._args.api_server_ip) self._proj_obj = self._vnc_lib.project_read( fq_name=['default-domain', 'default-project']) self._ipam_obj = self._vnc_lib.network_ipam_read( fq_name=['default-domain', 'default-project', 'default-network-ipam']) if self._args.oper == 'add': self._create_vn(self._args.vn_name, self._args.public_subnet) elif self._args.oper == 'del': self._delete_vn(self._args.vn_name) elif self._args.oper == 'add-list': self._create_vn_list(self._args.vn_list)