我正在 Laravel 4.1 中编写我的第一个 Artisan 命令,并希望获得一些关于如何测试它的想法。我的命令做一件事(现在)。它基本上从数据库中删除指定天数的表条目(注释)。
命令示例:
OneTimeNote:delete --days=25
该命令适用于出色的工作。但是我首先出于学习目的编写了该命令,现在我希望通过测试来遵循它。我正在使用 PHPUnit 和嘲弄。
命令代码: http: //pastebin.com/index/dZrxpt8x
如您所见,我正在注入我的 Note 实现(用于抽象),然后我正在执行其中一个方法“deleteNotesOlderThan(int $days)”。就像我说的,这一切都很好,花花公子。当我尝试测试事物时,我的问题就开始了。
命令测试: http: //pastebin.com/6UwxGvcN
如果您查看代码,您可以看到我被困在哪里。如何模拟我的 Note 方法并生成命令测试?另外我应该用这个特定的命令测试什么样的东西?
先感谢您