2012-02-13 8 views
3

ファイルをロードすると予想される次のメソッドがあります。キュウリのエラーを確認する

class Loader 
    def load_file(file_to_load) 
     if not FileTest.exists?(file_to_load) 
      raise "File Does Not Exist" 
     end 
    end 
end 

私はこの作品、私は次のステップの定義を使用しています検証するためにキュウリを使用しています:

Given an import file doesn't exist 
When a user runs the loader 
Then the import fails 

「とき」の手順のためのステップの定義は次のようになります。

When /^a user runs the loaderd$/ do 
    @loader = MovieLoader.new 
    @loader.load_file 
end 

Then /^the import fails%/ 

end 

しかし、私は例外が「When」ステップでload_fileメソッド呼び出しの一部として発生しているので、「Then」ステップでそれをどのように検証するのですか?

誰か助けてもらえますか?

答えて

-1

thenステップで@ loader.load_fileを入力します。

+0

この場合の手順のロジックが失われます。 – p0deje

+0

@ p0deje - ダウングレードよりも別の解決策を提供したい –

+0

もし私がいたら、間違いなく私は与えていたでしょう。だから私は+1の質問(それはかなり複雑なケースです)と-1あなたの答え(それは解決しません) – p0deje

0

のステップでは、エラーをキャプチャして、そのステップでエラーが存在することを検証します。

私はルビーをしないので、私は構文を知らないが、基本的には擬似コードでこのような何かをしたい

When /^a user runs the loaderd$/ do 
    @loader = MovieLoader.new 
    try 
     @loader.load_file 
    catch 
     error = "load failed" 
end 

Then /^the import fails%/ 
    if (error != "load failed") 
     raise "expected error was not raised" 
end 
関連する問題