rails_code_qa 0.1 → 0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. data/README +5 -0
  2. data/lib/tasks/rails_code_qa.rake +31 -1
  3. metadata +26 -7
data/README CHANGED
@@ -1,3 +1,8 @@
1
1
  RAQA -- Rails Automated Quality Assurance
2
2
 
3
+ Currently runs unit, functional, and integration tests with rcov for code coverage.
4
+
5
+ Usage:
6
+ rake rcqa:test
7
+
3
8
  Copyright (c) 2009-2010 Nathan Humbert, released under the MIT license
@@ -1,3 +1,5 @@
1
+ require 'rcov/rcovtask'
2
+
1
3
  desc 'Run all Rails Code QA tests'
2
4
  task :rcqa do
3
5
  tasks = %w(raqa:test)
@@ -14,12 +16,40 @@ end
14
16
 
15
17
 
16
18
  namespace :rcqa do
19
+ SECTIONS = {
20
+ "units" => "app\/models|app\/helpers|lib",
21
+ "functionals" => "app\/controllers"
22
+ }
17
23
  task :default => [:test]
18
24
 
19
25
  desc "Run Rails Code QA tests"
20
26
  task(:test) do
21
- Rake::Task["test:units"].invoke
27
+ SECTIONS.each do |section_name, section_folders|
28
+ puts "#################################################"
29
+ puts "Running #{section_name.singularize} tests"
30
+ puts "#################################################"
31
+ Rake::Task["rcqa:rcov:#{section_name}"].invoke
32
+ end
33
+
34
+ puts "#################################################"
35
+ puts "Running integration tests"
36
+ puts "#################################################"
37
+ Rake::Task["test:integration"].invoke
22
38
  end
23
39
 
40
+ namespace :rcov do
41
+ SECTIONS.each do |section_name, section_folders|
42
+ Rcov::RcovTask.new("#{section_name}") do |t|
43
+ t.libs << "test"
44
+ t.test_files = Dir["test/#{section_name.singularize}/**/*_test.rb"]
45
+ t.verbose = true
46
+ t.rcov_opts = ["--html", "--text-report", "--exclude '^(?!(#{section_folders}))'"]
47
+ t.output_dir = "coverage/#{section_name}"
48
+ end
49
+ end
50
+ end
24
51
 
25
52
  end
53
+
54
+
55
+
metadata CHANGED
@@ -1,7 +1,11 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_code_qa
3
3
  version: !ruby/object:Gem::Version
4
- version: "0.1"
4
+ prerelease: false
5
+ segments:
6
+ - 0
7
+ - 2
8
+ version: "0.2"
5
9
  platform: ruby
6
10
  authors:
7
11
  - Nathan Humbert
@@ -9,10 +13,23 @@ autorequire:
9
13
  bindir: bin
10
14
  cert_chain: []
11
15
 
12
- date: 2010-02-11 00:00:00 -08:00
16
+ date: 2010-03-13 23:00:00 -08:00
13
17
  default_executable:
14
- dependencies: []
15
-
18
+ dependencies:
19
+ - !ruby/object:Gem::Dependency
20
+ name: rcov
21
+ prerelease: false
22
+ requirement: &id001 !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ segments:
27
+ - 0
28
+ - 9
29
+ - 8
30
+ version: 0.9.8
31
+ type: :runtime
32
+ version_requirements: *id001
16
33
  description: This gem uses several different methods to help QA the code in your rails app
17
34
  email:
18
35
  - nathan.humbert+rcqa@gmail.com
@@ -41,18 +58,20 @@ required_ruby_version: !ruby/object:Gem::Requirement
41
58
  requirements:
42
59
  - - ">="
43
60
  - !ruby/object:Gem::Version
61
+ segments:
62
+ - 0
44
63
  version: "0"
45
- version:
46
64
  required_rubygems_version: !ruby/object:Gem::Requirement
47
65
  requirements:
48
66
  - - ">="
49
67
  - !ruby/object:Gem::Version
68
+ segments:
69
+ - 0
50
70
  version: "0"
51
- version:
52
71
  requirements: []
53
72
 
54
73
  rubyforge_project:
55
- rubygems_version: 1.3.5
74
+ rubygems_version: 1.3.6
56
75
  signing_key:
57
76
  specification_version: 3
58
77
  summary: Rails Code QA