blob: aceab2df7b25c2c012477502f386222c374e29fd [file] [log] [blame]
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# Copyright 2019 The ChromiumOS Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
"""Tests for time_line.py."""
__author__ = "yunlian@google.com (Yunlian Jiang)"
import time
import unittest
from cros_utils import timeline
class TimeLineTest(unittest.TestCase):
"""Tests for the Timeline class."""
def testRecord(self):
tl = timeline.Timeline()
tl.Record("A")
t = time.time()
t1 = tl.events[0].timestamp
self.assertEqual(int(t1 - t), 0)
self.assertRaises(AssertionError, tl.Record, "A")
def testGetEvents(self):
tl = timeline.Timeline()
tl.Record("A")
e = tl.GetEvents()
self.assertEqual(e, ["A"])
tl.Record("B")
e = tl.GetEvents()
self.assertEqual(e, ["A", "B"])
def testGetEventTime(self):
tl = timeline.Timeline()
tl.Record("A")
t = time.time()
t1 = tl.GetEventTime("A")
self.assertEqual(int(t1 - t), 0)
self.assertRaises(IndexError, tl.GetEventTime, "B")
def testGetLastEventTime(self):
tl = timeline.Timeline()
self.assertRaises(IndexError, tl.GetLastEventTime)
tl.Record("A")
t = time.time()
t1 = tl.GetLastEventTime()
self.assertEqual(int(t1 - t), 0)
time.sleep(2)
tl.Record("B")
t = time.time()
t1 = tl.GetLastEventTime()
self.assertEqual(int(t1 - t), 0)
if __name__ == "__main__":
unittest.main()