mirror of
https://github.com/haiwen/seahub.git
synced 2025-06-29 08:27:55 +00:00
47 lines
1.5 KiB
Python
47 lines
1.5 KiB
Python
|
#coding: UTF-8
|
||
|
import json
|
||
|
from django.core.urlresolvers import reverse
|
||
|
from seahub.utils import IS_EMAIL_CONFIGURED
|
||
|
from seahub.test_utils import BaseTestCase
|
||
|
from seahub.share.models import UploadLinkShare
|
||
|
|
||
|
|
||
|
class SendUploadLinkApiTest(BaseTestCase):
|
||
|
|
||
|
def setUp(self):
|
||
|
uls = UploadLinkShare.objects.create_upload_link_share(self.user.username,
|
||
|
self.repo.id, '/')
|
||
|
self.token = uls.token
|
||
|
|
||
|
def tearDown(self):
|
||
|
self.remove_repo()
|
||
|
|
||
|
def test_can_send_email(self):
|
||
|
self.login_as(self.user)
|
||
|
invalid_email = 'invalid'
|
||
|
url = reverse("api2-send-upload-link")
|
||
|
data = {
|
||
|
"token": self.token,
|
||
|
"email": self.admin.email + ',' + invalid_email,
|
||
|
}
|
||
|
|
||
|
resp = self.client.post(url, data)
|
||
|
if not IS_EMAIL_CONFIGURED:
|
||
|
self.assertEqual(403, resp.status_code)
|
||
|
else:
|
||
|
self.assertEqual(200, resp.status_code)
|
||
|
json_resp = json.loads(resp.content)
|
||
|
assert json_resp['success'][0] == self.admin.email
|
||
|
assert json_resp['failed'][0]['email'] == invalid_email
|
||
|
|
||
|
def test_can_not_send_email_if_not_link_owner(self):
|
||
|
self.login_as(self.admin)
|
||
|
url = reverse("api2-send-upload-link")
|
||
|
data = {
|
||
|
"token": self.token,
|
||
|
"email": self.admin.email,
|
||
|
}
|
||
|
|
||
|
resp = self.client.post(url, data)
|
||
|
self.assertEqual(403, resp.status_code)
|