File tree 2 files changed +11
-9
lines changed
2 files changed +11
-9
lines changed Original file line number Diff line number Diff line change @@ -101,13 +101,14 @@ def create_edx_user(user):
101
101
if not created and open_edx_user .has_been_synced :
102
102
# Here we should check with edx that the user exists on that end.
103
103
try :
104
- get_edx_api_client (user )
104
+ client = get_edx_api_client (user )
105
+ client .user_info .get_user_info ()
105
106
except :
106
107
pass
107
108
else :
108
109
open_edx_user .has_been_synced = True
109
110
open_edx_user .save ()
110
- return created
111
+ return False
111
112
112
113
# a non-200 status here will ensure we rollback creation of the OpenEdxUser and try again
113
114
req_session = requests .Session ()
@@ -135,7 +136,7 @@ def create_edx_user(user):
135
136
)
136
137
open_edx_user .has_been_synced = True
137
138
open_edx_user .save ()
138
- return created
139
+ return True
139
140
140
141
141
142
@transaction .atomic
Original file line number Diff line number Diff line change @@ -205,17 +205,18 @@ def test_create_edx_user_for_user_not_synced_with_edx(
205
205
OpenEdxUserFactory .create (
206
206
user = user , has_been_synced = open_edx_user_record_has_been_synced
207
207
)
208
- mocker .patch (
209
- "openedx.api.get_edx_api_client" ,
210
- side_effect = ValueError ("Unexpected error" )
211
- if not open_edx_user_record_exists
212
- else None ,
208
+ mock_client = mocker .MagicMock ()
209
+ mock_client .user_info .get_user_info = mocker .Mock (
210
+ side_effect = Exception if not open_edx_user_record_exists else None ,
213
211
)
212
+ mocker .patch ("openedx.api.get_edx_api_client" , return_value = mock_client )
214
213
215
214
user_created_in_edx = create_edx_user (user )
216
215
217
216
assert OpenEdxUser .objects .get (user = user ).has_been_synced is True
218
- assert user_created_in_edx is False if open_edx_user_record_exists else True
217
+ assert user_created_in_edx is not (
218
+ open_edx_user_record_exists and open_edx_user_record_has_been_synced
219
+ )
219
220
220
221
221
222
@responses .activate
You can’t perform that action at this time.
0 commit comments