【发布时间】:2015-02-26 02:15:02
【问题描述】:
我编写了一个 node.js 脚本,它扫描一个非常大的遗留代码库并应用一组更改。
更改可能非常复杂,因为这会影响某些存储机制和相关的大小定义。
我使用 mocha、chai 和 sinon 编写了测试,所有计算和报告都是正确的。 '
现在我正在尝试编写一个测试,将更改应用于 20 个遗留源样本。我可以创建具有正确更改的 20 个样本的版本,我只想让我的测试将应用的更改与预测的更改进行比较。
所以本质上,测试是文件A 和文件B 之间的差异,结果应该是文件相同。谷歌展示了很多关于数组、字符串和对象差异的结果。有没有人有如何为文件执行此操作的解决方案?
我应该注意,我并不是要重新发明轮子。我已经尝试过prettydiff,类似于:
prettydiff({source: processedFile, diff: expectedFile, lang: 'text'}).should.equal("Number of differences: 0 differences from 0 lines of text.");
我也试过了:
expect(prettydiff({source: processedFile, diff: expectedFile, lang: 'text'})).to.equal("Number of differences: 0 differences from 0 lines of text.");
但是,我在这两种情况下得到的只是一个错误,指出 Uncaught TypeError: object is not a function。
使用 mocha 测试两个文件差异的正确方法是什么?
【问题讨论】:
标签: node.js file diff mocha.js