gli 2.18.2 → 2.20.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (69) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +28 -0
  3. data/.gitignore +1 -3
  4. data/.tool-versions +1 -1
  5. data/Gemfile +0 -6
  6. data/README.rdoc +33 -23
  7. data/Rakefile +21 -37
  8. data/bin/ci +29 -0
  9. data/bin/gli +25 -64
  10. data/bin/rake +29 -0
  11. data/bin/setup +5 -0
  12. data/exe/gli +68 -0
  13. data/gli.gemspec +19 -22
  14. data/gli.rdoc +2 -2
  15. data/lib/gli/command_support.rb +2 -6
  16. data/lib/gli/commands/help_modules/arg_name_formatter.rb +2 -2
  17. data/lib/gli/commands/help_modules/command_help_format.rb +1 -1
  18. data/lib/gli/commands/help_modules/global_help_format.rb +1 -1
  19. data/lib/gli/commands/scaffold.rb +9 -93
  20. data/lib/gli/dsl.rb +1 -1
  21. data/lib/gli/options.rb +2 -2
  22. data/lib/gli/version.rb +1 -1
  23. data/object-model.dot +29 -0
  24. data/object-model.png +0 -0
  25. data/test/apps/todo/Gemfile +1 -1
  26. data/test/apps/todo/bin/todo +1 -1
  27. data/test/integration/gli_cli_test.rb +69 -0
  28. data/test/integration/gli_powered_app_test.rb +52 -0
  29. data/test/integration/scaffold_test.rb +30 -0
  30. data/test/integration/test_helper.rb +52 -0
  31. data/test/{tc_command_finder.rb → unit/command_finder_test.rb} +6 -6
  32. data/test/{tc_command.rb → unit/command_test.rb} +4 -4
  33. data/test/unit/compound_command_test.rb +17 -0
  34. data/test/{tc_doc.rb → unit/doc_test.rb} +38 -51
  35. data/test/{tc_flag.rb → unit/flag_test.rb} +19 -25
  36. data/test/{tc_gli.rb → unit/gli_test.rb} +28 -47
  37. data/test/{tc_help.rb → unit/help_test.rb} +48 -107
  38. data/test/{init_simplecov.rb → unit/init_simplecov.rb} +0 -0
  39. data/test/{tc_options.rb → unit/options_test.rb} +4 -4
  40. data/test/unit/subcommand_parsing_test.rb +263 -0
  41. data/test/unit/subcommands_test.rb +245 -0
  42. data/test/{fake_std_out.rb → unit/support/fake_std_out.rb} +0 -0
  43. data/test/{config.yaml → unit/support/gli_test_config.yml} +0 -0
  44. data/test/unit/switch_test.rb +49 -0
  45. data/test/{tc_terminal.rb → unit/terminal_test.rb} +4 -3
  46. data/test/unit/test_helper.rb +13 -0
  47. data/test/unit/verbatim_wrapper_test.rb +24 -0
  48. metadata +74 -139
  49. data/.ruby-gemset +0 -1
  50. data/.ruby-version +0 -1
  51. data/.travis.yml +0 -11
  52. data/ObjectModel.graffle +0 -1191
  53. data/bin/report_on_rake_results +0 -10
  54. data/bin/test_all_rubies.sh +0 -6
  55. data/features/gli_executable.feature +0 -90
  56. data/features/gli_init.feature +0 -235
  57. data/features/step_definitions/gli_executable_steps.rb +0 -18
  58. data/features/step_definitions/gli_init_steps.rb +0 -11
  59. data/features/step_definitions/todo_steps.rb +0 -100
  60. data/features/support/env.rb +0 -54
  61. data/features/todo.feature +0 -579
  62. data/features/todo_legacy.feature +0 -130
  63. data/test/option_test_helper.rb +0 -13
  64. data/test/tc_compound_command.rb +0 -22
  65. data/test/tc_subcommand_parsing.rb +0 -280
  66. data/test/tc_subcommands.rb +0 -259
  67. data/test/tc_switch.rb +0 -55
  68. data/test/tc_verbatim_wrapper.rb +0 -36
  69. data/test/test_helper.rb +0 -21
