Тестирование пустого объекта в Жасмине не удалось

0

Если у меня есть параметр переменной {} следующие ошибки совпадения

// Somewhere in my angular controller
self = this;
self.myVar = {};


// In my test file
// This errors out. I console.log myVar to make sure that it is indeed {}
expect(myVar).toEqual({});

// Note if I define myVar = {} in the same test spec it works
it('test', function(){
   var myVar = {};
   expect(myCtrl.myVar).toEqual({});
   expect({}).toEqual({});
});

В чем причина этого и как вы пройдете это поведение? Согласно документу Жасмин

it("should work for objects", function() {
  var foo = {
    a: 12,
    b: 34
  };
  var bar = {
    a: 12,
    b: 34
  };
  expect(foo).toEqual(bar);

Кажется, toEqual должен тестировать контент объекта?

  • 0
    Пожалуйста, опубликуйте свой контроллер. Если myVar является глобальной переменной (что плохо), expect(myVar).toEqual({}); не будет работать
Теги:
karma-jasmine
jasmine

1 ответ

0

Я думаю, что ваша переменная выходит из сферы действия приложения, а в тестовом случае она выполняется как неопределенный var

Ещё вопросы

Сообщество Overcoder
Наверх
Меню