Beispiel #1
0
    def test_add_primary_email(self, db_request):
        old_email = EmailFactory.create(email="*****@*****.**", primary=True)
        user = UserFactory.create(emails=[old_email])
        db_request.matchdict["user_id"] = str(user.id)
        db_request.method = "POST"
        db_request.POST["email"] = "*****@*****.**"
        db_request.POST["primary"] = True
        db_request.POST["verified"] = True
        db_request.POST = MultiDict(db_request.POST)
        db_request.route_path = pretend.call_recorder(
            lambda *a, **kw: "/admin/users/{}/".format(user.id))

        resp = views.user_add_email(db_request)

        db_request.db.flush()

        assert resp.status_code == 303
        assert resp.location == "/admin/users/{}/".format(user.id)
        assert len(user.emails) == 2

        emails = {e.email: e for e in user.emails}

        assert not emails["*****@*****.**"].primary
        assert emails["*****@*****.**"].primary
        assert emails["*****@*****.**"].verified
Beispiel #2
0
    def test_add_email(self, db_request):
        user = UserFactory.create(emails=[])
        db_request.matchdict["user_id"] = str(user.id)
        db_request.method = "POST"
        db_request.POST["email"] = "*****@*****.**"
        db_request.POST["primary"] = True
        db_request.POST["verified"] = True
        db_request.POST = MultiDict(db_request.POST)
        db_request.route_path = pretend.call_recorder(
            lambda *a, **kw: "/admin/users/{}/".format(user.id)
        )

        resp = views.user_add_email(db_request)

        db_request.db.flush()

        assert resp.status_code == 303
        assert resp.location == "/admin/users/{}/".format(user.id)
        assert len(user.emails) == 1

        email = user.emails[0]

        assert email.email == "*****@*****.**"
        assert email.primary
        assert email.verified
Beispiel #3
0
    def test_add_invalid(self, db_request):
        user = UserFactory.create(emails=[])
        db_request.matchdict["user_id"] = str(user.id)
        db_request.method = "POST"
        db_request.POST["email"] = ""
        db_request.POST["primary"] = True
        db_request.POST["verified"] = True
        db_request.POST = MultiDict(db_request.POST)
        db_request.route_path = pretend.call_recorder(
            lambda *a, **kw: "/admin/users/{}/".format(user.id))

        resp = views.user_add_email(db_request)

        db_request.db.flush()

        assert resp.status_code == 303
        assert resp.location == "/admin/users/{}/".format(user.id)
        assert user.emails == []