[英]How to unit test this lambda code?
说,我有类似以下Python代码:
try:
from fabulous.color import fg256
format_info = lambda x: fg256(63, unicode(x, 'utf-8')).as_utf8
except ImportError:
format_info = lambda x: '\033[1;30m' + x + '\033[0m'
我怎样才能对此进行单元测试?
值得测试吗?
需要模拟import语句,以便切除两个分支。 这是相当微不足道的 - 例如,模拟fg256
会产生raise ImportError
副作用。
匹配返回的字符串具有正确的控制字符很好,但感觉很脆弱。
你究竟要测试什么? 你似乎在这里有两个不相关的案件;
检查不使用您的代码失败并不是您的责任; 但是如果你想测试这个(也许是因为这是有人在一个热门论坛上发布的代码),我会把它分成两个不同的测试。
我们不知道你的lambda应该返回什么,但从它的外观来看,它应该返回一个类似于你在except
分支中指定的字符串?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.