@@ -0,0 +1,245 @@
1
+ require_relative "test_helper"
2
+ require_relative "support/fake_std_out"
3
+
4
+ class SubcommandsTest < MiniTest::Test
5
+ include TestHelper
6
+
7
+ def setup
8
+ @fake_stdout = FakeStdOut.new
9
+ @fake_stderr = FakeStdOut.new
10
+
11
+ @original_stdout = $stdout
12
+ $stdout = @fake_stdout
13
+ @original_stderr = $stderr
14
+ $stderr = @fake_stderr
15
+
16
+ @app = CLIApp.new
17
+ @app.reset
18
+ @app.subcommand_option_handling :legacy
19
+ @app.error_device=@fake_stderr
20
+ ENV.delete('GLI_DEBUG')
21
+ end
22
+
23
+ def teardown
24
+ $stdout = @original_stdout
25
+ $stderr = @original_stderr
26
+ end
27
+
28
+ def test_we_run_add_command_using_add
29
+ we_have_a_command_with_two_subcommands
30
+ run_app('remote',"add",'-f','foo','bar')
31
+ assert_command_ran_with(:add, :command_options => {:f => true}, :args => %w(foo bar))
32
+ end
33
+ def test_we_run_add_command_using_new
34
+ we_have_a_command_with_two_subcommands
35
+ run_app('remote',"new",'-f','foo','bar')
36
+ assert_command_ran_with(:add, :command_options => {:f => true}, :args => %w(foo bar))
37
+ end
38
+
39
+ def test_subcommands_not_used_on_command_line_uses_base_action
40
+ we_have_a_command_with_two_subcommands
41
+ run_app('remote','foo','bar')
42
+ assert_command_ran_with(:base, :command_options => {:f => false}, :args => %w(foo bar))
43
+ end
44
+
45
+ def test_switches_and_flags_on_subcommand_available
46
+ we_have_a_command_with_two_subcommands(:switches => [:addswitch], :flags => [:addflag])
47
+ run_app('remote','add','--addswitch','--addflag','foo','bar')
48
+ assert_command_ran_with(:add,:command_options => { :addswitch => true, :addflag => 'foo', :f => false },
49
+ :args => ['bar'])
50
+ end
51
+
52
+ def test_help_flag_works_in_normal_mode
53
+ @app.subcommand_option_handling :normal
54
+ we_have_a_command_with_two_subcommands
55
+ @app.run(["remote", "add", "--help"]) rescue nil
56
+ refute_match /^error/, @fake_stderr.to_s, "should not output an error message"
57
+ end
58
+
59
+ def test_help_flag_works_in_legacy_mode
60
+ @app.subcommand_option_handling :legacy
61
+ we_have_a_command_with_two_subcommands
62
+ @app.run(["remote", "add", "--help"]) rescue nil
63
+ refute_match /^error/, @fake_stderr.to_s, "should not output an error message"
64
+ end
65
+
66
+ def test_we_can_reopen_commands_to_add_new_subcommands
67
+ @app.command :remote do |p|
68
+ p.command :add do |c|
69
+ c.action do |global_options,command_options,args|
70
+ @ran_command = :add
71
+ end
72
+ end
73
+ end
74
+ @app.command :remote do |p|
75
+ p.command :new do |c|
76
+ c.action do |global_options,command_options,args|
77
+ @ran_command = :new
78
+ end
79
+ end
80
+ end
81
+ run_app('remote','new')
82
+ assert_equal(@ran_command, :new)
83
+ run_app('remote', 'add')
84
+ assert_equal(@ran_command, :add)
85
+ end
86
+
87
+ def test_reopening_commands_doesnt_readd_to_output
88
+ @app.command :remote do |p|
89
+ p.command(:add) { }
90
+ end
91
+ @app.command :remote do |p|
92
+ p.command(:new) { }
93
+ end
94
+ command_names = @app.instance_variable_get("@commands_declaration_order").collect { |c| c.name }
95
+ assert_equal 1, command_names.grep(:remote).size
96
+ end
97
+
98
+
99
+ def test_we_can_reopen_commands_without_causing_conflicts
100
+ @app.command :remote do |p|
101
+ p.command :add do |c|
102
+ c.action do |global_options,command_options,args|
103
+ @ran_command = :remote_add
104
+ end
105
+ end
106
+ end
107
+ @app.command :local do |p|
108
+ p.command :add do |c|
109
+ c.action do |global_options,command_options,args|
110
+ @ran_command = :local_add
111
+ end
112
+ end
113
+ end
114
+ run_app('remote','add')
115
+ assert_equal(@ran_command, :remote_add)
116
+ run_app('local', 'add')
117
+ assert_equal(@ran_command, :local_add)
118
+ end
119
+
120
+
121
+ def test_we_can_nest_subcommands_very_deep
122
+ @run_results = { :add => nil, :rename => nil, :base => nil }
123
+ @app.command :remote do |c|
124
+
125
+ c.switch :f
126
+ c.command :add do |add|
127
+ add.command :some do |some|
128
+ some.command :cmd do |cmd|
129
+ cmd.switch :s
130
+ cmd.action do |global_options,command_options,args|
131
+ @run_results[:cmd] = [global_options,command_options,args]
132
+ end
133
+ end
134
+ end
135
+ end
136
+ end
137
+ ENV['GLI_DEBUG'] = 'true'
138
+ run_app('remote','add','some','cmd','-s','blah')
139
+ assert_command_ran_with(:cmd, :command_options => {:s => true, :f => false},:args => ['blah'])
140
+ end
141
+
142
+ def test_when_any_command_has_no_action_but_there_are_args_indicate_unknown_command
143
+ a_very_deeply_nested_command_structure
144
+ assert_raises GLI::UnknownCommand do
145
+ When run_app('remote','add','some','foo')
146
+ end
147
+ assert_match /Unknown command 'foo'/,@fake_stderr.to_s
148
+ end
149
+
150
+ def test_when_any_command_has_no_action_but_there_are_no_args_indicate_subcommand_needed
151
+ a_very_deeply_nested_command_structure
152
+ assert_raises GLI::BadCommandLine do
153
+ When run_app('remote','add','some')
154
+ end
155
+ assert_match /Command 'some' requires a subcommand/,@fake_stderr.to_s
156
+ end
157
+
158
+ private
159
+
160
+ def run_app(*args)
161
+ @exit_code = @app.run(args)
162
+ end
163
+
164
+ def a_very_deeply_nested_command_structure
165
+ @run_results = { :add => nil, :rename => nil, :base => nil }
166
+ @app.command :remote do |c|
167
+
168
+ c.switch :f
169
+ c.command :add do |add|
170
+ add.command :some do |some|
171
+ some.command :cmd do |cmd|
172
+ cmd.switch :s
173
+ cmd.action do |global_options,command_options,args|
174
+ @run_results[:cmd] = [global_options,command_options,args]
175
+ end
176
+ end
177
+ end
178
+ end
179
+ end
180
+ ENV['GLI_DEBUG'] = 'true'
181
+ end
182
+
183
+ # expected_command - name of command exepcted to have been run
184
+ # options:
185
+ # - global_options => hash of expected options
186
+ # - command_options => hash of expected command options
187
+ # - args => array of expected args
188
+ def assert_command_ran_with(expected_command,options)
189
+ global_options = options[:global_options] || { :help => false }
190
+ @run_results.each do |command,results|
191
+ if command == expected_command
192
+ assert_equal(indifferent_hash(global_options),results[0])
193
+ assert_equal(indifferent_hash(options[:command_options]),results[1])
194
+ assert_equal(options[:args],results[2])
195
+ else
196
+ assert_nil results
197
+ end
198
+ end
199
+ end
200
+
201
+ def indifferent_hash(possibly_nil_hash)
202
+ return {} if possibly_nil_hash.nil?
203
+ possibly_nil_hash.keys.each do |key|
204
+ if key.kind_of? Symbol
205
+ possibly_nil_hash[key.to_s] = possibly_nil_hash[key] unless possibly_nil_hash.has_key?(key.to_s)
206
+ elsif key.kind_of? String
207
+ possibly_nil_hash[key.to_sym] = possibly_nil_hash[key] unless possibly_nil_hash.has_key?(key.to_sym)
208
+ end
209
+ end
210
+ possibly_nil_hash
211
+ end
212
+
213
+ # options -
214
+ # :flags => flags to add to :add
215
+ # :switiches => switiches to add to :add
216
+ def we_have_a_command_with_two_subcommands(options = {})
217
+ @run_results = { :add => nil, :rename => nil, :base => nil }
218
+ @app.command :remote do |c|
219
+
220
+ c.switch :f
221
+
222
+ c.desc "add a remote"
223
+ c.command [:add,:new] do |add|
224
+
225
+ Array(options[:flags]).each { |_| add.flag _ }
226
+ Array(options[:switches]).each { |_| add.switch _ }
227
+ add.action do |global_options,command_options,args|
228
+ @run_results[:add] = [global_options,command_options,args]
229
+ end
230
+ end
231
+
232
+ c.desc "rename a remote"
233
+ c.command :rename do |rename|
234
+ rename.action do |global_options,command_options,args|
235
+ @run_results[:rename] = [global_options,command_options,args]
236
+ end
237
+ end
238
+
239
+ c.action do |global_options,command_options,args|
240
+ @run_results[:base] = [global_options,command_options,args]
241
+ end
242
+ end
243
+ ENV['GLI_DEBUG'] = 'true'
244
+ end
245
+ end
@@ -0,0 +1,49 @@
1
+ require_relative "test_helper"
2
+
3
+ class SwitchTest < MiniTest::Test
4
+ include TestHelper
5
+
6
+ def test_basics_simple
7
+ switch_with_names(:filename)
8
+ attributes_should_be_set
9
+ assert_equal(:filename,@cli_option.name)
10
+ assert_nil @cli_option.aliases
11
+ end
12
+
13
+ def test_basics_kinda_complex
14
+ switch_with_names([:f])
15
+ attributes_should_be_set
16
+ assert_equal(:f,@cli_option.name)
17
+ assert_nil @cli_option.aliases
18
+ end
19
+
20
+ def test_basics_complex
21
+ switch_with_names([:f,:file,:filename])
22
+ attributes_should_be_set
23
+ assert_equal(:f,@cli_option.name)
24
+ assert_equal([:file,:filename],@cli_option.aliases)
25
+ assert_equal ["-f","--[no-]file","--[no-]filename"],@switch.arguments_for_option_parser
26
+ end
27
+
28
+ def test_includes_negatable
29
+ assert_equal '-a',GLI::Switch.name_as_string('a')
30
+ assert_equal '--[no-]foo',GLI::Switch.name_as_string('foo')
31
+ end
32
+
33
+ private
34
+
35
+ def switch_with_names(names)
36
+ @options = {
37
+ :desc => 'Filename',
38
+ :long_desc => 'The Filename',
39
+ }
40
+ @switch = GLI::Switch.new(names,@options)
41
+ @cli_option = @switch
42
+ end
43
+
44
+ def attributes_should_be_set
45
+ assert_equal(@options[:desc],@switch.description)
46
+ assert_equal(@options[:long_desc],@switch.long_description)
47
+ end
48
+
49
+ end
@@ -1,9 +1,10 @@
1
- require 'test_helper'
1
+ require_relative "test_helper"
2
2
 
