2016-12-02 4 views
0

私はRails v4.xとRuby v2.3を実行しています。私はデバッグツール(例えば、デバッガ)を使ってRailsビュー内の異なる実行パスを動的にテストしたいと思います。具体的には、私は、if文の2つのパス(つまり、 "if"ブロックと "else"ブロック)をRailsビュー内でテストしようとしています。ここで私がテストしたいビューをwithingコードは次のとおりです。Rails:Railsアプリケーションの実行パスをデバッガで変更する

<% if @categories.any? %> 
    <% @categories.each do |category| %> 
    <ul class="listing"> 
     <div class="row"> 
     <div class="well col-md-4 col-md-offset-4"> 
      <li class="article-title"> 
      <%= link_to "#{category.name}", category_path(category) %> 
      <li><small><%= pluralize(category.articles.count, "article") %></small></li> 
      </li> 
     </div> 
     </div> 
    </ul> 
    <% end %> 
<% else %> 
    <div class="center"> 
     <p>There are no categories currently defined at this time</p> 
    </div> 
<% end %> 

これを行うために、私は、動的に、@のcategories.anyの戻り値を変更することができるようにしたいのですが?メソッドを実行して、所望の実行パスを強制する。これを行うために使用できるツールはありますか? 「デバッガ」でできますか? Pry?そうであれば、それをどうやって行うことができるかについての簡単な説明を提供することができますか?

注:@categoriesは、データモデル(カテゴリ)の値を含むインスタント変数です。私は上記のコードのelse部分をテストするためにCategoryテーブルの内容を削除しないほうがいいでしょう。

よろしく、 ジェット

答えて

0

さて、あなたはデバッガの行を追加するために、とにかくファイルを編集する必要がありますように、あなただけのようにも別の変数を追加することができ、あなたのことができないのですか?

<% if (@categories.any? && [email protected]_run) || @always_run %> 
+1

提案をありがとう、私は、私は動的に実行パスを変更するには、戻り値や変数を変更し、動的に、例えば(動的テスト目的のために実行パスを変更するためにデバッガを使用することができた場合、一般的に理解しようとしています)。 – user2101068

関連する問題