restly 0.0.1.alpha.6 → 0.0.1.alpha.7

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -100,28 +100,34 @@ In restly interacting with objects is familiar.
100
100
 
101
101
  __Getting the Collection:__
102
102
 
103
- ```MyModel.all```
103
+ ```ruby
104
+ MyModel.all
105
+ ```
104
106
 
105
107
  __Finding an Instance:__
106
108
 
107
- ```my_instance = MyModel.find(1)```
109
+ ```ruby
110
+ my_instance = MyModel.find(1)
111
+ ```
108
112
 
109
113
  __Updating an Instance:__
110
114
 
111
- ```my_instance.update_attributes({my_attr: 'val'})```
115
+ ```ruby
116
+ my_instance.update_attributes({my_attr: 'val'})
117
+ ```
112
118
 
113
119
  or
114
120
 
115
121
  ```ruby
116
122
  my_instance.my_attr = 'val'
117
- my_instnace.save
123
+ my_instance.save
118
124
  ```
119
125
 
120
126
  __Creating an Instance__
121
127
 
122
128
  ```
123
129
  my_instance
124
-
130
+ ```
125
131
 
126
132
  ## Contributing
127
133
 
@@ -29,8 +29,6 @@ module Restly::Associations
29
29
 
30
30
  class_attribute :resource_associations, instance_reader: false, instance_writer: false
31
31
 
32
- attr_reader :association_attributes
33
-
34
32
  self.resource_associations = AssociationsHash.new
35
33
 
36
34
  inherited do
@@ -57,16 +55,20 @@ module Restly::Associations
57
55
 
58
56
  private
59
57
 
58
+ def association_attributes
59
+ @association_attributes ||= {}
60
+ end
61
+
60
62
  def set_association(attr, val)
61
63
  association = self.class.reflect_on_resource_association(attr)
62
64
  association.valid?(val)
63
- @association_attributes[attr] = val
65
+ association_attributes[attr] = val
64
66
  end
65
67
 
66
68
  def get_association(attr, options={})
67
69
  association = self.class.reflect_on_resource_association(attr)
68
70
 
69
- if (stubbed = association.stub self, @association_attributes[attr]).present?
71
+ if (stubbed = association.stub self, association_attributes[attr]).present?
70
72
  stubbed
71
73
  elsif (loaded = association.load self, options).present?
72
74
  loaded
@@ -12,8 +12,6 @@ module Restly::Associations::Base::Loaders
12
12
  collection? ? association.load_collection(parent) : association.load_instance(parent)
13
13
  end
14
14
 
15
- private
16
-
17
15
  def load_collection(parent, association_class = self.association_class)
18
16
  raise Restly::Error::AssociationError, "Not a collection" unless collection?
19
17
  collection = if embedded?
@@ -13,10 +13,11 @@ module Restly::Associations::Base::Modifiers
13
13
 
14
14
  def with_path(parent, path = nil, association_class=self.association_class)
15
15
  duplicate = self.dup
16
+ parent_path = parent.respond_to?(:path) ? parent.path : nil
16
17
  duplicate.instance_variable_set :@association_class, if path
17
18
  association_class.with_path(path)
18
19
  else
19
- association_class.with_path(association_resource_name, prepend: parent.path)
20
+ association_class.with_path(association_resource_name, prepend: parent_path)
20
21
  end
21
22
  duplicate
22
23
  end
@@ -4,7 +4,12 @@ class Restly::Associations::BelongsTo < Restly::Associations::Base
4
4
  if polymorphic
5
5
  set_polymorphic_class(parent).load(parent, options)
6
6
  else
7
- super(parent, options)
7
+ # Merge Options
8
+ options.reverse_merge!(self.options)
9
+
10
+ # Authorize and Set Path
11
+ association = authorize(options[:authorize])
12
+ association.load_instance(parent)
8
13
  end
9
14
  end
10
15
 
data/lib/restly/base.rb CHANGED
@@ -64,9 +64,9 @@ module Restly
64
64
  # Set Defaults on Inheritance
65
65
  inherited do
