Das Testen einer Liste ist in der richtigen Reihenfolge capybara sortiert

8

Ich versuche, einige Tests in Capybara zu schreiben, die eine Liste der Daten prüfen werden, die richtig sortiert werden. Zum Beispiel habe ich eine Liste von Daten Mi 27 Jun 12, Mo 13 Aug 12, Do 31 Mai 12 und wenn ich auf den Knopf klicke, wird es die Daten beginnend mit dem frühesten dh: Do 31. Mai umordnen 12, Mi 27 Jun 12, 13 Aug 12.

Gibt es einen Weg in Capybara, dass Sie solche Tests schreiben können?

Normalerweise würde ich Methoden wie page.find usw. verwenden, aber diese Methoden finden nur die Daten und sagen nicht, ob sie in der richtigen Reihenfolge sortiert wurden.

    
Ray 23.05.2012, 16:41
quelle

1 Antwort

15

Sie müssen den :nth-child css-Selektor verwenden.

Nehmen wir an, Ihre Liste von Daten ist in <ul> mit der ID #dates , Sie könnten die Reihenfolge testen mit:

%Vor%

Der erste Wert, der an have_selector() übergeben wird, ist Ihr Selektor, der zweite (in diesem Beispiel) ist der Inhalt, den Sie erwarten. Sie sind nicht darauf beschränkt, nur Inhalt zu übergeben, zum Beispiel, wenn jedes Datum, das mit der Aktion Date#show verknüpft ist, Sie url: date_path(@date) hinzufügen könnten.

    
vladiim 01.06.2012 09:29
quelle