|
5 | 5 | from django.urls import reverse |
6 | 6 | from django_pagarme import facade as django_pagarme_facade |
7 | 7 |
|
8 | | -from pythonpro.core import facade as core_facade |
9 | 8 | from pythonpro.domain import checkout_domain |
10 | 9 | from pythonpro.email_marketing import facade as email_marketing_facade |
11 | 10 |
|
@@ -125,58 +124,6 @@ def test_user_is_created(resp, django_user_model): |
125 | 124 | assert User.objects.exists() |
126 | 125 |
|
127 | 126 |
|
128 | | -def test_user_is_promoted(resp, django_user_model, active_product_item): |
129 | | - User = django_user_model |
130 | | - user = User.objects.first() |
131 | | - slug = active_product_item.slug |
132 | | - assert_user_promoted(user, slug) |
133 | | - |
134 | | - |
135 | | -def assert_user_promoted(user, slug): |
136 | | - if slug.startswith('membership'): |
137 | | - assert core_facade.is_member(user) |
138 | | - elif slug.startswith('webdev') or slug.startswith('treinamento-devpro'): |
139 | | - assert core_facade.is_webdev(user) |
140 | | - elif slug.startswith('data-science'): |
141 | | - assert core_facade.is_data_scientist(user) |
142 | | - elif slug in {'bootcamp', 'bootcamp-webdev'}: |
143 | | - assert core_facade.is_bootcamper(user) |
144 | | - assert core_facade.is_pythonista(user) # bonus because of full paid price |
145 | | - elif slug.startswith('bootcamp'): |
146 | | - assert core_facade.is_bootcamper(user) |
147 | | - elif slug == 'pacote-proximo-nivel-67-discount': |
148 | | - assert core_facade.is_pythonista(user) |
149 | | - elif slug == 'aps': |
150 | | - pass # no promotion required |
151 | | - else: |
152 | | - pytest.fail(f'Invalid slug prefix {slug}') |
153 | | - |
154 | | - |
155 | | -def test_user_is_subscribed_to_cohort(resp, django_user_model, cohort, active_product_item): |
156 | | - User = django_user_model |
157 | | - user = User.objects.first() |
158 | | - slug = active_product_item.slug |
159 | | - assert_subscribed_to_cohort(cohort, slug, user) |
160 | | - |
161 | | - |
162 | | -def assert_subscribed_to_cohort(cohort, slug, user): |
163 | | - if not (slug.startswith('webdev') or slug.startswith('treinamento-devpro') or slug.startswith( |
164 | | - 'data-science') or slug == 'pacote-proximo-nivel-67-discount' or slug == 'aps'): |
165 | | - assert cohort.students.first() == user |
166 | | - |
167 | | - |
168 | | -def test_user_synced_on_discourse(resp, django_user_model, sync_on_discourse_mock, active_product_item, mocker): |
169 | | - User = django_user_model |
170 | | - user = User.objects.first() |
171 | | - if active_product_item.slug in {'bootcamp', 'bootcamp-webdev'}: |
172 | | - user_sync_call = mocker.call(user.id) |
173 | | - assert sync_on_discourse_mock.mock_calls == [user_sync_call, user_sync_call] |
174 | | - elif active_product_item.slug == 'aps': |
175 | | - assert sync_on_discourse_mock.call_count == 0 |
176 | | - else: |
177 | | - sync_on_discourse_mock.assert_called_once_with(user.id) |
178 | | - |
179 | | - |
180 | 127 | def test_payment_linked_with_created_user(resp, django_user_model): |
181 | 128 | User = django_user_model |
182 | 129 | user = User.objects.first() |
@@ -206,30 +153,11 @@ def resp_logged_user(client_with_user, pagarme_responses, payment_handler_task_m |
206 | 153 | ) |
207 | 154 |
|
208 | 155 |
|
209 | | -def test_logged_user_become_member(resp_logged_user, logged_user, active_product_item): |
210 | | - assert_user_promoted(logged_user, active_product_item.slug) |
211 | | - |
212 | | - |
213 | 156 | def test_payment_linked_with_logged_user(resp_logged_user, logged_user): |
214 | 157 | payment = django_pagarme_facade.find_payment_by_transaction(TRANSACTION_ID) |
215 | 158 | assert logged_user == payment.user |
216 | 159 |
|
217 | 160 |
|
218 | | -def test_logged_user_is_subscribed_to_cohort(resp_logged_user, logged_user, cohort, active_product_item): |
219 | | - assert_subscribed_to_cohort(cohort, active_product_item.slug, logged_user) |
220 | | - |
221 | | - |
222 | | -def test_logged_user_is_synced_on_discourse(resp_logged_user, logged_user, sync_on_discourse_mock, active_product_item, |
223 | | - mocker): |
224 | | - if active_product_item.slug in {'bootcamp', 'bootcamp-webdev'}: |
225 | | - user_sync_call = mocker.call(logged_user.id) |
226 | | - assert sync_on_discourse_mock.mock_calls == [user_sync_call, user_sync_call] |
227 | | - elif active_product_item.slug == 'aps': |
228 | | - assert sync_on_discourse_mock.call_count == 0 |
229 | | - else: |
230 | | - sync_on_discourse_mock.assert_called_once_with(logged_user.id) |
231 | | - |
232 | | - |
233 | 161 | @pytest.fixture |
234 | 162 | def transaction_json(active_product_item): |
235 | 163 | return { |
|
0 commit comments