code_statistics 0.1.3 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.3
1
+ 0.1.4
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{code_statistics}
8
- s.version = "0.1.3"
8
+ s.version = "0.1.4"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Dan Mayer"]
@@ -5,10 +5,23 @@ module CodeStatistics
5
5
 
6
6
 
7
7
  def initialize(*pairs)
8
- @pairs = pairs
9
- @statistics = calculate_statistics
10
- @total = calculate_total if pairs.length > 1
11
- @test_types = []
8
+ @pairs = pairs
9
+ @test_types = []
10
+ directory = Dir.pwd
11
+ @specs_found = false
12
+ add_test_type("Model specs") if local_file_exists?(directory, 'spec/models')
13
+ add_test_type("View specs") if local_file_exists?(directory, 'spec/views')
14
+ add_test_type("Controller specs") if local_file_exists?(directory, 'spec/controllers')
15
+ add_test_type("Helper specs") if local_file_exists?(directory, 'spec/helpers')
16
+ add_test_type("Library specs") if local_file_exists?(directory, 'spec/lib')
17
+ add_test_type("Routing specs") if local_file_exists?(directory, 'spec/routing')
18
+ add_test_type("Integration specs") if local_file_exists?(directory, 'spec/integration')
19
+ if @specs_found==false && local_file_exists?(directory, 'spec')
20
+ @pairs << %w(Specs spec)
21
+ add_test_type("Specs")
22
+ end
23
+ @statistics = calculate_statistics
24
+ @total = calculate_total if pairs.length > 1
12
25
  end
13
26
 
14
27
  def to_s
@@ -38,20 +51,12 @@ module CodeStatistics
38
51
  end
39
52
 
40
53
  def add_test_type(test_type)
54
+ @specs_found = true
41
55
  @test_types << test_type
42
56
  end
43
57
 
44
58
  def calculate_directory_statistics(directory, pattern = /.*\.rb$/)
45
59
  stats = { "lines" => 0, "codelines" => 0, "classes" => 0, "methods" => 0 }
46
-
47
- add_test_type("Model specs") if local_file_exists?(directory, 'spec/models')
48
- add_test_type("View specs") if local_file_exists?(directory, 'spec/views')
49
- add_test_type("Controller specs") if local_file_exists?(directory, 'spec/controllers')
50
- add_test_type("Helper specs") if local_file_exists?(directory, 'spec/helpers')
51
- add_test_type("Library specs") if local_file_exists?(directory, 'spec/lib')
52
- add_test_type("Routing specs") if local_file_exists?(directory, 'spec/routing')
53
- add_test_type("Integration specs") if local_file_exists?(directory, 'spec/integration')
54
- add_test_type("Specs") if if local_file_exists?(directory, 'spec')
55
60
 
56
61
  Dir.foreach(directory) do |file_name|
57
62
  if File.stat(directory + "/" + file_name).directory? and (/^\./ !~ file_name)
@@ -6,7 +6,14 @@ STATS_DIRECTORIES = [
6
6
  %w(APIs app/apis),
7
7
  %w(Integration\ tests test/integration),
8
8
  %w(Functional\ tests test/functional),
9
- %w(Unit\ tests test/unit)
9
+ %w(Unit\ tests test/unit),
10
+ %w(Model\ specs spec/models),
11
+ %w(View\ specs spec/views),
12
+ %w(Controller\ specs spec/controllers),
13
+ %w(Helper\ specs spec/helpers),
14
+ %w(Library\ specs spec/lib),
15
+ %w(Routing\ specs spec/routing),
16
+ %w(Integration\ specs spec/integration)
10
17
  ].collect { |name, dir| [ name, "#{Dir.pwd}/#{dir}" ] }.select { |name, dir| File.directory?(dir) }
11
18
 
12
19
  desc "Report code statistics (KLOCs, etc) from the application"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: code_statistics
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dan Mayer