Wie kann ich eine jQuery Hover-Aktion mit Jasmine testen? Meine jQuery sieht aus wie
$(".class").hover(
function() { $("#someid").hide(); },
function() { $("#someid").show(); }
);
Wie könnte ich simulieren, wie ich die Schwebeaktion mit Jasmin bewege, und erwarten, dass das "someid" -Element so ein- und ausgeblendet wird, wie es sollte?
Antworten:
12 für die Antwort № 1Sie sollten in der Lage sein, ein Mouseover-Ereignis direkt auszulösen und anschließend das entsprechende Verhalten zu testen:
it("should do something on hover", function() {
$(".class").trigger("mouseover");
expect($("#someid")).toBeHidden();
$(".class").trigger("mouseout");
expect($("#someid")).toBeShown();
});
$("#someid")
muss im DOM sein. Der beste Weg, dies zu tun, ist über ein Fixture.