66
66
  field :id
67
- self.resource_name = name.gsub(/.*::/,'').underscore
68
- self.path = resource_name.pluralize
69
- self.params = params.dup
67
+ self.resource_name = name.gsub(/.*::/,'').underscore if name.present?
68
+ self.path = resource_name.pluralize
69
+ self.params = params.dup
70
70
  end
71
71
 
72
72
  # Run Active Support Load Hooks
@@ -10,6 +10,11 @@ module Restly::Base::Includes
10
10
  @client ||= Restly::Client.new
11
11
  end
12
12
 
13
+ def client=(client)
14
+ raise Restly::Error::InvalidClient, "Client is invalid!"
15
+ @client = client
16
+ end
17
+
13
18
  def connection
14
19
  connection = @connection || Restly::Connection.tokenize(client, current_token)
15
20
  connection.cache ||= cache
@@ -1,3 +1,5 @@
1
+ require "colorize"
2
+
1
3
  module Restly::Base::Instance::Attributes
2
4
 
3
5
  def update_attributes(attributes)
data/lib/restly/client.rb CHANGED
@@ -11,7 +11,7 @@ class Restly::Client < OAuth2::Client
11
11
  self.options = Restly::Configuration.client_options.merge(opts)
12
12
  self.ssl = opts.delete(:ssl) || Restly::Configuration.ssl
13
13
  self.format = @format = opts.delete(:format) || Restly::Configuration.default_format
14
- self.options[:connection_build] = block
14
+ self.options[:connection_build] ||= block
15
15
  end
16
16
 
17
17
  def ssl=(val)
@@ -1,13 +1,13 @@
1
1
  class Restly::Collection < Array
2
- # extend ActiveSupport::Autoload
2
+ extend ActiveSupport::Autoload
3
+ autoload :Pagination
4
+
3
5
  include Restly::Base::Resource::Finders
4
6
  include Restly::Base::Resource::BatchActions
5
7
  include Restly::Base::GenericMethods
6
8
 
7
9
  delegate :resource_name, :new, :client, to: :resource
8
10
 
9
- # autoload :Pagination
10
-
11
11
  attr_reader :resource
12
12
 
13
13
  def initialize(resource, array=[], opts={})
@@ -41,7 +41,9 @@ module Restly::Configuration
41
41
  true
42
42
  end
43
43
 
44
- config_file = File.join(Rails.root, 'config', 'restly.yml')
45
- load_config YAML.load_file(config_file)[Rails.env] if defined?(Rails) && File.exists?(config_file)
44
+ if defined?(Rails)
45
+ config_file = File.join(Rails.root, 'config', 'restly.yml')
46
+ load_config YAML.load_file(config_file)[Rails.env] if File.exists?(config_file)
47
+ end
46
48
 
47
49
  end
@@ -1,4 +1,4 @@
1
- class Restly::EmbeddableResources::EmbeddedIn < Restly::EmbeddedAssociations::Base
1
+ class Restly::EmbeddedAssociations::EmbeddedIn < Restly::EmbeddedAssociations::Base
2
2
 
3
3
  def nested?
4
4
  true
@@ -1,4 +1,4 @@
1
- class Restly::EmbeddableResources::EmbedsMany < Restly::EmbeddedAssociations::Base
1
+ class Restly::EmbeddedAssociations::EmbedsMany < Restly::EmbeddedAssociations::Base
2
2
 
3
3
  def collection?
4
4
  true
@@ -1,3 +1,3 @@
1
- class Restly::EmbeddableResources::EmbedsOne < Restly::EmbeddedAssociations::Base
1
+ class Restly::EmbeddedAssociations::EmbedsOne < Restly::EmbeddedAssociations::Base
2
2
 
3
3
  end
data/lib/restly/error.rb CHANGED
@@ -10,11 +10,8 @@ module Restly::Error
10
10
 
