Pregunta

Estoy escribiendo especificaciones para diferentes casos de prueba para Jasmine y Qunit para compararlas y se veían igual antes de que tuviera que escribir una prueba para verificar si un evento está vinculado a un elemento.

La encuadernación de eventos se parece

$('.page').live('click', function() { page_clicked( $(this) ) });

page_clicked es un método privado, pero requiere un método público de otro módulo.

Aquí hay una especificación de Jasmine:

it('should bind events to pages', function() {
    spyOn( search, 'get_results' );

    $('.page:eq(0)').trigger('click');

    expect( search.get_results ).toHaveBeenCalled();
});

Esta prueba funciona. Ahora estoy tratando de escribir la misma prueba para Qunit y no puedo encontrar nada similar a Spyon. ¿Cómo escribir esta prueba para QUNIT?

¿Fue útil?

Solución

Su causa Qunit no tiene espías ni simulacros. Pero puedes usar el Sinon.js Marco de burla. Su prueba debe verse así usando espía sinón:

var spy = sinon.spy(search, 'get_results');
sinon.assert.calledOnce(spy);
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top