def test_blank_line(self): """ Blank lines are ignored. """ parser = CPUParser(Clock()) parser.lineReceived('') self.assertEqual(parser.result, {WALLCLOCK_LABEL: 0})
def test_unexpected_parse(self): """ Line that has incorrectly formatted time raises exception. """ parser = CPUParser(Clock()) with self.assertRaises(ValueError) as e: parser.lineReceived('proc 20:34') self.assertEqual(e.exception.args[-1], 'proc 20:34')
def test_unexpected_line(self): """ Line that doesn't fit expected pattern raises exception. """ parser = CPUParser(Clock()) with self.assertRaises(ValueError) as e: parser.lineReceived('Unexpected Error Message') self.assertEqual(e.exception.args[-1], 'Unexpected Error Message')
def test_days(self): """ CPU time line with a days part parses correctly. """ parser = CPUParser(Clock()) parser.lineReceived('proc 5-12:34:56') expected_cputime = ((5 * 24 + 12) * 60 + 34) * 60 + 56 self.assertEqual( parser.result, {'proc': expected_cputime, WALLCLOCK_LABEL: 0} )