inch 0.2.2 → 0.2.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +170 -56
- data/TODOS.md +0 -6
- data/config/defaults.rb +82 -0
- data/lib/inch/cli/command/base.rb +9 -0
- data/lib/inch/cli/command/base_list.rb +8 -8
- data/lib/inch/cli/command/base_object.rb +1 -1
- data/lib/inch/cli/command/list.rb +6 -1
- data/lib/inch/cli/command/options/base.rb +1 -1
- data/lib/inch/cli/command/options/suggest.rb +3 -1
- data/lib/inch/cli/command/output/list.rb +6 -6
- data/lib/inch/cli/command/output/show.rb +3 -3
- data/lib/inch/cli/command/output/stats.rb +52 -33
- data/lib/inch/cli/command/output/suggest.rb +7 -7
- data/lib/inch/cli/command/show.rb +5 -0
- data/lib/inch/cli/command/stats.rb +6 -1
- data/lib/inch/cli/command/suggest.rb +31 -12
- data/lib/inch/cli/command.rb +7 -14
- data/lib/inch/cli/command_parser.rb +2 -9
- data/lib/inch/cli/sparkline_helper.rb +13 -13
- data/lib/inch/cli/weighted_list.rb +85 -0
- data/lib/inch/cli.rb +2 -1
- data/lib/inch/code_object/nodoc_helper.rb +2 -0
- data/lib/inch/code_object/proxy/base.rb +36 -13
- data/lib/inch/code_object/proxy/method_object.rb +29 -0
- data/lib/inch/code_object/proxy/namespace_object.rb +6 -0
- data/lib/inch/config.rb +30 -37
- data/lib/inch/evaluation/base.rb +53 -1
- data/lib/inch/evaluation/constant_object.rb +8 -11
- data/lib/inch/evaluation/file.rb +1 -1
- data/lib/inch/evaluation/grade.rb +41 -0
- data/lib/inch/evaluation/grade_list.rb +32 -0
- data/lib/inch/evaluation/method_object.rb +10 -51
- data/lib/inch/evaluation/namespace_object.rb +8 -49
- data/lib/inch/evaluation/{criteria.rb → object_schema.rb} +12 -22
- data/lib/inch/evaluation/read_write_methods.rb +21 -0
- data/lib/inch/evaluation/role/method.rb +8 -0
- data/lib/inch/evaluation.rb +5 -2
- data/lib/inch/version.rb +1 -1
- data/lib/inch.rb +3 -1
- data/test/fixtures/simple/lib/broken.rb +15 -0
- data/test/fixtures/simple/lib/role_methods.rb +15 -0
- data/test/inch/cli/weighted_list_test.rb +55 -0
- data/test/inch/code_object/proxy/method_object_test.rb +42 -0
- data/test/integration/stats_options_test.rb +1 -1
- metadata +11 -5
- data/lib/inch/evaluation/score_range.rb +0 -38
@@ -172,4 +172,46 @@ describe ::Inch::CodeObject::Proxy::MethodObject do
|
|
172
172
|
|
173
173
|
assert m.score > 0
|
174
174
|
end
|
175
|
+
|
176
|
+
def test_getter
|
177
|
+
m = @source_parser.find_object("InchTest#getter")
|
178
|
+
assert m.getter?, "should be a getter"
|
179
|
+
refute m.setter?
|
180
|
+
end
|
181
|
+
|
182
|
+
def test_setter
|
183
|
+
m = @source_parser.find_object("InchTest#attr_setter=")
|
184
|
+
refute m.getter?
|
185
|
+
assert m.setter?, "should be a setter"
|
186
|
+
end
|
187
|
+
|
188
|
+
def test_setter2
|
189
|
+
m = @source_parser.find_object("InchTest#manual_setter=")
|
190
|
+
refute m.getter?
|
191
|
+
assert m.setter?, "should be a setter"
|
192
|
+
end
|
193
|
+
|
194
|
+
def test_manual_getset
|
195
|
+
m = @source_parser.find_object("InchTest#manual_getset")
|
196
|
+
assert m.getter?, "should be a getter"
|
197
|
+
refute m.setter?
|
198
|
+
end
|
199
|
+
|
200
|
+
def test_manual_getset2
|
201
|
+
m = @source_parser.find_object("InchTest#manual_getset=")
|
202
|
+
refute m.getter?
|
203
|
+
assert m.setter?, "should be a setter"
|
204
|
+
end
|
205
|
+
|
206
|
+
def test_attr_getset
|
207
|
+
m = @source_parser.find_object("InchTest#attr_getset")
|
208
|
+
assert m.getter?, "should be a getter"
|
209
|
+
refute m.setter?
|
210
|
+
end
|
211
|
+
|
212
|
+
def test_attr_getset2
|
213
|
+
m = @source_parser.find_object("InchTest#attr_getset=")
|
214
|
+
refute m.getter?
|
215
|
+
assert m.setter?, "should be a setter"
|
216
|
+
end
|
175
217
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: inch
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- René Föhring
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-02-
|
11
|
+
date: 2014-02-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -112,6 +112,7 @@ files:
|
|
112
112
|
- Rakefile
|
113
113
|
- TODOS.md
|
114
114
|
- bin/inch
|
115
|
+
- config/defaults.rb
|
115
116
|
- inch.gemspec
|
116
117
|
- lib/inch.rb
|
117
118
|
- lib/inch/cli.rb
|
@@ -139,6 +140,7 @@ files:
|
|
139
140
|
- lib/inch/cli/command_parser.rb
|
140
141
|
- lib/inch/cli/sparkline_helper.rb
|
141
142
|
- lib/inch/cli/trace_helper.rb
|
143
|
+
- lib/inch/cli/weighted_list.rb
|
142
144
|
- lib/inch/cli/yardopts_helper.rb
|
143
145
|
- lib/inch/code_object.rb
|
144
146
|
- lib/inch/code_object/docstring.rb
|
@@ -159,11 +161,14 @@ files:
|
|
159
161
|
- lib/inch/evaluation/base.rb
|
160
162
|
- lib/inch/evaluation/class_object.rb
|
161
163
|
- lib/inch/evaluation/constant_object.rb
|
162
|
-
- lib/inch/evaluation/criteria.rb
|
163
164
|
- lib/inch/evaluation/file.rb
|
165
|
+
- lib/inch/evaluation/grade.rb
|
166
|
+
- lib/inch/evaluation/grade_list.rb
|
164
167
|
- lib/inch/evaluation/method_object.rb
|
165
168
|
- lib/inch/evaluation/module_object.rb
|
166
169
|
- lib/inch/evaluation/namespace_object.rb
|
170
|
+
- lib/inch/evaluation/object_schema.rb
|
171
|
+
- lib/inch/evaluation/read_write_methods.rb
|
167
172
|
- lib/inch/evaluation/role/base.rb
|
168
173
|
- lib/inch/evaluation/role/constant.rb
|
169
174
|
- lib/inch/evaluation/role/method.rb
|
@@ -171,7 +176,6 @@ files:
|
|
171
176
|
- lib/inch/evaluation/role/missing.rb
|
172
177
|
- lib/inch/evaluation/role/namespace.rb
|
173
178
|
- lib/inch/evaluation/role/object.rb
|
174
|
-
- lib/inch/evaluation/score_range.rb
|
175
179
|
- lib/inch/rake.rb
|
176
180
|
- lib/inch/rake/suggest.rb
|
177
181
|
- lib/inch/source_parser.rb
|
@@ -198,6 +202,7 @@ files:
|
|
198
202
|
- test/inch/cli/command/suggest_test.rb
|
199
203
|
- test/inch/cli/command_parser_test.rb
|
200
204
|
- test/inch/cli/trace_helper_test.rb
|
205
|
+
- test/inch/cli/weighted_list_test.rb
|
201
206
|
- test/inch/cli/yardopts_helper_test.rb
|
202
207
|
- test/inch/code_object/docstring_test.rb
|
203
208
|
- test/inch/code_object/nodoc_helper_test.rb
|
@@ -227,7 +232,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
227
232
|
version: '0'
|
228
233
|
requirements: []
|
229
234
|
rubyforge_project:
|
230
|
-
rubygems_version: 2.0.
|
235
|
+
rubygems_version: 2.0.6
|
231
236
|
signing_key:
|
232
237
|
specification_version: 4
|
233
238
|
summary: Documentation measurement tool for Ruby
|
@@ -254,6 +259,7 @@ test_files:
|
|
254
259
|
- test/inch/cli/command/suggest_test.rb
|
255
260
|
- test/inch/cli/command_parser_test.rb
|
256
261
|
- test/inch/cli/trace_helper_test.rb
|
262
|
+
- test/inch/cli/weighted_list_test.rb
|
257
263
|
- test/inch/cli/yardopts_helper_test.rb
|
258
264
|
- test/inch/code_object/docstring_test.rb
|
259
265
|
- test/inch/code_object/nodoc_helper_test.rb
|
@@ -1,38 +0,0 @@
|
|
1
|
-
module Inch
|
2
|
-
module Evaluation
|
3
|
-
# ScoreRange objects associate a range of scores with a grade,
|
4
|
-
# description, color etc.
|
5
|
-
#
|
6
|
-
# @see .new_score_ranges
|
7
|
-
class ScoreRange < Struct.new(:range, :grade, :description, :color, :bg_color)
|
8
|
-
# Returns code_objects that received a score with the defined +range+
|
9
|
-
attr_reader :objects
|
10
|
-
|
11
|
-
# Assigns code_objects that received a score with the defined +range+
|
12
|
-
#
|
13
|
-
# @param arr [Array<CodeObject::Proxy::Base>]
|
14
|
-
# @return [Array<CodeObject::Proxy::Base>]
|
15
|
-
def objects=(arr)
|
16
|
-
arr.each { |o| o.grade = grade }
|
17
|
-
@objects = arr
|
18
|
-
end
|
19
|
-
end
|
20
|
-
|
21
|
-
SCORE_RANGE_ARGS = [
|
22
|
-
[80..100, :A, "Seems really good", :green],
|
23
|
-
[50...80, :B, "Proper documentation present", :yellow],
|
24
|
-
[1...50, :C, "Needs work", :red],
|
25
|
-
[0..0, :U, "Undocumented", :color141, :color105],
|
26
|
-
]
|
27
|
-
|
28
|
-
# Returns newly instanciated score range objects based on
|
29
|
-
# {SCORE_RANGE_ARGS}
|
30
|
-
#
|
31
|
-
# @return [Array<ScoreRange>]
|
32
|
-
def self.new_score_ranges
|
33
|
-
SCORE_RANGE_ARGS.map do |args|
|
34
|
-
ScoreRange.new(*args)
|
35
|
-
end
|
36
|
-
end
|
37
|
-
end
|
38
|
-
end
|