Я хотел бы протестировать прототипы, которые я создаю.Оценить помощники - это тот же контекст, что и проверенный файл
Мой набор вверх состоит из 3 файлов:
base.js - базовый файл, что все мои вторые файлы имеют общую
function prop(to, name, func) { Object.defineProperty(to.prototype, name, { value: func, writable: true, configurable: true }); return func; }
Array.js - файл, изменяющие прототип данного объекта.
prop(Array, 'hasPresent', function(what) { return !!~this.indexOf(what) });
/tests/Array.js - сам Тестовые
describe('hasPresent()',function(){ it('number', function(done){ expect([0,1,2].hasPresent(0)).toBe(true) done() }) })
Все это делается из nodeJS, что часы файл для изменения. Меня беспокоит, что он вернет ошибку из второго файла (prop is not defined ... at Array.js:1
). Это говорит мне, что эти файлы не оцениваются в одном контексте. Есть ли способ сделать эту работу? Или как получить переменную __direcotory
в тестовом файле, при запуске с узла.
Моя установка в nodejs:
jasmine.loadConfig({
spec_files: ['Base.js','Array.js']
helpers: ['Base.js','Array.js']
})
jasmine.execute(['tests/Array.js']);
PS .: Я попытался положить Eval в tests/Array.js
, но рабочий каталог забыто при загрузке, так что я должен был бы использовать абсолютный путь, если есть способ работа вокруг этого, было бы здорово.
Я понимаю, что делает I t путь к модулю был бы способом, но моя библиотека содержит только прототипы, а затем файл отправляется в браузер, поэтому я не хочу изменять их для узла. – Akxe