mirror of
https://github.com/encode/django-rest-framework.git
synced 2024-09-21 11:29:01 +03:00
25 lines
575 B
Python
25 lines
575 B
Python
|
from contextlib import contextmanager
|
||
|
from rest_framework.settings import api_settings
|
||
|
|
||
|
|
||
|
@contextmanager
|
||
|
def temporary_setting(setting, value, module=None):
|
||
|
"""
|
||
|
Temporarily change value of setting for test.
|
||
|
|
||
|
Optionally reload given module, useful when module uses value of setting on
|
||
|
import.
|
||
|
"""
|
||
|
original_value = getattr(api_settings, setting)
|
||
|
setattr(api_settings, setting, value)
|
||
|
|
||
|
if module is not None:
|
||
|
reload(module)
|
||
|
|
||
|
yield
|
||
|
|
||
|
setattr(api_settings, setting, original_value)
|
||
|
|
||
|
if module is not None:
|
||
|
reload(module)
|