1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-07-12 14:38:58 +00:00

[test] Update test

This commit is contained in:
zhengxie 2016-05-13 16:17:55 +08:00
parent 97a39ead0d
commit 2e4839dcf1
No known key found for this signature in database
GPG Key ID: 652D4F38038852F0

View File

@ -1,46 +1,59 @@
import json
from mock import patch
from django.core.urlresolvers import reverse
from seahub.share.models import UploadLinkShare
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):
upload_link = UploadLinkShare.objects.create_upload_link_share(self.user.username,
self.repo.id, self.folder, None, None)
upload_link = UploadLinkShare.objects.create_upload_link_share(
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):
if not LOCAL_PRO_DEV_ENV:
return
def _get_fileserver_access_token(self, repo_id, obj_id, op, username,
use_onetime=True):
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)
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)
assert 'upload-aj' in json_resp['url']
assert 'test_token' in json_resp['url']
def test_can_get_with_unlogin_user(self):
if not LOCAL_PRO_DEV_ENV:
return
@patch('seahub.views.ajax.seafile_api.get_fileserver_access_token')
def test_can_get_with_unlogin_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
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)
assert 'upload-aj' in json_resp['url']
assert 'test_token' in json_resp['url']
def test_can_get_with_anonymous_email_in_session(self):
if not LOCAL_PRO_DEV_ENV:
return
@patch('seahub.views.ajax.seafile_api.get_fileserver_access_token')
def test_can_get_with_anonymous_email_in_session(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
session = self.client.session
session['anonymous_email'] = 'anonymous@email.com'
session.save()
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)
assert 'upload-aj' in json_resp['url']
assert 'test_token' in json_resp['url']