ohm-contrib 0.0.12 → 0.0.13
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/VERSION +1 -1
- data/lib/ohm/contrib/extra_validations.rb +11 -0
- data/lib/ohm/contrib.rb +2 -1
- data/ohm-contrib.gemspec +5 -2
- data/test/test_ohm_contrib.rb +6 -0
- data/test/test_ohm_extra_validations.rb +32 -0
- metadata +6 -3
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.13
|
data/lib/ohm/contrib.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
module Ohm
|
2
2
|
module Contrib
|
3
|
-
VERSION = '0.0.
|
3
|
+
VERSION = '0.0.13'
|
4
4
|
end
|
5
5
|
|
6
6
|
autoload :Boundaries, "ohm/contrib/boundaries"
|
@@ -8,6 +8,7 @@ module Ohm
|
|
8
8
|
autoload :ToHash, "ohm/contrib/to_hash"
|
9
9
|
autoload :WebValidations, "ohm/contrib/web_validations"
|
10
10
|
autoload :NumberValidations, "ohm/contrib/number_validations"
|
11
|
+
autoload :ExtraValidations, "ohm/contrib/extra_validations"
|
11
12
|
autoload :Typecast, "ohm/contrib/typecast"
|
12
13
|
autoload :Locking, "ohm/contrib/locking"
|
13
14
|
end
|
data/ohm-contrib.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{ohm-contrib}
|
8
|
-
s.version = "0.0.
|
8
|
+
s.version = "0.0.13"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Cyril David"]
|
12
|
-
s.date = %q{2010-05-
|
12
|
+
s.date = %q{2010-05-21}
|
13
13
|
s.description = %q{Highly decoupled drop-in functionality for Ohm models}
|
14
14
|
s.email = %q{cyx.ucron@gmail.com}
|
15
15
|
s.extra_rdoc_files = [
|
@@ -25,6 +25,7 @@ Gem::Specification.new do |s|
|
|
25
25
|
"VERSION",
|
26
26
|
"lib/ohm/contrib.rb",
|
27
27
|
"lib/ohm/contrib/boundaries.rb",
|
28
|
+
"lib/ohm/contrib/extra_validations.rb",
|
28
29
|
"lib/ohm/contrib/locking.rb",
|
29
30
|
"lib/ohm/contrib/number_validations.rb",
|
30
31
|
"lib/ohm/contrib/timestamping.rb",
|
@@ -35,6 +36,7 @@ Gem::Specification.new do |s|
|
|
35
36
|
"test/helper.rb",
|
36
37
|
"test/test_ohm_boundaries.rb",
|
37
38
|
"test/test_ohm_contrib.rb",
|
39
|
+
"test/test_ohm_extra_validations.rb",
|
38
40
|
"test/test_ohm_number_validations.rb",
|
39
41
|
"test/test_ohm_timestamping.rb",
|
40
42
|
"test/test_ohm_to_hash.rb",
|
@@ -50,6 +52,7 @@ Gem::Specification.new do |s|
|
|
50
52
|
"test/helper.rb",
|
51
53
|
"test/test_ohm_boundaries.rb",
|
52
54
|
"test/test_ohm_contrib.rb",
|
55
|
+
"test/test_ohm_extra_validations.rb",
|
53
56
|
"test/test_ohm_number_validations.rb",
|
54
57
|
"test/test_ohm_timestamping.rb",
|
55
58
|
"test/test_ohm_to_hash.rb",
|
data/test/test_ohm_contrib.rb
CHANGED
@@ -0,0 +1,32 @@
|
|
1
|
+
require "helper"
|
2
|
+
|
3
|
+
class OhmExtraValidationsTest < Test::Unit::TestCase
|
4
|
+
context "membership assertion" do
|
5
|
+
class Order < Ohm::Model
|
6
|
+
include Ohm::ExtraValidations
|
7
|
+
|
8
|
+
attribute :state
|
9
|
+
|
10
|
+
def validate
|
11
|
+
assert_member :state, %w(pending authorized declined)
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
should "be successful given all the members" do
|
16
|
+
order = Order.new(:state => 'pending')
|
17
|
+
assert order.valid?
|
18
|
+
|
19
|
+
order = Order.new(:state => 'authorized')
|
20
|
+
assert order.valid?
|
21
|
+
|
22
|
+
order = Order.new(:state => 'declined')
|
23
|
+
assert order.valid?
|
24
|
+
end
|
25
|
+
|
26
|
+
should "fail on a non-member" do
|
27
|
+
order = Order.new(:state => 'foobar')
|
28
|
+
assert ! order.valid?
|
29
|
+
assert_equal [[:state, :not_member]], order.errors
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 0
|
8
|
-
-
|
9
|
-
version: 0.0.
|
8
|
+
- 13
|
9
|
+
version: 0.0.13
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Cyril David
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2010-05-
|
17
|
+
date: 2010-05-21 00:00:00 +08:00
|
18
18
|
default_executable:
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
@@ -95,6 +95,7 @@ files:
|
|
95
95
|
- VERSION
|
96
96
|
- lib/ohm/contrib.rb
|
97
97
|
- lib/ohm/contrib/boundaries.rb
|
98
|
+
- lib/ohm/contrib/extra_validations.rb
|
98
99
|
- lib/ohm/contrib/locking.rb
|
99
100
|
- lib/ohm/contrib/number_validations.rb
|
100
101
|
- lib/ohm/contrib/timestamping.rb
|
@@ -105,6 +106,7 @@ files:
|
|
105
106
|
- test/helper.rb
|
106
107
|
- test/test_ohm_boundaries.rb
|
107
108
|
- test/test_ohm_contrib.rb
|
109
|
+
- test/test_ohm_extra_validations.rb
|
108
110
|
- test/test_ohm_number_validations.rb
|
109
111
|
- test/test_ohm_timestamping.rb
|
110
112
|
- test/test_ohm_to_hash.rb
|
@@ -144,6 +146,7 @@ test_files:
|
|
144
146
|
- test/helper.rb
|
145
147
|
- test/test_ohm_boundaries.rb
|
146
148
|
- test/test_ohm_contrib.rb
|
149
|
+
- test/test_ohm_extra_validations.rb
|
147
150
|
- test/test_ohm_number_validations.rb
|
148
151
|
- test/test_ohm_timestamping.rb
|
149
152
|
- test/test_ohm_to_hash.rb
|