<s> import unittest <EOL> from parse import Parser <EOL> class ParserTest ( unittest . TestCase ) : <EOL> def setUp ( self ) : <EOL> self . db = StubDb ( ) <EOL> def test_db_updated_correctly_from_input_with_depth_2_and_extra_whitespace ( self ) : <EOL> Parser ( '<STR_LIT:name>' , self . db , '<STR_LIT:\n>' , '<STR_LIT:U+0020>' ) . parse ( '<STR_LIT>' ) <EOL> self . assertEqual ( self . db . commit_count , <NUM_LIT:2> ) <EOL> self . assertEqual ( self . db . added_word_list , [ [ '<STR_LIT>' , '<STR_LIT>' ] , [ '<STR_LIT>' , '<STR_LIT>' ] , [ '<STR_LIT>' , '<STR_LIT>' ] , [ '<STR_LIT>' , '<STR_LIT>' ] , [ '<STR_LIT>' , '<STR_LIT>' ] , [ '<STR_LIT>' , '<STR_LIT>' ] , [ '<STR_LIT>' , '<STR_LIT:$>' ] , [ '<STR_LIT>' , '<STR_LIT>' ] , [ '<STR_LIT>' , '<STR_LIT>' ] , [ '<STR_LIT>' , '<STR_LIT:$>' ] ] ) <EOL> def test_db_updated_correctly_from_input_with_depth_4 ( self ) : <EOL> self . db . depth = <NUM_LIT:4> <EOL> Parser ( '<STR_LIT:name>' , self . db , '<STR_LIT:\n>' , '<STR_LIT:U+0020>' ) . parse ( '<STR_LIT>' ) <EOL> self . assertEqual ( self . db . commit_count , <NUM_LIT:1> ) <EOL> self . assertEqual ( self . db . added_word_list , [ [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ] , [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ] , [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ] , [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ] , [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ] , [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ] , [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT:$>' ] , [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT:$>' , '<STR_LIT:$>' ] , [ '<STR_LIT>' , '<STR_LIT:$>' , '<STR_LIT:$>' , '<STR_LIT:$>' ] ] ) <EOL> class StubDb : <EOL> def __init__ ( self ) : <EOL> self . commit_count = <NUM_LIT:0> <EOL> self . added_word_list = [ ] <EOL> self . depth = <NUM_LIT:2> <EOL> def get_depth ( self ) : <EOL> return self . depth <EOL> def add_word ( self , word_list ) : <EOL> self . added_word_list . append ( word_list ) <EOL> def commit ( self ) : <EOL> self . commit_count += <NUM_LIT:1> <EOL> if __name__ == '<STR_LIT:__main__>' : <EOL> unittest . main ( ) </s>
