0

我正在尝试为依赖于特定风帆应用程序(myapp)的风帆可安装挂钩(myhook)编写摩卡测试。我希望 bootstrap.test.js 用 myhook 提升 myapp。因此,我在 myhook 项目中有 myapp 一个 devDependency。

我的 bootstrap.test.js 有这样的东西:

var myapp = require('myapp');

// put it in global (special case) for npm test only
global.thehook = require('../api/hooks/myhook/index');

before(function(done) {

  this.timeout(10000);

  console.log("Bootstrap lifting sails...");

  myapp.lift({
      hooks: {
         "myhook": global.thehook,
         "grunt": false
      },
      log: {level: "error"},
  }, function(err) {
      if (err) return done(err);
      // here you can load fixtures, etc.
      done(err, sails);
  });
});
after(function(done) {
  myapp.lower(done);
});

思考 .lift() 和 .lower 将适用于sails 应用程序。但是,情况似乎并非如此。

我该如何进行这项工作?

4

1 回答 1

0

您将需要使用sails依赖项代替myapp.

var sails = require('sails');

before(function(done) {
  sails.lift({
    // test configuration
  }, function (error) {
    // ...

    done();
  });
});

after(function(done) {
  sails.lower(function (error) {
    //...

    done();
  });
})

依赖项从项目目录的sails根目录开始,将提升应用程序,因此无需app.js提升应用程序。

于 2018-02-01T20:00:27.907 回答