Как заставить мокко запустить тесты в стиле "экспорт" в Windows? - PullRequest
3 голосов
/ 11 марта 2012

У меня установлены и работают 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 / exports.js, содержащий этот код (на основе примера интерфейса «export», представленного на сайте Mocha)

var should = require('should');

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

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

D: \ Projects \ NodeDemo> mocha -R spec

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

D: \ Projects \ NodeDemo>

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

1 Ответ

8 голосов
/ 11 марта 2012

Конечно, как только вы публикуете его в 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

делает именно то, что я ожидал. D'OH.

...