3
- class TC_testTerminal < Clean::Test::TestCase
3
+ class TerminalTest < MiniTest::Test
4
4
  include TestHelper
5
5
 
6
- def test_command_exists
6
+ # TODO: Make this test not mess with the internals of the class
7
+ def xtest_command_exists
7
8
  assert GLI::Terminal.instance.command_exists?('ls')
8
9
  assert !GLI::Terminal.instance.command_exists?('asdfasfasdf')
9
10
  end
@@ -0,0 +1,13 @@
1
+ require "minitest/autorun"
2
+ require "gli"
3
+
4
+ module TestHelper
5
+ class CLIApp
6
+ include GLI::App
7
+
8
+ def reset
9
+ super
10
+ @subcommand_option_handling_strategy = :normal
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,24 @@
1
+ require_relative "test_helper"
2
+
3
+ class TerminalTest < MiniTest::Test
4
+ include TestHelper
5
+
6
+ def test_handles_nil
7
+ @wrapper = GLI::Commands::HelpModules::VerbatimWrapper.new(rand(100),rand(100))
8
+ @result = @wrapper.wrap(nil)
9
+ assert_equal '',@result
10
+ end
11
+
12
+ def test_does_not_touch_input
13
+ @wrapper = GLI::Commands::HelpModules::VerbatimWrapper.new(rand(100),rand(100))
14
+ @input = <<EOS
15
+ |This is|an ASCII|table|
16
+ +-------+--------+-----+
17
+ | foo | bar | baz |
18
+ +-------+--------+-----+
19
+ EOS
20
+ @result = @wrapper.wrap(@input)
21
+ assert_equal @input,@result
22
+ end
23
+
24
+ end
metadata CHANGED
@@ -1,43 +1,43 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gli
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.18.2
4
+ version: 2.20.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Copeland
8
- autorequire:
9
- bindir: bin
8
+ autorequire:
9
+ bindir: exe
10
10
  cert_chain: []
