haveapi 0.26.5 → 0.27.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.
Files changed (49) hide show
  1. checksums.yaml +4 -4
  2. data/.rspec +1 -0
  3. data/Gemfile +7 -3
  4. data/haveapi.gemspec +1 -1
  5. data/lib/haveapi/action.rb +1 -1
  6. data/lib/haveapi/authentication/base.rb +2 -0
  7. data/lib/haveapi/authentication/oauth2/provider.rb +10 -2
  8. data/lib/haveapi/authentication/token/provider.rb +25 -1
  9. data/lib/haveapi/model_adapters/active_record.rb +66 -4
  10. data/lib/haveapi/parameters/resource.rb +8 -1
  11. data/lib/haveapi/parameters/typed.rb +94 -10
  12. data/lib/haveapi/params.rb +6 -1
  13. data/lib/haveapi/resource.rb +1 -1
  14. data/lib/haveapi/server.rb +10 -1
  15. data/lib/haveapi/spec/api_builder.rb +8 -3
  16. data/lib/haveapi/spec/spec_methods.rb +20 -10
  17. data/lib/haveapi/version.rb +1 -1
  18. data/spec/action/authorize_spec.rb +317 -0
  19. data/spec/action/dsl_spec.rb +98 -100
  20. data/spec/action/runtime_spec.rb +207 -0
  21. data/spec/action_state_spec.rb +301 -0
  22. data/spec/authentication/basic_spec.rb +108 -0
  23. data/spec/authentication/oauth2_spec.rb +127 -0
  24. data/spec/authentication/token_spec.rb +233 -0
  25. data/spec/authorization_spec.rb +23 -18
  26. data/spec/common_spec.rb +19 -17
  27. data/spec/documentation/auth_filtering_spec.rb +111 -0
  28. data/spec/documentation_spec.rb +165 -2
  29. data/spec/envelope_spec.rb +5 -9
  30. data/spec/extensions/action_exceptions_spec.rb +163 -0
  31. data/spec/hooks_spec.rb +32 -38
  32. data/spec/model_adapters/active_record_spec.rb +413 -0
  33. data/spec/parameters/typed_spec.rb +54 -1
  34. data/spec/params_spec.rb +27 -25
  35. data/spec/resource_spec.rb +36 -22
  36. data/spec/server/integration_spec.rb +71 -0
  37. data/spec/spec_helper.rb +2 -2
  38. data/spec/validators/acceptance_spec.rb +10 -12
  39. data/spec/validators/confirmation_spec.rb +14 -16
  40. data/spec/validators/custom_spec.rb +1 -1
  41. data/spec/validators/exclusion_spec.rb +13 -15
  42. data/spec/validators/format_spec.rb +20 -22
  43. data/spec/validators/inclusion_spec.rb +13 -15
  44. data/spec/validators/length_spec.rb +6 -6
  45. data/spec/validators/numericality_spec.rb +10 -10
  46. data/spec/validators/presence_spec.rb +16 -22
  47. data/test_support/client_test_api.rb +607 -0
  48. data/test_support/client_test_server.rb +59 -0
  49. metadata +16 -3
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: haveapi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.26.5
4
+ version: 0.27.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jakub Skokan
@@ -29,14 +29,14 @@ dependencies:
29
29
  requirements:
30
30
  - - "~>"
31
31
  - !ruby/object:Gem::Version
32
- version: 0.26.5
32
+ version: 0.27.1
33
33
  type: :runtime
34
34
  prerelease: false
35
35
  version_requirements: !ruby/object:Gem::Requirement
36
36
  requirements:
37
37
  - - "~>"
38
38
  - !ruby/object:Gem::Version
39
- version: 0.26.5
39
+ version: 0.27.1
40
40
  - !ruby/object:Gem::Dependency
41
41
  name: json
42
42
  requirement: !ruby/object:Gem::Requirement
@@ -184,6 +184,7 @@ extensions: []
184
184
  extra_rdoc_files: []
185
185
  files:
186
186
  - ".gitignore"
187
+ - ".rspec"
187
188
  - CHANGELOG
188
189
  - Gemfile
189
190
  - LICENSE.txt
@@ -294,15 +295,25 @@ files:
294
295
  - lib/haveapi/views/version_sidebar/resource_nav.erb
295
296
  - shell.nix
296
297
  - spec/.rubocop.yml
298
+ - spec/action/authorize_spec.rb
297
299
  - spec/action/dsl_spec.rb
300
+ - spec/action/runtime_spec.rb
301
+ - spec/action_state_spec.rb
302
+ - spec/authentication/basic_spec.rb
303
+ - spec/authentication/oauth2_spec.rb
304
+ - spec/authentication/token_spec.rb
298
305
  - spec/authorization_spec.rb
299
306
  - spec/common_spec.rb
307
+ - spec/documentation/auth_filtering_spec.rb
300
308
  - spec/documentation_spec.rb
301
309
  - spec/envelope_spec.rb
310
+ - spec/extensions/action_exceptions_spec.rb
302
311
  - spec/hooks_spec.rb
312
+ - spec/model_adapters/active_record_spec.rb
303
313
  - spec/parameters/typed_spec.rb
304
314
  - spec/params_spec.rb
305
315
  - spec/resource_spec.rb
316
+ - spec/server/integration_spec.rb
306
317
  - spec/spec_helper.rb
307
318
  - spec/validators/acceptance_spec.rb
308
319
  - spec/validators/confirmation_spec.rb
@@ -313,6 +324,8 @@ files:
313
324
  - spec/validators/length_spec.rb
314
325
  - spec/validators/numericality_spec.rb
315
326
  - spec/validators/presence_spec.rb
327
+ - test_support/client_test_api.rb
328
+ - test_support/client_test_server.rb
316
329
  licenses:
317
330
  - MIT
318
331
  metadata: {}