11
11
  errors = %w{
12
12
  RecordNotFound
13
- WrongResourceType
14
- InvalidParentAssociation
15
- InvalidJoinerAssociation
13
+ InvalidClient
16
14
  InvalidObject
17
- InvalidToken
18
15
  InvalidConnection
19
16
  MissingId
20
17
  InvalidSpec
@@ -1,3 +1,5 @@
1
+ require "delegate"
2
+
1
3
  class Restly::Proxies::Base < SimpleDelegator
2
4
 
3
5
  delegate :is_a?, :kind_of?, to: :__getobj__
@@ -1,3 +1,3 @@
1
1
  module Restly
2
- VERSION = "0.0.1.alpha.6"
2
+ VERSION = "0.0.1.alpha.7"
3
3
  end
data/restly.gemspec CHANGED
@@ -23,5 +23,8 @@ Gem::Specification.new do |gem|
23
23
 
24
24
  gem.add_development_dependency "rspec"
25
25
  gem.add_development_dependency "pry"
26
+ gem.add_development_dependency "faraday_simulation"
27
+ gem.add_development_dependency "faraday_middleware"
28
+ gem.add_development_dependency "multi_xml"
26
29
 
27
30
  end
@@ -0,0 +1,8 @@
1
+ require "rspec"
2
+ require "spec_helper"
3
+
4
+ describe Restly::Base::Resource::BatchActions do
5
+
6
+ it "should have specs"
7
+
8
+ end
@@ -3,10 +3,7 @@ require "pry"
3
3
 
4
4
  describe Restly::Base do
5
5
 
6
- subject do
7
- Restly::Base.stub(:name) { 'RestlyTestObject' }
8
- Class.new(Restly::Base)
9
- end
6
+ include_context "sample_class"
10
7
 
11
8
  it "should have specs"
12
9
 
@@ -1,7 +1,7 @@
1
1
  require "rspec"
2
2
  require "spec_helper"
3
3
 
4
- describe Restly::Associations::EmbeddableResources do
4
+ describe Restly::EmbeddedAssociations do
5
5
 
6
6
  it "should have specs"
7
7
 
@@ -0,0 +1,8 @@
1
+ require "rspec"
2
+ require "spec_helper"
3
+
4
+ describe Restly::EmbeddedAssociations::EmbeddedIn do
5
+
6
+ it "should have specs"
7
+
8
+ end
@@ -1,7 +1,7 @@
1
1
  require "rspec"
2
2
  require "spec_helper"
3
3
 
4
- describe Restly::Associations::EmbeddableResources::EmbedsOne do
4
+ describe Restly::EmbeddedAssociations::EmbedsMany do
5
5
 
6
6
  it "should have specs"
7
7
 
@@ -0,0 +1,8 @@
1
+ require "rspec"
2
+ require "spec_helper"
3
+
4
+ describe Restly::EmbeddedAssociations::EmbedsOne do
5
+
6
+ it "should have specs"
7
+
8
+ end
data/spec/spec_helper.rb CHANGED
@@ -6,23 +6,18 @@ require 'active_model'
6
6
  require 'rspec'
7
7
  require 'rspec/autorun'
8
8
  require 'restly'
9
+ require 'support/models'
10
+ require 'support/routes'
9
11
 
12
+ class Post < Restly::Base
13
+ field :body
14
+ field :created_at
15
+ field :updated_at
16
+ end
10
17
 
11
- Restly::Configuration.load_config(
12
- {
13
- site: 'http://fakesi.te',
14
- client_id: 'default_id',
15
- client_secret: 'default_secret',
16
- default_format: 'json',
17
- cache: false,
18
- cache_opts: {
19
- expires_in: 3600
20
- }
21
- }
22
- )
23
-
24
- Faraday.default_adapter = :test
18
+ Object.send :define_method, :logger do
19
+ @logger ||= Logger.new(STDOUT)
20
+ end
25
21
 
26
22
  RSpec.configure do |conf|
27
- include OAuth2
28
23
  end
@@ -0,0 +1,105 @@
1
+ class MemoryModel < Hash
2
+
3
+ cattr_accessor :models
4
+
5
+ self.models = []
6
+
7
+ class RecordNotFound < StandardError
8
+ end
9
+
10
+ class_attribute :collection, :fields, instance_writer: false, instance_reader: false
11
+
12
+ class << self
13
+
14
+ delegate *(Array.instance_methods - Object.instance_methods), to: :collection
15
+
16
+ def inherited(subclass)
17
+ subclass.fields = {}
18
+ subclass.collection = []
19
+ subclass.send :field, :id
20
+ self.models << subclass
21
+ end
22
+
23
+ def all
24
+ collection
25
+ end
26
+
27
+ def truncate_all_models
28
+ models.each { |model| model.truncate }
29
+ end
30
+
31
+ def truncate
32
+ self.collection.clear
33
+ end
34
+
35
+ alias_method :delete_all, :truncate
36
+
37
+ def find(id)
38
+ instance = all[id - 1]
39
+ raise RecordNotFound, "Record was not found" unless instance
40
+ instance
41
+ end
42
+
43
+ def accepts_params
44
+ self.new.except(:id, :created_at, :updated_at).keys
45
+ end
46
+
47
+ def spec
48
+ { attributes: new.keys,
49
+ actions: [
50
+ {
51
+ method: 'POST',
52
+ parameters: accepts_params
53
+ },
54
+ ]
55
+ }
56
+ end
57
+
58
+ def field(attr, options={})
59
+ options.assert_valid_keys(:default)
60
+ self.fields[attr] = options[:default]
61
+ end
62
+
63
+ end
64
+
65
+ def initialize(hash={})
66
+ super
67
+ self.class.collection << @instance = merge!(fields.merge hash)
68
+ @instance[:id] = self.class.collection.index(@instance) + 1
69
+ end
70
+
71
+ def update(hash={})
72
+ self[:updated_at] = Time.now if fields.keys.include?(:updated_at)
73
+ merge!(hash).slice *fields.keys
74
+ end
75
+
76
+ def delete
77
+ self.class.collection.delete(self)
78
+ freeze
79
+ true
80
+ end
81
+
82
+ def merge(hash)
83
+ hash.assert_valid_keys(*self.class.fields.keys)
84
+ super
85
+ end
86
+
87
+ def merge!(hash)
88
+ hash.assert_valid_keys(*self.class.fields.keys)
89
+ super
90
+ end
91
+
92
+ def []=(key, value)
93
+ valid = {}
94
+ valid[key] = value
95
+ valid.assert_valid_keys(*self.class.fields.keys)
96
+ super(key, value)
97
+ end
98
+
99
+ private
100
+
101
+ def fields
102
+ self.class.fields.reduce({}) { |fields, (field, value)| fields[field] = value.is_a?(Proc) ? value.call : value ; fields }
103
+ end
104
+
105
+ end
@@ -0,0 +1,23 @@
1
+ require "support/memory_model"
2
+
3
+ module SampleObjects
4
+
5
+ class User < MemoryModel
6
+
7
+ field :first_name
8
+ field :last_name
9
+ field :age
10
+ field :created_at, default: ->{ Time.now }
11
+ field :updated_at, default: ->{ Time.now }
12
+
13
+ end
14
+
15
+ class Post < MemoryModel
16
+
17
+ field :body
18
+ field :created_at, default: ->{ Time.now }
19
+ field :updated_at, default: ->{ Time.now }
20
+
21
+ end
22
+
23
+ end
@@ -0,0 +1,88 @@
1
+ class Requester
2
+
3
+ def initialize(env, &block)
4
+ @env = env
5
+ logger.debug "#{@env[:method].upcase} #{@env[:url].path}"
6
+ @action = instance_eval(&block)
7
+ end
8
+
9
+ def response
10
+ return @response if @response
11
+ @response ||= case format
12
+ when "json"
13
+ @action.to_json
14
+ when "xml"
15
+ @action.to_xml
16
+ else
17
+ @action.to_param
18
+ end
19
+ logger.debug " response body: #{@response}" if @response.present?
20
+ @response
21
+ end
22
+
23
+ def response_headers
24
+ return @response_headers if @response_headers
25
+ @response_headers ||= {
26
+ "Content-Type" => content_type
27
+ }
28
+ logger.debug " response headers: #{@response_headers}"
29
+ @response_headers
30
+ end
31
+
32
+ private
33
+
34
+ def format
35
+ return @format if @format
36
+ @format ||= params[:format]
37
+ logger.debug " format: #{@format}"
38
+ @format
39
+ end
40
+
41
+ def model
42
+ ["SampleObjects", params[:model].try(:classify)].join("::").try(:constantize)
43
+ end
44
+
45
+ def params
46
+ return @params if @params
47
+ @params ||= @env[:params].try(:with_indifferent_access) || {}
48
+ logger.debug " request params: #{@params}" if @params.present?
49
+ @params
50
+ end
51
+
52
+ def data
53
+ model_body = parsed[model.name.underscore] || {}
54
+ model_params = params[model.name.underscore] || {}
55
+ model_params.merge(model_body)
56
+ end
57
+
58
+ def parsed
59
+ return {} unless body.present?
60
+ case format
61
+ when "json"
62
+ JSON.parse(body)
63
+ when "xml"
64
+ Hash.from_xml(body)
65
+ else
66
+ {}
67
+ end
68
+ end
69
+
70
+ def content_type
71
+ case format
72
+ when "json"
73
+ "application/json"
74
+ when "xml"
75
+ "application/xml"
76
+ else
77
+ "text/plain"
78
+ end
79
+ end
80
+
81
+ def body
82
+ return @body if @body
83
+ @body ||= @env[:body]
84
+ puts " request body: #{@body}" if @body.present?
85
+ @body
86
+ end
87
+
88
+ end
@@ -0,0 +1,95 @@
1
+ require "faraday_simulation"
2
+ require "faraday_middleware"
3
+ require "support/requester"
4
+
5
+ # Test Connection Object
6
+ connection = ->(builder){
7
+ builder.use Faraday::Request::UrlEncoded
8
+
9
+ builder.response :xml, :content_type => /\bxml$/
10
+ builder.response :json, :content_type => /\bjson$/
11
+
12
+ builder.use FaradaySimulation::Adapter do |stub|
13
+
14
+ # Associated
15
+ stub.get '/:model.:format' do |env|
16
+ req = Requester.new(env) { model.all }
17
+ [200, req.response_headers, req.response ]
18
+ end
19
+
20
+ stub.post '/:model.:format' do |env|
21
+ req = Requester.new(env) { model.new(data) }
22
+ [200, req.response_headers, req.response ]
23
+ end
24
+
25
+ stub.get '/:model/:id.:format' do |env|
26
+ req = Requester.new(env) { model.find(params[:id]) }
27
+ [200, req.response_headers, req.response ]
28
+ end
29
+
30
+ stub.put '/:model/:id.:format' do |env|
31
+ req = Requester.new(env) { model.find(params[:id]).update(data) }
32
+ [200, req.response_headers, req.response ]
33
+ end
34
+
35
+ stub.delete '/:model/:id.:format' do |env|
36
+ req = Requester.new(env) { model.find(params[:id]).delete }
37
+ [200, req.response_headers, req.response ]
38
+ end
39
+
40
+ stub.options '/:model/:id' do |env|
41
+ env[:params]["format"] = "json"
42
+ req = Requester.new(env) { model.spec }
43
+ [200, req.response_headers, req.response ]
44
+ end
45
+
46
+ # Associated
47
+ stub.get '/:parent_model/:parent_id/:model.:format' do |env|
48
+ req = Requester.new(env) { model.all }
49
+ [200, req.response_headers, req.response ]
50
+ end
51
+
52
+ stub.post '/:parent_model/:parent_id/:model.:format' do |env|
53
+ req = Requester.new(env) { model.new(data) }
54
+ [200, req.response_headers, req.response ]
55
+ end
56
+
57
+ stub.get '/:parent_model:model/:parent_id/:id.:format' do |env|
58
+ req = Requester.new(env) { model.find(params[:id]) }
59
+ [200, req.response_headers, req.response ]
60
+ end
61
+
62
+ stub.put '/:parent_model/:parent_id:model/:id.:format' do |env|
63
+ req = Requester.new(env) { model.find(params[:id]).update(data) }
64
+ [200, req.response_headers, req.response ]
65
+ end
66
+
67
+ stub.delete '/:parent_model/:parent_id/:model/:id.:format' do |env|
68
+ req = Requester.new(env) { model.find(params[:id]).delete }
69
+ [200, req.response_headers, req.response ]
70
+ end
71
+
72
+ stub.options '/:parent_model/:parent_id/:model/:id' do |env|
73
+ env[:params]["format"] = "json"
74
+ req = Requester.new(env) { model.spec }
75
+ [200, req.response_headers, req.response ]
76
+ end
77
+
78
+ end
79
+ }
80
+
81
+ Restly::Configuration.load_config(
82
+ {
83
+ site: 'http://fakesi.te',
84
+ cache: false,
85
+ use_oauth: true,
86
+ client_options: {
87
+ connection_build: connection
88
+ },
89
+ oauth_options: {
90
+ client_id: 'default_id',
91
+ client_secret: 'default_secret',
92
+ default_format: 'json'
93
+ },
94
+ }
95
+ )
@@ -0,0 +1,48 @@
1
+ class Contact < Restly::Base
2
+
3
+ field :first_name
4
+ field :last_name
5
+ field :created_at
6
+ field :updated_at
7
+
8
+ has_many_resources :comments
9
+ has_many_resources :posts
10
+
11
+ end
12
+
13
+ class Post < Restly::Base
14
+
15
+ field :title
16
+ field :body
17
+ field :created_at
18
+ field :updated_at
19
+
20
+ belongs_to_resource :contact
21
+ has_many_resources :comments
22
+ has_one_resource :rating
23
+
24
+ end
25
+
26
+ class Comment < Restly::Base
27
+
28
+ # root_accessible false # Todo
29
+
30
+ field :content
31
+ field :created_at
32
+ field :updated_at
33
+
34
+ belongs_to_resource :contact
35
+ embedded_in :post
36
+
37
+ end
38
+
39
+ class Rating < Restly::Base
40
+
41
+ # root_accessible false # Todo
42
+
43
+ field :stars
44
+ field :count
45
+
46
+ belongs_to :post
47
+
48
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: restly
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1.alpha.6
4
+ version: 0.0.1.alpha.7
5
5
  prerelease: 6
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-11-04 00:00:00.000000000 Z
12
+ date: 2012-11-07 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: oauth2
@@ -107,6 +107,54 @@ dependencies:
107
107
  - - ! '>='
108
108
  - !ruby/object:Gem::Version
109
109
  version: '0'
110
+ - !ruby/object:Gem::Dependency
111
+ name: faraday_simulation
112
+ requirement: !ruby/object:Gem::Requirement
113
+ none: false
114
+ requirements:
115
+ - - ! '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ! '>='
124
+ - !ruby/object:Gem::Version
125
+ version: '0'
126
+ - !ruby/object:Gem::Dependency
127
+ name: faraday_middleware
128
+ requirement: !ruby/object:Gem::Requirement
129
+ none: false
130
+ requirements:
131
+ - - ! '>='
132
+ - !ruby/object:Gem::Version
133
+ version: '0'
134
+ type: :development
135
+ prerelease: false
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - ! '>='
140
+ - !ruby/object:Gem::Version
141
+ version: '0'
142
+ - !ruby/object:Gem::Dependency
143
+ name: multi_xml
144
+ requirement: !ruby/object:Gem::Requirement
145
+ none: false
146
+ requirements:
147
+ - - ! '>='
148
+ - !ruby/object:Gem::Version
149
+ version: '0'
150
+ type: :development
151
+ prerelease: false
152
+ version_requirements: !ruby/object:Gem::Requirement
153
+ none: false
154
+ requirements:
155
+ - - ! '>='
156
+ - !ruby/object:Gem::Version
157
+ version: '0'
110
158
  description: ! ' Allows your app to authenticate a resource with oauth'
111
159
  email:
112
160
  - jason@waldrip.net
@@ -254,6 +302,7 @@ files:
254
302
  - spec/restly/base/instance/write_callbacks_spec.rb
255
303
  - spec/restly/base/instance_spec.rb
256
304
  - spec/restly/base/mass_assignment_security_spec.rb
305
+ - spec/restly/base/resource/batch_actions_spec.rb
257
306
  - spec/restly/base/resource/finders_spec.rb
258
307
  - spec/restly/base/resource_spec.rb
259
308
  - spec/restly/base_spec.rb
@@ -264,9 +313,10 @@ files:
264
313
  - spec/restly/configuration_spec.rb
265
314
  - spec/restly/connection_spec.rb
266
315
  - spec/restly/controller_methods_spec.rb
267
- - spec/restly/embeddable_resources/embeds_many_spec.rb
268
- - spec/restly/embeddable_resources/embeds_one_spec.rb
269
316
  - spec/restly/embeddable_resources_spec.rb
317
+ - spec/restly/embedded_associations/embedded_in_spec.rb
318
+ - spec/restly/embedded_associations/embeds_many_spec.rb
319
+ - spec/restly/embedded_associations/embeds_one_spec.rb
270
320
  - spec/restly/middleware_spec.rb
271
321
  - spec/restly/nested_attributes_spec.rb
272
322
  - spec/restly/proxies/associations/collection_spec.rb
@@ -276,6 +326,11 @@ files:
276
326
  - spec/restly/proxies/with_params_spec.rb
277
327
  - spec/restly/thread_local_spec.rb
278
328
  - spec/spec_helper.rb
329
+ - spec/support/memory_model.rb
330
+ - spec/support/models.rb
331
+ - spec/support/requester.rb
332
+ - spec/support/routes.rb
333
+ - spec/support/shared.rb
279
334
  homepage: http://github.com/jwaldrip/restly
280
335
  licenses: []
281
336
  post_install_message:
@@ -379,6 +434,7 @@ test_files:
379
434
  - spec/restly/base/instance/write_callbacks_spec.rb
380
435
  - spec/restly/base/instance_spec.rb
381
436
  - spec/restly/base/mass_assignment_security_spec.rb
437
+ - spec/restly/base/resource/batch_actions_spec.rb
382
438
  - spec/restly/base/resource/finders_spec.rb
383
439
  - spec/restly/base/resource_spec.rb
384
440
  - spec/restly/base_spec.rb
@@ -389,9 +445,10 @@ test_files:
389
445
  - spec/restly/configuration_spec.rb
390
446
  - spec/restly/connection_spec.rb
391
447
  - spec/restly/controller_methods_spec.rb
392
- - spec/restly/embeddable_resources/embeds_many_spec.rb
393
- - spec/restly/embeddable_resources/embeds_one_spec.rb
394
448
  - spec/restly/embeddable_resources_spec.rb
449
+ - spec/restly/embedded_associations/embedded_in_spec.rb
450
+ - spec/restly/embedded_associations/embeds_many_spec.rb
451
+ - spec/restly/embedded_associations/embeds_one_spec.rb
395
452
  - spec/restly/middleware_spec.rb
396
453
  - spec/restly/nested_attributes_spec.rb
397
454
  - spec/restly/proxies/associations/collection_spec.rb
@@ -401,4 +458,8 @@ test_files:
401
458
  - spec/restly/proxies/with_params_spec.rb
402
459
  - spec/restly/thread_local_spec.rb
403
460
  - spec/spec_helper.rb
404
- has_rdoc:
461
+ - spec/support/memory_model.rb
462
+ - spec/support/models.rb
463
+ - spec/support/requester.rb
464
+ - spec/support/routes.rb
465
+ - spec/support/shared.rb
@@ -1,8 +0,0 @@
1
- require "rspec"
2
- require "spec_helper"
3
-
4
- describe Restly::Associations::EmbeddableResources::EmbedsMany do
5
-
6
- it "should have specs"
7
-
8
- end