nifty_settings 1.1.5 → 1.1.6
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 +4 -4
- data/CHANGELOG.md +4 -0
- data/lib/nifty_settings/settings.rb +5 -1
- data/lib/nifty_settings/version.rb +1 -1
- data/nifty_settings.gemspec +1 -1
- data/spec/nifty_settings/settings_spec.rb +31 -0
- data/spec/support/settings.yml +1 -0
- data/spec/support/settings_empty.yml +0 -0
- metadata +19 -14
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d69c55980e686ed5ccc21d0d8fd7de395167016c
|
4
|
+
data.tar.gz: a4c73431de6fe4842197714100f6c2de742506ce
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e98c48636bb4061f903d5c5bed4094125b55e21de576cd754f47e90cb1ccd0a730d2e47ea8f159d513c102db987aa7fe00227ad02b9ff55ace828a1bfe068b6e
|
7
|
+
data.tar.gz: 739d7a10134c442bc00b3bec378d36725a3ca93111ec42271fa71051fcbb98e056c7816450600da16cd5bc97c803a0f1f4ed86392e376ef40fe0174bef3ca61a
|
data/CHANGELOG.md
ADDED
@@ -76,6 +76,10 @@ module NiftySettings
|
|
76
76
|
@@settings_path ||= root.join('config', 'settings.yml').to_s
|
77
77
|
end
|
78
78
|
|
79
|
+
def settings_path=(value)
|
80
|
+
@@settings_path = value
|
81
|
+
end
|
82
|
+
|
79
83
|
def load_from_file
|
80
84
|
if !File.readable?(settings_path)
|
81
85
|
$stderr.puts "Unable to load settings from #{settings_path} - Please check it exists and is readable."
|
@@ -84,7 +88,7 @@ module NiftySettings
|
|
84
88
|
# Otherwise, try loading...
|
85
89
|
contents = File.read(settings_path)
|
86
90
|
contents = ERB.new(contents).result
|
87
|
-
contents = YAML.load(contents)
|
91
|
+
contents = YAML.load(contents) || {}
|
88
92
|
if env.nil?
|
89
93
|
contents
|
90
94
|
else
|
data/nifty_settings.gemspec
CHANGED
@@ -11,7 +11,7 @@ Gem::Specification.new do |gem|
|
|
11
11
|
gem.email = 'manuel@krautcomputing.com'
|
12
12
|
gem.summary = 'Settings'
|
13
13
|
gem.description = 'Settings'
|
14
|
-
gem.homepage = ''
|
14
|
+
gem.homepage = 'http://krautcomputing.github.io/nifty_settings'
|
15
15
|
gem.license = 'MIT'
|
16
16
|
|
17
17
|
gem.files = `git ls-files`.split($/)
|
@@ -85,4 +85,35 @@ describe NiftySettings::Settings do
|
|
85
85
|
end
|
86
86
|
end
|
87
87
|
end
|
88
|
+
|
89
|
+
describe '.load_from_file' do
|
90
|
+
it 'loads the settings from the default location' do
|
91
|
+
# Reset settings path in case it has been modified
|
92
|
+
NiftySettings::Settings.settings_path = nil
|
93
|
+
|
94
|
+
# Copy settings file to default location
|
95
|
+
settings_file = File.expand_path('../../support/settings.yml', __FILE__)
|
96
|
+
config_dir = File.expand_path('../../../config', __FILE__)
|
97
|
+
FileUtils.mkdir_p config_dir
|
98
|
+
FileUtils.cp settings_file, config_dir
|
99
|
+
|
100
|
+
settings = NiftySettings::Settings.load_from_file
|
101
|
+
expect(settings).to eq('foo' => 'bar')
|
102
|
+
|
103
|
+
# Delete settings file again
|
104
|
+
FileUtils.rm File.join(config_dir, 'settings.yml')
|
105
|
+
end
|
106
|
+
|
107
|
+
it 'can load the settings from a custom location' do
|
108
|
+
NiftySettings::Settings.settings_path = File.expand_path('../../support/settings.yml', __FILE__)
|
109
|
+
settings = NiftySettings::Settings.load_from_file
|
110
|
+
expect(settings).to eq('foo' => 'bar')
|
111
|
+
end
|
112
|
+
|
113
|
+
it 'can load empty settings' do
|
114
|
+
NiftySettings::Settings.settings_path = File.expand_path('../../support/settings_empty.yml', __FILE__)
|
115
|
+
settings = NiftySettings::Settings.load_from_file
|
116
|
+
expect(settings).to eq({})
|
117
|
+
end
|
118
|
+
end
|
88
119
|
end
|
@@ -0,0 +1 @@
|
|
1
|
+
foo: bar
|
File without changes
|
metadata
CHANGED
@@ -1,69 +1,69 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: nifty_settings
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Manuel Meurer
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-07-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- -
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '0'
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- -
|
24
|
+
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rspec
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - ~>
|
31
|
+
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: 2.14.0
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - ~>
|
38
|
+
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: 2.14.0
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rb-fsevent
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- - ~>
|
45
|
+
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: 0.9.0
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- - ~>
|
52
|
+
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: 0.9.0
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: guard-rspec
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- - ~>
|
59
|
+
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: 4.2.0
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- - ~>
|
66
|
+
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: 4.2.0
|
69
69
|
description: Settings
|
@@ -72,7 +72,8 @@ executables: []
|
|
72
72
|
extensions: []
|
73
73
|
extra_rdoc_files: []
|
74
74
|
files:
|
75
|
-
- .travis.yml
|
75
|
+
- ".travis.yml"
|
76
|
+
- CHANGELOG.md
|
76
77
|
- Gemfile
|
77
78
|
- Guardfile
|
78
79
|
- LICENSE.txt
|
@@ -85,7 +86,9 @@ files:
|
|
85
86
|
- nifty_settings.gemspec
|
86
87
|
- spec/nifty_settings/settings_spec.rb
|
87
88
|
- spec/spec_helper.rb
|
88
|
-
|
89
|
+
- spec/support/settings.yml
|
90
|
+
- spec/support/settings_empty.yml
|
91
|
+
homepage: http://krautcomputing.github.io/nifty_settings
|
89
92
|
licenses:
|
90
93
|
- MIT
|
91
94
|
metadata: {}
|
@@ -95,12 +98,12 @@ require_paths:
|
|
95
98
|
- lib
|
96
99
|
required_ruby_version: !ruby/object:Gem::Requirement
|
97
100
|
requirements:
|
98
|
-
- -
|
101
|
+
- - ">="
|
99
102
|
- !ruby/object:Gem::Version
|
100
103
|
version: '0'
|
101
104
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
102
105
|
requirements:
|
103
|
-
- -
|
106
|
+
- - ">="
|
104
107
|
- !ruby/object:Gem::Version
|
105
108
|
version: '0'
|
106
109
|
requirements: []
|
@@ -112,4 +115,6 @@ summary: Settings
|
|
112
115
|
test_files:
|
113
116
|
- spec/nifty_settings/settings_spec.rb
|
114
117
|
- spec/spec_helper.rb
|
118
|
+
- spec/support/settings.yml
|
119
|
+
- spec/support/settings_empty.yml
|
115
120
|
has_rdoc:
|