Sha256: eaf785a251c118fc134db7931c9a2962820148799d01c1df1db5aa3867c9325f
Contents?: true
Size: 1.95 KB
Versions: 1
Compression:
Stored size: 1.95 KB
Contents
require 'rake/testtask' Rake::TestTask.new :test do |t| t.pattern = "test/*.rb" t.warning = true end Rake::TestTask.new bench: [:test, :loadavg] do |t| t.pattern = "test/bench/*.rb" t.warning = true t.description = "Run benchmarks" end desc "Run example scripts" task examples: [:test, :loadavg] do Dir['examples/**/*.rb'].each { |filepath| puts sh "ruby -Ilib #{filepath}" puts } end task default: :examples # # METRICS # metrics_tasks = [] begin require 'flog_task' FlogTask.new do |t| t.threshold = 450 t.dirs = ['lib'] t.verbose = true end metrics_tasks << :flog rescue LoadError warn 'flog_task unavailable' end begin require 'flay_task' FlayTask.new do |t| t.dirs = ['lib'] t.verbose = true end metrics_tasks << :flay rescue LoadError warn 'flay_task unavailable' end begin require 'roodi_task' RoodiTask.new config: '.roodi.yml', patterns: ['lib/**/*.rb'] metrics_tasks << :roodi rescue LoadError warn "roodi_task unavailable" end desc "Generate code metrics reports" task code_metrics: metrics_tasks # # PROFILING # desc "Show current system load" task "loadavg" do puts "/proc/loadavg %s" % (File.read("/proc/loadavg") rescue "Unavailable") end def lib_sh(cmd) sh "RUBYLIB=lib #{cmd}" end def rprof_sh(script, args = '', rprof_args = '') lib_sh ['ruby-prof', rprof_args, script, '--', args].join(' ') end scripts = ["examples/binary_tree.rb", "examples/heap.rb"] desc "Run ruby-prof on examples/" task "ruby-prof" => "loadavg" do scripts.each { |script| rprof_sh script } end desc "Run ruby-prof on examples/ with --exclude-common-cycles" task "ruby-prof-exclude" => "loadavg" do scripts.each { |script| rprof_sh script, "", "--exclude-common-cycles" } end # # GEM BUILD / PUBLISH # begin require 'buildar' Buildar.new do |b| b.gemspec_file = 'compsci.gemspec' b.version_file = 'VERSION' b.use_git = true end rescue LoadError warn "buildar tasks unavailable" end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
compsci-0.0.2.1 | Rakefile |