Если у меня есть параметр переменной {}
следующие ошибки совпадения
// 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 должен тестировать контент объекта?
Я думаю, что ваша переменная выходит из сферы действия приложения, а в тестовом случае она выполняется как неопределенный var
myVar
является глобальной переменной (что плохо),expect(myVar).toEqual({});
не будет работать