mirror of
https://github.com/haiwen/seahub.git
synced 2025-07-13 06:55:59 +00:00
[test] Update test
This commit is contained in:
parent
97a39ead0d
commit
2e4839dcf1
@ -1,46 +1,59 @@
|
|||||||
import json
|
import json
|
||||||
|
from mock import patch
|
||||||
from django.core.urlresolvers import reverse
|
from django.core.urlresolvers import reverse
|
||||||
|
|
||||||
from seahub.share.models import UploadLinkShare
|
from seahub.share.models import UploadLinkShare
|
||||||
from seahub.test_utils import BaseTestCase
|
from seahub.test_utils import BaseTestCase
|
||||||
|
|
||||||
try:
|
|
||||||
from seahub.settings import LOCAL_PRO_DEV_ENV
|
|
||||||
except ImportError:
|
|
||||||
LOCAL_PRO_DEV_ENV = False
|
|
||||||
|
|
||||||
class GetDirentsTest(BaseTestCase):
|
class GetFileUploadUrlULTest(BaseTestCase):
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
upload_link = UploadLinkShare.objects.create_upload_link_share(self.user.username,
|
upload_link = UploadLinkShare.objects.create_upload_link_share(
|
||||||
self.repo.id, self.folder, None, None)
|
self.user.username, self.repo.id, self.folder, None, None)
|
||||||
|
|
||||||
self.url = reverse('get_file_upload_url_ul', args=[upload_link.token]) + '?r=' + self.repo.id
|
self.url = reverse('get_file_upload_url_ul', args=[
|
||||||
|
upload_link.token]) + '?r=' + self.repo.id
|
||||||
|
|
||||||
def test_can_get_with_login_user(self):
|
def _get_fileserver_access_token(self, repo_id, obj_id, op, username,
|
||||||
if not LOCAL_PRO_DEV_ENV:
|
use_onetime=True):
|
||||||
return
|
return 'test_token'
|
||||||
|
|
||||||
|
@patch('seahub.views.ajax.seafile_api.get_fileserver_access_token')
|
||||||
|
def test_can_get_with_login_user(self, mock_get_fileserver_access_token):
|
||||||
|
mock_get_fileserver_access_token.return_value = True
|
||||||
|
mock_get_fileserver_access_token.side_effect = self._get_fileserver_access_token
|
||||||
|
|
||||||
self.login_as(self.user)
|
self.login_as(self.user)
|
||||||
resp = self.client.get(self.url, HTTP_X_REQUESTED_WITH='XMLHttpRequest')
|
resp = self.client.get(self.url, HTTP_X_REQUESTED_WITH='XMLHttpRequest')
|
||||||
|
mock_get_fileserver_access_token.assert_called_with(
|
||||||
|
self.repo.id, '{"anonymous_user": "%s"}' % self.user.username,
|
||||||
|
'upload', '', use_onetime=False)
|
||||||
json_resp = json.loads(resp.content)
|
json_resp = json.loads(resp.content)
|
||||||
assert 'upload-aj' in json_resp['url']
|
assert 'test_token' in json_resp['url']
|
||||||
|
|
||||||
def test_can_get_with_unlogin_user(self):
|
@patch('seahub.views.ajax.seafile_api.get_fileserver_access_token')
|
||||||
if not LOCAL_PRO_DEV_ENV:
|
def test_can_get_with_unlogin_user(self, mock_get_fileserver_access_token):
|
||||||
return
|
mock_get_fileserver_access_token.return_value = True
|
||||||
|
mock_get_fileserver_access_token.side_effect = self._get_fileserver_access_token
|
||||||
|
|
||||||
resp = self.client.get(self.url, HTTP_X_REQUESTED_WITH='XMLHttpRequest')
|
resp = self.client.get(self.url, HTTP_X_REQUESTED_WITH='XMLHttpRequest')
|
||||||
|
mock_get_fileserver_access_token.assert_called_with(
|
||||||
|
self.repo.id, '{"anonymous_user": ""}',
|
||||||
|
'upload', '', use_onetime=False)
|
||||||
json_resp = json.loads(resp.content)
|
json_resp = json.loads(resp.content)
|
||||||
assert 'upload-aj' in json_resp['url']
|
assert 'test_token' in json_resp['url']
|
||||||
|
|
||||||
def test_can_get_with_anonymous_email_in_session(self):
|
@patch('seahub.views.ajax.seafile_api.get_fileserver_access_token')
|
||||||
if not LOCAL_PRO_DEV_ENV:
|
def test_can_get_with_anonymous_email_in_session(self, mock_get_fileserver_access_token):
|
||||||
return
|
mock_get_fileserver_access_token.return_value = True
|
||||||
|
mock_get_fileserver_access_token.side_effect = self._get_fileserver_access_token
|
||||||
|
|
||||||
session = self.client.session
|
session = self.client.session
|
||||||
session['anonymous_email'] = 'anonymous@email.com'
|
session['anonymous_email'] = 'anonymous@email.com'
|
||||||
session.save()
|
session.save()
|
||||||
resp = self.client.get(self.url, HTTP_X_REQUESTED_WITH='XMLHttpRequest')
|
resp = self.client.get(self.url, HTTP_X_REQUESTED_WITH='XMLHttpRequest')
|
||||||
|
mock_get_fileserver_access_token.assert_called_with(
|
||||||
|
self.repo.id, '{"anonymous_user": "anonymous@email.com"}',
|
||||||
|
'upload', '', use_onetime=False)
|
||||||
json_resp = json.loads(resp.content)
|
json_resp = json.loads(resp.content)
|
||||||
assert 'upload-aj' in json_resp['url']
|
assert 'test_token' in json_resp['url']
|
||||||
|
Loading…
Reference in New Issue
Block a user