cl 0.1.12 → 0.1.13

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.
@@ -0,0 +1,22 @@
1
+ #!/usr/bin/env ruby
2
+ $: << File.expand_path('lib')
3
+
4
+ require 'cl'
5
+
6
+ class Add < Cl::Cmd
7
+ opt '--to GROUP', alias: :group
8
+
9
+ def run
10
+ p opts, to, to?, group, group?
11
+ end
12
+ end
13
+
14
+ Cl.new('owners').run(%w(add --to one))
15
+
16
+ # Output:
17
+ #
18
+ # {"to" => "one"}
19
+ # "one"
20
+ # true
21
+ # "one"
22
+ # true
@@ -0,0 +1,16 @@
1
+ #!/usr/bin/env ruby
2
+ $: << File.expand_path('lib')
3
+
4
+ require 'cl'
5
+
6
+ class Add < Cl::Cmd
7
+ arg :owner
8
+
9
+ def run
10
+ p owner
11
+ end
12
+ end
13
+
14
+ Cl.new('owners').run(%w(add one))
15
+
16
+ # => "one"
@@ -0,0 +1,16 @@
1
+ #!/usr/bin/env ruby
2
+ $: << File.expand_path('lib')
3
+
4
+ require 'cl'
5
+
6
+ class Add < Cl::Cmd
7
+ arg :owners, type: :array, sep: ','
8
+
9
+ def run
10
+ p owners
11
+ end
12
+ end
13
+
14
+ Cl.new('owners').run(%w(add one,two))
15
+
16
+ # => ["one", "two"]
@@ -0,0 +1,18 @@
1
+ #!/usr/bin/env ruby
2
+ $: << File.expand_path('lib')
3
+
4
+ require 'cl'
5
+
6
+ class Cmd < Cl::Cmd
7
+ arg :one, type: :integer
8
+ arg :two, type: :float
9
+ arg :three, type: :boolean
10
+
11
+ def run
12
+ p [one.class, two.class, three.class]
13
+ end
14
+ end
15
+
16
+ Cl.new('owners').run(%w(cmd 1 2.1 yes))
17
+
18
+ # => [Integer, Float, TrueClass]
@@ -0,0 +1,43 @@
1
+ #!/usr/bin/env ruby
2
+ $: << File.expand_path('lib')
3
+
4
+ require 'cl'
5
+
6
+ class Lft < Cl::Cmd
7
+ arg :a, type: :array, splat: true
8
+ arg :b
9
+ arg :c
10
+
11
+ def run
12
+ p [a, b, c]
13
+ end
14
+ end
15
+
16
+ class Mid < Cl::Cmd
17
+ arg :a
18
+ arg :b, type: :array, splat: true
19
+ arg :c
20
+
21
+ def run
22
+ p [a, b, c]
23
+ end
24
+ end
25
+
26
+ class Rgt < Cl::Cmd
27
+ arg :a
28
+ arg :b
29
+ arg :c, type: :array, splat: true
30
+
31
+ def run
32
+ p [a, b, c]
33
+ end
34
+ end
35
+
36
+ Cl.new('splat').run(%w(lft 1 2 3 4 5))
37
+ Cl.new('splat').run(%w(mid 1 2 3 4 5))
38
+ Cl.new('splat').run(%w(rgt 1 2 3 4 5))
39
+
40
+ # =>
41
+ # [["1", "2", "3"], "4", "5"]
42
+ # ["1", ["2", "3", "4"], "5"]
43
+ # ["1", "2", ["3", "4", "5"]]
@@ -0,0 +1,18 @@
1
+ #!/usr/bin/env ruby
2
+ $: << File.expand_path('lib')
3
+
4
+ require 'cl'
5
+
6
+ class Add < Cl::Cmd
7
+ opt '--to GROUP', type: :array
8
+
9
+ def run
10
+ p to
11
+ end
12
+ end
13
+
14
+ Cl.new('owners').run(%w(add --to one --to two))
15
+
16
+ # Output:
17
+ #
18
+ # ["one", "two"]
@@ -0,0 +1,18 @@
1
+ #!/usr/bin/env ruby
2
+ $: << File.expand_path('lib')
3
+
4
+ require 'cl'
5
+
6
+ class Add < Cl::Cmd
7
+ opt '--to GROUP', default: 'default'
8
+
9
+ def run
10
+ p to
11
+ end
12
+ end
13
+
14
+ Cl.new('owners').run(%w(add))
15
+
16
+ # Output:
17
+ #
18
+ # "default"
@@ -0,0 +1,21 @@
1
+ #!/usr/bin/env ruby
2
+ $: << File.expand_path('lib')
3
+
4
+ require 'cl'
5
+
6
+ class Add < Cl::Cmd
7
+ opt '--to GROUP'
8
+ opt '--target GROUP', deprecated: 'Deprecated: --target'
9
+
10
+ def run
11
+ p to, deprecated_opts
12
+ end
13
+ end
14
+
15
+ Cl.new('owners').run(%w(add --target one))
16
+
17
+ # Output:
18
+ #
19
+ # "one"
20
+ # {:target=>'Deprecated: --target'}
21
+
@@ -0,0 +1,20 @@
1
+ #!/usr/bin/env ruby
2
+ $: << File.expand_path('lib')
3
+
4
+ require 'cl'
5
+
6
+ class Add < Cl::Cmd
7
+ opt '--to GROUP', alias: :target, deprecated: :target
8
+
9
+ def run
10
+ p to, deprecated_opts
11
+ end
12
+ end
13
+
14
+ Cl.new('owners').run(%w(add --target one))
15
+
16
+ # Output:
17
+ #
18
+ # "one"
19
+ # {:target=>:to}
20
+
@@ -0,0 +1,18 @@
1
+ #!/usr/bin/env ruby
2
+ $: << File.expand_path('lib')
3
+
4
+ require 'cl'
5
+
6
+ class Add < Cl::Cmd
7
+ opt '--to GROUP', downcase: true
8
+
9
+ def run
10
+ p to
11
+ end
12
+ end
13
+
14
+ Cl.new('owners').run(%w(add --to ONE))
15
+
16
+ # Output:
17
+ #
18
+ # "one"
@@ -0,0 +1,26 @@
1
+ #!/usr/bin/env ruby
2
+ $: << File.expand_path('lib')
3
+
4
+ require 'cl'
5
+
6
+ class Add < Cl::Cmd
7
+ opt '--to GROUP', enum: %w(one two)
8
+
9
+ def run
10
+ p to
11
+ end
12
+ end
13
+
14
+ Cl.new('owners').run(%w(add --to one))
15
+
16
+ # Output:
17
+ #
18
+ # "one"
19
+
20
+ Cl.new('owners').run(%w(add --to unknown))
21
+
22
+ # Unknown value: to=unknown (known values: one, two)
23
+ #
24
+ # Usage: enum add [options]
25
+ #
26
+ # Options: ...
@@ -0,0 +1,17 @@
1
+ #!/usr/bin/env ruby
2
+ $: << File.expand_path('lib')
3
+
4
+ require 'cl'
5
+
6
+ class Add < Cl::Cmd
7
+ opt '--to GROUP', example: 'group-one'
8
+ end
9
+
10
+ Cl.new('owners').run(%w(add --help))
11
+
12
+ # Usage: example add [options]
13
+ #
14
+ # Options:
15
+ #
16
+ # --to GROUP type: string, e.g.: group-one
17
+ # --help Get help on this command
@@ -0,0 +1,29 @@
1
+ #!/usr/bin/env ruby
2
+ $: << File.expand_path('lib')
3
+
4
+ require 'cl'
5
+
6
+ class Add < Cl::Cmd
7
+ opt '--to GROUP', format: /^\w+$/
8
+
9
+ def run
10
+ p to
11
+ end
12
+ end
13
+
14
+ Cl.new('owners').run(%w(add --to one))
15
+
16
+ # Output:
17
+ #
18
+ # "one"
19
+
20
+ Cl.new('owners').run(['add', '--to', 'does not match!'])
21
+
22
+ Invalid format: to (format: /^\w+$/)
23
+
24
+ Usage: format add [options]
25
+
26
+ Options:
27
+
28
+ --to GROUP type: string, format: /^\w+$/
29
+ --help Get help on this command
@@ -0,0 +1,18 @@
1
+ #!/usr/bin/env ruby
2
+ $: << File.expand_path('lib')
3
+
4
+ require 'cl'
5
+
6
+ class Add < Cl::Cmd
7
+ opt '--to GROUP'
8
+ opt '--hidden', internal: true
9
+ end
10
+
11
+ Cl.new('owners').run(%w(add --help))
12
+
13
+ # Usage: example add [options]
14
+ #
15
+ # Options:
16
+ #
17
+ # --to GROUP type: string, e.g.: group-one
18
+ # --help Get help on this command
@@ -0,0 +1,29 @@
1
+ #!/usr/bin/env ruby
2
+ $: << File.expand_path('lib')
3
+
4
+ require 'cl'
5
+
6
+ class Add < Cl::Cmd
7
+ opt '--to GROUP', 'Target group to add owners to'
8
+
9
+ def run
10
+ p opts, to, to?
11
+ end
12
+ end
13
+
14
+ Cl.new('owners').run(%w(add --to one))
15
+
16
+ # Output:
17
+ #
18
+ # {"to" => "one"}
19
+ # "one"
20
+ # true
21
+
22
+ Cl.new('owners').run(%w(add --help))
23
+
24
+ # Usage: opts add [options]
25
+ #
26
+ # Options:
27
+ #
28
+ # --to GROUP Target group to add owners to (type: string)
29
+ # --help Get help on this command
@@ -0,0 +1,26 @@
1
+ #!/usr/bin/env ruby
2
+ $: << File.expand_path('lib')
3
+
4
+ require 'cl'
5
+
6
+ class Add < Cl::Cmd
7
+ # depending on its arity the block can receive:
8
+ #
9
+ # * value
10
+ # * value, name
11
+ # * value, name, type
12
+ # * value, name, type, opts
13
+ opt '--to GROUP' do |value|
14
+ opts[:to] = "#{value.upcase}!"
15
+ end
16
+
17
+ def run
18
+ p to
19
+ end
20
+ end
21
+
22
+ Cl.new('owners').run(%w(add --to one))
23
+
24
+ # Output:
25
+ #
26
+ # "ONE!"
@@ -0,0 +1,29 @@
1
+ #!/usr/bin/env ruby
2
+ $: << File.expand_path('lib')
3
+
4
+ require 'cl'
5
+
6
+ class Add < Cl::Cmd
7
+ opt '--retries COUNT', type: :integer, min: 1, max: 5
8
+
9
+ def run
10
+ p retries
11
+ end
12
+ end
13
+
14
+ Cl.new('owners').run(%w(add --retries 1))
15
+
16
+ # Output:
17
+ #
18
+ # 1
19
+
20
+ Cl.new('owners').run(%w(add --retries 10))
21
+
22
+ # Out of range: retries (max: 5)
23
+ #
24
+ # Usage: max add [options]
25
+ #
26
+ # Options:
27
+ #
28
+ # --retries COUNT type: integer, min: 1, max: 5
29
+ # --help Get help on this command
@@ -0,0 +1,29 @@
1
+ #!/usr/bin/env ruby
2
+ $: << File.expand_path('lib')
3
+
4
+ require 'cl'
5
+
6
+ class Add < Cl::Cmd
7
+ opt '--to GROUP', required: true
8
+
9
+ def run
10
+ p to
11
+ end
12
+ end
13
+
14
+ Cl.new('owners').run(%w(add --to one))
15
+
16
+ # Output:
17
+ #
18
+ # "one"
19
+
20
+ Cl.new('owners').run(%w(add))
21
+
22
+ # Missing required option: to
23
+ #
24
+ # Usage: required add [options]
25
+ #
26
+ # Options:
27
+ #
28
+ # --to GROUP type: string, required: true
29
+ # --help Get help on this command
@@ -0,0 +1,36 @@
1
+ #!/usr/bin/env ruby
2
+ $: << File.expand_path('lib')
3
+
4
+ require 'cl'
5
+
6
+ class Add < Cl::Cmd
7
+ # read DNF, i.e. "apikey OR username AND password
8
+ required :api_key, [:username, :password]
9
+
10
+ opt '--api_key KEY'
11
+ opt '--username NAME'
12
+ opt '--password PASS'
13
+
14
+ def run
15
+ p to, retries
16
+ end
17
+ end
18
+
19
+ Cl.new('owners').run(%w(add --to one --retries 1))
20
+
21
+ # Output:
22
+ #
23
+ # "one"
24
+ # 1
25
+
26
+ Cl.new('owners').run(%w(add --retries 1))
27
+
28
+ # Missing option: to (required by retries)
29
+ #
30
+ # Usage: requires add [options]
31
+ #
32
+ # Options:
33
+ #
34
+ # --to GROUP type: string
35
+ # --retries INT type: string, requires: to
36
+ # --help Get help on this command