2013-09-27 3 views
3

Я застрял на части моего тестового кода с мокко, где тест включен в обратном вызове GetUserMedia:Мокко: ошибка сделать() и обратный вызов

it("should work without error", function() { 
    navigator.getUserMedia({fake:true}, function(stream) { 
     expect(3).to.equal(3); 
     done(); // done is not defined if expect() is valid 
    },console.error); 
}); 

Здесь сделано() не но тест прошел успешно.

it("should NOT work", function() { 
    navigator.getUserMedia({fake:true},function(stream) { 
     expect(3).to.equal(4); 
     done(); 
    },console.error); 
}); 

Здесь я получаю сообщение об ошибке:

AssertionError: expected 3 to equal 4 

, но интерфейс мокко по-прежнему показывает испытание, как подтверждено. (зеленый галочка)

Я делаю что-то неправильно или выполняется() прослушивается?

ответ

3

Ваша функция должна быть выполнена.

it("should get done", function(done) { 
    expect(3).to.equal(3); 
    expect(3).not.to.equal(4); 
}); 

Однако вы должны использовать делать только если у вас есть функция асинхронной в тесте если не тест должен быть таким:

it("should not be async", function() { 
    expect(3).to.equal(3); 
} 
Смежные вопросы