11
- date: 2019-08-10 00:00:00.000000000 Z
11
+ date: 2021-06-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 0.9.2.2
19
+ version: '0'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: 0.9.2.2
26
+ version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rdoc
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: '4.2'
33
+ version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: '4.2'
40
+ version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rainbow
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -58,90 +58,34 @@ dependencies:
58
58
  - - "~>"
59
59
  - !ruby/object:Gem::Version
60
60
  version: 1.1.1
61
- - !ruby/object:Gem::Dependency
62
- name: clean_test
63
- requirement: !ruby/object:Gem::Requirement
64
- requirements:
65
- - - "~>"
66
- - !ruby/object:Gem::Version
67
- version: '1.0'
68
- type: :development
69
- prerelease: false
70
- version_requirements: !ruby/object:Gem::Requirement
71
- requirements:
72
- - - "~>"
73
- - !ruby/object:Gem::Version
74
- version: '1.0'
75
- - !ruby/object:Gem::Dependency
76
- name: cucumber
77
- requirement: !ruby/object:Gem::Requirement
78
- requirements:
79
- - - "~>"
80
- - !ruby/object:Gem::Version
81
- version: 3.1.2
82
- type: :development
83
- prerelease: false
84
- version_requirements: !ruby/object:Gem::Requirement
85
- requirements:
86
- - - "~>"
87
- - !ruby/object:Gem::Version
88
- version: 3.1.2
89
- - !ruby/object:Gem::Dependency
90
- name: gherkin
91
- requirement: !ruby/object:Gem::Requirement
92
- requirements:
93
- - - "~>"
94
- - !ruby/object:Gem::Version
95
- version: 5.1.0
96
- type: :development
97
- prerelease: false
98
- version_requirements: !ruby/object:Gem::Requirement
99
- requirements:
100
- - - "~>"
101
- - !ruby/object:Gem::Version
102
- version: 5.1.0
103
- - !ruby/object:Gem::Dependency
104
- name: aruba
105
- requirement: !ruby/object:Gem::Requirement
106
- requirements:
107
- - - "~>"
108
- - !ruby/object:Gem::Version
109
- version: 0.7.4
110
- type: :development
111
- prerelease: false
112
- version_requirements: !ruby/object:Gem::Requirement
113
- requirements:
114
- - - "~>"
115
- - !ruby/object:Gem::Version
116
- version: 0.7.4
117
61
  - !ruby/object:Gem::Dependency
