def _test_create_gateway_device(self, name, connector_type, connector_ip, client_certificate=None, client_certificate_file=None, must_raise=False): cmd = nwgw.CreateGatewayDevice(test_cli20.MyApp(sys.stdout), None) myid = 'myid' extra_body = {'connector_type': connector_type, 'connector_ip': connector_ip, 'client_certificate': client_certificate} self.mox.StubOutWithMock(nwgw, 'read_cert_file') if client_certificate_file: nwgw.read_cert_file(mox.IgnoreArg()).AndReturn('xyz') extra_body['client_certificate'] = 'xyz' self.mox.ReplayAll() position_names = ['name', ] position_values = [name, ] args = [] for (k, v) in extra_body.iteritems(): if (k == 'client_certificate' and client_certificate_file): v = client_certificate_file k = 'client_certificate_file' # Append argument only if value for it was specified if v: args.extend(['--%s' % k.replace('_', '-'), v]) # The following is just for verifying the call fails as expected when # both certificate and certificate file are specified. The extra # argument added is client-certificate since the loop above added # client-certificate-file if client_certificate_file and client_certificate: args.extend(['--client-certificate', client_certificate_file]) args.append(name) if must_raise: with test_cli20.capture_std_streams(): self.assertRaises( SystemExit, self._test_create_resource, self.dev_resource, cmd, name, myid, args, position_names, position_values, extra_body=extra_body) else: self._test_create_resource( self.dev_resource, cmd, name, myid, args, position_names, position_values, extra_body=extra_body) self.mox.UnsetStubs()
def _test_update_gateway_device(self, name=None, connector_type=None, connector_ip=None, client_certificate=None, client_certificate_file=None, must_raise=False): cmd = nwgw.UpdateGatewayDevice(test_cli20.MyApp(sys.stdout), None) myid = 'myid' extra_body = {} self.mox.StubOutWithMock(nwgw, 'read_cert_file') if client_certificate_file: nwgw.read_cert_file(mox.IgnoreArg()).AndReturn('xyz') self.mox.ReplayAll() args = [myid] def process_arg(argname, arg): if arg: extra_body[argname] = arg args.extend(['--%s' % argname.replace('_', '-'), arg]) process_arg('name', name) process_arg('connector_type', connector_type) process_arg('connector_ip', connector_ip) process_arg('client_certificate', client_certificate) if client_certificate_file: extra_body['client_certificate'] = 'xyz' args.extend(['--client-certificate-file', client_certificate_file]) if must_raise: with test_cli20.capture_std_streams(): self.assertRaises(SystemExit, self._test_update_resource, self.dev_resource, cmd, myid, args, extrafields=extra_body) else: self._test_update_resource(self.dev_resource, cmd, myid, args, extrafields=extra_body) self.mox.UnsetStubs()
def _test_update_gateway_device(self, name=None, connector_type=None, connector_ip=None, client_certificate=None, client_certificate_file=None, must_raise=False): cmd = nwgw.UpdateGatewayDevice(test_cli20.MyApp(sys.stdout), None) myid = 'myid' extra_body = {} self.mox.StubOutWithMock(nwgw, 'read_cert_file') if client_certificate_file: nwgw.read_cert_file(mox.IgnoreArg()).AndReturn('xyz') self.mox.ReplayAll() args = [myid] def process_arg(argname, arg): if arg: extra_body[argname] = arg args.extend(['--%s' % argname.replace('_', '-'), arg]) process_arg('name', name) process_arg('connector_type', connector_type) process_arg('connector_ip', connector_ip) process_arg('client_certificate', client_certificate) if client_certificate_file: extra_body['client_certificate'] = 'xyz' args.extend(['--client-certificate-file', client_certificate_file]) if must_raise: with test_cli20.capture_std_streams(): self.assertRaises( SystemExit, self._test_update_resource, self.dev_resource, cmd, myid, args, extrafields=extra_body) else: self._test_update_resource( self.dev_resource, cmd, myid, args, extrafields=extra_body) self.mox.UnsetStubs()