def sequence_typing(options):
data = {'<STR_LIT:list>': [{'<STR_LIT:foo>': '<STR_LIT:bar>'}], '<STR_LIT>': ({'<STR_LIT:foo>': '<STR_LIT:bar>'},)}<EOL>tuple_mapping = options.constructor(data)<EOL>assert_true(isinstance(tuple_mapping.list, tuple))<EOL>assert_equals(tuple_mapping.list[<NUM_LIT:0>].foo, '<STR_LIT:bar>')<EOL>assert_true(isinstance(tuple_mapping.tuple, tuple))<EOL>assert_equals(tuple_mapping.tuple[<NUM_LIT:0>].foo, '<STR_LIT:bar>')<EOL>list_mapping = options.constructor(data, sequence_type=list)<EOL>assert_true(isinstance(list_mapping.list, list))<EOL>assert_equals(list_mapping.list[<NUM_LIT:0>].foo, '<STR_LIT:bar>')<EOL>assert_true(isinstance(list_mapping.tuple, list))<EOL>assert_equals(list_mapping.tuple[<NUM_LIT:0>].foo, '<STR_LIT:bar>')<EOL>none_mapping = options.constructor(data, sequence_type=None)<EOL>assert_true(isinstance(none_mapping.list, list))<EOL>assert_raises(AttributeError, lambda: none_mapping.list[<NUM_LIT:0>].foo)<EOL>assert_true(isinstance(none_mapping.tuple, tuple))<EOL>assert_raises(AttributeError, lambda: none_mapping.tuple[<NUM_LIT:0>].foo)<EOL>
Does {cls} respect sequence type?