X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/dba809feb44cd1c4d155f3e3254a1cca5323f95f..409a2386cf6f426d093f1fb5c7c5840d4f39fbb5:/apps/api/tests/__init__.py diff --git a/apps/api/tests/__init__.py b/apps/api/tests/__init__.py index 2292e7dd..c5d79e70 100644 --- a/apps/api/tests/__init__.py +++ b/apps/api/tests/__init__.py @@ -19,6 +19,7 @@ def temprepo(name): def decorator(func): + @wraps(func) def decorated(self, *args, **kwargs): clean = False @@ -31,10 +32,11 @@ def temprepo(name): finally: if not clean and self.response: print "RESULT", func.__name__, ">>>" - print self.response + print self.response.content print "<<<" - - # shutil.rmtree(temp, True) + else: + shutil.rmtree(temp, True) + settings.REPOSITORY_PATH = '' return decorated @@ -63,32 +65,7 @@ class SimpleTest(TestCase): self.assert_json_response({ u'documents': [], }) - - @temprepo('clean') - def test_documents_post(self): - self.assertTrue(self.client.login(username='admin', password='admin')) - - infile = tempfile.NamedTemporaryFile("w+") - infile.write('0123456789') - infile.flush() - infile.seek(0) - - self.response = self.client.post( reverse("document_list_view"), - data = { - 'bookname': 'testbook', - 'ocr': infile, - 'generate_dc': False, - }) - - infile.close() - - self.assert_json_response({ - 'url': reverse('document_view', args=['testbook']), - 'name': 'testbook', - # 'size': 10, - # can't test revision number, 'cause it's random - },) - + @temprepo('clean') def test_document_creation(self): self.assertTrue(self.client.login(username='admin', password='admin')) @@ -101,23 +78,21 @@ class SimpleTest(TestCase): self.response = self.client.post( reverse("document_list_view"), data = { 'bookname': 'testbook', - 'ocr': infile, + 'ocr_file': infile, 'generate_dc': False, }) - r = self.assert_json_response({ + r = self.assert_json_response( { 'url': reverse('document_view', args=['testbook']), 'name': 'testbook', # can't test revision number, 'cause it's random - }) + }, code=201) created_rev = r['revision'] - - self.response = self.client.get( \ - reverse("document_view", args=["testbook"]) ) - + self.response = self.client.get(r['url']) + result = self.assert_json_response({ - u'latest_shared_rev': created_rev, + u'public_revision': created_rev, # u'size': 15, }) @@ -129,8 +104,10 @@ class SimpleTest(TestCase): self.response = self.client.get( reverse("document_list_view") ) self.assert_json_response({ # u'latest_rev': u'f94a263812dbe46a3a13d5209bb119988d0078d5', - u'documents': [{u'url': u'/api/documents/sample', u'name': u'sample'}, - {u'url': u'/api/documents/sample_pl', u'name': u'sample_pl'}], + u'documents': [ + {u'url': u'/api/documents/sample', u'name': u'sample', u'parts': []}, + {u'url': u'/api/documents/sample_pl', u'name': u'sample_pl', u'parts': []} + ], }) self.response = self.client.get( \ @@ -138,8 +115,8 @@ class SimpleTest(TestCase): self.assert_json_response({ #u'latest_shared_rev': u'f94a263812dbe46a3a13d5209bb119988d0078d5', - u'text_url': reverse("doctext_view", args=[u'sample']), - u'dc_url': reverse("docdc_view", args=[u'sample']), + #u'text_url': reverse("doctext_view", args=[u'sample']), + #u'dc_url': reverse("docdc_view", args=[u'sample']), # u'parts_url': reverse("docparts_view", args=[u'sample']), u'name': u'sample', # u'size': 20, @@ -155,8 +132,8 @@ class SimpleTest(TestCase): resp = self.assert_json_response({ #u'latest_shared_rev': u'f94a263812dbe46a3a13d5209bb119988d0078d5', - u'text_url': reverse("doctext_view", args=[u'sample']), - u'dc_url': reverse("docdc_view", args=[u'sample']), + #u'text_url': reverse("doctext_view", args=[u'sample']), + #u'dc_url': reverse("docdc_view", args=[u'sample']), # u'parts_url': reverse("docparts_view", args=[u'sample']), u'name': u'sample', # u'size': 20, @@ -165,24 +142,27 @@ class SimpleTest(TestCase): self.response = self.client.get(resp['text_url']) self.assertEqual(self.response.status_code, 200) self.assertEqual(self.response.content, "Ala ma kota\n") -# -# -# @temprepo('simple') -# def test_document_text_update(self): -# self.assertTrue(self.client.login(username='admin', password='admin')) -# TEXT = u"Ala ma kota i psa" -# -# self.response = self.client.put( \ -# reverse("doctext_view", args=['testfile']), {'contents': TEXT }) -# self.assertEqual(self.response.status_code, 200) -# -# self.response = self.client.get( \ -# reverse("doctext_view", args=['testfile']) ) -# self.assertEqual(self.response.status_code, 200) -# self.assertEqual(self.response.content, TEXT) - - def assert_json_response(self, must_have={}, exclude=[]): - self.assertEqual(self.response.status_code, 200) + + + @temprepo('simple') + def test_document_text_save(self): + self.assertTrue(self.client.login(username='admin', password='admin')) + TEXT = u"Ala ma kota i psa" + + self.response = self.client.get( + reverse("document_view", args=['sample']) ) + + resp = self.assert_json_response() + + self.response = self.client.post(resp['text_url'], { + 'revision': resp['user_revision'] ,'contents': TEXT }) + result = self.assert_json_response(must_have={u'document': u'sample'} ) + + #self.response = self.client.get(result['url']) + #self.assertEqual(self.response.content, TEXT) + + def assert_json_response(self, must_have={}, exclude=[], code=200): + self.assertEqual(self.response.status_code, code) result = json.loads(self.response.content) for (k,v) in must_have.items():