Skip to content

Commit efe5408

Browse files
authored
[ENG-7039] Merge GV feature branch into develop (#10948)
Make the OSF work with GravyValet for addons. https://openscience.atlassian.net/issues/ENG-5782
1 parent d0f9c53 commit efe5408

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+1933
-857
lines changed

addons/base/models.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -377,6 +377,10 @@ def has_auth(self):
377377
"""Whether the node has added credentials for this addon."""
378378
return False
379379

380+
@property
381+
def display_name(self):
382+
return self.short_name
383+
380384
def to_json(self, user):
381385
ret = super().to_json(user)
382386
ret.update({
@@ -581,7 +585,7 @@ def _get_fileobj_child_metadata(self, filenode, user, cookie=None, version=None)
581585
**kwargs
582586
)
583587

584-
res = requests.get(metadata_url)
588+
res = requests.get(metadata_url, cookies={settings.COOKIE_NAME: kwargs.get('cookie')})
585589

586590
if res.status_code != 200:
587591
raise HTTPError(res.status_code, data={'error': res.json()})

addons/base/tests/views.py

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
from osf.models.external import ExternalProvider
12
import pytest
23
from urllib.parse import urlparse, parse_qs
34
from unittest import mock
@@ -22,6 +23,16 @@
2223

2324
class OAuthAddonAuthViewsTestCaseMixin(OAuthAddonTestCaseMixin):
2425

26+
def setUp(self):
27+
28+
super().setUp()
29+
if issubclass(self.Provider, ExternalProvider):
30+
# only setup expected_oauth_callback_url_path if the provider uses oauth
31+
if self.Provider._oauth_version == 1:
32+
self.expected_oauth_callback_url_path = '/v1/oauth1/callback'
33+
elif self.Provider._oauth_version == 2 :
34+
self.expected_oauth_callback_url_path = '/v1/oauth2/callback'
35+
2536
@property
2637
def ADDON_SHORT_NAME(self):
2738
raise NotImplementedError()
@@ -71,14 +82,16 @@ def test_oauth_finish_enable_gv(self, mock_requests_get):
7182
query_params = {
7283
'code': 'somecode',
7384
'state': 'somestatetoken',
85+
'oauth_token': 'someoauthtoken',
86+
'oauth_verifier': 'someverifier',
7487
}
7588
with override_flag(ENABLE_GV, active=True):
7689
request_url = urlunparse(urlparse(url)._replace(query=urlencode(query_params)))
7790
res = self.app.get(request_url, auth=self.user.auth)
7891
gv_callback_url = mock_requests_get.call_args[0][0]
7992
parsed_callback_url = urlparse(gv_callback_url)
8093
assert parsed_callback_url.netloc == urlparse(GRAVYVALET_URL).netloc
81-
assert parsed_callback_url.path == '/v1/oauth/callback'
94+
assert parsed_callback_url.path == self.expected_oauth_callback_url_path
8295
assert dict(parse_qsl(parsed_callback_url.query)) == query_params
8396

8497
def test_delete_external_account(self):

0 commit comments

Comments
 (0)