OLD | NEW |
1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
2 | 2 |
3 # Copyright 2014 The Chromium Authors. All rights reserved. | 3 # Copyright 2014 The Chromium Authors. All rights reserved. |
4 # Use of this source code is governed by a BSD-style license that can be | 4 # Use of this source code is governed by a BSD-style license that can be |
5 # found in the LICENSE file. | 5 # found in the LICENSE file. |
6 | 6 |
7 import collections | 7 import collections |
| 8 import imp |
8 import json | 9 import json |
9 import imp | |
10 import logging | 10 import logging |
11 import os | 11 import os |
12 import sys | 12 import sys |
13 import unittest | 13 import unittest |
14 | 14 |
15 assert 'GAE_SDK_ROOT' in os.environ, (''' | 15 # AppEngine modules |
16 You must set the environment variable GAE_SDK_ROOT to point to the | 16 sys.path.append(os.path.join(os.path.abspath(__file__), '..', '..')) |
17 root of your google_appengine SDK installation before running the tests.''') | 17 import appengine_testing |
18 | 18 appengine_testing.set_up() |
19 os.environ.setdefault('APPENGINE_RUNTIME', 'python27') | |
20 | |
21 try: | |
22 wrapper_util = imp.load_module( | |
23 'wrapper_util', *imp.find_module( | |
24 'wrapper_util', [os.environ['GAE_SDK_ROOT']])) | |
25 except ImportError: | |
26 print >> sys.stderr, 'GAE_SDK_ROOT=%s does not look like the root of an appe
ngine SDK installation.' % os.environ['GAE_SDK_ROOT'] | |
27 raise | |
28 | |
29 APP_ROOT = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) | |
30 sys.path = wrapper_util.Paths(os.environ['GAE_SDK_ROOT']).v1_extra_paths + sys.p
ath | |
31 sys.path.append(APP_ROOT) | |
32 | |
33 import webapp2 | 19 import webapp2 |
34 | 20 import webtest |
35 try: | |
36 import webtest | |
37 except ImportError: | |
38 print "ERROR: Could not load webtest python module. You may need to 'sudo a
pt-get python-webtest'." | |
39 raise | |
40 | 21 |
41 from google.appengine.ext import blobstore | 22 from google.appengine.ext import blobstore |
42 from google.appengine.ext import db | 23 from google.appengine.ext import db |
43 from google.appengine.ext import testbed | 24 from google.appengine.ext import testbed |
44 | 25 |
| 26 # App modules |
| 27 APP_ROOT = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) |
| 28 sys.path.append(APP_ROOT) |
| 29 |
45 from handlers import master_config | 30 from handlers import master_config |
46 from handlers import testfilehandler | 31 from handlers import testfilehandler |
47 from model.jsonresults import * | 32 from model.jsonresults import * |
48 | 33 |
49 | 34 |
50 class TestFileHandlerTest(unittest.TestCase): | 35 class TestFileHandlerTest(unittest.TestCase): |
51 | |
52 APP_MAIN_MODULE = imp.load_module('app_main', *imp.find_module('main', [APP_
ROOT])) | 36 APP_MAIN_MODULE = imp.load_module('app_main', *imp.find_module('main', [APP_
ROOT])) |
53 | 37 |
54 def setUp(self): | 38 def setUp(self): |
55 app = webapp2.WSGIApplication(self.APP_MAIN_MODULE.routes) | 39 app = webapp2.WSGIApplication(self.APP_MAIN_MODULE.routes) |
56 self.testapp = webtest.TestApp(app) | 40 self.testapp = webtest.TestApp(app) |
57 self.tb = testbed.Testbed() | 41 self.tb = testbed.Testbed() |
58 self.tb.activate() | 42 self.tb.activate() |
59 self.tb.init_datastore_v3_stub() | 43 self.tb.init_datastore_v3_stub() |
60 self.tb.init_blobstore_stub() | 44 self.tb.init_blobstore_stub() |
61 | 45 |
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
203 (testfilehandler.PARAM_NAME, 'full_results.json') | 187 (testfilehandler.PARAM_NAME, 'full_results.json') |
204 ]) | 188 ]) |
205 response = self.testapp.get('/testfile', params=params) | 189 response = self.testapp.get('/testfile', params=params) |
206 self.assertEqual(response.status_int, 200) | 190 self.assertEqual(response.status_int, 200) |
207 response_json = json.loads(response.normal_body) | 191 response_json = json.loads(response.normal_body) |
208 self.assertEqual(response_json['chromium_revision'], '67890') | 192 self.assertEqual(response_json['chromium_revision'], '67890') |
209 | 193 |
210 if __name__ == '__main__': | 194 if __name__ == '__main__': |
211 logging.basicConfig(level=logging.ERROR) | 195 logging.basicConfig(level=logging.ERROR) |
212 unittest.main() | 196 unittest.main() |
OLD | NEW |