辅助进行等价性测试的工具。
项目描述
此包处于预alpha阶段。API可能发生变化。
当比较此类字典结构时
assert actual == { 'id': 123, 'created': "2017-11-10T23:59:58", 'field1': 1, ... }
这会失败,因为每次测试运行时‘id’和‘created’都不同。使用以下方法修复此问题
assert actual == { 'id': AnyInt(), 'created': AnyTimestamp(datetime.now(), seconds=3), 'field1': 1, ... }
AnyInt
与任何整数相等。 Timestamp
与给定秒数内的字符串时间戳相等。
兼容性
Python 3.6和2.7。
已知问题
如果时间戳是在本地、进程内生成的,那么更容易修改datetime.now()。但如果这是一个端到端测试,它触发了其他服务,那么这可能不是选项之一。那时我发现AnyTimestamp很有用。
这些都是最新的,毫无疑问充满了错误。
替代方案
这无疑重复了其他地方更好的工作。特别是包‘equals’看起来非常不错,但它缺少了‘equality’的核心功能,即字符串时间戳的近似比较。
联系方式
作者:Jonathan Hartley,电子邮件:tartley at domain tartley.com,Twitter:@tartley。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定该选择哪个,请了解更多关于安装包的信息。
源分布
equality-0.1.1.tar.gz (4.6 kB 查看哈希值)
构建分布
equality-0.1.1-py2.py3-none-any.whl (5.0 kB 查看哈希值)
关闭
equality-0.1.1.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 4342928f394b538eb633a691a8ef6a1fcfd2d26ca33c220ec481b767a5bb9f41 |
|
MD5 | f47ee66758395aab77bc73439e0c4802 |
|
BLAKE2b-256 | 37b43e3b51e5759969073b9aab95fc079cff04e6d4271ff352fe93d5957fb0a6 |
关闭
equality-0.1.1-py2.py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 1f820eb75b18847286cdd6c5c5582481e67110d1a21465a558fcc165808a8c02 |
|
MD5 | b70aa295293ad26f93368c357cd1d6cf |
|
BLAKE2b-256 | 227faea0fdbceddb55c4eef88d92769e108bce001a7bbeb7134b7dfa6ce2cc23 |