コード例 #1
0
 def test_settings_recipients(self):
     """
     Ensure that the contact list consists of site manager email addresses
     """
     Recipient.objects.all().delete()
     managers = (('Bubba', '*****@*****.**'),)
     mix = RecipientsMixin()
     with override_settings(MANAGERS=managers):
         self.assertEqual(mix.recipient_list(), ['*****@*****.**'])
コード例 #2
0
    def test_setting_comes_back_after_context_manager(self):
        """
        Deleted options should return after the context manager is finished.
        """
        self.assertEqual(settings.DUMMY_OPTION, 42)

        with override_settings(DUMMY_OPTION=SETTING_DELETED):
            self.assertRaises(AttributeError, getattr, settings, "DUMMY_OPTION")

        self.assertEqual(settings.DUMMY_OPTION, 42)
コード例 #3
0
    def test_setting_comes_back_after_context_manager(self):
        """
        Deleted options should return after the context manager is finished.
        """
        self.assertEqual(settings.DUMMY_OPTION, 42)

        with override_settings(DUMMY_OPTION=SETTING_DELETED):
            self.assertRaises(AttributeError, getattr, settings, 'DUMMY_OPTION')

        self.assertEqual(settings.DUMMY_OPTION, 42)
コード例 #4
0
    def test_dummy_option_exists(self):
        """
        Deleted options should return after the context manager is finished.
        """
        self.assertEqual(settings.DUMMY_OPTION, 42)

        with override_settings(DUMMY_OPTION=SETTING_DELETED):
            self.assertRaises(AttributeError, getattr, settings, 'DUMMY_OPTION')

        self.assertEqual(settings.DUMMY_OPTION, 42)
コード例 #5
0
    def test_set_user_id_in_context_manager(self):
        """
        settings.USER_ID only exists in the context manager.

        Kind of a mirror image of TestSettingsDeleted.test_dummy_option_exists.
        """
        self.assertRaises(AttributeError, getattr, settings, "USER_ID")

        with override_settings(USER_ID=1):
            self.assertEqual(settings.USER_ID, 1)

        self.assertRaises(AttributeError, getattr, settings, "USER_ID")
コード例 #6
0
    def test_set_user_id_in_context_manager(self):
        """
        settings.USER_ID only exists in the context manager.

        Kind of a mirror image of TestSettingsDeleted.test_dummy_option_exists.
        """
        self.assertRaises(AttributeError, getattr, settings, "USER_ID")

        with override_settings(USER_ID=1):
            self.assertEqual(settings.USER_ID, 1)

        self.assertRaises(AttributeError, getattr, settings, "USER_ID")
コード例 #7
0
 def test_override_settings_context_manager(self):
     """
     Context managers overwrite method and class level decorations.
     """
     with override_settings(FOO="xyz"):
         self.assertEqual(settings.FOO, "xyz")
コード例 #8
0
 def test_override_settings_as_context_manager(self):
     """
     Can use override_settings as a context manager.
     """
     with override_settings(FOO="321"):
         self.assertEqual(settings.FOO, "321")
コード例 #9
0
 def test_context_manager(self):
     self.assertRaises(AttributeError, getattr, settings, "FOO2")
     with override_settings(FOO2="abc"):
         self.assertEqual(settings.FOO2, "abc")
     self.assertRaises(AttributeError, getattr, settings, "FOO2")
コード例 #10
0
 def test_override_settings_as_context_manager(self):
     """
     Can use override_settings as a context manager.
     """
     with override_settings(FOO="321"):
         self.assertEqual(settings.FOO, "321")
コード例 #11
0
 def test_override_settings_context_manager(self):
     """
     Context managers overwrite method and class level decorations.
     """
     with override_settings(FOO="xyz"):
         self.assertEqual(settings.FOO, "xyz")
コード例 #12
0
 def test_multiple_options(self):
     self.assertEqual(settings.OPTION_A, True)
     with override_settings(OPTION_B="abc", OPTION_A=False):
         self.assertEqual(settings.OPTION_A, False)
         self.assertEqual(settings.OPTION_B, "abc")
     self.assertEqual(settings.OPTION_A, True)
