inch 0.1.1 → 0.1.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.
- checksums.yaml +4 -4
- data/README.md +4 -2
- data/TODOS.md +0 -1
- data/lib/inch/cli/command/suggest.rb +2 -3
- data/lib/inch/cli/command_parser.rb +22 -14
- data/lib/inch/cli/trace_helper.rb +2 -0
- data/lib/inch/code_object/docstring.rb +2 -2
- data/lib/inch/code_object/proxy/method_object.rb +1 -1
- data/lib/inch/version.rb +1 -1
- data/test/inch/cli/command/suggest_test.rb +15 -0
- data/test/inch/cli/command_parser_test.rb +42 -4
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ac5ffa0638f44fe70c196dd422392a913745cc95
|
4
|
+
data.tar.gz: 23f1ce2ebdcd812be31f6bb530406c81518b2cbf
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 63f0021f750e0cfe86042fc54d668ccaccdee94cf240f8f39670ab5707f335bce7dca7798bb33f47e870b83c983c682c66590c975fbff2df34f09b86a1afb559
|
7
|
+
data.tar.gz: 80c5d8393b89fc3296f1f43873d30ac6069ce144b8369042d8a76f0f8b8630d570afe6bd5cb0d91fec23287173e9fe16f12ff551219449703f276aab12c1129a
|
data/README.md
CHANGED
@@ -1,10 +1,12 @@
|
|
1
1
|
# Inch
|
2
2
|
|
3
|
+
[](https://travis-ci.org/rrrene/inch)
|
4
|
+
|
3
5
|
Inch is a documentation measurement tool for Ruby, based on
|
4
6
|
[YARD](http://yardoc.org/).
|
5
7
|
|
6
|
-
It does not measure *coverage*, but
|
7
|
-
|
8
|
+
It does not measure *coverage*, but gives you hints where to improve your
|
9
|
+
docs. One Inch at a time.
|
8
10
|
|
9
11
|
|
10
12
|
## Installation
|
data/TODOS.md
CHANGED
@@ -55,12 +55,12 @@ module Inch
|
|
55
55
|
f = Evaluation::File.for(filename, relevant_objects)
|
56
56
|
end
|
57
57
|
|
58
|
-
|
58
|
+
priority_list = list.select do |f|
|
59
59
|
relevant_grades.include?(f.grade) &&
|
60
60
|
relevant_priorities.include?(f.priority)
|
61
61
|
end
|
62
62
|
|
63
|
-
sort_by_priority(list)
|
63
|
+
sort_by_priority(priority_list.empty? ? list : priority_list)
|
64
64
|
end
|
65
65
|
|
66
66
|
def all_filenames(objects)
|
@@ -97,7 +97,6 @@ module Inch
|
|
97
97
|
def select_by_priority(list, min_priority)
|
98
98
|
list.select { |o| o.priority >= min_priority }
|
99
99
|
end
|
100
|
-
|
101
100
|
end
|
102
101
|
end
|
103
102
|
end
|
@@ -6,9 +6,7 @@ module Inch
|
|
6
6
|
#
|
7
7
|
# $ inch command_name [options]
|
8
8
|
#
|
9
|
-
# If no
|
10
|
-
# begin with a +--opt+ (not +--help+), the {default_command} will be used
|
11
|
-
# (which itself defaults to +:doc+).
|
9
|
+
# If no command_name is specified, the {default_command} will be used.
|
12
10
|
#
|
13
11
|
class CommandParser
|
14
12
|
include TraceHelper
|
@@ -48,18 +46,11 @@ module Inch
|
|
48
46
|
# argument.
|
49
47
|
# @return [void]
|
50
48
|
def run(*args)
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
command_name = args.first.to_sym
|
56
|
-
args.shift
|
57
|
-
end
|
58
|
-
if commands.has_key?(command_name)
|
59
|
-
return commands[command_name].run(*args)
|
60
|
-
end
|
49
|
+
if ['--help', '-h'].include?(args.join)
|
50
|
+
list_commands
|
51
|
+
else
|
52
|
+
run_command(*args)
|
61
53
|
end
|
62
|
-
list_commands
|
63
54
|
end
|
64
55
|
|
65
56
|
private
|
@@ -77,6 +68,23 @@ module Inch
|
|
77
68
|
trace " %-8s %s" % [command_name, command.description]
|
78
69
|
end
|
79
70
|
end
|
71
|
+
|
72
|
+
def run_command(*args)
|
73
|
+
if args.empty?
|
74
|
+
command_name = self.class.default_command
|
75
|
+
else
|
76
|
+
possible_command_name = args.first.to_sym
|
77
|
+
|
78
|
+
if commands.has_key?(possible_command_name)
|
79
|
+
command_name = possible_command_name
|
80
|
+
args.shift
|
81
|
+
else
|
82
|
+
command_name = self.class.default_command
|
83
|
+
end
|
84
|
+
end
|
85
|
+
|
86
|
+
commands[command_name].run(*args)
|
87
|
+
end
|
80
88
|
end
|
81
89
|
end
|
82
90
|
end
|
@@ -30,11 +30,11 @@ module Inch
|
|
30
30
|
end
|
31
31
|
|
32
32
|
def mentions_return?
|
33
|
-
@text.lines.last =~ /^Returns\ /
|
33
|
+
@text.lines.to_a.last =~ /^Returns\ /
|
34
34
|
end
|
35
35
|
|
36
36
|
def describes_return?
|
37
|
-
@text.lines.last =~ /^Returns\ (\w+\s){2,}/
|
37
|
+
@text.lines.to_a.last =~ /^Returns\ (\w+\s){2,}/
|
38
38
|
end
|
39
39
|
|
40
40
|
def parse_code_examples
|
data/lib/inch/version.rb
CHANGED
@@ -45,6 +45,12 @@ describe ::Inch::CLI::Command::Suggest do
|
|
45
45
|
#assert out.empty?, "there should be no output"
|
46
46
|
#assert err.empty?, "there should be no errors"
|
47
47
|
end
|
48
|
+
|
49
|
+
it "should give error when run with --unknown-switch" do
|
50
|
+
out, err = capture_io do
|
51
|
+
assert_raises(SystemExit) { @command.run("--unknown-switch") }
|
52
|
+
end
|
53
|
+
end
|
48
54
|
|
49
55
|
it "should output info when run with --help" do
|
50
56
|
out, err = capture_io do
|
@@ -54,4 +60,13 @@ describe ::Inch::CLI::Command::Suggest do
|
|
54
60
|
assert_match /\bUsage\b.+suggest/, out
|
55
61
|
assert err.empty?, "there should be no errors"
|
56
62
|
end
|
63
|
+
|
64
|
+
it "should output version when run with --version" do
|
65
|
+
out, err = capture_io do
|
66
|
+
assert_raises(SystemExit) { @command.run("--version") }
|
67
|
+
end
|
68
|
+
refute out.empty?, "there should be some output"
|
69
|
+
assert_match /inch\ \d\.\d\.\d/, out
|
70
|
+
assert err.empty?, "there should be no errors"
|
71
|
+
end
|
57
72
|
end
|
@@ -3,28 +3,66 @@ require File.expand_path(File.dirname(__FILE__) + '/../../test_helper')
|
|
3
3
|
describe ::Inch::CLI::CommandParser do
|
4
4
|
before do
|
5
5
|
Dir.chdir fixture_path(:simple)
|
6
|
-
@
|
6
|
+
@command_parser = ::Inch::CLI::CommandParser
|
7
7
|
end
|
8
8
|
|
9
9
|
it "should run without args" do
|
10
10
|
out, err = capture_io do
|
11
|
-
@command.run()
|
11
|
+
@command = @command_parser.run()
|
12
12
|
end
|
13
13
|
refute out.empty?, "there should be some output"
|
14
14
|
assert err.empty?, "there should be no errors"
|
15
|
+
assert_equal ::Inch::CLI::Command::Suggest, @command.class
|
15
16
|
end
|
16
17
|
|
17
18
|
it "should run Command::Suggest with filelist in args" do
|
18
19
|
out, err = capture_io do
|
19
|
-
@command.run("suggest", "lib/**/*.rb", "app/**/*.rb")
|
20
|
+
@command = @command_parser.run("suggest", "lib/**/*.rb", "app/**/*.rb")
|
20
21
|
end
|
21
22
|
refute out.empty?, "there should be some output"
|
22
23
|
assert err.empty?, "there should be no errors"
|
24
|
+
assert_equal ::Inch::CLI::Command::Suggest, @command.class
|
25
|
+
end
|
26
|
+
|
27
|
+
it "should run Command::Suggest with only filelist in args" do
|
28
|
+
out, err = capture_io do
|
29
|
+
@command = @command_parser.run("lib/**/*.rb", "app/**/*.rb")
|
30
|
+
end
|
31
|
+
refute out.empty?, "there should be some output"
|
32
|
+
assert err.empty?, "there should be no errors"
|
33
|
+
assert_equal ::Inch::CLI::Command::Suggest, @command.class
|
34
|
+
end
|
35
|
+
|
36
|
+
it "should run Command::Suggest with only switches in args" do
|
37
|
+
out, err = capture_io do
|
38
|
+
@command = @command_parser.run("--no-color")
|
39
|
+
end
|
40
|
+
refute out.empty?, "there should be some output"
|
41
|
+
assert err.empty?, "there should be no errors"
|
42
|
+
assert_equal ::Inch::CLI::Command::Suggest, @command.class
|
43
|
+
end
|
44
|
+
|
45
|
+
it "should run Command::List with filelist in args" do
|
46
|
+
out, err = capture_io do
|
47
|
+
@command = @command_parser.run("list", "lib/**/*.rb", "app/**/*.rb")
|
48
|
+
end
|
49
|
+
refute out.empty?, "there should be some output"
|
50
|
+
assert err.empty?, "there should be no errors"
|
51
|
+
assert_equal ::Inch::CLI::Command::List, @command.class
|
52
|
+
end
|
53
|
+
|
54
|
+
it "should run Command::Show with filelist in args" do
|
55
|
+
out, err = capture_io do
|
56
|
+
@command = @command_parser.run("show", "Foo")
|
57
|
+
end
|
58
|
+
refute out.empty?, "there should be some output"
|
59
|
+
assert err.empty?, "there should be no errors"
|
60
|
+
assert_equal ::Inch::CLI::Command::Show, @command.class
|
23
61
|
end
|
24
62
|
|
25
63
|
it "should output info when run with --help" do
|
26
64
|
out, err = capture_io do
|
27
|
-
@command.run("--help")
|
65
|
+
@command = @command_parser.run("--help")
|
28
66
|
end
|
29
67
|
refute out.empty?, "there should be some output"
|
30
68
|
assert_match /\bUsage\b.+inch/, out
|
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.1.
|
4
|
+
version: 0.1.2
|
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-01-
|
11
|
+
date: 2014-01-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|