1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-09-18 00:00:00 +00:00

improved tests

This commit is contained in:
lins05
2014-08-30 23:17:08 +08:00
parent f291595eda
commit f702b9bb91
25 changed files with 52 additions and 134 deletions

View File

@@ -0,0 +1,62 @@
from apitestbase import DEFAULT_LIBRARY_URL, get_authed_instance, \
LIBRARIES_URL, USERNAME
import unittest
class DirectoriesApiTestCase(unittest.TestCase):
def setUp(self):
self.requests = get_authed_instance()
self.assertIsNotNone(self.requests)
res = self.requests.post(DEFAULT_LIBRARY_URL)
self.rid = res.json()['repo_id']
self.rurl = LIBRARIES_URL + str(self.rid) + u'/'
self.durl = self.rurl + u'dir/'
def test_list_directory_api(self):
res = self.requests.get(self.durl)
self.assertEqual(res.status_code, 200)
json = res.json()
self.assertIsNotNone(json)
for directory in json:
self.assertIsNotNone(directory['id'])
self.assertIsNotNone(directory['type'])
self.assertIsNotNone(directory['name'])
#self.assertIsNotNone(directory['size']) #allow null
def test_create_directory_api(self):
data = { 'operation': 'mkdir' }
durl = self.durl + u'?p=/test'
res = self.requests.post(durl, data=data)
self.assertEqual(res.status_code, 201)
self.assertEqual(res.text, u'"success"')
def test_remove_directory_api(self):
data = { 'operation': 'mkdir' }
durl = self.durl + u'?p=/test_dir_remove'
res = self.requests.post(durl, data=data)
res = self.requests.delete(durl)
self.assertEqual(res.status_code, 200)
self.assertEqual(res.text, u'"success"')
def test_download_directory_api(self):
data = { 'operation': 'mkdir' }
durl = self.durl + u'?p=/test_dir_download'
self.requests.post(durl, data=data)
ddurl = self.durl + u'download/?p=/test_dir_download'
res = self.requests.get(ddurl)
self.assertEqual(res.status_code, 200)
self.assertRegexpMatches(res.text, \
r'"http(.*)/files/\w{8,8}/test_dir_download"')
def test_share_directory_api(self):
data = { 'operation': 'mkdir' }
durl = self.durl + u'?p=/test_dir_share'
self.requests.post(durl, data=data)
dsurl = self.durl + u'share/?p=/test_dir_share'
data = { 'emails': USERNAME, 's_type': 'd', 'path': '/', 'perm': 'r' }
res = self.requests.post(dsurl, data=data)
self.assertEqual(res.status_code, 200)
self.assertEqual(res.text, u'{}')
if __name__ == '__main__':
unittest.main(verbosity=2)