def test_404(self):
        url = reverse(self.URL_NAME, kwargs={"message_id": 9999})
        request = RequestFactory().get(url)
        request.user = User.objects.create(username="******", is_superuser=False, is_staff=False)

        with pytest.raises(Http404):
            views.server_message_detail(request, 9999)
    def test_404(self):
        url = reverse(self.URL_NAME, kwargs={"message_id": 9999})
        request = RequestFactory().get(url)
        request.user = mixer.blend("auth.User", is_superuser=False, is_staff=False)

        with pytest.raises(Http404):
            views.server_message_detail(request, 9999)
    def test_404(self):
        url = reverse(self.URL_NAME, kwargs={"message_id": 9999})
        request = RequestFactory().get(url)
        request.user = mixer.blend("auth.User",
                                   is_superuser=False,
                                   is_staff=False)

        with pytest.raises(Http404):
            views.server_message_detail(request, 9999)
    def test_anonymous_default(self):
        nm = mixer.blend("config.NotificationMessage")

        url = reverse(self.URL_NAME, kwargs={"message_id": nm.id})
        request = RequestFactory().get(url)
        request.user = AnonymousUser()
        response = views.server_message_detail(request, nm.id)

        assert response.status_code == 200, "Should be callable"
    def test_authenticated_user(self):
        nm = models.NotificationMessage.objects.create(title="A1", summary_message="B", detailed_message="C")

        url = reverse(self.URL_NAME, kwargs={"message_id": nm.id})
        request = RequestFactory().get(url)
        request.user = User.objects.create(username="******", is_superuser=False, is_staff=False)
        response = views.server_message_detail(request, nm.id)

        assert response.status_code == 200, "Should be callable"
    def test_anonymous_default(self):
        nm = models.NotificationMessage.objects.create(title="A1", summary_message="B", detailed_message="C")

        url = reverse(self.URL_NAME, kwargs={"message_id": nm.id})
        request = RequestFactory().get(url)
        request.user = AnonymousUser()
        response = views.server_message_detail(request, nm.id)

        assert response.status_code == 200, "Should be callable"
    def test_authenticated_user(self):
        nm = mixer.blend("config.NotificationMessage")

        url = reverse(self.URL_NAME, kwargs={"message_id": nm.id})
        request = RequestFactory().get(url)
        request.user = mixer.blend("auth.User", is_superuser=False, is_staff=False)
        response = views.server_message_detail(request, nm.id)

        assert response.status_code == 200, "Should be callable"
    def test_anonymous_default(self):
        nm = mixer.blend("config.NotificationMessage")

        url = reverse(self.URL_NAME, kwargs={"message_id": nm.id})
        request = RequestFactory().get(url)
        request.user = AnonymousUser()
        response = views.server_message_detail(request, nm.id)

        assert response.status_code == 200, "Should be callable"
    def test_authenticated_user(self):
        nm = mixer.blend("config.NotificationMessage")

        url = reverse(self.URL_NAME, kwargs={"message_id": nm.id})
        request = RequestFactory().get(url)
        request.user = mixer.blend("auth.User",
                                   is_superuser=False,
                                   is_staff=False)
        response = views.server_message_detail(request, nm.id)

        assert response.status_code == 200, "Should be callable"
    def test_anonymous_login_only_mode(self):
        nm = mixer.blend("config.NotificationMessage")

        url = reverse(self.URL_NAME, kwargs={"message_id": nm.id})
        request = RequestFactory().get(url)
        request.user = AnonymousUser()
        response = views.server_message_detail(request, nm.id)

        assert response.status_code == 302, "Should redirect to login page"
        assert response.url == reverse("login") + "?next=" + url, \
            "Should contain a next parameter for redirect"
    def test_anonymous_login_only_mode(self):
        nm = models.NotificationMessage.objects.create(title="A1", summary_message="B", detailed_message="C")

        url = reverse(self.URL_NAME, kwargs={"message_id": nm.id})
        request = RequestFactory().get(url)
        request.user = AnonymousUser()
        response = views.server_message_detail(request, nm.id)

        assert response.status_code == 302, "Should redirect to login page"
        assert response.url == reverse("login") + "?next=" + url, \
            "Should contain a next parameter for redirect"
    def test_anonymous_login_only_mode(self):
        nm = mixer.blend("config.NotificationMessage")

        url = reverse(self.URL_NAME, kwargs={"message_id": nm.id})
        request = RequestFactory().get(url)
        request.user = AnonymousUser()
        response = views.server_message_detail(request, nm.id)

        assert response.status_code == 302, "Should redirect to login page"
        assert response.url == reverse("login") + "?next=" + url, \
            "Should contain a next parameter for redirect"