code_statistics 0.2.7 → 0.2.8
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.
- data/VERSION +1 -1
- data/code_statistics.gemspec +2 -2
- data/lib/code_statistics/code_statistics.rb +21 -8
- metadata +2 -2
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.2.
|
1
|
+
0.2.8
|
data/code_statistics.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{code_statistics}
|
8
|
-
s.version = "0.2.
|
8
|
+
s.version = "0.2.8"
|
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"]
|
12
|
-
s.date = %q{2010-
|
12
|
+
s.date = %q{2010-02-02}
|
13
13
|
s.default_executable = %q{code_statistics}
|
14
14
|
s.description = %q{"This is a port of the rails 'rake stats' method so it can be made more robust and work for non rails projects. New features may eventually be added as well."}
|
15
15
|
s.email = %q{dan@devver.net}
|
@@ -13,6 +13,7 @@ module CodeStatistics
|
|
13
13
|
@ignore_files = collect_files_to_ignore(ignore_file_globs)
|
14
14
|
|
15
15
|
directories_to_search = ['app','test','spec','merb','features', 'bin']
|
16
|
+
directories_to_search = remove_included_pairs(directories_to_search, @pairs)
|
16
17
|
recursively_add_directories(directories_to_search)
|
17
18
|
|
18
19
|
@pairs.each do |key, dir_path|
|
@@ -79,10 +80,16 @@ module CodeStatistics
|
|
79
80
|
end
|
80
81
|
|
81
82
|
private
|
83
|
+
|
82
84
|
def calculate_statistics
|
83
85
|
@pairs.inject({}) { |stats, pair| stats[pair.first] = calculate_directory_statistics(pair.last); stats }
|
84
86
|
end
|
85
87
|
|
88
|
+
def remove_included_pairs(directories_to_search, pairs)
|
89
|
+
#if the user explicitly said to index the directory index it at the level specified not recursively
|
90
|
+
directories_to_search.reject{|dir| @pairs.map{|pair| pair.first}.include?(dir)}
|
91
|
+
end
|
92
|
+
|
86
93
|
def local_file_exists?(dir,filename)
|
87
94
|
File.exist?(File.join(dir,filename))
|
88
95
|
end
|
@@ -132,17 +139,19 @@ module CodeStatistics
|
|
132
139
|
end
|
133
140
|
|
134
141
|
def calculate_code
|
135
|
-
|
136
|
-
@statistics.each { |k, v| code_loc += v['codelines'] unless test_types.include? k }
|
137
|
-
code_loc
|
142
|
+
calculate_type(false)
|
138
143
|
end
|
139
144
|
|
140
145
|
def calculate_tests
|
141
|
-
|
142
|
-
@statistics.each { |k, v| test_loc += v['codelines'] if test_types.include? k }
|
143
|
-
test_loc
|
146
|
+
calculate_type(true)
|
144
147
|
end
|
145
148
|
|
149
|
+
def calculate_type(test_match)
|
150
|
+
type_loc = 0
|
151
|
+
@statistics.each { |k, v| type_loc += v['codelines'] if test_types.include?(k)==test_match }
|
152
|
+
type_loc
|
153
|
+
end
|
154
|
+
|
146
155
|
def print_header
|
147
156
|
print_splitter
|
148
157
|
@print_buffer << "| Name".ljust(22)+" "+
|
@@ -159,10 +168,14 @@ module CodeStatistics
|
|
159
168
|
def print_splitter
|
160
169
|
@print_buffer << "+----------------------+-------+-------+---------+---------+-----+-------+\n"
|
161
170
|
end
|
171
|
+
|
172
|
+
def x_over_y(top, bottom)
|
173
|
+
result = (top / bottom) rescue result = 0
|
174
|
+
end
|
162
175
|
|
163
176
|
def print_line(name, statistics)
|
164
|
-
m_over_c = (statistics["methods"]
|
165
|
-
loc_over_m = (statistics["codelines"]
|
177
|
+
m_over_c = x_over_y(statistics["methods"], statistics["classes"])
|
178
|
+
loc_over_m = x_over_y(statistics["codelines"], statistics["methods"])
|
166
179
|
loc_over_m = loc_over_m - 2 if loc_over_m >= 2
|
167
180
|
|
168
181
|
start = if test_types.include? name
|
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.2.
|
4
|
+
version: 0.2.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dan Mayer
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2010-
|
12
|
+
date: 2010-02-02 00:00:00 -05:00
|
13
13
|
default_executable: code_statistics
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|