def _assertOptimization(self, results_by_directory, expected_new_results_by_directory, baseline_dirname=''): host = MockHost() fs = host.filesystem webkit_base = WebKitFinder(fs).webkit_base() baseline_name = 'mock-baseline-expected.txt' for dirname, contents in results_by_directory.items(): path = fs.join(webkit_base, 'LayoutTests', dirname, baseline_name) fs.write_binary_file(path, contents) baseline_optimizer = BaselineOptimizer( host, host.port_factory.all_port_names()) self.assertTrue( baseline_optimizer.optimize( fs.join(baseline_dirname, baseline_name))) for dirname, contents in expected_new_results_by_directory.items(): path = fs.join(webkit_base, 'LayoutTests', dirname, baseline_name) if contents is None: self.assertFalse(fs.exists(path)) else: self.assertEqual(fs.read_binary_file(path), contents) # Check that the files that were in the original set have been deleted where necessary. for dirname in results_by_directory: path = fs.join(webkit_base, 'LayoutTests', dirname, baseline_name) if not dirname in expected_new_results_by_directory: self.assertFalse(fs.exists(path))
def _assertOptimization(self, results_by_directory, expected_new_results_by_directory, baseline_dirname='', expected_files_to_delete=None, host=None): if not host: host = MockHost() fs = host.filesystem webkit_base = WebKitFinder(fs).webkit_base() baseline_name = 'mock-baseline-expected.txt' for dirname, contents in results_by_directory.items(): path = fs.join(webkit_base, 'LayoutTests', dirname, baseline_name) fs.write_binary_file(path, contents) baseline_optimizer = BaselineOptimizer(host, host.port_factory.all_port_names(), skip_scm_commands=expected_files_to_delete is not None) self.assertTrue(baseline_optimizer.optimize(fs.join(baseline_dirname, baseline_name))) for dirname, contents in expected_new_results_by_directory.items(): path = fs.join(webkit_base, 'LayoutTests', dirname, baseline_name) if contents is None: self.assertTrue(not fs.exists(path) or path in baseline_optimizer._files_to_delete) else: self.assertEqual(fs.read_binary_file(path), contents) # Check that the files that were in the original set have been deleted where necessary. for dirname in results_by_directory: path = fs.join(webkit_base, 'LayoutTests', dirname, baseline_name) if not dirname in expected_new_results_by_directory: self.assertTrue(not fs.exists(path) or path in baseline_optimizer._files_to_delete) if expected_files_to_delete: self.assertEqual(baseline_optimizer._files_to_delete, expected_files_to_delete)
def _assertOptimization(self, results_by_directory, expected_new_results_by_directory, baseline_dirname='', host=None): if not host: host = MockHost() fs = host.filesystem webkit_base = WebKitFinder(fs).webkit_base() baseline_name = 'mock-baseline-expected.txt' fs.write_text_file( fs.join(webkit_base, 'LayoutTests', 'VirtualTestSuites'), '[{"prefix": "gpu", "base": "fast/canvas", "args": ["--foo"]}]') for dirname, contents in results_by_directory.items(): path = fs.join(webkit_base, 'LayoutTests', dirname, baseline_name) fs.write_binary_file(path, contents) baseline_optimizer = BaselineOptimizer( host, host.port_factory.get(), host.port_factory.all_port_names()) self.assertTrue( baseline_optimizer.optimize( fs.join(baseline_dirname, baseline_name))) for dirname, contents in expected_new_results_by_directory.items(): path = fs.join(webkit_base, 'LayoutTests', dirname, baseline_name) if contents is not None: self.assertEqual(fs.read_binary_file(path), contents)
def _assertOptimization(self, results_by_directory, expected_new_results_by_directory, baseline_dirname='', expected_files_to_delete=None, host=None): if not host: host = MockHost() fs = host.filesystem webkit_base = WebKitFinder(fs).webkit_base() baseline_name = 'mock-baseline-expected.txt' fs.write_text_file(fs.join(webkit_base, 'LayoutTests', 'VirtualTestSuites'), '[{"prefix": "gpu", "base": "fast/canvas", "args": ["--foo"]}]') for dirname, contents in results_by_directory.items(): path = fs.join(webkit_base, 'LayoutTests', dirname, baseline_name) fs.write_binary_file(path, contents) baseline_optimizer = BaselineOptimizer(host, host.port_factory.get(), host.port_factory.all_port_names(), skip_scm_commands=expected_files_to_delete is not None) self.assertTrue(baseline_optimizer.optimize(fs.join(baseline_dirname, baseline_name))) for dirname, contents in expected_new_results_by_directory.items(): path = fs.join(webkit_base, 'LayoutTests', dirname, baseline_name) if contents is None: self.assertTrue(not fs.exists(path) or path in baseline_optimizer._files_to_delete) else: self.assertEqual(fs.read_binary_file(path), contents) # Check that the files that were in the original set have been deleted where necessary. for dirname in results_by_directory: path = fs.join(webkit_base, 'LayoutTests', dirname, baseline_name) if not dirname in expected_new_results_by_directory: self.assertTrue(not fs.exists(path) or path in baseline_optimizer._files_to_delete) if expected_files_to_delete: self.assertEqual(sorted(baseline_optimizer._files_to_delete), sorted(expected_files_to_delete))
def _assertOptimization(self, results_by_directory, expected_new_results_by_directory, baseline_dirname='', host=None): if not host: host = MockHost() fs = host.filesystem webkit_base = WebKitFinder(fs).webkit_base() baseline_name = 'mock-baseline-expected.txt' fs.write_text_file(fs.join(webkit_base, 'LayoutTests', 'VirtualTestSuites'), '[{"prefix": "gpu", "base": "fast/canvas", "args": ["--foo"]}]') for dirname, contents in results_by_directory.items(): path = fs.join(webkit_base, 'LayoutTests', dirname, baseline_name) fs.write_binary_file(path, contents) baseline_optimizer = BaselineOptimizer(host, host.port_factory.get( ), host.port_factory.all_port_names()) self.assertTrue(baseline_optimizer.optimize(fs.join(baseline_dirname, baseline_name))) for dirname, contents in expected_new_results_by_directory.items(): path = fs.join(webkit_base, 'LayoutTests', dirname, baseline_name) if contents is not None: self.assertEqual(fs.read_binary_file(path), contents)