settler 1.2.2 → 1.2.3

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/test/helper.rb CHANGED
@@ -1,4 +1,5 @@
1
1
  require 'rubygems'
2
+ #require 'debugger'
2
3
  require 'test/unit'
3
4
  require 'pp'
4
5
 
data/test/settler.yml CHANGED
@@ -25,7 +25,15 @@ settings:
25
25
  integer_value:
26
26
  alt: An integer that should be typecasted
27
27
  value: 3
28
- typecast: integer
28
+ typecast: integer
29
+ datetime_value:
30
+ alt: A datetime that should be typecasted
31
+ value: "2012-01-15"
32
+ typecast: datetime
33
+ password_value:
34
+ alt: A password value that should be typecasted
35
+ value: '123456'
36
+ typecast: password
29
37
  custom_value:
30
38
  alt: An integer that should be custom typecasted
31
39
  value: 1
data/test/test_settler.rb CHANGED
@@ -9,7 +9,7 @@ class TestSettler < Test::Unit::TestCase
9
9
  end
10
10
 
11
11
  def test_should_load_settings
12
- assert_equal ["bool_value", "custom_value", "float_value", "google_analytics_key", "integer_value", "search_algorithm"], Settler.settings(:order => :key)
12
+ assert_equal ["bool_value", "custom_value", "datetime_value", "float_value", "google_analytics_key", "integer_value", "password_value", "search_algorithm"], Settler.settings(:order => :key)
13
13
  end
14
14
 
15
15
  def test_should_find_setting_value
@@ -125,7 +125,8 @@ class TestSettler < Test::Unit::TestCase
125
125
  require 'custom_typecaster'
126
126
  assert_equal 3, Settler.integer_value.value
127
127
  assert_equal 0.25, Settler.float_value.value
128
- assert_equal true, Settler.bool_value.value
128
+ assert_equal true, Settler.bool_value.value
129
+ assert_equal DateTime.civil(2012, 01, 15), Settler.datetime_value.value
129
130
  assert_equal 'custom value', Settler.custom_value.value
130
131
  end
131
132
 
@@ -148,6 +149,13 @@ class TestSettler < Test::Unit::TestCase
148
149
  assert_equal false, bool_setting.value
149
150
  end
150
151
 
152
+ def test_password_typecaster
153
+ password_value = Settler.password_value
154
+ assert_not_equal '123456', password_value.untypecasted_value
155
+ assert_not_equal password_value.value, password_value.untypecasted_value
156
+ assert_equal '123456', password_value.value
157
+ end
158
+
151
159
  def test_should_validate_format
152
160
  setting = Settler.google_analytics_key
153
161
  assert !setting.update_attributes(:value => 'invalid_format')
@@ -173,4 +181,14 @@ class TestSettler < Test::Unit::TestCase
173
181
  assert !Setting.deleted.include?(deleted_setting)
174
182
  end
175
183
 
184
+ def test_should_return_type
185
+ assert Settler.integer_value.type.integer?
186
+ assert Settler.float_value.type.float?
187
+ assert Settler.bool_value.type.boolean?
188
+ assert Settler.password_value.type.password?
189
+ assert Settler.datetime_value.type.datetime?
190
+ assert Settler.custom_value.type.string?
191
+ assert_equal 'string', Settler.search_algorithm.type
192
+ end
193
+
176
194
  end
metadata CHANGED
@@ -1,8 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: settler
3
3
  version: !ruby/object:Gem::Version
4
+ hash: 25
4
5
  prerelease:
5
- version: 1.2.2
6
+ segments:
7
+ - 1
8
+ - 2
9
+ - 3
10
+ version: 1.2.3
6
11
  platform: ruby
7
12
  authors:
8
13
  - Reinier de Lange
@@ -10,11 +15,38 @@ autorequire:
10
15
  bindir: bin
11
16
  cert_chain: []
12
17
 
13
- date: 2011-07-27 00:00:00 +02:00
18
+ date: 2012-04-19 00:00:00 +02:00
14
19
  default_executable:
15
- dependencies: []
16
-
17
- description: This gem is a combination of the Squeegy's rails-settings and Binarylogic's settingslogic gem, meaning it reads its configuration from a YAML file, but stores all settings in the database as well for on the fly changes.
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
22
+ name: sqlite3
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ hash: 3
30
+ segments:
31
+ - 0
32
+ version: "0"
33
+ type: :development
34
+ version_requirements: *id001
35
+ - !ruby/object:Gem::Dependency
36
+ name: rails
37
+ prerelease: false
38
+ requirement: &id002 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ hash: 3
44
+ segments:
45
+ - 0
46
+ version: "0"
47
+ type: :runtime
48
+ version_requirements: *id002
49
+ description: Settler can be used for defining application wide settings in Rails. Settings are loaded from a YAML file and stored in the database using ActiveRecord to allow users to update settings on the fly. The YAML configuration allows you to not only specify defaults, but setting value validations and typecasts as well!
18
50
  email: r.j.delange@nedforce.nl
19
51
  executables: []
20
52
 
@@ -49,6 +81,7 @@ files:
49
81
  - test/schema.rb
50
82
  - test/settler.yml
51
83
  - test/test_settler.rb
84
+ - test/debug.log
52
85
  has_rdoc: true
53
86
  homepage: http://github.com/moiristo/settler
54
87
  licenses: []
@@ -63,19 +96,31 @@ required_ruby_version: !ruby/object:Gem::Requirement
63
96
  requirements:
64
97
  - - ">="
65
98
  - !ruby/object:Gem::Version
99
+ hash: 3
100
+ segments:
101
+ - 0
66
102
  version: "0"
67
103
  required_rubygems_version: !ruby/object:Gem::Requirement
68
104
  none: false
69
105
  requirements:
70
106
  - - ">="
71
107
  - !ruby/object:Gem::Version
108
+ hash: 3
109
+ segments:
110
+ - 0
72
111
  version: "0"
73
112
  requirements: []
74
113
 
75
114
  rubyforge_project:
76
- rubygems_version: 1.6.2
115
+ rubygems_version: 1.5.3
77
116
  signing_key:
78
117
  specification_version: 3
79
118
  summary: Settler manages global application settings in Rails
80
- test_files: []
81
-
119
+ test_files:
120
+ - test/custom_typecaster.rb
121
+ - test/database.yml
122
+ - test/debug.log
123
+ - test/helper.rb
124
+ - test/schema.rb
125
+ - test/settler.yml
126
+ - test/test_settler.rb