bdotdub / integrity forked from integrity/integrity

The easy and fun Continuous Integration server

This URL has Read+Write access

integrity / Rakefile
100644 51 lines (40 sloc) 1.134 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
require "rake/testtask"
 
desc "Default: run all tests"
task :default => :test
 
desc "Run tests"
task :test => %w(test:units test:acceptance)
namespace :test do
  desc "Run unit tests"
  Rake::TestTask.new(:units) do |t|
    t.test_files = FileList["test/unit/*_test.rb"]
  end
 
  desc "Run acceptance tests"
  Rake::TestTask.new(:acceptance) do |t|
    t.test_files = FileList["test/acceptance/*_test.rb"]
  end
end
 
begin
  require "metric_fu"
 
  desc "Special task for running tests on <http://builder.integrityapp.com>"
  task :ci => :test do
    metrics = [:churn, :flog, :flay, :reek, :roodi]
    MetricFu::Configuration.run { |c| c.metrics = metrics }
 
    Rake::Task["metrics:all"].invoke
 
    rm_rf "/var/www/integrity-metrics"
    mv "tmp/metric_fu", "/var/www/integrity-metrics"
 
    File.open("/var/www/integrity-metrics/index.html", "w") { |f|
      f.puts "<ul>"
      metrics.map { |m| m.to_s.split(":").first }.each { |m|
        f.puts %Q(<li><a href="/#{m}">#{m}</a></li>)
      }
      f.puts "</ul>"
    }
  end
rescue LoadError
  raise
end
 
begin
  require "mg"
  MG.new("integrity.gemspec")
rescue LoadError
end