blob: 4f91ef22598508be38ad0b52a7c012a6b74e84de [file] [log] [blame]
# Copyright (c) 2015 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import argparse
import json
import unittest
from build import dev_server
from perf_insights_build import perf_insights_dev_server_config
from tracing_build import tracing_dev_server_config
import webapp2
class DevServerTests(unittest.TestCase):
def setUp(self):
self.pds = [
perf_insights_dev_server_config.PerfInsightsDevServerConfig(),
tracing_dev_server_config.TracingDevServerConfig(),
]
parser = argparse.ArgumentParser(description='Run development server')
parser.add_argument(
'--no-install-hooks', dest='install_hooks', action='store_false')
parser.add_argument('-p', '--port', default=8003, type=int)
self.args = parser.parse_args(args=[])
def testStaticDirectoryHandling(self):
app = dev_server.CreateApp(self.pds, self.args)
request = webapp2.Request.blank('/tracing/tests.html')
response = request.get_response(app)
self.assertEqual(response.status_int, 200)
def testTestDataDirectory(self):
app = dev_server.CreateApp(self.pds, self.args)
request = webapp2.Request.blank('/tracing/test_data/trivial_trace.json')
response = request.get_response(app)
self.assertEqual(response.status_int, 200)
def testTestDataDirectoryListing(self):
app = dev_server.CreateApp(self.pds, self.args)
request = webapp2.Request.blank('/tracing/test_data/__file_list__')
response = request.get_response(app)
self.assertEqual(response.status_int, 200)
res = json.loads(response.body)
assert '/tracing/test_data/trivial_trace.json' in res
def testSkpDataDirectoryListing(self):
app = dev_server.CreateApp(self.pds, self.args)
request = webapp2.Request.blank('/tracing/skp_data/__file_list__')
response = request.get_response(app)
self.assertEqual(response.status_int, 200)
res = json.loads(response.body)
assert '/tracing/skp_data/lthi_cats.skp' in res
def testTestListingHandler(self):
app = dev_server.CreateApp(self.pds, self.args)
request = webapp2.Request.blank('/tracing/tests')
response = request.get_response(app)
self.assertEqual(response.status_int, 200)
res = json.loads(response.body)
self.assertTrue('test_relpaths' in res)
self.assertTrue(len(res['test_relpaths']) > 0)