Files
ptulsconv/tests/test_robinhooddf.py
2019-10-08 10:54:46 -07:00

37 lines
1.8 KiB
Python

import unittest
import ptulsconv
import os.path
class TestRobinHoodDF(unittest.TestCase):
path = os.path.dirname(__file__) + '/export_cases/Robin Hood SpottingDF.txt'
def test_header_export_df(self):
with open(self.path, 'r') as f:
visitor = ptulsconv.DictionaryParserVisitor()
result = ptulsconv.protools_text_export_grammar.parse(f.read())
parsed: dict = visitor.visit(result)
self.assertTrue('header' in parsed.keys())
self.assertEqual(parsed['header']['timecode_drop_frame'], True)
def test_a_track(self):
with open(self.path, 'r') as f:
visitor = ptulsconv.DictionaryParserVisitor()
result = ptulsconv.protools_text_export_grammar.parse(f.read())
parsed: dict = visitor.visit(result)
guy_track = parsed['tracks'][4]
self.assertEqual(guy_track['name'], 'Robin')
self.assertEqual(guy_track['comments'], '[ADR] {Actor=Errol Flynn} $CN=1')
self.assertEqual(guy_track['user_delay_samples'], 0)
self.assertListEqual(guy_track['state'], [])
self.assertEqual(len(guy_track['clips']), 10)
self.assertEqual(guy_track['clips'][5]['channel'], 1)
self.assertEqual(guy_track['clips'][5]['event'], 6)
self.assertEqual(guy_track['clips'][5]['clip_name'], "\"Hold there! What's his fault?\" $QN=R106")
self.assertEqual(guy_track['clips'][5]['start_time'], "01:05:30;15")
self.assertEqual(guy_track['clips'][5]['end_time'], "01:05:32;01")
self.assertEqual(guy_track['clips'][5]['duration'], "00:00:01;16")
self.assertEqual(guy_track['clips'][5]['timestamp'], None)
self.assertEqual(guy_track['clips'][5]['state'], 'Unmuted')