0

我的登录代码中有以下内容。我已经为它编写了单元测试,authentication.login()所以它只是我需要测试的响应处理本身。

  app.post('/login', function(req, res) {
    var username = req.body.username;
    var password = req.body.password;

    authentication.login(username, password, function(err, result) {
      if (err !== null) {
        res.setHeader('Content-Type', 'text/plain');
        res.setHeader('Content-Length', err.length);
        res.end(err);
      } else {
        req.session.user = result;
        var userFilter = ['username'];
        result = JSON.stringify(result, userFilter);
        res.setHeader('Content-Type', 'application/json');
        res.setHeader('Content-Length', result.length);
        res.end(result);;
      }
    });
  });

因此,我将编写测试来检查响应标头和正文是否符合预期。但是我该如何处理 authentication.login() 函数呢?它已经过测试,所以我想我应该在这里使用模拟/间谍?但是我将如何设法使用它们以便它们替换身份验证对象?还是不需要模拟 authentication.login 函数,将其作为依赖项留在代码中是否可以?

4

1 回答 1

0

如果您决定将其保留为依赖项,则无需进行更改。

于 2013-05-14T23:24:25.833 回答