如何为我的流星方法编写单元测试?

how can I write unit test to my meteor methods?

我发现它有点复杂,如果我在 /lib 文件夹中写我的 meteor methods 会更复杂,我想要从服务器测试文件夹测试我的方法(单元测试),但是存根 this.userId 以及在服务器端调试或显示日志并没有多大帮助。

我遇到了太多问题,我正在快速使用 mochajs,有人可以帮助我吗?有人知道如何将单位写入流星方法吗?

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);

});

取自此处:https://github.com/xolvio/Letterpress/blob/master/tests/jasmine/server/unit/chaptersSpec.js#L3