remodel-h 0.2.7 → 0.2.8
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/remodel/entity.rb +2 -1
- data/remodel-h.gemspec +2 -2
- data/test/test_entity_delete.rb +19 -4
- metadata +3 -3
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.2.
|
1
|
+
0.2.8
|
data/lib/remodel/entity.rb
CHANGED
@@ -114,7 +114,8 @@ module Remodel
|
|
114
114
|
else
|
115
115
|
clazz = Class[options[:class]]
|
116
116
|
value_key = Remodel.redis.hget(self.context, "#{key}_#{name}")
|
117
|
-
|
117
|
+
value = value_key && clazz.find(self.context, value_key) rescue nil
|
118
|
+
instance_variable_set(var, value)
|
118
119
|
end
|
119
120
|
end
|
120
121
|
|
data/remodel-h.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{remodel-h}
|
8
|
-
s.version = "0.2.
|
8
|
+
s.version = "0.2.8"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Tim Lossen"]
|
12
|
-
s.date = %q{2011-
|
12
|
+
s.date = %q{2011-03-29}
|
13
13
|
s.default_executable = %q{redis-monitor.rb}
|
14
14
|
s.description = %q{persist your objects to redis hashes.}
|
15
15
|
s.email = %q{tim@lossen.de}
|
data/test/test_entity_delete.rb
CHANGED
@@ -20,10 +20,11 @@ class TestEntityDelete < Test::Unit::TestCase
|
|
20
20
|
setup do
|
21
21
|
redis.flushdb
|
22
22
|
@group = Group.create('cx', :name => 'ruby user group')
|
23
|
-
@group.members.create(:name => 'Tim')
|
23
|
+
@tim = @group.members.create(:name => 'Tim')
|
24
24
|
@group.members.create(:name => 'Ben')
|
25
|
-
@
|
26
|
-
|
25
|
+
@room = Room.create(:name => 'some office')
|
26
|
+
@group.room = @room
|
27
|
+
@group.reload
|
27
28
|
end
|
28
29
|
|
29
30
|
should "ensure that the entity is persistent" do
|
@@ -41,6 +42,20 @@ class TestEntityDelete < Test::Unit::TestCase
|
|
41
42
|
assert_nil redis.hget(@group.context, "#{@group.key}_room")
|
42
43
|
end
|
43
44
|
|
44
|
-
|
45
|
+
context "has_one" do
|
46
|
+
should "be nil if deleted" do
|
47
|
+
@room.delete
|
48
|
+
assert_nil @group.room
|
49
|
+
end
|
50
|
+
end
|
45
51
|
|
52
|
+
context "has_many" do
|
53
|
+
should "be skipped if deleted" do
|
54
|
+
@tim.delete
|
55
|
+
assert_equal 1, @group.members.count
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
end
|
60
|
+
|
46
61
|
end
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 2
|
8
|
-
-
|
9
|
-
version: 0.2.
|
8
|
+
- 8
|
9
|
+
version: 0.2.8
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Tim Lossen
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2011-
|
17
|
+
date: 2011-03-29 00:00:00 +02:00
|
18
18
|
default_executable: redis-monitor.rb
|
19
19
|
dependencies: []
|
20
20
|
|