예제 #1
0
    def test_redirects_to_itself_when_submitted_second_time(self):
        self.user.passport_photo = ProfileFactory.create_passport_photo()
        self.user.bar_license_photo = ProfileFactory.create_bar_license_photo()
        self.user.save()

        response = self.client.post(self.VIEW_URL, data=self.data_payload)
        self.assertRedirects(response, self.VIEW_URL)
예제 #2
0
    def test_is_attorney_proof_submitted(self):
        profile = ProfileFactory(no_attorney_proof=True)
        self.assertFalse(profile.is_attorney_proof_submitted())

        profile.passport_photo = ProfileFactory.create_passport_photo()
        profile.bar_license_photo = ProfileFactory.create_bar_license_photo()
        profile.save()
        self.assertTrue(profile.is_attorney_proof_submitted())
예제 #3
0
 def setUp(self):
     self.data_payload = {
         "passport_photo": ProfileFactory.create_passport_photo(),
         "bar_license_photo": ProfileFactory.create_bar_license_photo(),
         "attorney_confirm": "on",
     }
     self.user = ProfileFactory(no_attorney_proof=True)
     self.client.force_login(self.user)
예제 #4
0
파일: tests.py 프로젝트: pogasanov/clsite
    def test_signup_flow(self):
        # User go to homepage
        response = self.client.get(reverse("home"))
        # Expects 200 and rendered page
        self.assertEqual(response.status_code, 200)

        # User goes to profile
        response = self.client.get(reverse("register"))
        # Expects 302 and redirected to login page
        self.assertEqual(response.status_code, 200)

        # User types incorrectly
        response = self.client.post(reverse("register"),
                                    self.incorrect_new_user_data)
        # expects 200 and not authenticated
        self.assertEqual(response.status_code, 200)
        self.assertFalse(response.context["user"].is_active)

        # User types correctly
        response = self.client.post(reverse("register"),
                                    self.new_user_data,
                                    follow=True)
        # Expects 302 and redirect to profile
        self.assertRedirects(response, reverse("profile"))
        self.assertTrue(response.context["user"].is_active)

        user = Profile.objects.get(email=self.new_user_data["email"])

        # Temporary hack to set email not confirmed while email story is not yet implemented
        user.email_confirmed_at = None
        user.save()

        # User tries to leave profile
        response = self.client.get(reverse("profiles"))
        # Expects 302 and redirect to profile
        self.assertRedirects(response, reverse("profile"))

        # Users fills out required fields
        response = self.client.patch(reverse("api-profile"),
                                     self.correct_update_data,
                                     content_type="application/json")
        # Expects 200
        self.assertEqual(response.status_code, 200)

        # User tries to leave profile
        response = self.client.get(reverse("profiles"))
        # Expects 302 and redirect to profile attorney proof
        self.assertRedirects(response, reverse("profile-proof"))

        # User fills attorney proof
        response = self.client.post(
            reverse("profile-proof"),
            {
                "passport_photo": ProfileFactory.create_passport_photo(),
                "bar_license_photo": ProfileFactory.create_bar_license_photo(),
                "attorney_confirm": "on",
            },
            follow=True,
        )

        # Expects 302 and redirect to email confirmation
        self.assertRedirects(response, reverse("profile-email-confirmation"))

        # User confirms email
        user.refresh_from_db()
        user.email_confirmed_at = timezone.now()
        user.save()

        # User tries to leave profile
        response = self.client.get(reverse("profiles"))
        # Expects 200
        self.assertEqual(response.status_code, 200)
예제 #5
0
 def setUp(self):
     self.files_payload = {
         'passport_photo': ProfileFactory.create_passport_photo(),
         'bar_license_photo': ProfileFactory.create_bar_license_photo(),
     }