uri_config 0.0.9 → 0.0.10

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ea448e4b45a82d816ed2dccfbc73673ddd3c0c7e
4
- data.tar.gz: c8fe6f3560a1ad28efa50139f17323124ec912e2
3
+ metadata.gz: 40394865dbccb2b2efde25744c5b54da9b6df35c
4
+ data.tar.gz: c5f19f7f915f646e4543e0d18d61381dca83a548
5
5
  SHA512:
6
- metadata.gz: 157f9359f59d259d20bd88b11243075b79dddbe6abff143a0d2bf3940dc432f5edc77fc9e4cd584ed7e708db890c38fcb37517be66c714e687d31e9d57dda951
7
- data.tar.gz: f8dbe8e23b62c330103481a4868692272191ff6e5b3e1ac67d090f14cd3528c606acd60a8e14c2894eb977a11da0780f4ddc17ef2e219d1f667c3665934095d4
6
+ metadata.gz: 9b04b1ee599f4a2bcf46bbd6fda0cbe0502c19c86d8da089ba7a4868425b3d6e58f94a89cd3433fe19ccc7f2020d9d4a222c481c972c665ff8a6a13b5cd38f17
7
+ data.tar.gz: 8f76c409190a46de5db54346906b2a5591dce499b34a0b8ac67024c20ec9f100572d33cb4f6f5b94863a3b3160e736e806bd748d9947f62ffaa27df48487b611
@@ -17,26 +17,25 @@ module URIConfig
17
17
  end
18
18
  end
19
19
 
20
- def self.configure_from(env_var)
21
- return unless (value = ENV[env_var])
22
-
23
- config = new(value)
24
- yield config if block_given?
25
-
26
- config
20
+ def self.configure_from(env_var, &block)
21
+ configure_from!(env_var, &block)
22
+ rescue KeyError
23
+ nil
27
24
  end
28
25
 
29
26
  def self.configure_from!(env_var)
30
- return unless (value = ENV.fetch(env_var))
31
-
32
- config = new(value)
33
- yield config if block_given?
27
+ config = new ENV.fetch(env_var)
34
28
 
35
- config
29
+ if block_given?
30
+ yield config
31
+ else
32
+ config
33
+ end
36
34
  end
37
35
 
38
36
  def self.values_from(env_var, *params)
39
- config = new(ENV.fetch(env_var))
37
+ config = configure_from!(env_var)
38
+
40
39
  params.map { |param| config.public_send(param) }
41
40
  end
42
41
 
@@ -1,3 +1,3 @@
1
1
  module URIConfig
2
- VERSION = "0.0.9"
2
+ VERSION = "0.0.10"
3
3
  end
data/spec/config_spec.rb CHANGED
@@ -87,6 +87,15 @@ module URIConfig
87
87
  end
88
88
  end
89
89
 
90
+ context "with a block" do
91
+ specify do
92
+ host = URIConfig::Config.configure_from("TEST_URL") do |config|
93
+ config.host
94
+ end
95
+ expect(host).to eq "example.com"
96
+ end
97
+ end
98
+
90
99
  specify do
91
100
  expect do |b|
92
101
  URIConfig::Config.configure_from("TEST_URL", &b)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: uri_config
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.9
4
+ version: 0.0.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jonathon M. Abbott
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-09-15 00:00:00.000000000 Z
11
+ date: 2015-09-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler