Exemplo n.º 1
0
 def testInvalidMerge(self):
   """Tests that updating a BuildStats instance twice is an error."""
   base_map = {
       'foo': {
           data_types.Expectation('foo', ['win'], 'Failure'): {
               'builder': {
                   'step': data_types.BuildStats(),
               },
           },
       },
   }
   merge_stats = data_types.BuildStats()
   merge_stats.AddFailedBuild('1')
   merge_map = {
       'foo': {
           data_types.Expectation('foo', ['win'], 'Failure'): {
               'builder': {
                   'step': merge_stats,
               },
           },
       },
   }
   original_base_map = copy.deepcopy(base_map)
   queries._MergeExpectationMaps(base_map, merge_map, original_base_map)
   with self.assertRaises(AssertionError):
     queries._MergeExpectationMaps(base_map, merge_map, original_base_map)
Exemplo n.º 2
0
 def testMergeBuildStats(self):
   """Tests that BuildStats for the same step are merged properly."""
   base_map = {
       'foo': {
           data_types.Expectation('foo', ['win'], 'Failure'): {
               'builder': {
                   'step': data_types.BuildStats(),
               },
           },
       },
   }
   merge_stats = data_types.BuildStats()
   merge_stats.AddFailedBuild('1')
   merge_map = {
       'foo': {
           data_types.Expectation('foo', ['win'], 'Failure'): {
               'builder': {
                   'step': merge_stats,
               },
           },
       },
   }
   expected_stats = data_types.BuildStats()
   expected_stats.AddFailedBuild('1')
   expected_base_map = {
       'foo': {
           data_types.Expectation('foo', ['win'], 'Failure'): {
               'builder': {
                   'step': expected_stats,
               },
           },
       },
   }
   queries._MergeExpectationMaps(base_map, merge_map)
   self.assertEqual(base_map, expected_base_map)
Exemplo n.º 3
0
 def testEmptyMergeMap(self):
   """Tests that a merge with an empty merge map is a no-op."""
   base_map = {
       'foo': {
           data_types.Expectation('foo', ['win'], 'Failure'): {
               'builder': {
                   'step': data_types.BuildStats(),
               },
           },
       },
   }
   merge_map = {}
   original_base_map = copy.deepcopy(base_map)
   queries._MergeExpectationMaps(base_map, merge_map)
   self.assertEqual(base_map, original_base_map)
   self.assertEqual(merge_map, {})
Exemplo n.º 4
0
 def testMissingKeys(self):
   """Tests that missing keys are properly copied to the base map."""
   base_map = {
       'foo': {
           data_types.Expectation('foo', ['win'], 'Failure'): {
               'builder': {
                   'step': data_types.BuildStats(),
               },
           },
       },
   }
   merge_map = {
       'foo': {
           data_types.Expectation('foo', ['win'], 'Failure'): {
               'builder': {
                   'step2': data_types.BuildStats(),
               },
               'builder2': {
                   'step': data_types.BuildStats(),
               },
           },
           data_types.Expectation('foo', ['mac'], 'Failure'): {
               'builder': {
                   'step': data_types.BuildStats(),
               }
           }
       },
       'bar': {
           data_types.Expectation('bar', ['win'], 'Failure'): {
               'builder': {
                   'step': data_types.BuildStats(),
               },
           },
       },
   }
   expected_base_map = {
       'foo': {
           data_types.Expectation('foo', ['win'], 'Failure'): {
               'builder': {
                   'step': data_types.BuildStats(),
                   'step2': data_types.BuildStats(),
               },
               'builder2': {
                   'step': data_types.BuildStats(),
               },
           },
           data_types.Expectation('foo', ['mac'], 'Failure'): {
               'builder': {
                   'step': data_types.BuildStats(),
               }
           }
       },
       'bar': {
           data_types.Expectation('bar', ['win'], 'Failure'): {
               'builder': {
                   'step': data_types.BuildStats(),
               },
           },
       },
   }
   queries._MergeExpectationMaps(base_map, merge_map)
   self.assertEqual(base_map, expected_base_map)