RSpec Test der Treetop-Parser Ausgabe passt nicht, wenn es sein sollte
Frage
Ich habe diese Spezifikation:
it 'can parse armies with only section headers' do
list = <<-LIST
:Core
:Special
:Omgg
:Moarheaders
LIST
expected_output = "## Core\n## Special\n## Omgg\n## Moarheaders\n"
parsed = @parser.parse(list)
parsed.should_not be_nil
parsed.transform.should be expected_output
end
Welche diese Ausgabe erzeugt:
expected ## Core
## Special
## Omgg
## Moarheaders
, got "## Core\n## Special\n## Omgg\n## Moarheaders\n"
Wenn ich die doppelten Anführungszeichen entfernen, ich diese Ausgabe erhalten:
expected ## Core\n## Special\n## Omgg\n## Moarheaders\n,
got "## Core\n## Special\n## Omgg\n## Moarheaders\n"
Wenn ich Zitate meiner expected_output hinzufügen, bekomme ich diese:
(expected_output = '"## Core\n## Special\n## Omgg\n## Moarheaders\n"'
)
expected "## Core\n## Special\n## Omgg\n## Moarheaders\n",
got "## Core\n## Special\n## Omgg\n## Moarheaders\n"
Was ist denn hier los?
Ich kann das Treetop Ergebnis erhalten bewerten die \ n als Zeilenumbrüche, und ich kann nicht die expected_output bekommen, unabhängig davon, entsprechen, was ich versuche.
Ich bin verwirrt.
Lösung
Haben Sie versucht:
parsed.transform.should == expected_output
be
könnte Objektidentität verwenden, anstatt die Zeichenfolge-Werte zu vergleichen.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow