0

我有一些需要登录用户的服务器方法。简单地:

'myServerMethod': function () {
  var user = Meteor.user();
  if(!user) {
    return null;
  }

  //do some action
}

现在,我想测试这个方法(Server Integration Test)。我将如何为我的服务器测试目的创建用户?我正在使用 Meteor 和 Velocity。

4

2 回答 2

3

server/integration/lib/helpers.js我在这些测试中使用了这个函数( ):

global.stubLoggedInUser = function (user) {
  spyOn(Meteor, 'user').and.returnValue(user);
  spyOn(Meteor, 'userId').and.returnValue(user._id);
  spyOn(Meteor.users, 'findOne').and.returnValue(user);
};
于 2016-01-10T19:12:47.623 回答
1

这是测试是否有任何用户的方法,如果没有,它会创建一个:

if(Meteor.users.find().count() == 0) {
 var id = Accounts.createUser({
    email: "someemail",
    password: "somepassword",
    profile: { name: "someusername"}
  });

您可以使用它来测试是否有用户。

于 2016-01-10T11:36:49.313 回答