test_overridding_dynamic_settings.py 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. from ..dynamicsettings import DynamicSettings
  2. from ..test import override_dynamic_settings
  3. def test_dynamic_setting_can_be_overridden_using_context_manager(dynamic_settings):
  4. assert dynamic_settings.forum_name == "Misago"
  5. with override_dynamic_settings(forum_name="Overrided"):
  6. assert dynamic_settings.forum_name == "Overrided"
  7. assert dynamic_settings.forum_name == "Misago"
  8. def test_dynamic_setting_can_be_overridden_using_decorator(dynamic_settings):
  9. @override_dynamic_settings(forum_name="Overrided")
  10. def decorated_function(settings):
  11. return settings.forum_name
  12. assert dynamic_settings.forum_name == "Misago"
  13. assert decorated_function(dynamic_settings) == "Overrided"
  14. assert dynamic_settings.forum_name == "Misago"
  15. def test_lazy_dynamic_setting_can_be_overridden_using_context_manager(
  16. cache_versions, lazy_setting
  17. ):
  18. settings = DynamicSettings(cache_versions)
  19. assert settings.get_lazy_setting_value("lazy_setting") == "Hello"
  20. with override_dynamic_settings(lazy_setting="Overrided"):
  21. assert settings.get_lazy_setting_value("lazy_setting") == "Overrided"
  22. assert settings.get_lazy_setting_value("lazy_setting") == "Hello"
  23. def test_lazy_dynamic_setting_can_be_overridden_using_decorator(
  24. cache_versions, lazy_setting
  25. ):
  26. @override_dynamic_settings(lazy_setting="Overrided")
  27. def decorated_function(settings):
  28. return settings.get_lazy_setting_value("lazy_setting")
  29. settings = DynamicSettings(cache_versions)
  30. assert settings.get_lazy_setting_value("lazy_setting") == "Hello"
  31. assert decorated_function(settings) == "Overrided"
  32. assert settings.get_lazy_setting_value("lazy_setting") == "Hello"