command_line_helper 0.0.1
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/Gemfile +22 -0
- data/LICENSE +22 -0
- data/README.md +70 -0
- data/Rakefile +23 -0
- data/command_line_helper.gemspec +20 -0
- data/lib/command_line_helper.rb +8 -0
- data/lib/command_line_helper.rb~ +8 -0
- data/lib/command_line_helper/base.rb~ +70 -0
- data/lib/command_line_helper/help.rb~ +67 -0
- data/lib/command_line_helper/help_text.rb +67 -0
- data/lib/command_line_helper/helper.rb~ +59 -0
- data/lib/command_line_helper/program_name.rb +9 -0
- data/lib/command_line_helper/program_name.rb~ +12 -0
- data/lib/command_line_helper/version.rb +3 -0
- data/spec/lib/command_line_helper/base_spec.rb~ +73 -0
- data/spec/lib/command_line_helper/help_text_spec.rb +65 -0
- data/spec/lib/command_line_helper/help_text_spec.rb~ +79 -0
- data/spec/lib/command_line_helper/helper.rb~ +23 -0
- data/spec/lib/command_line_helper/helper_spec.rb~ +22 -0
- data/spec/lib/command_line_helper/program_name_spec.rb +20 -0
- data/spec/lib/command_line_helper/program_name_spec.rb~ +20 -0
- data/spec/reports/SPEC-CommandLineHelper-Base-help-info.0.xml +11 -0
- data/spec/reports/SPEC-CommandLineHelper-Base-help-info.1.xml +11 -0
- data/spec/reports/SPEC-CommandLineHelper-Base-help-info.2.xml +11 -0
- data/spec/reports/SPEC-CommandLineHelper-Base-help-info.3.xml +11 -0
- data/spec/reports/SPEC-CommandLineHelper-Base-help-info.xml +11 -0
- data/spec/reports/SPEC-CommandLineHelper-Base-option-details.0.xml +9 -0
- data/spec/reports/SPEC-CommandLineHelper-Base-option-details.1.xml +9 -0
- data/spec/reports/SPEC-CommandLineHelper-Base-option-details.2.xml +9 -0
- data/spec/reports/SPEC-CommandLineHelper-Base-option-details.3.xml +9 -0
- data/spec/reports/SPEC-CommandLineHelper-Base-option-details.xml +9 -0
- data/spec/reports/SPEC-CommandLineHelper-Base-program-name.0.xml +13 -0
- data/spec/reports/SPEC-CommandLineHelper-Base-program-name.1.xml +13 -0
- data/spec/reports/SPEC-CommandLineHelper-Base-program-name.2.xml +13 -0
- data/spec/reports/SPEC-CommandLineHelper-Base-program-name.3.xml +13 -0
- data/spec/reports/SPEC-CommandLineHelper-Base-program-name.xml +13 -0
- data/spec/reports/SPEC-CommandLineHelper-Base-short-hand-option.0.xml +11 -0
- data/spec/reports/SPEC-CommandLineHelper-Base-short-hand-option.1.xml +11 -0
- data/spec/reports/SPEC-CommandLineHelper-Base-short-hand-option.2.xml +11 -0
- data/spec/reports/SPEC-CommandLineHelper-Base-short-hand-option.3.xml +11 -0
- data/spec/reports/SPEC-CommandLineHelper-Base-short-hand-option.xml +11 -0
- data/spec/reports/SPEC-CommandLineHelper-Base.0.xml +7 -0
- data/spec/reports/SPEC-CommandLineHelper-Base.1.xml +9 -0
- data/spec/reports/SPEC-CommandLineHelper-Base.2.xml +7 -0
- data/spec/reports/SPEC-CommandLineHelper-Base.3.xml +9 -0
- data/spec/reports/SPEC-CommandLineHelper-Base.4.xml +7 -0
- data/spec/reports/SPEC-CommandLineHelper-Base.5.xml +9 -0
- data/spec/reports/SPEC-CommandLineHelper-Base.6.xml +7 -0
- data/spec/reports/SPEC-CommandLineHelper-Base.7.xml +9 -0
- data/spec/reports/SPEC-CommandLineHelper-Base.8.xml +7 -0
- data/spec/reports/SPEC-CommandLineHelper-Base.xml +9 -0
- data/spec/reports/SPEC-CommandLineHelper-HelpText-help-info.xml +11 -0
- data/spec/reports/SPEC-CommandLineHelper-HelpText-option-details.xml +9 -0
- data/spec/reports/SPEC-CommandLineHelper-HelpText-short-hand-option.xml +11 -0
- data/spec/reports/SPEC-CommandLineHelper-HelpText.0.xml +7 -0
- data/spec/reports/SPEC-CommandLineHelper-HelpText.xml +9 -0
- data/spec/reports/SPEC-CommandLineHelper-ProgramName-program-name.xml +11 -0
- data/spec/reports/SPEC-CommandLineHelper-ProgramName.xml +7 -0
- data/spec/spec_helper.rb +23 -0
- data/spec/spec_helper.rb~ +20 -0
- metadata +169 -0
@@ -0,0 +1,73 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe CommandLineHelper::HelpText do
|
4
|
+
it { expect{ subject.help_info }.to raise_error }
|
5
|
+
|
6
|
+
context do
|
7
|
+
before do
|
8
|
+
subject.stub(:options_possible).and_return(
|
9
|
+
[ ['--foo', '-f', 1, 'Fooism'], ['--bar', '-b', 2, 'Bark'] ]
|
10
|
+
)
|
11
|
+
end
|
12
|
+
|
13
|
+
describe "#program_name" do
|
14
|
+
it { subject.program_name.should == "rspec" }
|
15
|
+
|
16
|
+
it {
|
17
|
+
described_class.should_receive(:program_name)
|
18
|
+
subject.program_name
|
19
|
+
}
|
20
|
+
|
21
|
+
it {
|
22
|
+
subject.program_name
|
23
|
+
described_class.instance_variable_get(:"@program_name").should == "rspec"
|
24
|
+
}
|
25
|
+
end
|
26
|
+
|
27
|
+
describe "#help_info" do
|
28
|
+
it "should return the nice string" do
|
29
|
+
subject.should_receive(:program_name)
|
30
|
+
subject.should_receive(:short_hand_options)
|
31
|
+
subject.should_receive(:option_details)
|
32
|
+
subject.should_receive(:version_info)
|
33
|
+
|
34
|
+
subject.send(:help_info)
|
35
|
+
end
|
36
|
+
|
37
|
+
it "should return helpful information based on options" do
|
38
|
+
File.stub(:basename).and_return("program_name")
|
39
|
+
subject.stub(:version_number).and_return("version")
|
40
|
+
subject.send(:help_info).should == <<-EOH
|
41
|
+
Usage: program_name [options]
|
42
|
+
[--foo|-f argument], [--bar|-b]
|
43
|
+
|
44
|
+
Options:
|
45
|
+
--foo, -f Fooism
|
46
|
+
--bar, -b Bark
|
47
|
+
|
48
|
+
0.0.1
|
49
|
+
EOH
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
describe "#option_details" do
|
54
|
+
it "should return nice things" do
|
55
|
+
subject.send(:option_details).should ==
|
56
|
+
" --foo, -f Fooism\n --bar, -b Bark\n"
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
60
|
+
describe "#short_hand_option" do
|
61
|
+
it "should return '--foo|-f argument'" do
|
62
|
+
option = ["--foo", "-f", GetoptLong::REQUIRED_ARGUMENT]
|
63
|
+
subject.send(:short_hand_option, option).should == "--foo|-f argument"
|
64
|
+
end
|
65
|
+
|
66
|
+
it "should return '--bar|-b'" do
|
67
|
+
option = ["--bar", "-b", nil]
|
68
|
+
subject.send(:short_hand_option, option).should == "--bar|-b"
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
72
|
+
end
|
73
|
+
end
|
@@ -0,0 +1,65 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
class HelpTextClass
|
4
|
+
include CommandLineHelper::HelpText
|
5
|
+
end
|
6
|
+
|
7
|
+
describe CommandLineHelper::HelpText do
|
8
|
+
subject { HelpTextClass.new }
|
9
|
+
|
10
|
+
it { expect{ subject.help_info }.to raise_error }
|
11
|
+
|
12
|
+
context do
|
13
|
+
before do
|
14
|
+
subject.stub(:options_possible).and_return(
|
15
|
+
[ ['--foo', '-f', 1, 'Fooism'], ['--bar', '-b', 2, 'Bark'] ]
|
16
|
+
)
|
17
|
+
end
|
18
|
+
|
19
|
+
describe "#help_info" do
|
20
|
+
it "should return the nice string" do
|
21
|
+
subject.should_receive(:program_name)
|
22
|
+
subject.should_receive(:short_hand_options)
|
23
|
+
subject.should_receive(:option_details)
|
24
|
+
subject.should_receive(:version_info)
|
25
|
+
|
26
|
+
subject.send(:help_info)
|
27
|
+
end
|
28
|
+
|
29
|
+
it "should return helpful information based on options" do
|
30
|
+
File.stub(:basename).and_return("program_name")
|
31
|
+
subject.stub(:version_number).and_return("version")
|
32
|
+
subject.send(:help_info).should == <<-EOH
|
33
|
+
Usage: program_name [options]
|
34
|
+
[--foo|-f argument], [--bar|-b]
|
35
|
+
|
36
|
+
Options:
|
37
|
+
--foo, -f Fooism
|
38
|
+
--bar, -b Bark
|
39
|
+
|
40
|
+
0.0.1
|
41
|
+
EOH
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
describe "#option_details" do
|
46
|
+
it "should return nice things" do
|
47
|
+
subject.send(:option_details).should ==
|
48
|
+
" --foo, -f Fooism\n --bar, -b Bark\n"
|
49
|
+
end
|
50
|
+
end
|
51
|
+
|
52
|
+
describe "#short_hand_option" do
|
53
|
+
it "should return '--foo|-f argument'" do
|
54
|
+
option = ["--foo", "-f", GetoptLong::REQUIRED_ARGUMENT]
|
55
|
+
subject.send(:short_hand_option, option).should == "--foo|-f argument"
|
56
|
+
end
|
57
|
+
|
58
|
+
it "should return '--bar|-b'" do
|
59
|
+
option = ["--bar", "-b", nil]
|
60
|
+
subject.send(:short_hand_option, option).should == "--bar|-b"
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
end
|
65
|
+
end
|
@@ -0,0 +1,79 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
class HelpTextClass
|
4
|
+
include CommandLineHelper::HelpText
|
5
|
+
end
|
6
|
+
|
7
|
+
describe CommandLineHelper::HelpText do
|
8
|
+
subject { HelpTextClass.new }
|
9
|
+
|
10
|
+
it { expect{ subject.help_info }.to raise_error }
|
11
|
+
|
12
|
+
context do
|
13
|
+
before do
|
14
|
+
subject.stub(:options_possible).and_return(
|
15
|
+
[ ['--foo', '-f', 1, 'Fooism'], ['--bar', '-b', 2, 'Bark'] ]
|
16
|
+
)
|
17
|
+
end
|
18
|
+
|
19
|
+
describe "#program_name" do
|
20
|
+
it { subject.program_name.should == "rspec" }
|
21
|
+
|
22
|
+
it {
|
23
|
+
described_class.should_receive(:program_name)
|
24
|
+
subject.program_name
|
25
|
+
}
|
26
|
+
|
27
|
+
it {
|
28
|
+
subject.program_name
|
29
|
+
described_class.instance_variable_get(:"@program_name").should == "rspec"
|
30
|
+
}
|
31
|
+
end
|
32
|
+
|
33
|
+
describe "#help_info" do
|
34
|
+
it "should return the nice string" do
|
35
|
+
subject.should_receive(:program_name)
|
36
|
+
subject.should_receive(:short_hand_options)
|
37
|
+
subject.should_receive(:option_details)
|
38
|
+
subject.should_receive(:version_info)
|
39
|
+
|
40
|
+
subject.send(:help_info)
|
41
|
+
end
|
42
|
+
|
43
|
+
it "should return helpful information based on options" do
|
44
|
+
File.stub(:basename).and_return("program_name")
|
45
|
+
subject.stub(:version_number).and_return("version")
|
46
|
+
subject.send(:help_info).should == <<-EOH
|
47
|
+
Usage: program_name [options]
|
48
|
+
[--foo|-f argument], [--bar|-b]
|
49
|
+
|
50
|
+
Options:
|
51
|
+
--foo, -f Fooism
|
52
|
+
--bar, -b Bark
|
53
|
+
|
54
|
+
0.0.1
|
55
|
+
EOH
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
describe "#option_details" do
|
60
|
+
it "should return nice things" do
|
61
|
+
subject.send(:option_details).should ==
|
62
|
+
" --foo, -f Fooism\n --bar, -b Bark\n"
|
63
|
+
end
|
64
|
+
end
|
65
|
+
|
66
|
+
describe "#short_hand_option" do
|
67
|
+
it "should return '--foo|-f argument'" do
|
68
|
+
option = ["--foo", "-f", GetoptLong::REQUIRED_ARGUMENT]
|
69
|
+
subject.send(:short_hand_option, option).should == "--foo|-f argument"
|
70
|
+
end
|
71
|
+
|
72
|
+
it "should return '--bar|-b'" do
|
73
|
+
option = ["--bar", "-b", nil]
|
74
|
+
subject.send(:short_hand_option, option).should == "--bar|-b"
|
75
|
+
end
|
76
|
+
end
|
77
|
+
|
78
|
+
end
|
79
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
class CommandLineHelperHelperSpec
|
4
|
+
include CommandLineHelper::Helper
|
5
|
+
|
6
|
+
def options_possible
|
7
|
+
[ ['--blah', '-b', GetoptLong::NO_ARGUMENT, 'Helpful!' ] ]
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
describe CommandLineHelper::Helper do
|
12
|
+
subject { CommandLineHelperHelperSpec.new }
|
13
|
+
describe "#help_info" do
|
14
|
+
it "should return the nice string" do
|
15
|
+
subject.should_receive(:program_name)
|
16
|
+
subject.should_receive(:short_hand_options)
|
17
|
+
subject.should_receive(:option_details)
|
18
|
+
subject.should_receive(:version_info)
|
19
|
+
|
20
|
+
subject.send(:help_info)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
class CommandLineHelperHelperSpec < CommandLineHelper::Base
|
4
|
+
def options_possible
|
5
|
+
[ ['--blah', '-b', GetoptLong::NO_ARGUMENT, 'Helpful!' ] ]
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
describe CommandLineHelper::Helper do
|
10
|
+
subject { CommandLineHelperHelperSpec.new }
|
11
|
+
|
12
|
+
describe "#help_info" do
|
13
|
+
it "should return the nice string" do
|
14
|
+
subject.should_receive(:program_name)
|
15
|
+
subject.should_receive(:short_hand_options)
|
16
|
+
subject.should_receive(:option_details)
|
17
|
+
subject.should_receive(:version_info)
|
18
|
+
|
19
|
+
subject.send(:help_info)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
class ProgramNameClass
|
4
|
+
include CommandLineHelper::ProgramName
|
5
|
+
end
|
6
|
+
|
7
|
+
describe CommandLineHelper::ProgramName do
|
8
|
+
|
9
|
+
subject { ProgramNameClass.new }
|
10
|
+
|
11
|
+
describe "#program_name" do
|
12
|
+
it { subject.program_name.should == "rspec" }
|
13
|
+
|
14
|
+
it {
|
15
|
+
subject.program_name
|
16
|
+
subject.instance_variable_get(:"@program_name").should == "rspec"
|
17
|
+
}
|
18
|
+
end
|
19
|
+
|
20
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
class ProgramNameClass
|
4
|
+
include CommandLineHelper::ProgramName
|
5
|
+
end
|
6
|
+
|
7
|
+
describe CommandLineHelper::ProgramName do
|
8
|
+
|
9
|
+
subject { ProgramNameClass.new }
|
10
|
+
|
11
|
+
describe "#program_name" do
|
12
|
+
it { subject.program_name.should == "rspec" }
|
13
|
+
|
14
|
+
it {
|
15
|
+
subject.program_name
|
16
|
+
subject.instance_variable_get(:"@program_name").should == "rspec"
|
17
|
+
}
|
18
|
+
end
|
19
|
+
|
20
|
+
end
|
@@ -0,0 +1,11 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<testsuite name="CommandLineHelper::Base#help_info" tests="2" time="0.002074" failures="0" errors="0" skipped="0">
|
3
|
+
<testcase name="CommandLineHelper::Base#help_info should return the nice string" time="0.000783">
|
4
|
+
</testcase>
|
5
|
+
<testcase name="CommandLineHelper::Base#help_info should return helpful information based on options" time="0.000998">
|
6
|
+
</testcase>
|
7
|
+
<system-out>
|
8
|
+
</system-out>
|
9
|
+
<system-err>
|
10
|
+
</system-err>
|
11
|
+
</testsuite>
|
@@ -0,0 +1,11 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<testsuite name="CommandLineHelper::Base#help_info" tests="2" time="0.001641" failures="0" errors="0" skipped="0">
|
3
|
+
<testcase name="CommandLineHelper::Base#help_info should return the nice string" time="0.000775">
|
4
|
+
</testcase>
|
5
|
+
<testcase name="CommandLineHelper::Base#help_info should return helpful information based on options" time="0.000666">
|
6
|
+
</testcase>
|
7
|
+
<system-out>
|
8
|
+
</system-out>
|
9
|
+
<system-err>
|
10
|
+
</system-err>
|
11
|
+
</testsuite>
|
@@ -0,0 +1,11 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<testsuite name="CommandLineHelper::Base#help_info" tests="2" time="0.001807" failures="0" errors="0" skipped="0">
|
3
|
+
<testcase name="CommandLineHelper::Base#help_info should return the nice string" time="0.000935">
|
4
|
+
</testcase>
|
5
|
+
<testcase name="CommandLineHelper::Base#help_info should return helpful information based on options" time="0.000665">
|
6
|
+
</testcase>
|
7
|
+
<system-out>
|
8
|
+
</system-out>
|
9
|
+
<system-err>
|
10
|
+
</system-err>
|
11
|
+
</testsuite>
|
@@ -0,0 +1,11 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<testsuite name="CommandLineHelper::Base#help_info" tests="2" time="0.001662" failures="0" errors="0" skipped="0">
|
3
|
+
<testcase name="CommandLineHelper::Base#help_info should return the nice string" time="0.000815">
|
4
|
+
</testcase>
|
5
|
+
<testcase name="CommandLineHelper::Base#help_info should return helpful information based on options" time="0.000634">
|
6
|
+
</testcase>
|
7
|
+
<system-out>
|
8
|
+
</system-out>
|
9
|
+
<system-err>
|
10
|
+
</system-err>
|
11
|
+
</testsuite>
|
@@ -0,0 +1,11 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<testsuite name="CommandLineHelper::Base#help_info" tests="2" time="0.003942" failures="0" errors="0" skipped="0">
|
3
|
+
<testcase name="CommandLineHelper::Base#help_info should return helpful information based on options" time="0.000742">
|
4
|
+
</testcase>
|
5
|
+
<testcase name="CommandLineHelper::Base#help_info should return the nice string" time="0.00076">
|
6
|
+
</testcase>
|
7
|
+
<system-out>
|
8
|
+
</system-out>
|
9
|
+
<system-err>
|
10
|
+
</system-err>
|
11
|
+
</testsuite>
|
@@ -0,0 +1,9 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<testsuite name="CommandLineHelper::Base#option_details" tests="1" time="0.000784" failures="0" errors="0" skipped="0">
|
3
|
+
<testcase name="CommandLineHelper::Base#option_details should return nice things" time="0.000576">
|
4
|
+
</testcase>
|
5
|
+
<system-out>
|
6
|
+
</system-out>
|
7
|
+
<system-err>
|
8
|
+
</system-err>
|
9
|
+
</testsuite>
|
@@ -0,0 +1,9 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<testsuite name="CommandLineHelper::Base#option_details" tests="1" time="0.002857" failures="0" errors="0" skipped="0">
|
3
|
+
<testcase name="CommandLineHelper::Base#option_details should return nice things" time="0.000512">
|
4
|
+
</testcase>
|
5
|
+
<system-out>
|
6
|
+
</system-out>
|
7
|
+
<system-err>
|
8
|
+
</system-err>
|
9
|
+
</testsuite>
|
@@ -0,0 +1,9 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<testsuite name="CommandLineHelper::Base#option_details" tests="1" time="0.000826" failures="0" errors="0" skipped="0">
|
3
|
+
<testcase name="CommandLineHelper::Base#option_details should return nice things" time="0.000581">
|
4
|
+
</testcase>
|
5
|
+
<system-out>
|
6
|
+
</system-out>
|
7
|
+
<system-err>
|
8
|
+
</system-err>
|
9
|
+
</testsuite>
|
@@ -0,0 +1,9 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<testsuite name="CommandLineHelper::Base#option_details" tests="1" time="0.000557" failures="0" errors="0" skipped="0">
|
3
|
+
<testcase name="CommandLineHelper::Base#option_details should return nice things" time="0.000398">
|
4
|
+
</testcase>
|
5
|
+
<system-out>
|
6
|
+
</system-out>
|
7
|
+
<system-err>
|
8
|
+
</system-err>
|
9
|
+
</testsuite>
|