Esempio n. 1
0
    def test_query_term_status(self, db_request):
        email0 = EmailMessageFactory.create(status=EmailStatuses.Bounced.value)
        EmailMessageFactory.create()

        db_request.GET["q"] = "status:bounced"
        result = views.email_list(db_request)

        assert result == {"emails": [email0], "query": "status:bounced"}
Esempio n. 2
0
    def test_query_term_from(self, db_request):
        email0 = EmailMessageFactory.create(from_="*****@*****.**")
        EmailMessageFactory.create()

        db_request.GET["q"] = "from:[email protected]"
        result = views.email_list(db_request)

        assert result == {"emails": [email0], "query": "from:[email protected]"}
Esempio n. 3
0
    def test_query_term_subject(self, db_request):
        email0 = EmailMessageFactory.create(subject="foo bar")
        EmailMessageFactory.create()

        db_request.GET["q"] = "subject:'foo bar'"
        result = views.email_list(db_request)

        assert result == {"emails": [email0], "query": "subject:'foo bar'"}
Esempio n. 4
0
    def test_no_query(self, db_request):
        emails = sorted(
            [EmailMessageFactory.create() for _ in range(30)],
            key=lambda e: e.created,
            reverse=True,
        )
        result = views.email_list(db_request)

        assert result == {"emails": emails[:25], "query": None}
Esempio n. 5
0
    def test_no_query(self, db_request):
        emails = sorted(
            [EmailMessageFactory.create() for _ in range(30)],
            key=lambda e: e.created,
            reverse=True,
        )
        result = views.email_list(db_request)

        assert result == {"emails": emails[:25], "query": None}
Esempio n. 6
0
    def test_basic_query(self, db_request):
        emails = sorted(
            [EmailMessageFactory.create() for _ in range(30)],
            key=lambda e: e.created,
            reverse=True,
        )
        db_request.GET["q"] = emails[0].to
        result = views.email_list(db_request)

        assert result == {"emails": [emails[0]], "query": emails[0].to}
Esempio n. 7
0
    def test_with_page(self, db_request):
        emails = sorted(
            [EmailMessageFactory.create() for _ in range(30)],
            key=lambda e: e.created,
            reverse=True,
        )
        db_request.GET["page"] = "2"
        result = views.email_list(db_request)

        assert result == {"emails": emails[25:], "query": None}
Esempio n. 8
0
    def test_wildcard_query(self, db_request):
        emails = sorted(
            [EmailMessageFactory.create() for _ in range(30)],
            key=lambda e: e.created,
            reverse=True,
        )
        db_request.GET["q"] = emails[0].to[:-1] + "%"
        result = views.email_list(db_request)

        assert result == {"emails": [emails[0]], "query": emails[0].to[:-1] + "%"}
Esempio n. 9
0
    def test_with_page(self, db_request):
        emails = sorted(
            [EmailMessageFactory.create() for _ in range(30)],
            key=lambda e: e.created,
            reverse=True,
        )
        db_request.GET["page"] = "2"
        result = views.email_list(db_request)

        assert result == {"emails": emails[25:], "query": None}
Esempio n. 10
0
    def test_with_invalid_page(self):
        request = pretend.stub(params={"page": "not an integer"})

        with pytest.raises(HTTPBadRequest):
            views.email_list(request)
Esempio n. 11
0
    def test_with_invalid_page(self):
        request = pretend.stub(params={"page": "not an integer"})

        with pytest.raises(HTTPBadRequest):
            views.email_list(request)