Add test checking override_settings compat

This commit is contained in:
Carlton Gibson 2017-12-14 09:54:56 +01:00
parent 1692feb535
commit 3f9a54f85b

View File

@ -1,8 +1,8 @@
from __future__ import unicode_literals
from django.test import TestCase
from django.test import TestCase, override_settings
from rest_framework.settings import APISettings
from rest_framework.settings import APISettings, api_settings
class TestSettings(TestCase):
@ -28,6 +28,23 @@ class TestSettings(TestCase):
'MAX_PAGINATE_BY': 100
})
def test_compatibility_with_override_settings(self):
"""
Ref #5658 & #2466: Documented usage of api_settings
is bound at import time:
from rest_framework.settings import api_settings
setting_changed signal hook must ensure bound instance
is refreshed.
"""
assert api_settings.PAGE_SIZE is None, "Checking a known default should be None"
with override_settings(REST_FRAMEWORK={'PAGE_SIZE': 10}):
assert api_settings.PAGE_SIZE == 10, "Setting should have been updated"
assert api_settings.PAGE_SIZE is None, "Setting should have been restored"
class TestSettingTypes(TestCase):
def test_settings_consistently_coerced_to_list(self):