JS / Sinon - beforeEach (функция (выполнено) не вызывается - PullRequest
0 голосов
/ 12 июня 2018

Просто начинаю с Синона, Мокко и Чая Дж.С.После обновления версии UnderscoreJS с 1.4.4 до 1.9.1 мне пришлось обновить, как в моем проекте использовалась функция шаблона.

Ранее функция _.template использовалась таким образом -

var myTemplate = _.template("<p><%= name %></p>", {name: 'Joe Doe'});

New Way,

// `myTemplate` here is a function!
var myTemplate = _.template("<p><%= name %></p>");

// Now let's pass in the data for the template.
myTemplate({name: 'Joe Doe'}); // it returns: "<p>Joe Doe</p>"

Однако это изменение привело к сбою многих существующих тестовых случаев.Ниже упоминается один из тестовых случаев, с которыми мне нужна помощь -

    const sinonVar = require('sinon');

    describe('testVar', function() {

    var sanboxVar;
    var ss = requirejs('Path to JS library');
    var testVar;

    beforeEach(function(done) {
        console.log("Not Called");  // Never printed on console
        done();
        sanboxVar = sinonVar.sanbox.create();
    });

    it('some text here', function() {
        console.log("sanboxVar: " + sanboxVar); //Printed on console as 'undefined'
        ss.id = sanboxVar.stub();
    });
});

В «npm test» я вижу ошибку -

testVar
   some text here:
 TypeError: Cannot read property 'stub' of undefined
  at Context.<anonymous> (testPage.js) - "This is pointing to sanboxVar not defined"

Я думаю, по какой-то причине, перед методом beforeEachне вызывается, и, следовательно, переменная Sandoval не инициируется.

Любая помощь будет принята.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...