118
62
  name: sdoc
119
63
  requirement: !ruby/object:Gem::Requirement
120
64
  requirements:
121
- - - "~>"
65
+ - - ">="
122
66
  - !ruby/object:Gem::Version
123
- version: '0.4'
67
+ version: '0'
124
68
  type: :development
125
69
  prerelease: false
126
70
  version_requirements: !ruby/object:Gem::Requirement
127
71
  requirements:
128
- - - "~>"
72
+ - - ">="
129
73
  - !ruby/object:Gem::Version
130
- version: '0.4'
74
+ version: '0'
131
75
  - !ruby/object:Gem::Dependency
132
- name: faker
76
+ name: minitest
133
77
  requirement: !ruby/object:Gem::Requirement
134
78
  requirements:
135
- - - "~>"
79
+ - - ">="
136
80
  - !ruby/object:Gem::Version
137
- version: 1.9.1
81
+ version: '0'
138
82
  type: :development
139
83
  prerelease: false
140
84
  version_requirements: !ruby/object:Gem::Requirement
141
85
  requirements:
142
- - - "~>"
86
+ - - ">="
143
87
  - !ruby/object:Gem::Version
144
- version: 1.9.1
88
+ version: '0'
145
89
  description: Build command-suite CLI apps that are awesome. Bootstrap your app, add
