def printCharacters(resources, callback): actorFirstLineIterator = ActorFirstLineIterator() actorFirstLineIterator.loadTranscript(resources['transcript']) phraseLookup = PhraseTimestampLookup() phraseLookup.loadSubtitles(resources['subs']) for actor, line in actorFirstLineIterator.getActorFirstLines(): timestamp = phraseLookup.getTimestamp(line) if timestamp < 0: if DEBUG: print 'ERROR', "couldn't find line \"%s\" said by %s" %(line, actor) pass else: callback(actor, timestamp)
def testPhraseTimestampLookup(): phraseLookup = PhraseTimestampLookup() phraseLookup.loadSubtitles('data/test_subs.txt') assertEquals(phraseLookup.getTimestampForIndex_(32), pippinTime) assertEquals(phraseLookup.getTimestamp('Hey!'), pippinTime) assertEquals(phraseLookup.getTimestamp("Boromir"), aragornTime)