13eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org#!/usr/bin/python 23eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org 33eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org""" 43eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.orgCopyright 2014 Google Inc. 53eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org 63eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.orgUse of this source code is governed by a BSD-style license that can be 73eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.orgfound in the LICENSE file. 83eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org 93eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.orgTest results.py 103eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org 113eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org""" 123eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org 133eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org# Imports from within Skia 143eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.orgimport base_unittest 153eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.orgimport results 163eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org 173eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org 183eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.orgclass ResultsTest(base_unittest.TestCase): 193eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org 20defe6fdbc8edb2df0887c007450a8d8cc446f420commit-bot@chromium.org def test_ignore_builder(self): 21defe6fdbc8edb2df0887c007450a8d8cc446f420commit-bot@chromium.org """Test _ignore_builder().""" 22defe6fdbc8edb2df0887c007450a8d8cc446f420commit-bot@chromium.org results_obj = results.BaseComparisons() 23defe6fdbc8edb2df0887c007450a8d8cc446f420commit-bot@chromium.org self.assertEqual(results_obj._ignore_builder('SomethingTSAN'), True) 24defe6fdbc8edb2df0887c007450a8d8cc446f420commit-bot@chromium.org self.assertEqual(results_obj._ignore_builder('Something-Trybot'), True) 25defe6fdbc8edb2df0887c007450a8d8cc446f420commit-bot@chromium.org self.assertEqual(results_obj._ignore_builder( 26defe6fdbc8edb2df0887c007450a8d8cc446f420commit-bot@chromium.org 'Test-Ubuntu12-ShuttleA-GTX660-x86-Release'), False) 27defe6fdbc8edb2df0887c007450a8d8cc446f420commit-bot@chromium.org results_obj.set_skip_builders_pattern_list(['.*TSAN.*', '.*GTX660.*']) 28defe6fdbc8edb2df0887c007450a8d8cc446f420commit-bot@chromium.org self.assertEqual(results_obj._ignore_builder('SomethingTSAN'), True) 29defe6fdbc8edb2df0887c007450a8d8cc446f420commit-bot@chromium.org self.assertEqual(results_obj._ignore_builder('Something-Trybot'), False) 30defe6fdbc8edb2df0887c007450a8d8cc446f420commit-bot@chromium.org self.assertEqual(results_obj._ignore_builder( 31defe6fdbc8edb2df0887c007450a8d8cc446f420commit-bot@chromium.org 'Test-Ubuntu12-ShuttleA-GTX660-x86-Release'), True) 32defe6fdbc8edb2df0887c007450a8d8cc446f420commit-bot@chromium.org results_obj.set_skip_builders_pattern_list(None) 33defe6fdbc8edb2df0887c007450a8d8cc446f420commit-bot@chromium.org self.assertEqual(results_obj._ignore_builder('SomethingTSAN'), False) 34defe6fdbc8edb2df0887c007450a8d8cc446f420commit-bot@chromium.org self.assertEqual(results_obj._ignore_builder('Something-Trybot'), False) 35defe6fdbc8edb2df0887c007450a8d8cc446f420commit-bot@chromium.org self.assertEqual(results_obj._ignore_builder( 36defe6fdbc8edb2df0887c007450a8d8cc446f420commit-bot@chromium.org 'Test-Ubuntu12-ShuttleA-GTX660-x86-Release'), False) 37defe6fdbc8edb2df0887c007450a8d8cc446f420commit-bot@chromium.org results_obj.set_match_builders_pattern_list(['.*TSAN']) 38defe6fdbc8edb2df0887c007450a8d8cc446f420commit-bot@chromium.org self.assertEqual(results_obj._ignore_builder('SomethingTSAN'), False) 39defe6fdbc8edb2df0887c007450a8d8cc446f420commit-bot@chromium.org self.assertEqual(results_obj._ignore_builder('Something-Trybot'), True) 40defe6fdbc8edb2df0887c007450a8d8cc446f420commit-bot@chromium.org self.assertEqual(results_obj._ignore_builder( 41defe6fdbc8edb2df0887c007450a8d8cc446f420commit-bot@chromium.org 'Test-Ubuntu12-ShuttleA-GTX660-x86-Release'), True) 42defe6fdbc8edb2df0887c007450a8d8cc446f420commit-bot@chromium.org 433eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org def test_combine_subdicts_typical(self): 443eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org """Test combine_subdicts() with no merge conflicts. """ 453eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org input_dict = { 463eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org "failed" : { 473eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org "changed.png" : [ "bitmap-64bitMD5", 8891695120562235492 ], 483eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org }, 493eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org "no-comparison" : { 503eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org "unchanged.png" : [ "bitmap-64bitMD5", 11092453015575919668 ], 513eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org } 523eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org } 533eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org expected_output_dict = { 543eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org "changed.png" : [ "bitmap-64bitMD5", 8891695120562235492 ], 553eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org "unchanged.png" : [ "bitmap-64bitMD5", 11092453015575919668 ], 563eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org } 573eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org actual_output_dict = results.BaseComparisons.combine_subdicts( 583eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org input_dict=input_dict) 593eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org self.assertEqual(actual_output_dict, expected_output_dict) 603eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org 613eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org def test_combine_subdicts_with_merge_conflict(self): 623eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org """Test combine_subdicts() with a merge conflict. """ 633eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org input_dict = { 643eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org "failed" : { 653eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org "changed.png" : [ "bitmap-64bitMD5", 8891695120562235492 ], 663eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org }, 673eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org "no-comparison" : { 683eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org "changed.png" : [ "bitmap-64bitMD5", 11092453015575919668 ], 693eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org } 703eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org } 713eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org with self.assertRaises(Exception): 723eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org actual_output_dict = results.BaseComparisons.combine_subdicts( 733eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org input_dict=input_dict) 743eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org 753eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org 763eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.orgdef main(): 773eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org base_unittest.main(ResultsTest) 783eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org 793eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org 803eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.orgif __name__ == '__main__': 813eb77e4d5a381fa55197f6bd03c599e709146069commit-bot@chromium.org main() 82