146
90
  commands, options and documentation while maintaining a well-tested idiomatic command-line
147
91
  app
@@ -153,28 +97,19 @@ extra_rdoc_files:
153
97
  - README.rdoc
154
98
  - gli.rdoc
155
99
  files:
100
+ - ".circleci/config.yml"
156
101
  - ".gitignore"
157
- - ".ruby-gemset"
158
- - ".ruby-version"
159
102
  - ".tool-versions"
160
- - ".travis.yml"
161
103
  - CONTRIBUTING.md
162
104
  - Gemfile
163
105
  - LICENSE.txt
164
- - ObjectModel.graffle
165
106
  - README.rdoc
166
107
  - Rakefile
108
+ - bin/ci
167
109
  - bin/gli
168
- - bin/report_on_rake_results
169
- - bin/test_all_rubies.sh
170
- - features/gli_executable.feature
171
- - features/gli_init.feature
172
- - features/step_definitions/gli_executable_steps.rb
173
- - features/step_definitions/gli_init_steps.rb
174
- - features/step_definitions/todo_steps.rb
175
- - features/support/env.rb
176
- - features/todo.feature
177
- - features/todo_legacy.feature
110
+ - bin/rake
111
+ - bin/setup
112
+ - exe/gli
178
113
  - gli.cheat
179
114
  - gli.gemspec
180
115
  - gli.rdoc
@@ -218,6 +153,8 @@ files:
218
153
  - lib/gli/switch.rb
219
154
  - lib/gli/terminal.rb
220
155
  - lib/gli/version.rb
156
+ - object-model.dot
157
+ - object-model.png
221
158
  - test/apps/README.md
222
159
  - test/apps/todo/Gemfile
223
160
  - test/apps/todo/README.rdoc
@@ -243,29 +180,32 @@ files:
243
180
  - test/apps/todo_legacy/todo.gemspec
244
181
  - test/apps/todo_legacy/todo.rdoc
245
182
  - test/apps/todo_plugins/commands/third.rb
246
- - test/config.yaml
247
- - test/fake_std_out.rb
248
- - test/init_simplecov.rb
249
- - test/option_test_helper.rb
250
- - test/tc_command.rb
251
- - test/tc_command_finder.rb
252
- - test/tc_compound_command.rb
253
- - test/tc_doc.rb
254
- - test/tc_flag.rb
255
- - test/tc_gli.rb
256
- - test/tc_help.rb
257
- - test/tc_options.rb
258
- - test/tc_subcommand_parsing.rb
259
- - test/tc_subcommands.rb
260
- - test/tc_switch.rb
261
- - test/tc_terminal.rb
262
- - test/tc_verbatim_wrapper.rb
263
- - test/test_helper.rb
264
- homepage: http://davetron5000.github.com/gli
183
+ - test/integration/gli_cli_test.rb
184
+ - test/integration/gli_powered_app_test.rb
185
+ - test/integration/scaffold_test.rb
186
+ - test/integration/test_helper.rb
187
+ - test/unit/command_finder_test.rb
188
+ - test/unit/command_test.rb
189
+ - test/unit/compound_command_test.rb
190
+ - test/unit/doc_test.rb
191
+ - test/unit/flag_test.rb
192
+ - test/unit/gli_test.rb
193
+ - test/unit/help_test.rb
194
+ - test/unit/init_simplecov.rb
195
+ - test/unit/options_test.rb
196
+ - test/unit/subcommand_parsing_test.rb
197
+ - test/unit/subcommands_test.rb
198
+ - test/unit/support/fake_std_out.rb
199
+ - test/unit/support/gli_test_config.yml
200
+ - test/unit/switch_test.rb
201
+ - test/unit/terminal_test.rb
202
+ - test/unit/test_helper.rb
203
+ - test/unit/verbatim_wrapper_test.rb
204
+ homepage: http://davetron5000.github.io/gli
265
205
  licenses:
