Unit testing 如何为meteor方法编写单元测试?
我发现这有点复杂,如果我在Unit testing 如何为meteor方法编写单元测试?,unit-testing,meteor,mocha.js,server-side,meteor-velocity,Unit Testing,Meteor,Mocha.js,Server Side,Meteor Velocity,我发现这有点复杂,如果我在/lib文件夹中编写我的meteor方法,我想从服务器测试文件夹中测试我的方法(单元测试),但stub这个。userId以及在服务器端调试或显示日志也没有太大帮助 我有太多的问题,我正在使用mochajs和velocity,有人能帮我吗?有人知道如何将单元写入meteor方法吗?Mocha不支持单元测试,目前只有Jasmine支持。这是一个如何用Jasmine为服务器编写单元测试并使用userId的示例 it("should return premium conte
/lib
文件夹中编写我的meteor方法,我想从服务器测试文件夹中测试我的方法(单元测试),但stub这个。userId
以及在服务器端调试或显示日志也没有太大帮助
我有太多的问题,我正在使用mochajs和velocity,有人能帮我吗?有人知道如何将单元写入meteor方法吗?Mocha不支持单元测试,目前只有Jasmine支持。这是一个如何用Jasmine为服务器编写单元测试并使用userId的示例
it("should return premium content to logged in users", function () {
// SETUP
var thisContext = {
userId : true
};
var expectedCursor = 'chapter_cursor1';
var _query = true, _modifiers = true;
Chapters.find = function(query, modifiers) {
_query = query;
_modifiers = modifiers;
return expectedCursor;
};
// EXECUTE
var actualCursor = Meteor.publishFunctions['chapters'].apply(thisContext);
// VERIFY
expect(actualCursor).toBe(expectedCursor);
expect(_query).toBe(undefined);
expect(_modifiers).toBe(undefined);
}))
摘自此处:参见讨论。可能你需要的是callInContext
,但我不确定。非常感谢David,在你提供的Meteor测试手册的链接中有太多有用的信息,这个Meteor.publishFunctions['chapters'].apply(这个上下文);仅适用于发布功能????对于meteor方法,这里有一个很好的例子,meteor.methodMap.serverMethod.call(thisContext),链接已失效,meteor.publishFunctions在我的meteor 1.2.1服务器端未定义