Я пытаюсь протестировать простой узел Модуль с intern.The модуль является модулем AMD. Я бегу в пару вопросовТестирование модуля узла со встроенным Js-не может решить 'require'
Если модуль определяется как ниже, я получаю ошибку «MODULENAME» не имеет нет метода «Карта» "
define('moduleName',[]function(require){ var r= require('request'); })
Если модуль определяется как ниже без имени модуля, я вижу это Ошибка «undefined не является функцией» - я думаю, что она не в состоянии разрешить «требовать»
define([]function(require){ var r= require('request'); })
Вот как мой тест выглядит
define([
'intern!object',
'intern/chai!assert',
'/src/api/nameApi'
], function (registerSuite, assert,nameApi) {
registerSuite({
name: 'GetName Test',
getName: function() {
var nameFromApi = nameApi.getName();
assert(nameFromApi!= null,'name is not null');
}
});
});
Благодарим за ответ. Это была опечатка для запроса, измененная в вопросе сейчас. Я пытался с '['require']' в зависимостях, но он не может загрузить модуль 'request'. Должен ли я указывать модуль 'request' в' test/intern.js' в 'loader'. Если да, то как загрузить все модули в node_modules? 'Попытка требовать выгружается запроса модуля на contextRequire (/Users/userId/Documents/gitRepos/MyProject/node_modules/intern/node_modules/dojo/dojo.js:255:12)' – kiran
Ответ точно так же. Ваш вызов определения неправильный, отсутствуют зависимости, которые вы пытаетесь загрузить. Прочтите http://dojotoolkit.org/documentation/tutorials/1.9/modules/ и/или http://requirejs.org/docs/api.html#defdep, чтобы узнать, как работают зависимости от AMD. –
Вот как выглядит мое определение модуля. Не думайте, что в этом нет ничего плохого. 'define (function (require) { var foo = require ('request'); });' , если это определение правильно, как я могу убедиться, что загружаются «запрос» и другие npm_modules. Приложение может загрузить модуль «запрос», но не тест.Итак, как я могу обеспечить, чтобы тесты загружали все модули, которые загружает приложение? – kiran