- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我有一个函数:
var publish = function(a, b, c) {
main = a + getWriterName(b,c);
}
getWriterName 是另一个函数:
var getWriterName = function(b,c) {
return 'Hello World';
}
我想测试“发布”功能,但我不想在测试“发布”时运行“getWriterName”功能。我觉得我 stub getWriterName 函数,因为我不想每次测试“发布”时都运行它,但我该怎么做呢?我做了类似的事情:
var sandbox = sinon.sandbox.create();
sandbox.stub(getWriterName).returns('done');
但这给了我一个错误
TypeError: Attempted to wrap undefined property undefined as function
如果我在写入路径中,我的 stub 有什么问题?
编辑:我正在使用 rewire,所以想要使用 rewire 的解决方案
最佳答案
这就是如何将 Sinon 与 Rewire 一起用于 stub 函数。如果 stub 函数是私有(private)的,那么 Rewire 在这种情况下特别有用。
it('getWriteName always returns "Hello World"', function() {
var stub = sandbox.stub();
stub.returns('Hello World');
var unset = log.__set__('getWriterName', stub);
// your test and expectations here
unset();
// it's always good to restore the previous state
});
关于javascript - 使用 SinonJS stub (带重新布线),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38273619/
我有一个使用Dart和Polymer的单页应用程序。我正在尝试使用route_hierarchical添加到另一页的路线 到目前为止,我已经尝试过这样配置路由器: router = new Route
我的 View 文件夹有这样的结构(它们显示逻辑结构): 所以我在管理子文件夹中有子文件夹,在目录文件夹中我必须有子文件夹,制造商等(制造商和其他有 Controller 的 View ,只有目录并且
我正在使用 Ruby on Rails 3,我想将一些 URL 路由到一些 Rack 中间件。也就是说,如果用户尝试浏览 http://.com/api/user/1系统应该考虑在 Rack 文件之前
根据this answer,从 View 中调用模型似乎是可以的。 Can I call a Model from a View? 现在我的问题是,布线会是什么样子? Controller 会将模型工
我最近注意到,如果我用 @Interceptors(SpringBeanAutowiringInterceptor.class) 注释 ejb,spring 可以为我连接我的 ejb。我从来没有真正这
我是一名优秀的程序员,十分优秀!