# Copyright The Kubeflow Authors. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. import os import pytest @pytest.fixture def mock_env_vars(): """Fixture to set and clean up environment variables""" original_env = dict(os.environ) def _set_env_vars(**kwargs): for key, value in kwargs.items(): if value is None: os.environ.pop(key, None) else: os.environ[key] = str(value) return os.environ yield _set_env_vars # Cleanup os.environ.clear() os.environ.update(original_env)