config_context 0.7.3 → 0.7.4

Sign up to get free protection for your applications and to get access to all the features.
@@ -114,6 +114,14 @@ module ConfigContext
114
114
  default ? default : nil
115
115
  end
116
116
  end
117
+
118
+ def fetch!(key,default)
119
+
120
+ @config || init
121
+
122
+ @config[key] = default unless @config.include?(key)
123
+ @config[key]
124
+ end
117
125
 
118
126
  deprecate :load, :configure
119
127
  deprecate :all, :to_hash
@@ -4,7 +4,7 @@ module ConfigContext
4
4
  INFO = {
5
5
  :major =>0,
6
6
  :minor =>7,
7
- :patch =>3
7
+ :patch =>4
8
8
  }
9
9
 
10
10
  def self.number(version_info=INFO)
@@ -68,6 +68,9 @@ class TestConfigContext < Test::Unit::TestCase
68
68
  assert_equal(ConfigContext.fetch(:mysymbol_, "default value"), "default value")
69
69
  assert_equal(ConfigContext.fetch(:mysymbol_, [1,2,3]), [1,2,3])
70
70
  assert_equal(ConfigContext.fetch(:mysymbol_, {:a=>'a', :b=>'b'}), {:a=>'a', :b=>'b'})
71
+
72
+ assert_equal(ConfigContext.fetch!(:mysymbol_, "default value"), "default value")
73
+ assert_equal(ConfigContext.fetch!(:mysymbol_, "new value"), "default value")
71
74
  end
72
75
 
73
76
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: config_context
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.3
4
+ version: 0.7.4
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2011-07-01 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: json
16
- requirement: &2156468160 !ruby/object:Gem::Requirement
16
+ requirement: &2153221120 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2156468160
24
+ version_requirements: *2153221120
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: jeweler
27
- requirement: &2156460860 !ruby/object:Gem::Requirement
27
+ requirement: &2153220320 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *2156460860
35
+ version_requirements: *2153220320
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rcov
38
- requirement: &2156459540 !ruby/object:Gem::Requirement
38
+ requirement: &2153219560 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *2156459540
46
+ version_requirements: *2153219560
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: json
49
- requirement: &2156458460 !ruby/object:Gem::Requirement
49
+ requirement: &2153218740 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,7 +54,7 @@ dependencies:
54
54
  version: '0'
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *2156458460
57
+ version_requirements: *2153218740
58
58
  description: My config DSL
59
59
  email: javier.juarez@gmail.com
60
60
  executables: []