oare 0.1.11 → 0.1.12

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.
@@ -1,6 +1,10 @@
1
1
  module Oare::Resource
2
2
  def self.included(base)
3
- base.instance_eval <<-RUBY
3
+ base.instance_eval do
4
+
5
+ def mock(attributes = {})
6
+ self.new(attributes, true)
7
+ end
4
8
 
5
9
  alias_method :original_update_attributes, :update_attributes
6
10
  undef_method :update_attributes
@@ -63,8 +67,7 @@ module Oare::Resource
63
67
  load_attributes_from_response(response)
64
68
  end
65
69
  end
66
-
67
- RUBY
70
+ end
68
71
 
69
72
  base.send(:include, InstanceMethods)
70
73
  base.extend(ClassMethods)
@@ -75,8 +78,11 @@ module Oare::Resource
75
78
  attr_accessor :nested_attributes_values
76
79
 
77
80
  def initialize(attributes = {}, persisted = false)
81
+ @attributes = {}.with_indifferent_access
82
+ @prefix_options = {}
83
+ @persisted = persisted
84
+
78
85
  @nested_attributes_values ||= {}
79
- @persisted = persisted
80
86
  self.class.instance_variable_get(:@nested_attributes).each do |key, value|
81
87
  @nested_attributes_values[key] = collection = attributes.delete(key)
82
88
  next unless collection
@@ -131,7 +137,12 @@ module Oare::Resource
131
137
  current_value = instance_variable_get("@#{association_id}".to_sym)
132
138
  return current_value if current_value
133
139
 
134
- resource = find_or_create_resource_for_collection(class_name)
140
+ begin
141
+ resource = class_name.constantize
142
+ rescue
143
+ resource = find_or_create_resource_for_collection(class_name)
144
+ end
145
+
135
146
  value = if self.new_record? then [resource.new]
136
147
  else
137
148
  # TODO:
data/oare.gemspec CHANGED
@@ -5,7 +5,7 @@ Gem::Specification.new do |s|
5
5
  ## Basic Information
6
6
  #
7
7
  s.name = 'oare'
8
- s.version = '0.1.11'
8
+ s.version = '0.1.12'
9
9
  s.platform = Gem::Platform::RUBY
10
10
  s.required_ruby_version = '~> 1.9'
11
11
  s.required_rubygems_version = '>= 1.8.10'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: oare
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.11
4
+ version: 0.1.12
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,11 +10,11 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2011-09-07 00:00:00.000000000Z
13
+ date: 2011-09-08 00:00:00.000000000Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activeresource
17
- requirement: &70123407064060 !ruby/object:Gem::Requirement
17
+ requirement: &70099059179240 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ~>
@@ -22,10 +22,10 @@ dependencies:
22
22
  version: '3.1'
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *70123407064060
25
+ version_requirements: *70099059179240
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: rdoc
28
- requirement: &70123407063560 !ruby/object:Gem::Requirement
28
+ requirement: &70099059178800 !ruby/object:Gem::Requirement
29
29
  none: false
30
30
  requirements:
31
31
  - - ! '>='
@@ -33,7 +33,7 @@ dependencies:
33
33
  version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
- version_requirements: *70123407063560
36
+ version_requirements: *70099059178800
37
37
  description: ! "\n Allows Oauth usage in Active Resource\n "
38
38
  email:
39
39
  - ndriz@exist.com