setler 0.0.6 → 0.0.7
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.
- data/README.rdoc +3 -0
- data/contributors.txt +4 -0
- data/lib/setler/settings.rb +1 -1
- data/lib/setler/version.rb +1 -1
- data/test/settings_test.rb +21 -2
- metadata +13 -12
data/README.rdoc
CHANGED
@@ -43,6 +43,9 @@ Set defaults in an initializer with something like:
|
|
43
43
|
|
44
44
|
Featureflags.defaults[:bacon_dispenser_enabled] = false
|
45
45
|
Settings.defaults[:allowed_meats] = ['itsnotbacon']
|
46
|
+
|
47
|
+
To revert to the default after changing a setting, destroy it.
|
48
|
+
Note: Updating the setting to nil or false no longer makes it the default setting (> 0.0.6), but changes the setting to nil or false.
|
46
49
|
|
47
50
|
Add them to any ActiveRecord object:
|
48
51
|
|
data/contributors.txt
ADDED
data/lib/setler/settings.rb
CHANGED
data/lib/setler/version.rb
CHANGED
data/test/settings_test.rb
CHANGED
@@ -41,7 +41,18 @@ class ::SettingsTest < Test::Unit::TestCase
|
|
41
41
|
::Settings.test = '321'
|
42
42
|
assert_equal '321', ::Settings.test
|
43
43
|
end
|
44
|
-
|
44
|
+
|
45
|
+
def test_update_with_false
|
46
|
+
::Settings.test = false
|
47
|
+
assert_equal false, ::Settings.test
|
48
|
+
end
|
49
|
+
|
50
|
+
def test_update_with_nil_and_default_not_nil
|
51
|
+
::Settings.defaults[:foo] = :test
|
52
|
+
::Settings.foo = nil
|
53
|
+
assert_equal nil, ::Settings.foo
|
54
|
+
end
|
55
|
+
|
45
56
|
def test_update_with_array_syntax
|
46
57
|
::Settings["test"] = '321'
|
47
58
|
assert_equal '321', ::Settings.test
|
@@ -77,7 +88,15 @@ class ::SettingsTest < Test::Unit::TestCase
|
|
77
88
|
::Settings.destroy :test
|
78
89
|
assert_nil ::Settings.test
|
79
90
|
end
|
80
|
-
|
91
|
+
|
92
|
+
def test_destroy_reverts_to_default
|
93
|
+
::Settings.defaults[:foo] = :test
|
94
|
+
::Settings[:foo] = :bar
|
95
|
+
|
96
|
+
::Settings.destroy :foo
|
97
|
+
assert_equal :test, ::Settings.foo
|
98
|
+
end
|
99
|
+
|
81
100
|
def test_multiple_settings_classes
|
82
101
|
::Settings.testing = '123'
|
83
102
|
assert_nil ::Preferences.testing
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: setler
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.7
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2012-04-24 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: activerecord
|
16
|
-
requirement: &
|
16
|
+
requirement: &70289506810140 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 3.0.0
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70289506810140
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rails
|
27
|
-
requirement: &
|
27
|
+
requirement: &70289506809640 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: 3.0.0
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70289506809640
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: sqlite3
|
38
|
-
requirement: &
|
38
|
+
requirement: &70289506809260 !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: *
|
46
|
+
version_requirements: *70289506809260
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: rake
|
49
|
-
requirement: &
|
49
|
+
requirement: &70289506808800 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70289506808800
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: cover_me
|
60
|
-
requirement: &
|
60
|
+
requirement: &70289506808380 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,7 +65,7 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *70289506808380
|
69
69
|
description: Setler is a Gem that lets one easily implement the "Feature Flags" pattern,
|
70
70
|
or add settings to individual models. This is a cleanroom implementation of what
|
71
71
|
the 'rails-settings' gem does. It's been forked all over the place, and my favorite
|
@@ -83,6 +83,7 @@ files:
|
|
83
83
|
- MIT-LICENSE
|
84
84
|
- README.rdoc
|
85
85
|
- Rakefile
|
86
|
+
- contributors.txt
|
86
87
|
- lib/generators/setler/setler_generator.rb
|
87
88
|
- lib/generators/setler/templates/migration.rb
|
88
89
|
- lib/generators/setler/templates/model.rb
|