问题遇到的现象和发生背景
检测里引用的原函数结果和预期不符,不知道为什么结果会多出来一个b
import unittest
from ddt import ddt,data,unpack
def city(city,country,code=''):
if code:
a=f'{city} {code} {country}'
print(a)
else:
a = f'{city} {country}'
print(a)
return a
@ddt
class CeShi(unittest.TestCase):
@data(['a','b'])
@unpack
def test_1(self,a,b,c=None):
if c:
a=f'{a} {c} {b}'
b=city(a,b,c)
self.assertEqual(a,b)
else:
a=f'{a} {b}'
b=city(a,b)
self.assertEqual(a,b)
if __name__ == '__main__':
unittest.main()
运行结果及报错内容
预期:a b
实际:a b b
我想要达到的结果
预期:a b
实际:a b