def test_load_from_yaml_file_logging(self): file_path = os.path.join(os.path.expanduser("~"), "google-ads.yaml") self.fs.create_file( file_path, contents=yaml.safe_dump({ "developer_token": self.developer_token, "logging": { "version": 1, "disable_existing_loggers": False, "formatters": { "default_fmt": { "format": "[%(asctime)s - %(levelname)s]", "datefmt": "%Y-%m-%d %H:%M:%S", } }, "handlers": { "default_handler": { "class": "logging.StreamHandler", "formatter": "default_fmt", } }, "loggers": { "": { "handlers": ["default_handler"], "level": "DEBUG", } }, }, }), ) result = config.load_from_yaml_file() self.assertEqual(result["developer_token"], self.developer_token) self.assertIsInstance(result["logging"], dict)
def load_credentials(): """Loads credentials with the following ordering: from env, Google's yaml file, a custom .json file in .config/gaql""" from google.ads.google_ads import config try: return config.load_from_env() except: try: return config.load_from_yaml_file() except: if not CREDENTIAL_FILE.exists(): print(f"Couldn't load credentials from the environment, or from ~/google-ads.yaml. Trying {CREDENTIAL_FILE}") return config.load_from_dict(read_credentials_from_file())
def test_load_from_yaml_file_linked_cid(self): file_path = os.path.join(os.path.expanduser("~"), "google-ads.yaml") self.fs.create_file( file_path, contents=yaml.safe_dump({ "linked_customer_id": self.linked_customer_id, "developer_token": self.developer_token, }), ) result = config.load_from_yaml_file() self.assertEqual(result["developer_token"], self.developer_token) self.assertEqual(result["linked_customer_id"], self.linked_customer_id)
def test_load_from_yaml_file_from_env_var(self): """Should load from env var path if defined.""" env_var_path = os.path.expanduser("/test/from/env/var") file_path = os.path.join(env_var_path, "google-ads.yaml") mock_dev_token = "from env var path" self.fs.create_file( file_path, contents=yaml.safe_dump({"developer_token": mock_dev_token}), ) environ = {"GOOGLE_ADS_CONFIGURATION_FILE_PATH": file_path} with mock.patch("os.environ", environ): result = config.load_from_yaml_file() self.assertEqual(result["developer_token"], mock_dev_token)
def test_load_from_yaml_file(self): file_path = os.path.join(os.path.expanduser("~"), "google-ads.yaml") self.fs.create_file( file_path, contents=yaml.safe_dump({ "developer_token": self.developer_token, "client_id": self.client_id, "client_secret": self.client_secret, "refresh_token": self.refresh_token, }), ) result = config.load_from_yaml_file() self.assertEqual(result["developer_token"], self.developer_token) self.assertEqual(result["client_id"], self.client_id) self.assertEqual(result["client_secret"], self.client_secret) self.assertEqual(result["refresh_token"], self.refresh_token)
def test_load_from_yaml_file(self): file_path = os.path.join(os.path.expanduser('~'), 'google-ads.yaml') self.fs.create_file(file_path, contents=yaml.safe_dump({ 'developer_token': self.developer_token, 'client_id': self.client_id, 'client_secret': self.client_secret, 'refresh_token': self.refresh_token })) result = config.load_from_yaml_file() self.assertEqual(result['developer_token'], self.developer_token) self.assertEqual(result['client_id'], self.client_id) self.assertEqual(result['client_secret'], self.client_secret) self.assertEqual(result['refresh_token'], self.refresh_token)
def test_load_from_yaml_file_secondary_service_account_keys(self): """Should convert secondary keys to primary keys. This test should be removed once the secondary service account keys are deprecated. """ file_path = os.path.join(os.path.expanduser("~"), "google-ads.yaml") self.fs.create_file( file_path, contents=yaml.safe_dump({ "developer_token": self.developer_token, "path_to_private_key_file": self.json_key_file_path, "delegated_account": self.impersonated_email, }), ) result = config.load_from_yaml_file() self.assertEqual(result["json_key_file_path"], self.json_key_file_path) self.assertEqual(result["impersonated_email"], self.impersonated_email)