Пример #1
0
    def test_check_doesnt_increase_count_if_not_full(self, now_mock):
        now_mock.return_value = datetime.utcnow()
        cache.cache.clear()
        request = MockRequest()
        request.META["REMOTE_ADDR"] = "127.0.0.1"

        utils.register_counter_full(request)

        self.assertEqual(len(cache.cache._cache), 0)
Пример #2
0
    def test_check_doesnt_increase_count_if_not_full(self, now_mock):
        now_mock.return_value = datetime.utcnow()
        cache.cache.clear()
        request = MockRequest()
        request.META["REMOTE_ADDR"] = "127.0.0.1"

        utils.register_counter_full(request)

        self.assertEqual(len(cache.cache._cache), 0)
Пример #3
0
    def test_check_does_increase_count_if_full(self, now_mock):
        now_mock.return_value = datetime.utcnow()
        cache.cache.clear()
        request = MockRequest()
        request.META["REMOTE_ADDR"] = "127.0.0.1"

        for i in range(settings.REGISTER_LIMIT_COUNT):
            utils.register_counter_increase(request)

        self.assertEqual(len(cache.cache._cache), 1)
        self.assertEqual(cache.cache.get(utils.make_key(request, now_mock())), settings.REGISTER_LIMIT_COUNT)

        utils.register_counter_full(request)

        self.assertEqual(len(cache.cache._cache), 1)
        self.assertEqual(cache.cache.get(utils.make_key(request, now_mock())), settings.REGISTER_LIMIT_COUNT + 1)
Пример #4
0
    def post(self, *args, **kwargs):
        if utils.register_counter_full(self.request):
            messages.warning(
                self.request,
                _("Too many signups, further attempts will be ignored."))
            return HttpResponseRedirect(reverse_lazy("user-registration"))

        return super(UserRegistrationView, self).post(*args, **kwargs)
Пример #5
0
    def test_check_does_increase_count_if_full(self, now_mock):
        now_mock.return_value = datetime.utcnow()
        cache.cache.clear()
        request = MockRequest()
        request.META["REMOTE_ADDR"] = "127.0.0.1"

        for i in range(settings.REGISTER_LIMIT_COUNT):
            utils.register_counter_increase(request)

        self.assertEqual(len(cache.cache._cache), 1)
        self.assertEqual(cache.cache.get(utils.make_key(request, now_mock())),
                         settings.REGISTER_LIMIT_COUNT)

        utils.register_counter_full(request)

        self.assertEqual(len(cache.cache._cache), 1)
        self.assertEqual(cache.cache.get(utils.make_key(request, now_mock())),
                         settings.REGISTER_LIMIT_COUNT + 1)
Пример #6
0
    def post(self, *args, **kwargs):
        if utils.register_counter_full(self.request):
            messages.warning(self.request, _("Too many signups, further attempts will be ignored."))
            return HttpResponseRedirect(reverse_lazy("user-registration"))

        return super(UserRegistrationView, self).post(*args, **kwargs)