【问题标题】:Jest TypeError: function not foundJest TypeError:找不到函数
【发布时间】:2017-12-31 02:53:26
【问题描述】:

我正在尝试用 jest 运行测试,但它找不到我的函数。我正在使用 module.exports = {} 从一个文件中导出多个函数。

这是我的测试文件:

const queries = ('../config/queries');

test('Check Activation Code. -- checkActivationCode(test@gmail.com, 0123456789) ',  () => {
  let email = 'test%40gmail.com';
  let code = 1234567890;
  let result = "";

  queries.checkActivationCode(email, code, function(error, result) {
    if (error) result = false;
    else result = true;
  });
  expect(result).toBe(true);
});

我的文件结构如下,/config/queries/index.js,我可以访问其他文件中的功能。

这是我的查询/index.js 文件:

module.exports = {
  checkActivationCode: function(email, code, callback) {
    pool.getConnection(function(error, connection) {
      connection.query('SELECT code FROM confirmation WHERE email = ?', [email.toLowerCase()], function(error, results) {
        if (error) callback(error);
        try {
          if (results[0].code === code) {
            callback(null, true);
          } else {
            callback(null, false);
          }
        } catch (e) {
          callback(null, false);
        }
      });
      connection.release();
    });
  }
}

【问题讨论】:

  • 您的测试文件中是否定义了查询?
  • @BenceGedai 谢谢!我忘了要求我的进口。 const queries = require('../config/queries');

标签: javascript mysql node.js jestjs


【解决方案1】:

我忘了要求我的查询。

const queries = ('../config/queries');const queries = require('../config/queries');

简单的错字。感谢@BenceGedai 抓住了这一点。

【讨论】:

    猜你喜欢
    • 2019-10-16
    • 2021-05-01
    • 2018-06-22
    • 2020-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-10
    • 2021-12-26
    相关资源
    最近更新 更多