Skip to content

Commit abf3553

Browse files
Vlad0n20cslzchen
authored andcommitted
Fix failed tests
1 parent 728cfff commit abf3553

File tree

2 files changed

+70
-61
lines changed

2 files changed

+70
-61
lines changed

addon_service/tests/test_by_type/test_authorized_link_account.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,7 @@ def setUpTestData(cls):
101101

102102
def setUp(self):
103103
super().setUp()
104+
self.client.cookies["osf"] = self._user.user_uri
104105
self._mock_osf = MockOSF()
105106
self._mock_osf.configure_assumed_caller(self._user.user_uri)
106107
self.enterContext(self._mock_osf.mocking())
@@ -287,6 +288,7 @@ def setUp(self):
287288
def test_get(self):
288289
request = get_test_request(user=self._user)
289290
request.session = {"user_reference_uri": self._user.user_uri}
291+
request.COOKIES = {"osf": self._user.user_uri}
290292
_resp = self._view(
291293
request,
292294
pk=self._account.pk,
@@ -314,6 +316,7 @@ def test_get(self):
314316
def test_owner_access(self):
315317
request = get_test_request(user=self._user)
316318
request.session = {"user_reference_uri": self._user.user_uri}
319+
request.COOKIES = {"osf": self._user.user_uri}
317320
_resp = self._view(
318321
request,
319322
pk=self._account.pk,
@@ -325,6 +328,7 @@ def test_wrong_user(self):
325328
self._mock_osf.configure_assumed_caller(_another_user.user_uri)
326329
request = get_test_request(user=_another_user)
327330
request.session = {"user_reference_uri": _another_user.user_uri}
331+
request.COOKIES = {"osf": _another_user.user_uri}
328332
_resp = self._view(
329333
request,
330334
pk=self._account.pk,
@@ -339,6 +343,7 @@ def setUpTestData(cls):
339343
cls._external_service = _factories.ExternalLinkOAuth2ServiceFactory()
340344

341345
def setUp(self):
346+
self.client.cookies["osf"] = self._user.user_uri
342347

343348
self._mock_osf = MockOSF()
344349
self._mock_osf.configure_assumed_caller(self._user.user_uri)

addon_service/tests/test_by_type/test_configured_link_addon.py

Lines changed: 65 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ def setUpTestData(cls):
4949

5050
def setUp(self):
5151
super().setUp()
52+
self.client.cookies["osf"] = self._user.user_uri
5253
self._mock_osf = MockOSF()
5354
self._mock_osf.configure_user_role(
5455
self._user.user_uri, self._resource.resource_uri, "admin"
@@ -108,26 +109,26 @@ def setUp(self):
108109
def test_can_load(self):
109110
_addon_from_db = db.ConfiguredLinkAddon.objects.get(id=self._addon.id)
110111
self.assertEqual(self._addon.target_id, _addon_from_db.target_id)
111-
self.assertEqual(self._addon.resource_type, _addon_from_db.resource_type)
112+
self.assertEqual(
113+
self._addon.resource_type.value, _addon_from_db.resource_type.value
114+
)
112115

113116
def test_resource_type_property(self):
114117
self._addon.resource_type = SupportedResourceTypes.Book
115118
self._addon.save()
116119

117120
refreshed = db.ConfiguredLinkAddon.objects.get(id=self._addon.id)
118121
self.assertEqual(refreshed.resource_type, SupportedResourceTypes.Book)
119-
self.assertEqual(refreshed.resource_type.name, "Book")
120122

121-
self._addon.resource_type = SupportedResourceTypes.Other
123+
self._addon.resource_type = SupportedResourceTypes.Dataset
122124
self._addon.save()
123125

124126
refreshed = db.ConfiguredLinkAddon.objects.get(id=self._addon.id)
125-
self.assertEqual(refreshed.resource_type, SupportedResourceTypes.Other)
126-
self.assertEqual(refreshed.resource_type.name, "Other")
127+
self.assertEqual(refreshed.resource_type, SupportedResourceTypes.Dataset)
127128

128129
def test_validator_valid_types(self):
129130
try:
130-
is_supported_resource_type(SupportedResourceTypes.Other.value)
131+
is_supported_resource_type(SupportedResourceTypes.Dataset.value)
131132
is_supported_resource_type(SupportedResourceTypes.Journal.value)
132133
is_supported_resource_type(SupportedResourceTypes.Software.value)
133134
except ValidationError:
@@ -138,14 +139,14 @@ def test_validator_invalid_type(self):
138139
is_supported_resource_type(-999)
139140

140141
combined = (
141-
SupportedResourceTypes.Other.value | SupportedResourceTypes.Journal.value
142+
SupportedResourceTypes.Dataset.value | SupportedResourceTypes.Journal.value
142143
)
143144
with self.assertRaises(ValidationError):
144145
is_supported_resource_type(combined)
145146

146147
def test_validation_on_save(self):
147148
self._addon.int_resource_type = (
148-
SupportedResourceTypes.Other.value | SupportedResourceTypes.Journal.value
149+
SupportedResourceTypes.Dataset.value | SupportedResourceTypes.Journal.value
149150
)
150151
with self.assertRaises(ValidationError):
151152
self._addon.clean_fields()
@@ -195,6 +196,7 @@ def setUp(self):
195196
def test_get(self):
196197
request = get_test_request(user=self._user)
197198
request.session = {"user_reference_uri": self._user.user_uri}
199+
request.COOKIES = {"osf": self._user.user_uri}
198200

199201
_resp = self._view(
200202
request,
@@ -219,6 +221,7 @@ def test_get(self):
219221
def test_owner_access(self):
220222
request = get_test_request(user=self._user)
221223
request.session = {"user_reference_uri": self._user.user_uri}
224+
request.COOKIES = {"osf": self._user.user_uri}
222225

223226
_resp = self._view(
224227
request,
@@ -232,6 +235,7 @@ def test_wrong_user(self):
232235

233236
request = get_test_request(user=_another_user)
234237
request.session = {"user_reference_uri": _another_user.user_uri}
238+
request.COOKIES = {"osf": _another_user.user_uri}
235239

236240
_resp = self._view(
237241
request,
@@ -246,11 +250,12 @@ def setUpTestData(cls):
246250
cls._user = _factories.UserReferenceFactory()
247251
cls._resource = _factories.ResourceReferenceFactory()
248252
cls._authorized_account = _factories.AuthorizedLinkAccountFactory(
249-
account_owner=cls._user,
250-
authorized_capabilities=AddonCapabilities.ACCESS,
253+
account_owner=cls._user
251254
)
252255

253256
def setUp(self):
257+
super().setUp()
258+
self.client.cookies["osf"] = self._user.user_uri
254259
self._mock_osf = MockOSF()
255260
self._mock_osf.configure_user_role(
256261
self._user.user_uri, self._resource.resource_uri, "admin"
@@ -262,66 +267,65 @@ def setUp(self):
262267
"addon_service.configured_addon.link.models.ConfiguredLinkAddon.target_url",
263268
mock_target_url,
264269
)
265-
self.instance_patcher = patch(
266-
"addon_service.addon_imp.instantiation.get_link_addon_instance",
267-
mock_get_link_addon_instance,
268-
)
269-
self.instance_blocking_patcher = patch(
270+
self.target_url_patcher.start()
271+
self.addCleanup(self.target_url_patcher.stop)
272+
273+
self.instantiate_patcher = patch(
270274
"addon_service.addon_imp.instantiation.get_link_addon_instance__blocking",
271275
mock_get_link_addon_instance,
272276
)
277+
self.instantiate_patcher.start()
278+
self.addCleanup(self.instantiate_patcher.stop)
273279

274-
self.target_url_patcher.start()
275-
self.instance_patcher.start()
276-
self.instance_blocking_patcher.start()
277-
278-
self.addCleanup(self.target_url_patcher.stop)
279-
self.addCleanup(self.instance_patcher.stop)
280-
self.addCleanup(self.instance_blocking_patcher.stop)
280+
@property
281+
def _list_path(self):
282+
return reverse("configured-link-addons-list")
281283

282284
def test_create_addon(self):
283-
self._mock_osf.configure_user_role(
284-
self._user.user_uri, self._resource.resource_uri, "admin"
285-
)
286-
self._mock_osf.configure_assumed_caller(self._user.user_uri)
285+
_initial_count = db.ConfiguredLinkAddon.objects.count()
287286

288-
request_data = {
289-
"data": {
290-
"type": "configured-link-addons",
291-
"attributes": {
292-
"target_id": "some-target-id",
293-
"resource_type": "Other",
294-
"connected_capabilities": ["ACCESS"],
295-
"authorized_resource_uri": self._resource.resource_uri,
296-
},
297-
"relationships": {
298-
"base_account": {
299-
"data": {
300-
"type": "authorized-link-accounts",
301-
"id": str(self._authorized_account.id),
302-
}
303-
},
304-
"authorized_resource": {
305-
"data": {
306-
"type": "resource-references",
307-
"id": str(self._resource.id),
308-
}
309-
},
310-
},
311-
}
312-
}
287+
_target_id = "12345"
288+
_resource_type = SupportedResourceTypes.Dataset
289+
290+
import json
313291

314292
_resp = self.client.post(
315-
reverse("configured-link-addons-list"),
316-
request_data,
317-
format="vnd.api+json",
293+
self._list_path,
294+
data=json.dumps(
295+
{
296+
"data": {
297+
"type": "configured-link-addons",
298+
"attributes": {
299+
"target_id": _target_id,
300+
"resource_type": _resource_type.name,
301+
"connected_capabilities": [AddonCapabilities.ACCESS.name],
302+
"authorized_resource_uri": self._resource.resource_uri,
303+
},
304+
"relationships": {
305+
"base_account": {
306+
"data": {
307+
"id": str(self._authorized_account.id),
308+
"type": "authorized-link-accounts",
309+
}
310+
},
311+
"authorized_resource": {
312+
"data": {
313+
"id": self._resource.resource_uri,
314+
"type": "resource-references",
315+
}
316+
},
317+
},
318+
}
319+
}
320+
),
321+
content_type="application/vnd.api+json",
318322
)
319323

320-
self.assertEqual(_resp.status_code, HTTPStatus.CREATED)
321-
322-
self.assertEqual(_resp.data["resource_type"], SupportedResourceTypes.Other.name)
324+
self.assertEqual(
325+
_resp.status_code, HTTPStatus.CREATED, f"Response content: {_resp.content}"
326+
)
323327

324-
addon = db.ConfiguredLinkAddon.objects.get(id=_resp.data["id"])
325-
self.assertEqual(addon.target_id, "some-target-id")
326-
self.assertEqual(addon.resource_type, SupportedResourceTypes.Other)
327-
self.assertEqual(addon.resource_type.name, "Other")
328+
self.assertEqual(db.ConfiguredLinkAddon.objects.count(), _initial_count + 1)
329+
_created = db.ConfiguredLinkAddon.objects.get(id=_resp.data["id"])
330+
self.assertEqual(_created.target_id, _target_id)
331+
self.assertEqual(_created.resource_type.value, _resource_type.value)

0 commit comments

Comments
 (0)