class Test_toFrames(unittest.TestCase): def setUp(self): self.tc = TimeCode() self.tc30 = TimeCode(base=30) def test_frames(self): self.assertEquals(self.tc.toFrames('00:00:00:01'), 1) def test_seconds(self): self.assertEquals(self.tc.toFrames('00:00:01:00'), 24) def test_seconds_30fps(self): self.assertEquals(self.tc30.toFrames('00:00:01:00'), 30) def test_minutes(self): self.assertEquals(self.tc.toFrames('00:01:00:00'), 1440) def test_minute_30fps(self): self.assertEquals(self.tc30.toFrames('00:01:00:00'), 1800) def test_hour(self): self.assertEquals(self.tc.toFrames('01:00:00:00'), 86400) def test_hour_30fps(self): self.assertEquals(self.tc30.toFrames('01:00:00:00'), 108000) def test_all_fields(self): self.assertEquals(self.tc.toFrames('01:02:03:04'), 89356) def test_all_fields_30fps(self): self.assertEquals(self.tc30.toFrames('01:02:03:04'), 111694) def test_negative_tc(self): self.assertEquals(self.tc.toFrames('-00:00:01:02'), -26) def test_invalid_codes(self): self.assertRaises(RuntimeError, self.tc.toFrames, 'abc') self.assertRaises(RuntimeError, self.tc.toFrames, '00:00:00') self.assertRaises(RuntimeError, self.tc.toFrames, '00:00') self.assertRaises(RuntimeError, self.tc.toFrames, '') self.assertRaises(RuntimeError, self.tc.toFrames, '00:00:00:00:00')