266
206
  - Apache-2.0
267
207
  metadata: {}
268
- post_install_message:
208
+ post_install_message:
269
209
  rdoc_options:
270
210
  - "--title"
271
211
  - Git Like Interface
@@ -284,19 +224,11 @@ required_rubygems_version: !ruby/object:Gem::Requirement
284
224
  - !ruby/object:Gem::Version
285
225
  version: '0'
286
226
  requirements: []
287
- rubygems_version: 3.0.3
288
- signing_key:
227
+ rubygems_version: 3.1.2
228
+ signing_key:
289
229
  specification_version: 4
290
230
  summary: Build command-suite CLI apps that are awesome.
291
231
  test_files:
292
- - features/gli_executable.feature
293
- - features/gli_init.feature
294
- - features/step_definitions/gli_executable_steps.rb
295
- - features/step_definitions/gli_init_steps.rb
296
- - features/step_definitions/todo_steps.rb
297
- - features/support/env.rb
298
- - features/todo.feature
299
- - features/todo_legacy.feature
300
232
  - test/apps/README.md
301
233
  - test/apps/todo/Gemfile
302
234
  - test/apps/todo/README.rdoc
@@ -322,21 +254,24 @@ test_files:
322
254
  - test/apps/todo_legacy/todo.gemspec
323
255
  - test/apps/todo_legacy/todo.rdoc
324
256
  - test/apps/todo_plugins/commands/third.rb
325
- - test/config.yaml
326
- - test/fake_std_out.rb
327
- - test/init_simplecov.rb
328
- - test/option_test_helper.rb
329
- - test/tc_command.rb
330
- - test/tc_command_finder.rb
331
- - test/tc_compound_command.rb
332
- - test/tc_doc.rb
333
- - test/tc_flag.rb
334
- - test/tc_gli.rb
335
- - test/tc_help.rb
336
- - test/tc_options.rb
337
- - test/tc_subcommand_parsing.rb
338
- - test/tc_subcommands.rb
339
- - test/tc_switch.rb
340
- - test/tc_terminal.rb
341
- - test/tc_verbatim_wrapper.rb
342
- - test/test_helper.rb
257
+ - test/integration/gli_cli_test.rb
258
+ - test/integration/gli_powered_app_test.rb
259
+ - test/integration/scaffold_test.rb
260
+ - test/integration/test_helper.rb
261
+ - test/unit/command_finder_test.rb
262
+ - test/unit/command_test.rb
263
+ - test/unit/compound_command_test.rb
264
+ - test/unit/doc_test.rb
265
+ - test/unit/flag_test.rb
266
+ - test/unit/gli_test.rb
267
+ - test/unit/help_test.rb
268
+ - test/unit/init_simplecov.rb
269
+ - test/unit/options_test.rb
270
+ - test/unit/subcommand_parsing_test.rb
271
+ - test/unit/subcommands_test.rb
272
+ - test/unit/support/fake_std_out.rb
273
+ - test/unit/support/gli_test_config.yml
274
+ - test/unit/switch_test.rb
275
+ - test/unit/terminal_test.rb
276
+ - test/unit/test_helper.rb
277
+ - test/unit/verbatim_wrapper_test.rb