コード例 #13
0
    def test_phased(self):
        context = Context({'test_var': 'TEST'})
        first_render = compile_string(self.test_template, None).render(context)
        original_context = unpickle_context(first_render)
        self.assertNotEqual(flatten_context(context), original_context)
        pickled_context = pickle_context(Context({'csrf_token': 'NOTPROVIDED'}))
        self.assertEqual(first_render, '%(delimiter)s{%% if 1 %%}test{%% endif %%}%(pickled_context)s%(delimiter)sTEST' %
            dict(delimiter=settings.PHASED_SECRET_DELIMITER, pickled_context=pickled_context))

    def test_second_pass(self):
        request = self.factory.get('/')
        first_render = compile_string(self.test_template, None).render(Context({'test_var': 'TEST'}))
        second_render = second_pass_render(request, first_render)
        self.assertEqual(second_render, 'testTEST')

TwoPhaseTestCase = override_settings(PHASED_KEEP_CONTEXT=False)(TwoPhaseTestCase)


class FancyTwoPhaseTestCase(TwoPhaseTestCase):
    def test_phased(self):
        context = Context({'test_var': 'TEST'})
        first_render = compile_string(self.test_template, None).render(context)
        self.assertEqual(first_render, 'fancydelimiter{%% if 1 %%}test{%% endif %%}%sfancydelimiterTEST' % pickle_context(backup_csrf_token(context)))

    def test_second_pass(self):
        request = self.factory.get('/')
        first_render = compile_string(self.test_template, None).render(Context({'test_var': 'TEST'}))
        second_render = second_pass_render(request, first_render)
        self.assertEqual(second_render, 'testTEST')

FancyTwoPhaseTestCase = override_settings(PHASED_SECRET_DELIMITER="fancydelimiter")(FancyTwoPhaseTestCase)
コード例 #14
0
 def test_multiple_options(self):
     self.assertEqual(settings.OPTION_A, True)
     with override_settings(OPTION_B="abc", OPTION_A=False):
         self.assertEqual(settings.OPTION_A, False)
         self.assertEqual(settings.OPTION_B, "abc")
     self.assertEqual(settings.OPTION_A, True)
コード例 #15
0
 def test_context_manager(self):
     self.assertRaises(AttributeError, getattr, settings, "FOO2")
     with override_settings(FOO2="abc"):
         self.assertEqual(settings.FOO2, "abc")
     self.assertRaises(AttributeError, getattr, settings, "FOO2")
コード例 #16
0
    def test_phased(self):
        context = Context({'test_var': 'TEST'})
        first_render = compile_string(self.test_template, None).render(context)
        original_context = unpickle_context(first_render)
        self.assertNotEqual(flatten_context(context), original_context)
        pickled_context = pickle_context(Context({'csrf_token': 'NOTPROVIDED'}))
        self.assertEqual(first_render, '%(delimiter)s{%% if 1 %%}test{%% endif %%}%(pickled_context)s%(delimiter)sTEST' %
            dict(delimiter=settings.PHASED_SECRET_DELIMITER, pickled_context=pickled_context))

    def test_second_pass(self):
        request = self.factory.get('/')
        first_render = compile_string(self.test_template, None).render(Context({'test_var': 'TEST'}))
        second_render = second_pass_render(request, first_render)
        self.assertEqual(second_render, 'testTEST')

TwoPhaseTestCase = override_settings(PHASED_KEEP_CONTEXT=False)(TwoPhaseTestCase)


class FancyTwoPhaseTestCase(TwoPhaseTestCase):
    def test_phased(self):
        context = Context({'test_var': 'TEST'})
        first_render = compile_string(self.test_template, None).render(context)
        self.assertEqual(first_render, 'fancydelimiter{%% if 1 %%}test{%% endif %%}%sfancydelimiterTEST' % pickle_context(backup_csrf_token(context)))

    def test_second_pass(self):
        request = self.factory.get('/')
        first_render = compile_string(self.test_template, None).render(Context({'test_var': 'TEST'}))
        second_render = second_pass_render(request, first_render)
        self.assertEqual(second_render, 'testTEST')

FancyTwoPhaseTestCase = override_settings(PHASED_SECRET_DELIMITER="fancydelimiter")(FancyTwoPhaseTestCase)