codebrulee-attr_remote 0.0.6 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
data/attr_remote.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "attr_remote"
3
- s.version = "0.0.6"
3
+ s.version = "0.0.7"
4
4
  s.date = "2008-01-06"
5
5
  s.summary = "Painlessly integrate ActiveResource into ActiveRecord."
6
6
  s.email = "smithk14@gmail.com"
data/lib/attr_remote.rb CHANGED
@@ -18,10 +18,22 @@ module AttrRemote
18
18
 
19
19
  class_eval <<-remote_access, __FILE__, __LINE__+1
20
20
  # def remote_user
21
- # @remote_user ||= RemoteUser.find(self.remote_user_id) rescue nil
21
+ # if @remote_user
22
+ # @remote_user
23
+ # elsif self.remote_user_id
24
+ # @remote_user = RemoteUser.find(self.remote_user_id) rescue nil
25
+ # else
26
+ # nil
27
+ # end
22
28
  # end
23
29
  def #{remote_instance_meth}
24
- @#{remote_instance_meth} ||= #{remote_class}.find(self.#{remote_instance_id}) rescue nil
30
+ if @#{remote_instance_meth}
31
+ @#{remote_instance_meth}
32
+ elsif self.#{remote_instance_id}
33
+ @#{remote_instance_meth} = #{remote_class}.find(self.#{remote_instance_id}) rescue nil
34
+ else
35
+ nil
36
+ end
25
37
  end
26
38
 
27
39
  # before_create :create_remote_user
data/test/db/test.db CHANGED
Binary file
@@ -5,6 +5,13 @@ class TestAttrRemote < Test::Unit::TestCase
5
5
  test "that attributes can be added multiple times" do
6
6
  assert_equal User.remote_attributes, [:name, :not_here]
7
7
  end
8
+
9
+ test "that a remote hit isn't attempted if the local remote id is nil" do
10
+ user = User.new
11
+ assert_nil user.remote_user_id
12
+ assert_nil user.remote_user
13
+ assert_equal "", user.name
14
+ end
8
15
  end
9
16
 
10
17
  context "remote object access" do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: codebrulee-attr_remote
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kevin Smith