optparse-subcommand 1.0.0.pre.2 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: a4ddc7b210db174e4e63ff97c3e2d14ed6f87304
4
+ data.tar.gz: e182abc38c419b3750143a059bf46c41b72b0415
5
+ SHA512:
6
+ metadata.gz: 975a977839672edd73731a579ff68526f67cb14f27d0665a6211b51eb8e52ad14dc2a6d370c7861c951dd58de0a64e3763d3022cc968b82bd5493007bc8889ba
7
+ data.tar.gz: ab3839a5cb7b988ba74d54345585cee27135f29fc7f09a5138f444b0ca91164f86fc21b64405a1e127ec096a2bba2dc53e63aa262a913a4961de5fd38258aeac
@@ -14,16 +14,29 @@ class OptionParser
14
14
  alias_method :parse_without_subcommand!, :parse!
15
15
  alias_method :parse!, :parse_with_subcommand!
16
16
  public :parse!
17
+
18
+ alias_method :summarize_without_subcommand, :summarize
19
+ alias_method :summarize, :summarize_with_subcommand
17
20
  end
18
21
  end
19
22
 
20
- def parse_with_subcommand!(argv = default_argv)
23
+ def parse_with_subcommand!(*args)
21
24
  subcommand = catch(:subcommand) do
22
- return order!(argv) { |sub| throw :subcommand, sub }
25
+ return order!(*args) { |sub| throw :subcommand, sub }
23
26
  end
24
27
 
25
28
  sub_parser = subcommands[subcommand.to_s]
26
- sub_parser.call.send(:parse!, argv) if sub_parser
29
+ sub_parser.call.send(:parse!, *args) if sub_parser
30
+ end
31
+
32
+ def summarize_with_subcommand(to = [], width = @summary_width, max = width - 1, indent = @summary_indent, &blk)
33
+ summarize_without_subcommand(to, width, max, indent, &blk)
34
+ to << "\n"
35
+ subcommands.each do |key, sub_parser|
36
+ to << indent + key + "\n"
37
+ sub_parser.call.send(:summarize,to,width,max,indent + " ",&blk)
38
+ end
39
+ to
27
40
  end
28
41
 
29
42
  def subcommands
@@ -38,4 +38,6 @@ describe OptionParser do
38
38
  specify { run("-t foo").should == [:t, :foo] }
39
39
 
40
40
  specify { lambda { run("foo -t") }.should raise_error(OptionParser::InvalidOption )}
41
+
42
+ specify { options.to_s.should match(/foo/) }
41
43
  end
metadata CHANGED
@@ -1,38 +1,43 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: optparse-subcommand
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.pre.2
5
- prerelease: 6
4
+ version: 1.0.0
6
5
  platform: ruby
7
6
  authors:
8
- - Bodaniel Jeanes
7
+ - Bo Jeanes
9
8
  autorequire: optparse/subcommand
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2012-04-15 00:00:00.000000000Z
11
+ date: 2017-04-08 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: rake
16
- requirement: &70133024665860 !ruby/object:Gem::Requirement
17
- none: false
15
+ requirement: !ruby/object:Gem::Requirement
18
16
  requirements:
19
- - - ! '>='
17
+ - - "~>"
20
18
  - !ruby/object:Gem::Version
21
- version: '0'
19
+ version: '12.0'
22
20
  type: :development
23
21
  prerelease: false
24
- version_requirements: *70133024665860
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '12.0'
25
27
  - !ruby/object:Gem::Dependency
26
28
  name: rspec
27
- requirement: &70133024662180 !ruby/object:Gem::Requirement
28
- none: false
29
+ requirement: !ruby/object:Gem::Requirement
29
30
  requirements:
30
- - - =
31
+ - - '='
31
32
  - !ruby/object:Gem::Version
32
33
  version: 2.9.0
33
34
  type: :development
34
35
  prerelease: false
35
- version_requirements: *70133024662180
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '='
39
+ - !ruby/object:Gem::Version
40
+ version: 2.9.0
36
41
  description: Add subcommand parsing to Ruby's OptionParser class
37
42
  email: me@bjeanes.com
38
43
  executables: []
@@ -44,26 +49,26 @@ files:
44
49
  - lib/optparse/subcommand.rb
45
50
  - spec/optparse/subcommand_spec.rb
46
51
  homepage: http://github.com/bjeanes/optparse-subcommand
47
- licenses: []
52
+ licenses:
53
+ - MIT
54
+ metadata: {}
48
55
  post_install_message:
49
56
  rdoc_options: []
50
57
  require_paths:
51
58
  - lib
52
59
  required_ruby_version: !ruby/object:Gem::Requirement
53
- none: false
54
60
  requirements:
55
- - - ! '>='
61
+ - - ">="
56
62
  - !ruby/object:Gem::Version
57
63
  version: '0'
58
64
  required_rubygems_version: !ruby/object:Gem::Requirement
59
- none: false
60
65
  requirements:
61
- - - ! '>'
66
+ - - ">="
62
67
  - !ruby/object:Gem::Version
63
- version: 1.3.1
68
+ version: '0'
64
69
  requirements: []
65
70
  rubyforge_project:
66
- rubygems_version: 1.8.10
71
+ rubygems_version: 2.5.2
67
72
  signing_key:
68
73
  specification_version: 3
69
74
  summary: Add subcommand parsing to Ruby's OptionParser class