2013-08-12 3 views
0

Я использую метеорит 0.6.4.1, laika 0.2.24 и node.js 0.10.12. Тесты с tdd работали нормально, но я попытался использовать bdd с laika, и это не удалось. Я загрузил этот демонстрационный проект https://github.com/zvictor/laika-extended-example, но также не смог. Я сделал простой тест с моккой и должен (только node.js, а не метеор) и работал нормально. Это ошибка, я получил демо-проекта:Я не могу получить laika для работы с bdd

module.js:340 
    throw err; 
     ^
Error: Cannot find module 'should' 
    at Function.Module._resolveFilename (module.js:338:15) 
    at Function.Module._load (module.js:280:25) 
    at Module.require (module.js:364:17) 
    at require (module.js:380:17) 
    at Object.<anonymous> (/Users/camilo/Documents/Pruebas/Meteor/laika-extended-example/tests/$setup.js:1:72) 
    at Module._compile (module.js:456:26) 
    at Object.Module._extensions..js (module.js:474:10) 
    at Module.load (module.js:356:32) 
    at Function.Module._load (module.js:312:12) 
    at Module.require (module.js:364:17) 

Edit

Я установил should с sudo npm install -g should

Edit 2

на основе skishore комментарий, я использовал npm link should и теперь проблема изменилась. Во-первых, я получил его:

injecting laika... 
loading phantomjs... 
loading initial app pool... 

И больше ничего случиться так, я попытался с laika -D увидеть журналы:

[laika log] accepting the following extensions: (js) 

    injecting laika... 
    loading phantomjs... 
[app touch log] [[[[[ ~/Documents/Pruebas/Meteor/laika-extended-example ]]]]] 

[app touch log] => Meteor server running on: http://localhost:20472/ 
    loading initial app pool... 
[laika log] using nodejs bin(from meteor): /Users/camilo/.meteor/tools/11f45b3996/bin/node 
[server log] 
[server log] /Users/camilo/Documents/Pruebas/Meteor/laika-extended-example/.meteor/local/build/server/server.js:325 
    }).run(); 
    ^
[server log] ReferenceError: module is not defined 
    at app/node_modules/should/lib/eql.js:5:1 
    at /Users/camilo/Documents/Pruebas/Meteor/laika-extended-example/.meteor/local/build/server/server.js:286:12 
    at Array.forEach (native) 
    at Function._.each._.forEach (/Users/camilo/.meteor/tools/11f45b3996/lib/node_modules/underscore/underscore.js:79:11) 
    at run (/Users/camilo/Documents/Pruebas/Meteor/laika-extended-example/.meteor/local/build/server/server.js:227:7) 

ответ

0

Из ридми в Github: вам нужно установить должен. Использовать npm:

sudo npm install -g should 
+0

Уже сделал это – Camilo

+0

Можете ли вы попробовать запустить действительно простой тест, чтобы узнать, есть ли у вас это? Может быть, просто 'node' файл с одной строкой,' should = require ('should'); '. – disatisfieddinosaur

+0

Вы установили его по всему миру, поэтому для выполнения инструкций с инструкциями вам следует использовать 'npm link'. См. Объяснение здесь: https://npmjs.org/doc/folders.html – disatisfieddinosaur

Смежные вопросы