Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(28)

Side by Side Diff: chrome/common/extensions/docs/server2/render_servlet_test.py

Issue 15009006: Docserver: refactor Servlet, ObjectStore, and ServerInstance architecture to (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: cduvall, redirect fix Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 #!/usr/bin/env python
2 # Copyright 2013 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file.
5
6 import unittest
7
8 from local_file_system import LocalFileSystem
9 from render_servlet import RenderServlet
10 from server_instance import ServerInstance
11 from servlet import Request
12 from test_util import DisableLogging, ReadFile
13
14 class _RenderServletDelegate(RenderServlet.Delegate):
15 def CreateServerInstanceForChannel(self, channel):
16 return ServerInstance.ForTest(LocalFileSystem.Create())
17
18 class RenderServletTest(unittest.TestCase):
19 def testExtensionAppRedirect(self):
20 request = Request.ForTest('storage.html')
21 response = RenderServlet(request, _RenderServletDelegate()).Get()
22 self.assertEqual(302, response.status)
23
24 def testDefaultChannel(self):
25 request = Request.ForTest('stable/extensions/storage.html')
26 response = RenderServlet(request, _RenderServletDelegate()).Get()
27 self.assertEqual(302, response.status)
28
29 @DisableLogging('warning')
30 def testNotFound(self):
31 request = Request.ForTest('extensions/not_found.html')
32 response = RenderServlet(request, _RenderServletDelegate()).Get()
33 self.assertEqual(404, response.status)
34
35 def testSampleFile(self):
36 sample_file = 'extensions/talking_alarm_clock/background.js'
37 request = Request.ForTest('extensions/examples/%s' % sample_file)
38 response = RenderServlet(request, _RenderServletDelegate()).Get()
39 self.assertEqual(200, response.status)
40 self.assertEqual('application/javascript',
41 response.headers.get('content-type'))
42 self.assertEqual(ReadFile('docs/examples/%s' % sample_file),
43 response.content.ToString())
44
45 def testSampleZip(self):
46 sample_dir = 'extensions/talking_alarm_clock'
47 request = Request.ForTest('extensions/examples/%s.zip' % sample_dir)
48 response = RenderServlet(request, _RenderServletDelegate()).Get()
49 self.assertEqual(200, response.status)
50 self.assertEqual('application/zip', response.headers.get('content-type'))
51
52 def testStaticFile(self):
53 static_file = 'css/site.css'
54 request = Request.ForTest('static/%s' % static_file)
55 response = RenderServlet(request, _RenderServletDelegate()).Get()
56 self.assertEqual(200, response.status)
57 self.assertEqual('text/css', response.headers.get('content-type'))
58 self.assertEqual(ReadFile('docs/static/%s' % static_file),
59 response.content.ToString())
60
61 def testHtmlTemplate(self):
62 html_file = 'extensions/storage.html'
63 request = Request.ForTest(html_file)
64 response = RenderServlet(request, _RenderServletDelegate()).Get()
65 self.assertEqual(200, response.status)
66 self.assertEqual('text/html', response.headers.get('content-type'))
67 # Can't really test rendering all that well.
68 self.assertTrue(len(response.content) >
69 len(ReadFile('docs/templates/public/%s' % html_file)))
70
71 if __name__ == '__main__':
72 unittest.main()
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698