def testCallMethodDirect(self): """Test whether we can call an API method directly.""" headers = client.GetAuthCredentials() config = client.GetConfigValues() url = '/'.join([ AdWordsWebServiceTestV13.SERVER, 'api/adwords/v13', 'AccountService' ]) op_config = { 'server': self.__class__.SERVER, 'version': self.__class__.VERSION, 'http_proxy': HTTP_PROXY } lock = thread.allocate_lock() service = AdWordsWebService(headers, config, op_config, url, lock) method_name = 'getAccountInfo' if config['soap_lib'] == SOAPPY: self.assert_( isinstance( service.CallMethod(method_name, (), 'AccountService'), tuple)) elif config['soap_lib'] == ZSI: web_services = __import__( 'adspygoogle.adwords.zsi.v13.AccountService_services', globals(), locals(), ['']) loc = web_services.AccountServiceLocator() request = eval('web_services.%sRequest()' % method_name) self.assert_( isinstance( service.CallMethod(method_name, (), 'Account', loc, request), tuple))
def __init__(self, headers, config, op_config, lock, logger): """Inits TrafficEstimatorService. Args: headers: dict Dictionary object with populated authentication credentials. config: dict Dictionary object with populated configuration values. op_config: dict Dictionary object with additional configuration values for this operation. lock: thread.lock Thread lock logger: Logger Instance of Logger """ url = [ op_config['server'], 'api/adwords', op_config['version'], self.__class__.__name__ ] if AdWordsSanityCheck.IsJaxbApi(op_config['version']): url.insert(2, 'o') if config['access']: url.insert(len(url) - 1, config['access']) self.__name_space = 'https://adwords.google.com/api/adwords' self.__service = AdWordsWebService(headers, config, op_config, '/'.join(url), lock, logger) self._wsdl_types_map = WSDL_MAP[op_config['version']][ self.__service._GetServiceName()] super(TrafficEstimatorService, self).__init__(headers, config, op_config, url, 'adspygoogle.adwords', lock, logger)
def __init__(self, headers, config, op_config, lock, logger): """Inits AdGroupAdService. Args: headers: dict Dictionary object with populated authentication credentials. config: dict Dictionary object with populated configuration values. op_config: dict Dictionary object with additional configuration values for this operation. lock: thread.lock Thread lock. logger: Logger Instance of Logger """ url = [op_config['server'], 'api/adwords', op_config['group'], op_config['version'], self.__class__.__name__] if config['access']: url.insert(len(url) - 1, config['access']) self.__service = AdWordsWebService(headers, config, op_config, '/'.join(url), lock, logger) self._wsdl_types_map = WSDL_MAP[op_config['version']][ self.__service._GetServiceName()] super(AdGroupAdService, self).__init__( headers, config, op_config, url, 'adspygoogle.adwords', lock, logger)
def __init__(self, headers, config, op_config, lock, logger): """Inits BulkMutateJobService. Args: headers: dict Dictionary object with populated authentication credentials. config: dict Dictionary object with populated configuration values. op_config: dict Dictionary object with additional configuration values for this operation. lock: thread.lock Thread lock. logger: Logger Instance of Logger """ # NOTE(api.sgrinberg): Custom handling for BulkMutateJobService, whose # group in URL is 'job/' which is different from its namespace 'cm/'. url = [op_config['server'], 'api/adwords', 'job', op_config['version'], self.__class__.__name__] if config['access']: url.insert(len(url) - 1, config['access']) self.__service = AdWordsWebService(headers, config, op_config, '/'.join(url), lock, logger) self._wsdl_types_map = WSDL_MAP[op_config['version']][ self.__service._GetServiceName()] super(BulkMutateJobService, self).__init__( headers, config, op_config, url, 'adspygoogle.adwords', lock, logger)