simple_jsonapi_rails 1.0.0 → 1.1.0

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: eb87c3e8f49a4ea784c1aafacf83f82dd69f35ee
4
- data.tar.gz: 32c513cf1c662eebf42af0a1bc05b3feca0f8ad5
3
+ metadata.gz: 54156ceb047d874781ddfed03c156591ad715c50
4
+ data.tar.gz: 8d16312de66be3a1f767c522f8cee3345274ee8b
5
5
  SHA512:
6
- metadata.gz: c1f9d71e8dc53a740a449b48e978a4eff6e14a78cb3a8fa23fd235f0109e9250bb2789045b80daf45bde389c09b26ab3d9320832b9a60f72ba3144ed2b05e121
7
- data.tar.gz: eaa046434edc39bd0ee5237dd48845a15acf178da2d76b40c9c7545ca0915ba749c811dbb28df3b3902f37a3fad01fc6faeede4228b5972931a4f61eafdfc7c6
6
+ metadata.gz: 02a985a3712fd7da77b28cc4a1b8f536ca7914127fc8d70bf2e280d7ab33071738896ab18a8715ac894e668b01eb56ed98aa552dd2d640e620f481ef954af7a3
7
+ data.tar.gz: 6fd49421b5c11edf2b38a1b9f60c712d1ca4a9b08e450ad5c403421fe69ce3249c27cc95f37f62544351825454265d7bb0648f42cd170a623b12e339b4158951
data/CHANGELOG.md CHANGED
@@ -1,2 +1,5 @@
1
+ ## Version 1.1.0 - June 12, 2018
2
+ * Adding 'show' to the list of valid routes, namespaced as 'fetch'
3
+
1
4
  ## Version 1.0.0 - April 19, 2018
2
5
  * Initial public release
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # SimpleJsonapi/Rails
2
2
 
3
- A library for integrating SimpleJsonapi into a Rails application.
3
+ A library for integrating [SimpleJsonapi](https://github.com/patientslikeme/simple_jsonapi) into a Rails application.
4
4
 
5
5
  ## Installation
6
6
 
@@ -66,7 +66,7 @@ end
66
66
 
67
67
  ### Create and update actions
68
68
 
69
- Incoming JSON:API documents can be parsed into a more Rails-friendly structure by calling **`jsonapi_deserialize`** in the controller class.
69
+ Incoming JSON API documents can be parsed into a more Rails-friendly structure by calling **`jsonapi_deserialize`** in the controller class.
70
70
 
71
71
  `jsonapi_deserialize` converts this incoming document ...
72
72
 
@@ -209,6 +209,7 @@ The `Accept` header, if it present, must also be set to `application/vnd+api.jso
209
209
  returned with status 406 Not Acceptable.
210
210
 
211
211
  ## Routing
212
+
212
213
  Rails' route mapper works well for most jsonapi resource routes. However, simple_jsonapi_rails does supply helpers method
213
214
  for defining relationship routes, which can be trickier:
214
215
 
@@ -225,6 +226,7 @@ This code generates the following paths and routes/controller action mappings.
225
226
  orders_relationships_items POST /orders/:order_id/relationships/items(.:format) orders/relationships/items#add
226
227
  orders_relationships_items DELETE /orders/:order_id/relationships/items(.:format) orders/relationships/items#remove
227
228
  orders_relationships_items PATCH /orders/:order_id/relationships/items(.:format) orders/relationships/items#replace
229
+ orders_relationships_items GET /orders/:order_id/relationships/items(.:format) orders/relationships/items#fetch
228
230
 
229
231
  orders_relationships_customer PATCH /orders/:order_id/customer(.:format) orders/relationships/customer#replace
230
232
 
@@ -242,4 +244,3 @@ Once pull request is merged to master, on latest master:
242
244
  compatible release) | minor (new features) | patch (bugfixes) ]
243
245
  2. Update version in lib/global_enforcer/version.rb
244
246
  3. Release by running `bundle exec rake release`
245
-
@@ -5,6 +5,7 @@ module SimpleJsonapi
5
5
  add: :create,
6
6
  remove: :destroy,
7
7
  replace: :update,
8
+ fetch: :show,
8
9
  }.freeze
9
10
 
10
11
  SUPPORTED_TO_MANY_ACTIONS = ACTION_MAP.keys.freeze
@@ -47,7 +48,7 @@ module SimpleJsonapi
47
48
 
48
49
  def ensure_actions_supported(actions)
49
50
  if actions.any? { |action| SUPPORTED_TO_MANY_ACTIONS.exclude?(action) }
50
- raise ArgumentError, "#jsonapi_to_many_relationship supports :add, :remove, and :replace actions"
51
+ raise ArgumentError, "#jsonapi_to_many_relationship supports :add, :remove, :replace, and :fetch actions"
51
52
  end
52
53
  end
53
54
  end
@@ -1,5 +1,5 @@
1
1
  module SimpleJsonapi
2
2
  module Rails
3
- VERSION = '1.0.0'.freeze
3
+ VERSION = '1.1.0'.freeze
4
4
  end
5
5
  end
@@ -21,6 +21,7 @@ Gem::Specification.new do |spec|
21
21
  spec.add_runtime_dependency 'simple_jsonapi'
22
22
  spec.add_runtime_dependency 'rails', '>= 4.2', '< 6.0'
23
23
 
24
+ spec.add_development_dependency 'rails', '~> 5.1.0'
24
25
  spec.add_development_dependency 'bundler', '~> 1.10'
25
26
  spec.add_development_dependency 'listen'
26
27
  spec.add_development_dependency 'minitest'
@@ -235,6 +235,11 @@ class ActionControllerTest < ActionDispatch::IntegrationTest
235
235
  controller: "orders/relationships/items",
236
236
  action: "replace",
237
237
  id: 1
238
+
239
+ assert_generates "orders/1/relationships/items",
240
+ controller: "orders/relationships/items",
241
+ action: "fetch",
242
+ id: 1
238
243
  end
239
244
 
240
245
  it "generates the correct path helpers" do
data/test/test_helper.rb CHANGED
@@ -3,6 +3,8 @@ $LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
3
3
  # Set up the dummy app
4
4
  ENV['RAILS_ENV'] = 'test'
5
5
  require_relative 'dummy/config/environment'
6
+ # change to ActiveRecord::MigrationContext.new(File.expand_path("dummy/db/migrate/", __dir__)).migrate
7
+ # when we upgrade rails >= 5.2.0
6
8
  ActiveRecord::Migrator.migrate File.expand_path("dummy/db/migrate/", __dir__)
7
9
 
8
10
  require 'active_support'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: simple_jsonapi_rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - PatientsLikeMe
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-04-23 00:00:00.000000000 Z
11
+ date: 2018-06-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: simple_jsonapi
@@ -44,6 +44,20 @@ dependencies:
44
44
  - - "<"
45
45
  - !ruby/object:Gem::Version
46
46
  version: '6.0'
47
+ - !ruby/object:Gem::Dependency
48
+ name: rails
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: 5.1.0
54
+ type: :development
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: 5.1.0
47
61
  - !ruby/object:Gem::Dependency
48
62
  name: bundler
49
63
  requirement: !ruby/object:Gem::Requirement