Jestem nowy Jasmine i założyć używając .not.toBeDefined()
lub .toBeUndefined()
mecze można sprawdzić, czy zmienna jest undefined
:Jasmine toBeUndefined
describe('toBeDefined', function() {
it('should be defined', function() {
var obj = {};
expect(obj).toBeDefined(); // Passes
});
it('should not be defined using .not.tobeDefined()', function() {
//var obj = {};
expect(obj).not.toBeDefined(); // Fails // ReferenceError: obj is not defined
});
it('should not be defined using .tobeUnefined()', function() {
//var obj = {};
expect(obj).toBeUndefined(); // Fails // ReferenceError: obj is not defined
});
});
ja całkowicie się, że to nie w kodzie, ale zakłada się za pomocą te mecze, nie byłoby. Czy używam ich po prostu niewłaściwie, czy też nie jest możliwe napisanie specyfikacji, aby sprawdzić, czy coś jest undefined
?
Ten błąd jest określony przez silnik ecmasceipt, który z natury rzuca od czasu uzyskania dostępu do niezdefiniowanej zmiennej. Jest to całkowicie oczekiwane, ponieważ nie jest to wina Jasmine. Tak zachowuje się język. – Reece