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

Side by Side Diff: tools/telemetry/telemetry/page/page_set_unittest.py

Issue 274773002: [telemetry] Prototype for specifying page sets using Python imports and Telemetry discovery. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 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
OLDNEW
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 import os 5 import os
6 import tempfile 6 import tempfile
7 import unittest 7 import unittest
8 8
9 from telemetry.core import util 9 from telemetry.core import util
10 from telemetry.page import page_set 10 from telemetry.page import page_set
11 11
12 from unittest_data import test_page_set
13
12 14
13 class TestPageSet(unittest.TestCase): 15 class TestPageSet(unittest.TestCase):
14 16
15 def testServingDirs(self): 17 def testServingDirs(self):
16 directory_path = tempfile.mkdtemp() 18 directory_path = tempfile.mkdtemp()
17 try: 19 try:
18 ps = page_set.PageSet(serving_dirs=['a/b'], file_path=directory_path) 20 ps = page_set.PageSet(serving_dirs=['a/b'], file_path=directory_path)
19 ps.AddPageWithDefaultRunNavigate('file://c/test.html') 21 ps.AddPageWithDefaultRunNavigate('file://c/test.html')
20 ps.AddPageWithDefaultRunNavigate('file://c/test.js') 22 ps.AddPageWithDefaultRunNavigate('file://c/test.js')
21 ps.AddPageWithDefaultRunNavigate('file://d/e/../test.html') 23 ps.AddPageWithDefaultRunNavigate('file://d/e/../test.html')
(...skipping 13 matching lines...) Expand all
35 ps = page_set.PageSet(file_path=directory_path, 37 ps = page_set.PageSet(file_path=directory_path,
36 serving_dirs=['', directory_path, absolute_dir]) 38 serving_dirs=['', directory_path, absolute_dir])
37 real_directory_path = os.path.realpath(directory_path) 39 real_directory_path = os.path.realpath(directory_path)
38 real_absolute_dir = os.path.realpath(absolute_dir) 40 real_absolute_dir = os.path.realpath(absolute_dir)
39 self.assertEquals(ps.serving_dirs, set([real_directory_path, 41 self.assertEquals(ps.serving_dirs, set([real_directory_path,
40 real_absolute_dir])) 42 real_absolute_dir]))
41 finally: 43 finally:
42 os.rmdir(directory_path) 44 os.rmdir(directory_path)
43 45
44 def testSuccesfulPythonPageSetLoading(self): 46 def testSuccesfulPythonPageSetLoading(self):
45 test_pps_dir = os.path.join(util.GetUnittestDataDir(), 'test_page_set.py') 47 pps = test_page_set.TestPageSet()
46 pps = page_set.PageSet.FromFile(test_pps_dir)
47 self.assertEqual('TestPageSet', pps.__class__.__name__)
48 self.assertEqual('A pageset for testing purpose', pps.description) 48 self.assertEqual('A pageset for testing purpose', pps.description)
49 self.assertEqual('data/test.json', pps.archive_data_file) 49 self.assertEqual('data/test.json', pps.archive_data_file)
50 self.assertEqual('data/credential', pps.credentials_path) 50 self.assertEqual('data/credential', pps.credentials_path)
51 self.assertEqual('desktop', pps.user_agent_type) 51 self.assertEqual('desktop', pps.user_agent_type)
52 self.assertEqual(test_pps_dir, pps.file_path) 52 self.assertEqual(test_page_set.__file__, pps.file_path)
53 self.assertEqual(3, len(pps.pages)) 53 self.assertEqual(3, len(pps.pages))
54 google_page = pps.pages[0] 54 google_page = pps.pages[0]
55 self.assertEqual('https://www.google.com', google_page.url) 55 self.assertEqual('https://www.google.com', google_page.url)
56 self.assertIs(pps, google_page.page_set) 56 self.assertIs(pps, google_page.page_set)
57 self.assertTrue(5, google_page.RunGetActionRunner(action_runner=5)) 57 self.assertTrue(5, google_page.RunGetActionRunner(action_runner=5))
58 58
59 def testMultiplePythonPageSetsLoading(self):
60 test_pps_1_dir = os.path.join(util.GetUnittestDataDir(),
61 'test_simple_one_page_set.py')
62 test_pps_2_dir = os.path.join(util.GetUnittestDataDir(),
63 'test_simple_two_page_set.py')
64 pps1 = page_set.PageSet.FromFile(test_pps_1_dir)
65 pps2 = page_set.PageSet.FromFile(test_pps_2_dir)
66
67 self.assertEqual('TestSimpleOnePageSet', pps1.__class__.__name__)
68 self.assertEqual('TestSimpleTwoPageSet', pps2.__class__.__name__)
69
70 def testPageFilePath(self): 59 def testPageFilePath(self):
71 test_pps_dir = os.path.join(util.GetUnittestDataDir(), 'test_page_set.py') 60 pps = test_page_set.TestPageSet()
72 pps = page_set.PageSet.FromFile(test_pps_dir)
73 internal_page = pps.pages[1] 61 internal_page = pps.pages[1]
74 external_page = pps.pages[2] 62 external_page = pps.pages[2]
75 self.assertEqual( 63 self.assertEqual(
76 os.path.normpath(os.path.join( 64 os.path.normpath(os.path.join(
77 util.GetUnittestDataDir(), 'bar.html')), internal_page.file_path) 65 util.GetUnittestDataDir(), 'bar.html')), internal_page.file_path)
78 self.assertEqual( 66 self.assertEqual(
79 os.path.normpath(os.path.join( 67 os.path.normpath(os.path.join(
80 util.GetUnittestDataDir(), 'pages/foo.html')), external_page.file_path) 68 util.GetUnittestDataDir(), 'pages/foo.html')), external_page.file_path)
OLDNEW
« no previous file with comments | « tools/telemetry/telemetry/page/page_set.py ('k') | tools/telemetry/telemetry/page/record_wpr.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698