def test_file_with_env_value(): random_env_name = random_string(length=16) random_env_value = random_string(length=16) os.environ[random_env_name] = random_env_value env_file = file_with_env_value(name=random_env_name) assert os.path.exists(env_file) with open(env_file, mode='r') as f: assert random_env_value == f.read() env_file_2 = file_with_env_value(name=random_env_name) assert env_file == env_file_2, f"Helper doesn't recreate file on identical value." random_env_value = random_string(length=16) # Try changing value os.environ[random_env_name] = random_env_value env_file_3 = file_with_env_value(name=random_env_name) with open(env_file_3, mode='r') as f: assert random_env_value == f.read() assert env_file != env_file_3, f"Helper recreates file on different value."
def test_file_with_env_value_base64(): random_env_name = random_string(length=16) random_env_value = secrets.token_bytes(16) random_env_value_b64 = base64.b64encode(random_env_value).decode('utf-8') os.environ[random_env_name] = random_env_value_b64 env_file = file_with_env_value(name=random_env_name, encoded_with_base64=True) assert os.path.exists(env_file) with open(env_file, mode='rb') as f: assert random_env_value == f.read()
def json_file(self) -> str: """Path to Google Cloud authentication JSON file.""" return file_with_env_value(name='MC_PODCAST_AUTH_JSON_BASE64', encoded_with_base64=True)