第二个测试用例中assert parameter_types2 == char function中的char应该为pointer请修复这个bug并重写代码
修复后的代码:
def parse_parameters(parameters):
parameter_types = []
for parameter in parameters:
if parameter.startswith('int'):
parameter_types.append('int')
elif parameter.startswith('char*'):
parameter_types.append('pointer')
elif parameter.startswith('float'):
parameter_types.append('float')
elif parameter.startswith('double'):
parameter_types.append('double')
elif parameter.startswith('void'):
parameter_types.append('void')
elif parameter.startswith('function'):
parameter_types.append('function')
return parameter_types
测试用例:
def test_parse_parameters():
parameter_types1 = parse_parameters(['int', 'char*', 'float'])
assert parameter_types1 == ['int', 'pointer', 'float']
parameter_types2 = parse_parameters(['char*', 'function'])
assert parameter_types2 == ['pointer', 'function']
parameter_types3 = parse_parameters(['int', 'void'])
assert parameter_types3 == ['int', 'void']
修复后,第二个测试用例的断言应该为assert parameter_types2 == ['pointer', 'function']
原文地址: https://www.cveoy.top/t/topic/dbtD 著作权归作者所有。请勿转载和采集!