mirror of
https://github.com/iluvcapra/pycmx.git
synced 2025-12-31 00:40:57 +00:00
Leaving this for now
This commit is contained in:
@@ -15,7 +15,7 @@ class EditList:
|
||||
:func:`~pycmx.parse_cmx3600()`.
|
||||
"""
|
||||
|
||||
def __init__(self, statements):
|
||||
def __init__(self, statements: list):
|
||||
self.title_statement: StmtTitle = statements[0]
|
||||
self.event_statements = statements[1:]
|
||||
|
||||
@@ -78,9 +78,11 @@ class EditList:
|
||||
@property
|
||||
def events(self) -> Generator[Event, None, None]:
|
||||
'A generator for all the events in the edit list'
|
||||
# breakpoint()
|
||||
current_event_num = None
|
||||
event_statements = []
|
||||
for stmt in self.event_statements:
|
||||
breakpoint()
|
||||
if type(stmt) is StmtEvent:
|
||||
if current_event_num is None:
|
||||
current_event_num = stmt.event
|
||||
|
||||
@@ -54,7 +54,12 @@ def _parse_cmx3600_line(line: str, line_number: int) -> object:
|
||||
return _parse_fcm(line, line_number)
|
||||
if line_matcher is not None:
|
||||
event_field_len = len(line_matcher.group(1))
|
||||
source_field_len = len(line) - (event_field_len + 65)
|
||||
source_in_match = re.search(r'\d\d\:\d\d\:\d\d\:\d\d', line)
|
||||
if not source_in_match:
|
||||
return _parse_unrecognized(line, line_number)
|
||||
|
||||
source_field_len = source_in_match.start() - (event_field_len + 18)
|
||||
# breakpoint()
|
||||
return _parse_columns_for_standard_form(line, event_field_len,
|
||||
source_field_len, line_number)
|
||||
if line.startswith("AUD"):
|
||||
@@ -193,6 +198,7 @@ def _parse_unrecognized(line, line_number):
|
||||
def _parse_columns_for_standard_form(line: str, event_field_length: int,
|
||||
source_field_length: int,
|
||||
line_number: int):
|
||||
# breakpoint()
|
||||
col_widths = _edl_column_widths(event_field_length, source_field_length)
|
||||
|
||||
if sum(col_widths) > len(line):
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
from . import test_parse
|
||||
from . import test_issue_19
|
||||
|
||||
19
tests/test_issue_19.py
Normal file
19
tests/test_issue_19.py
Normal file
@@ -0,0 +1,19 @@
|
||||
from unittest import TestCase
|
||||
|
||||
from pycmx import parse_cmx3600
|
||||
|
||||
class Issue19Test(TestCase):
|
||||
def setUp(self):
|
||||
self.f = open("tests/edls/ISSUE_19_unusual01.edl")
|
||||
|
||||
|
||||
def test_parse(self):
|
||||
edl = parse_cmx3600(self.f)
|
||||
for event in edl.events:
|
||||
self.assertIsNotNone(event.edits)
|
||||
if event.number == 1:
|
||||
self.assertEqual(len(event.edits), 1)
|
||||
|
||||
|
||||
def tearDown(self):
|
||||
self.f.close()
|
||||
Reference in New Issue
Block a user