存根node.js proxyquire返回错误:TypeError:无法读取未定义的属性'url'

时间:2018-11-30 01:57:45

标签: node.js mocha es6-promise sinon-chai proxyquire

我的单元测试用例失败,我收到一条错误消息

  

'TypeError:无法读取未定义的属性'url'。

似乎具有url属性的配置文件出现问题。请有人帮我。

// Employee.js

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

class Employee {
  constructor() {
  }

  getEmp() {
    return api.post({
      url: config.url,
    });
  }
}
module.exports = Employee;

//Employee.test.js
const chai = require('chai');
const sinon = require('sinon');
var chaiAsPromised = require('chai-as-promised');
chai.use(chaiAsPromised).should();
const proxyquire = require('proxyquire');
describe('Test', function () {
  let myController;
  let sandbox;
  beforeEach(() => {
    sandbox = sinon.sandbox.create();
    myController = proxyquire('../src/Employee.js', { 'config': {}, 'api': {} });

  });
  afterEach(function afterEach() {
    sandbox.restore();
  });
  it('my Test', (done) => {

    let controller = new myController();
    controller.getEmp()
            .then(response => {
              console.log('its me ' + response);
              done();
            });
  });
});

0 个答案:

没有答案