1*760c253cSXin Li#!/usr/bin/env python3 2*760c253cSXin Li# -*- coding: utf-8 -*- 3*760c253cSXin Li# Copyright 2019 The ChromiumOS Authors 4*760c253cSXin Li# Use of this source code is governed by a BSD-style license that can be 5*760c253cSXin Li# found in the LICENSE file. 6*760c253cSXin Li 7*760c253cSXin Li"""Tests for time_line.py.""" 8*760c253cSXin Li 9*760c253cSXin Li 10*760c253cSXin Li__author__ = "[email protected] (Yunlian Jiang)" 11*760c253cSXin Li 12*760c253cSXin Liimport time 13*760c253cSXin Liimport unittest 14*760c253cSXin Li 15*760c253cSXin Lifrom cros_utils import timeline 16*760c253cSXin Li 17*760c253cSXin Li 18*760c253cSXin Liclass TimeLineTest(unittest.TestCase): 19*760c253cSXin Li """Tests for the Timeline class.""" 20*760c253cSXin Li 21*760c253cSXin Li def testRecord(self): 22*760c253cSXin Li tl = timeline.Timeline() 23*760c253cSXin Li tl.Record("A") 24*760c253cSXin Li t = time.time() 25*760c253cSXin Li t1 = tl.events[0].timestamp 26*760c253cSXin Li self.assertEqual(int(t1 - t), 0) 27*760c253cSXin Li self.assertRaises(AssertionError, tl.Record, "A") 28*760c253cSXin Li 29*760c253cSXin Li def testGetEvents(self): 30*760c253cSXin Li tl = timeline.Timeline() 31*760c253cSXin Li tl.Record("A") 32*760c253cSXin Li e = tl.GetEvents() 33*760c253cSXin Li self.assertEqual(e, ["A"]) 34*760c253cSXin Li tl.Record("B") 35*760c253cSXin Li e = tl.GetEvents() 36*760c253cSXin Li self.assertEqual(e, ["A", "B"]) 37*760c253cSXin Li 38*760c253cSXin Li def testGetEventTime(self): 39*760c253cSXin Li tl = timeline.Timeline() 40*760c253cSXin Li tl.Record("A") 41*760c253cSXin Li t = time.time() 42*760c253cSXin Li t1 = tl.GetEventTime("A") 43*760c253cSXin Li self.assertEqual(int(t1 - t), 0) 44*760c253cSXin Li self.assertRaises(IndexError, tl.GetEventTime, "B") 45*760c253cSXin Li 46*760c253cSXin Li def testGetLastEventTime(self): 47*760c253cSXin Li tl = timeline.Timeline() 48*760c253cSXin Li self.assertRaises(IndexError, tl.GetLastEventTime) 49*760c253cSXin Li tl.Record("A") 50*760c253cSXin Li t = time.time() 51*760c253cSXin Li t1 = tl.GetLastEventTime() 52*760c253cSXin Li self.assertEqual(int(t1 - t), 0) 53*760c253cSXin Li time.sleep(2) 54*760c253cSXin Li tl.Record("B") 55*760c253cSXin Li t = time.time() 56*760c253cSXin Li t1 = tl.GetLastEventTime() 57*760c253cSXin Li self.assertEqual(int(t1 - t), 0) 58*760c253cSXin Li 59*760c253cSXin Li 60*760c253cSXin Liif __name__ == "__main__": 61*760c253cSXin Li unittest.main() 62