lucie-lib 0.1.0 → 0.1.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 80a65f6ee5a45b19bd5c771cbb51f29d457cd9d2
4
- data.tar.gz: b800eca212e9572e9ef879597fcd1e6b1b233d0a
3
+ metadata.gz: 1890f2620b8a2908f72efb4e841822847679a68f
4
+ data.tar.gz: 705bbd9a083d306440ddf60220ced2b1aabb274a
5
5
  SHA512:
6
- metadata.gz: 16490b1dabaf91a42fd7c18c666030e85525cfe7d932c36aab09be8bbeb00e777aa9f9f03fd086857b84628308ff6e513c0467999b2410d7b21ee0133574fd99
7
- data.tar.gz: 0d81b701679534c0773baf3e2f11467109100b91185e5a5c0a7b032bc7233e31a9efab351c27de3a9a4d4676417585c68e60df14274933dbf82e0a57042a2198
6
+ metadata.gz: 6819bc30b5ff2246bada46b20d4b999b3cb5d9603e1dc1776028a6633c6720b6d81c4c708e0afc07734b796008e4a9a4db04fdb5655efa6d0bfc928c99048b76
7
+ data.tar.gz: 5cf81228f808c387659d9b8150bcc979f0b6bf7c187df8a0ea4afab184f6b9aca93a27cd202c92affe1706465613673ae0cb446985f588ce28918d1c4a9ae6ab
@@ -17,6 +17,7 @@ module Lucie
17
17
  def mandatory(*args)
18
18
  v = Validator.new(args)
19
19
  v.apply(params)
20
+ params.pair(v.short_option, v.long_option)
20
21
  end
21
22
 
22
23
  def self.included(base)
@@ -11,6 +11,11 @@ module Lucie
11
11
  base.extend(ClassMethods)
12
12
  end
13
13
 
14
+ def optional(*args)
15
+ v = Validator.new(args)
16
+ params.pair(v.short_option, v.long_option)
17
+ end
18
+
14
19
  module ClassMethods
15
20
  def optional(*args)
16
21
  self.validators << Validator.new(args)
data/lib/lucie/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module Lucie
2
2
  unless defined?(VERSION)
3
- VERSION = "0.1.0"
3
+ VERSION = "0.1.1"
4
4
  end
5
5
  end
@@ -38,6 +38,18 @@ class ParameterPairingMandatoryController < Controller::Base
38
38
  end
39
39
  end
40
40
 
41
+ class ParameterPairingMandatoryNestedController < Controller::Base
42
+ def nested_short
43
+ mandatory "-e", "--expression", "Search expression"
44
+ print params[:e]
45
+ end
46
+
47
+ def nested_long
48
+ mandatory "-e", "--expression", "Search expression"
49
+ print params[:expression]
50
+ end
51
+ end
52
+
41
53
  class ParameterPairingOptionalController < Controller::Base
42
54
  optional "-e", "--expression", "Search expression"
43
55
 
@@ -50,6 +62,18 @@ class ParameterPairingOptionalController < Controller::Base
50
62
  end
51
63
  end
52
64
 
65
+ class ParameterPairingOptionalNestedController < Controller::Base
66
+ def nested_short
67
+ optional "-e", "--expression", "Search expression"
68
+ print params[:e]
69
+ end
70
+
71
+ def nested_long
72
+ optional "-e", "--expression", "Search expression"
73
+ print params[:expression]
74
+ end
75
+ end
76
+
53
77
  class ExitValueController < Controller::Base
54
78
  def method1
55
79
  exit 1
@@ -55,6 +55,20 @@ describe App do
55
55
  assert_output("some_string", nil) { TestApp.run("parameter_pairing_mandatory search_long --expression some_string") }
56
56
  end
57
57
 
58
+ should "be able to pair nested mandatory parameters" do
59
+ assert_output("some_string", nil) { TestApp.run("parameter_pairing_mandatory_nested nested_short -e some_string") }
60
+ assert_output("some_string", nil) { TestApp.run("parameter_pairing_mandatory_nested nested_long -e some_string") }
61
+ assert_output("some_string", nil) { TestApp.run("parameter_pairing_mandatory_nested nested_short --expression some_string") }
62
+ assert_output("some_string", nil) { TestApp.run("parameter_pairing_mandatory_nested nested_long --expression some_string") }
63
+ end
64
+
65
+ should "be able to pair nested optional parameters" do
66
+ assert_output("some_string", nil) { TestApp.run("parameter_pairing_optional_nested nested_short -e some_string") }
67
+ assert_output("some_string", nil) { TestApp.run("parameter_pairing_optional_nested nested_long -e some_string") }
68
+ assert_output("some_string", nil) { TestApp.run("parameter_pairing_optional_nested nested_short --expression some_string") }
69
+ assert_output("some_string", nil) { TestApp.run("parameter_pairing_optional_nested nested_long --expression some_string") }
70
+ end
71
+
58
72
  should "write to stderr that no controller found when controller is missing" do
59
73
  assert_output "", "Controller is not found for no_controller." do
60
74
  TestApp.run("no_controller")
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lucie-lib
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nucc
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-02-16 00:00:00.000000000 Z
11
+ date: 2014-05-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake