blob: 4602a78687ee4f225f04656e2d9db1486205da29 [file] [log] [blame] [edit]
#!/usr/bin/env python
# Copyright (c) 2012 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.
from datetime import datetime
import time
import unittest
from test_expectations_history import TestExpectationsHistory
class TestTestExpectationsHistory(unittest.TestCase):
"""Unit tests for the TestExpectationsHistory class."""
def AssertTestName(self, result_list, testname):
"""Assert test name in the result_list.
Args:
result_list: a result list of tuples returned by
|GetDiffBetweenTimesOnly1Diff()|. Each tuple consists of
(old_rev, new_rev, author, date, message, lines) where
|lines| are the entries in the test expectation file.
testname: a testname string.
Returns:
True if the result contains the testname, False otherwise.
"""
for (_, _, _, _, _, lines) in result_list:
if any([testname in line for line in lines]):
return True
return False
def testGetDiffBetweenTimes(self):
t = (2011, 8, 20, 0, 0, 0, 0, 0, 0)
ctime = time.mktime(t)
t = (2011, 8, 19, 0, 0, 0, 0, 0, 0)
ptime = time.mktime(t)
testname = 'fast/css/getComputedStyle/computed-style-without-renderer.html'
testname_list = [testname]
result_list = TestExpectationsHistory.GetDiffBetweenTimes(
ptime, ctime, testname_list)
self.assertTrue(self.AssertTestName(result_list, testname))
def testGetDiffBetweenTimesOnly1Diff(self):
ptime = datetime.strptime('2011-08-19-23', '%Y-%m-%d-%H')
ptime = time.mktime(ptime.timetuple())
ctime = datetime.strptime('2011-08-20-00', '%Y-%m-%d-%H')
ctime = time.mktime(ctime.timetuple())
testname = 'fast/css/getComputedStyle/computed-style-without-renderer.html'
testname_list = [testname]
result_list = TestExpectationsHistory.GetDiffBetweenTimes(
ptime, ctime, testname_list)
self.assertTrue(self.AssertTestName(result_list, testname))
def testGetDiffBetweenTimesOnly1DiffWithGobackSeveralDays(self):
ptime = datetime.strptime('2011-09-11-18', '%Y-%m-%d-%H')
ptime = time.mktime(ptime.timetuple())
ctime = datetime.strptime('2011-09-11-19', '%Y-%m-%d-%H')
ctime = time.mktime(ctime.timetuple())
testname = 'media/video-zoom-controls.html'
testname_list = [testname]
result_list = TestExpectationsHistory.GetDiffBetweenTimes(
ptime, ctime, testname_list)
self.assertTrue(self.AssertTestName(result_list, testname))
if __name__ == '__main__':
unittest.main()