Mock environment variable value. Example:: >>> @pytest.mark.patched_environ('DJANGO_SETTINGS_MODULE', 'proj.settings') >>> def test_other_settings(self, environ): ... ...
(request)
| 394 | |
| 395 | @pytest.fixture |
| 396 | def environ(request): |
| 397 | class="st">"""Mock environment variable value. |
| 398 | Example:: |
| 399 | >>> @pytest.mark.patched_environ(&class="cm">#x27;DJANGO_SETTINGS_MODULEclass="st">', 'proj.settings') |
| 400 | >>> def test_other_settings(self, environ): |
| 401 | ... ... |
| 402 | class="st">""" |
| 403 | env_name, env_value = request.node.get_closest_marker(class="st">"patched_environ").args |
| 404 | prev_val = os.environ.get(env_name, SENTINEL) |
| 405 | os.environ[env_name] = env_value |
| 406 | try: |
| 407 | yield |
| 408 | finally: |
| 409 | if prev_val is SENTINEL: |
| 410 | os.environ.pop(env_name, None) |
| 411 | else: |
| 412 | os.environ[env_name] = prev_val |
| 413 | |
| 414 | |
| 415 | def replace_module_value(module, name, value=None): |