Как заставить mocha запускать тесты в стиле экспорта в Windows?

У меня установлены NodeJS и Mocha, и они работают в Windows 7 x64 — пока все хорошо, — но я не могу заставить Mocha распознавать какие-либо тесты, определенные с использованием интерфейса exports (как описано на странице http://visionmedia.github.com/mocha/)

Если я создам test/bdd.js, содержащий следующий код:

var should = require('should');

describe('TestDemo - BDD interface', function(){
  describe('#foo', function(){
    it('1 should equal 1', function(){ (1).should.equal(1);  });
  });
});

Я могу запустить mocha и получить ожидаемый результат:

D:\Projects\NodeDemo>mocha -R spec

  TestDemo - BDD interface
    #foo
      ✓ 1 should equal 1

  ✔ 1 tests complete (7ms)

D:\Projects\NodeDemo>

НО, если я создам файл test/export.js, содержащий этот код (на основе примера интерфейса «экспорт», представленного на сайте Mocha)

var should = require('should');

module.exports = {
  'TestDemo - exports interface': {
    '#foo': {
      '1 should equal 1': function(){ (1).should.equal(1); }
    }
  }
};

когда я запускаю Mocha, он не находит никаких тестов:

D:\Projects\NodeDemo>мокко -R спецификация

✔ 0 тестов завершено (1 мс)

D:\Projects\NodeDemo>

Я подозреваю, что либо пропустил переключатель или что-то еще для указания, какой интерфейс mocha следует использовать для тестовых определений, либо я нашел что-то, что не поддерживается в Windows (пока). Любые идеи?


person Dylan Beattie    schedule 11.03.2012    source источник


Ответы (1)


Конечно, как только вы опубликуете это в StackOverflow, вы заметите строку документации, которой, я клянусь, не было раньше... :)

mocha(1)

Usage: mocha [options] [files]

Options:

-u, --ui <name>        specify user-interface (bdd|tdd|exports)

и конечно бегом

D:\Projects\NodeDemo>mocha -ui exports -R spec

делает именно то, что я ожидал. Д'ОН.

person Dylan Beattie    schedule 11.03.2012
comment
Рада, что не только я... :) - person Dylan Beattie; 03.12.2012