api_me 0.3.0 → 0.3.1

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 47cb01169b34ee2781c7a1780659b99605797343
4
- data.tar.gz: 8a19a3832d2cf1cdc9e663f52949d58e00aa3dc3
3
+ metadata.gz: 6b1bab29cbafd8eaab2edc45f10f6e1875a3b49d
4
+ data.tar.gz: 5f542f1dac50766aec5be47c56fb9a819ed11c7d
5
5
  SHA512:
6
- metadata.gz: 6aae861edb9a28dee94fbdc56eac28a0a79efa2c765071d87ad7c90e5517ea05925489851a5979fceb5129c3eec7dc231b0af8d85c4769e6452f03ecd82a1b4d
7
- data.tar.gz: ac8a6dbcbaf4472be7216ffabca39bbbc7bbc85fe8ed0987cbeb6e6ff2079b35dfb5550e5d062a9bda20050cb9ba8c1d8dda04996d4e74cc1332049aa3276aeb
6
+ metadata.gz: bef770b426760b1c06de0d917ada87a8946be652dedcba3cbdf3d3e13ceb721110fdb17704df8cfc28700021f6fcb3a67bb074fa9e30165e8344ee3f986708d4
7
+ data.tar.gz: 1134ce12dc9dee16f652d929b76a69dc98f39332efd6d71066b9dc9c48d0c98c1a0692f839519a12ef79fc20615af326be09e4f2d5847d6967f3859bfcac0de6
data/lib/api_me.rb CHANGED
@@ -51,7 +51,7 @@ module ApiMe
51
51
  end
52
52
 
53
53
  def params_klass_symbol
54
- model_klass.name.downcase.to_sym
54
+ model_klass.name.demodulize.underscore.to_sym
55
55
  end
56
56
  end
57
57
 
@@ -1,3 +1,3 @@
1
1
  module ApiMe
2
- VERSION = '0.3.0'
2
+ VERSION = '0.3.1'
3
3
  end
@@ -0,0 +1,12 @@
1
+ require 'spec_helper'
2
+
3
+ describe 'multi-word API resource' do
4
+ it 'succeeds creating a new object using a resource that consists of multiple words' do
5
+ post '/api/v1/multi_word_resources', {test_model: {test: true}}
6
+
7
+ expect(last_response.status).to eq(201)
8
+ json = JSON.parse(last_response.body)
9
+
10
+ expect(json['test_model']["created"]).to eq(true)
11
+ end
12
+ end
@@ -0,0 +1,6 @@
1
+ class Api::V1::MultiWordResourcesController < ApplicationController
2
+ include ApiMe
3
+
4
+ model TestModel
5
+ serializer TestModelSerializer
6
+ end
@@ -0,0 +1,20 @@
1
+ class TestModel
2
+ def self.create
3
+ @created = true
4
+ end
5
+
6
+ def self.created
7
+ @created ||= false
8
+ end
9
+
10
+ def initialize(*args)
11
+ end
12
+
13
+ def save!(*args)
14
+ TestModel.create
15
+ end
16
+
17
+ def created
18
+ TestModel.created
19
+ end
20
+ end
@@ -0,0 +1,5 @@
1
+ class TestModelPolicy < ApplicationPolicy
2
+ def permitted_attributes
3
+ [:test]
4
+ end
5
+ end
@@ -0,0 +1,7 @@
1
+ class TestModelSerializer < ActiveModel::Serializer
2
+ attributes :created
3
+
4
+ def created
5
+ object.created
6
+ end
7
+ end
@@ -3,6 +3,7 @@ Rails.application.routes.draw do
3
3
  namespace :v1 do
4
4
  resources :users
5
5
  resources :fails
6
+ resources :multi_word_resources
6
7
  end
7
8
  end
8
9
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: api_me
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sam Clopton
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-11-06 00:00:00.000000000 Z
11
+ date: 2014-11-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
@@ -165,12 +165,17 @@ files:
165
165
  - lib/generators/api_me/resource/resource_generator.rb
166
166
  - spec/acceptance/api/v1/fails_spec.rb
167
167
  - spec/acceptance/api/v1/users_spec.rb
168
+ - spec/acceptance/multi_word_resource_spec.rb
168
169
  - spec/internal/app/controllers/api/v1/fails_controller.rb
170
+ - spec/internal/app/controllers/api/v1/multi_word_resources_controller.rb
169
171
  - spec/internal/app/controllers/api/v1/users_controller.rb
170
172
  - spec/internal/app/controllers/application_controller.rb
173
+ - spec/internal/app/models/test_model.rb
171
174
  - spec/internal/app/models/user.rb
172
175
  - spec/internal/app/policies/application_policy.rb
176
+ - spec/internal/app/policies/test_model_policy.rb
173
177
  - spec/internal/app/policies/user_policy.rb
178
+ - spec/internal/app/serializers/test_model_serializer.rb
174
179
  - spec/internal/app/serializers/user_serializer.rb
175
180
  - spec/internal/config/database.yml
176
181
  - spec/internal/config/routes.rb