Treetop パーサー出力の RSpec テストが一致すべきときに一致しない

StackOverflow https://stackoverflow.com/questions/3444597

  •  27-09-2019
  •  | 
  •  

質問

私はこの仕様を持っています:

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

これにより、次の出力が生成されます。

expected ## Core
## Special
## Omgg
## Moarheaders
, got "## 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"

Expected_output に引用符を追加すると、次のようになります。(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"

何が起きてる?

を改行として評価する Treetop 結果を取得できません。また、何を試しても、expected_output を一致させることもできません。

私は混乱しています。

役に立ちましたか?

解決

試しましたか:

parsed.transform.should == expected_output

be 文字列値を比較する代わりにオブジェクト ID を使用する場合があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top