2013-02-05 23 views
5

Railsアプリケーションにいくつかのフォルダ(lib、spec、cellsなど)を追加し、それらをrake statsリストに追加したいと思います。新しいフォルダを追加することは可能ですか?どのようにレーキの統計情報にフォルダを追加しますか?

+0

に両方のフォルダを追加して、LIBが含まれているが(ありませんなぜ私がそれを含めたか)。私はまだ私が含める他のいくつかのフォルダがあります。例えば、工場(http://cells.rubyforge.org/)などの工場があります。あなたが追跡したいフォルダを指定することは可能ですか? – CrashRoX

答えて

3

ここには、a specific rake task is definedという優れた答えがあります。

このヒントでは、rake statsタスクがgems/railties-3.2.11/lib/rails/tasks/statistics.rakeファイルで定義されていることが判明しました。したがってrails repositoryの一部であるrailties gemにあります。

ファイルの最上部には、考慮するディレクトリがSTATS_DIRECTORIES変数に含まれています。

おそらくimplement a custom rake task(おそらくmy_statsという名前)に同じコードを付けて、含める新しいフォルダを追加します。

+1

ありがとうございます。それは動作します。残念ながら、追跡する顧客のファイルタイプを指定することはできません。 Railsマスターは.jsと.coffeeのサポートを追加しましたが、他のものを追跡する方法はありません。まだ3.2ブランチには入っていません(https://github.com/rails/rails/blob/3-2-stable/railties/lib/rails/code_statistics.rb)。 – CrashRoX

11

私はパーティーに遅れていることは知っていますが、もっと情報が見つからないので、私は自分の答えをミックスに追加しています。

私は次のような内容で、私のプロジェクトに熊手タスクを追加しました:

task :stats => "todolist:statsetup" 

namespace :todolist do 
    task :statsetup do 
    require 'rails/code_statistics' 
    ::STATS_DIRECTORIES << ["Policies", "app/policies"] 
    ::STATS_DIRECTORIES << ["Services", "app/services"] 

    # For test folders not defined in CodeStatistics::TEST_TYPES (ie: spec/) 
    ::STATS_DIRECTORIES << ["Services specs", "specs/services"] 
    CodeStatistics::TEST_TYPES << "Services specs" 
    end 
end 

これは、あなたが正しいなら、私rake stats

+0

私のために完璧に働いています(Rails 4でテスト済み)。ありがとう! – mwalsher

関連する問題