| OLD | NEW |
| 1 # Copyright 2014 The Chromium Authors. All rights reserved. | 1 # Copyright 2014 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 logging | 5 import logging |
| 6 import os | 6 import os |
| 7 import unittest | 7 import unittest |
| 8 | 8 |
| 9 from telemetry.core import browser_credentials | 9 from telemetry.core import browser_credentials |
| 10 from telemetry.core import discover | 10 from telemetry.core import discover |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 60 for page in page_set.pages: | 60 for page in page_set.pages: |
| 61 self.CheckTypesOfPageBasicAttributes(page) | 61 self.CheckTypesOfPageBasicAttributes(page) |
| 62 | 62 |
| 63 def CheckTypesOfPageSetBasicAttributes(self, page_set): | 63 def CheckTypesOfPageSetBasicAttributes(self, page_set): |
| 64 if page_set.file_path is not None: | 64 if page_set.file_path is not None: |
| 65 self.assertTrue( | 65 self.assertTrue( |
| 66 isinstance(page_set.file_path, str), | 66 isinstance(page_set.file_path, str), |
| 67 msg='page_set %\'s file_path must have type string') | 67 msg='page_set %\'s file_path must have type string') |
| 68 | 68 |
| 69 self.assertTrue( | 69 self.assertTrue( |
| 70 isinstance(page_set.description, str), | |
| 71 msg='page_set\'s description must have type string') | |
| 72 | |
| 73 self.assertTrue( | |
| 74 isinstance(page_set.archive_data_file, str), | 70 isinstance(page_set.archive_data_file, str), |
| 75 msg='page_set\'s archive_data_file path must have type string') | 71 msg='page_set\'s archive_data_file path must have type string') |
| 76 | 72 |
| 77 if page_set.user_agent_type is not None: | 73 if page_set.user_agent_type is not None: |
| 78 self.assertTrue( | 74 self.assertTrue( |
| 79 isinstance(page_set.user_agent_type, str), | 75 isinstance(page_set.user_agent_type, str), |
| 80 msg='page_set\'s user_agent_type must have type string') | 76 msg='page_set\'s user_agent_type must have type string') |
| 81 | 77 |
| 82 self.assertTrue( | 78 self.assertTrue( |
| 83 isinstance(page_set.make_javascript_deterministic, bool), | 79 isinstance(page_set.make_javascript_deterministic, bool), |
| 84 msg='page_set\'s make_javascript_deterministic must have type bool') | 80 msg='page_set\'s make_javascript_deterministic must have type bool') |
| 85 | 81 |
| 86 self.assertTrue( | 82 self.assertTrue( |
| 87 isinstance(page_set.startup_url, str), | 83 isinstance(page_set.startup_url, str), |
| 88 msg='page_set\'s startup_url must have type string') | 84 msg='page_set\'s startup_url must have type string') |
| 89 | 85 |
| 90 def CheckTypesOfPageBasicAttributes(self, page): | 86 def CheckTypesOfPageBasicAttributes(self, page): |
| 91 self.assertTrue( | 87 self.assertTrue( |
| 92 isinstance(page.url, str), | 88 isinstance(page.url, str), |
| 93 msg='page %s \'s url must have type string' % page.display_name) | 89 msg='page %s \'s url must have type string' % page.display_name) |
| 94 self.assertTrue( | 90 self.assertTrue( |
| 95 isinstance(page.page_set, page_set_module.PageSet), | 91 isinstance(page.page_set, page_set_module.PageSet), |
| 96 msg='page %s \'s page_set must be an instance of ' | 92 msg='page %s \'s page_set must be an instance of ' |
| 97 'telemetry.page.page_set.PageSet' % page.display_name) | 93 'telemetry.page.page_set.PageSet' % page.display_name) |
| 98 self.assertTrue( | 94 self.assertTrue( |
| 99 isinstance(page.name, str), | 95 isinstance(page.name, str), |
| 100 msg='page %s \'s name field must have type string' % page.display_name) | 96 msg='page %s \'s name field must have type string' % page.display_name) |
| 101 | 97 |
| 102 def RunSmokeTest(self, page_sets_dir): | 98 def RunSmokeTest(self, page_sets_dir, top_level_dir): |
| 103 """Run smoke test on all page sets in page_sets_dir. | 99 """Run smoke test on all page sets in page_sets_dir. |
| 104 | 100 |
| 105 Subclass of PageSetSmokeTest is supposed to call this in some test | 101 Subclass of PageSetSmokeTest is supposed to call this in some test |
| 106 method to run smoke test. | 102 method to run smoke test. |
| 107 """ | 103 """ |
| 108 page_sets = discover.GetAllPageSetFilenames(page_sets_dir) | 104 page_sets = discover.DiscoverClasses(page_sets_dir, top_level_dir, |
| 109 | 105 page_set_module.PageSet).values() |
| 110 for page_set_path in page_sets: | 106 for page_set_class in page_sets: |
| 111 page_set = page_set_module.PageSet.FromFile(page_set_path) | 107 page_set = page_set_class() |
| 112 logging.info('Testing %s', page_set.file_path) | 108 logging.info('Testing %s', page_set.file_path) |
| 113 self.CheckArchive(page_set) | 109 self.CheckArchive(page_set) |
| 114 self.CheckCredentials(page_set) | 110 self.CheckCredentials(page_set) |
| 115 self.CheckTypes(page_set) | 111 self.CheckTypes(page_set) |
| OLD | NEW |