测试文件生成

时间:2017-05-05 17:37:49

标签: testing promise mocha chai

我正在为文件生成模块编写测试套件。例如,

调用generator('test')将在名为test的特定目录中创建一个文件。以下是我设置mocha / chai测试的方法。

let chai = require('chai');
let expect = chai.expect;
chai.use(require('chai-fs'));
let Promise = require('bluebird');
let rm = require('shelljs').rm;

let generator = Promise.promisify(require('../../commands/generator.js'));


describe('Generator', () => {
  afterEach(() => {
    rm('-rf', 'frontend');
  });

  it('should generate a file', () => {
    Promise.resolve(generator('test', 'test', [])).then(() => {
      expect('src/test.js').to.be.a.file();
    });
  });
});

我在每次测试后使用shelljs删除文件。但是,我遇到了错误

  

1)发电机"每个"钩:

     

未捕获错误:EBADF:错误的文件描述符,写入         在错误(本机)

我认为这是因为rm是一个异步功能,但我不确定如何解决这个问题。

生成器有多个单独的测试,我想在每次测试后删除生成的文件。有一个更好的方法吗?

0 个答案:

没有答案