blob: bb72bf190395f8853804166fc9bf79173793f682 [file] [log] [blame]
#!/usr/bin/env python2.7
# Copyright 2015 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import unittest
from perfbot_stats import chrome_perf_stats
class TestChromePerfStats(unittest.TestCase):
def testUpdateSuccessRatesWithResult(self):
success_rates = {}
chrome_perf_stats._UpdateSuccessRatesWithResult(
success_rates,
{'count': 0},
'invalid_date_str',
'invalid_builder')
self.assertDictEqual({}, success_rates)
chrome_perf_stats._UpdateSuccessRatesWithResult(
success_rates,
{'count': 5, 'failure_count': 3},
'20151010',
'android_nexus_10')
self.assertDictEqual(
{'20151010': {'android_nexus_10': {'count': 5, 'success_count': 2}}},
success_rates)
chrome_perf_stats._UpdateSuccessRatesWithResult(
success_rates,
{'count': 5, 'failure_count': 4},
'20151010',
'android_nexus_4')
self.assertDictEqual(
{
'20151010': {
'android_nexus_10': {'count': 5, 'success_count': 2},
'android_nexus_4': {'count': 5, 'success_count': 1},
}
},
success_rates)
chrome_perf_stats._UpdateSuccessRatesWithResult(
success_rates,
{'count': 5, 'failure_count': 0},
'20151009',
'win_xp')
self.assertDictEqual(
{
'20151010': {
'android_nexus_10': {'count': 5, 'success_count': 2},
'android_nexus_4': {'count': 5, 'success_count': 1},
},
'20151009': {
'win_xp': {'count': 5, 'success_count': 5},
},
},
success_rates)
def testSummarizeSuccessRates(self):
rates = chrome_perf_stats._SummarizeSuccessRates(
{
'20151010': {
'android_nexus_10': {'count': 5, 'success_count': 2},
'android_nexus_4': {'count': 5, 'success_count': 3},
},
'20151009': {
'win_xp': {'count': 5, 'success_count': 5},
},
})
self.assertListEqual([['20151010', 0.5], ['20151009', 1.0]], rates)
if __name__ == '__main__':
unittest.main()