apipie-rails 0.9.1 → 0.9.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (75) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/rubocop-challenger.yml +1 -1
  3. data/.github/workflows/rubocop.yml +20 -0
  4. data/.rubocop.yml +81 -0
  5. data/.rubocop_todo.yml +815 -351
  6. data/CHANGELOG.md +17 -0
  7. data/README.rst +20 -0
  8. data/apipie-rails.gemspec +4 -0
  9. data/app/controllers/apipie/apipies_controller.rb +5 -6
  10. data/app/views/apipie/apipies/_deprecation.html.erb +16 -0
  11. data/app/views/apipie/apipies/_params.html.erb +7 -1
  12. data/config/locales/en.yml +7 -0
  13. data/lib/apipie/apipie_module.rb +2 -2
  14. data/lib/apipie/application.rb +10 -12
  15. data/lib/apipie/configuration.rb +24 -13
  16. data/lib/apipie/dsl_definition.rb +13 -12
  17. data/lib/apipie/error_description.rb +2 -2
  18. data/lib/apipie/extractor/recorder.rb +1 -1
  19. data/lib/apipie/extractor/writer.rb +11 -11
  20. data/lib/apipie/extractor.rb +1 -1
  21. data/lib/apipie/generator/swagger/context.rb +27 -0
  22. data/lib/apipie/generator/swagger/operation_id.rb +51 -0
  23. data/lib/apipie/generator/swagger/param_description/builder.rb +105 -0
  24. data/lib/apipie/generator/swagger/param_description/composite.rb +111 -0
  25. data/lib/apipie/generator/swagger/param_description/description.rb +15 -0
  26. data/lib/apipie/generator/swagger/param_description/in.rb +37 -0
  27. data/lib/apipie/generator/swagger/param_description/name.rb +18 -0
  28. data/lib/apipie/generator/swagger/param_description/type.rb +108 -0
  29. data/lib/apipie/generator/swagger/param_description.rb +18 -0
  30. data/lib/apipie/generator/swagger/type_extractor.rb +2 -2
  31. data/lib/apipie/markup.rb +9 -8
  32. data/lib/apipie/method_description.rb +4 -5
  33. data/lib/apipie/param_description/deprecation.rb +24 -0
  34. data/lib/apipie/param_description.rb +45 -18
  35. data/lib/apipie/resource_description.rb +4 -4
  36. data/lib/apipie/response_description.rb +2 -2
  37. data/lib/apipie/response_description_adapter.rb +7 -5
  38. data/lib/apipie/swagger_generator.rb +54 -202
  39. data/lib/apipie/validator.rb +8 -9
  40. data/lib/apipie/version.rb +1 -1
  41. data/lib/apipie-rails.rb +10 -0
  42. data/lib/tasks/apipie.rake +6 -6
  43. data/spec/controllers/users_controller_spec.rb +11 -3
  44. data/spec/{controllers → lib/apipie}/apipies_controller_spec.rb +2 -2
  45. data/spec/lib/{application_spec.rb → apipie/application_spec.rb} +6 -3
  46. data/spec/lib/apipie/configuration_spec.rb +23 -0
  47. data/spec/lib/apipie/extractor/recorder_spec.rb +40 -0
  48. data/spec/lib/apipie/generator/swagger/context_spec.rb +35 -0
  49. data/spec/lib/apipie/generator/swagger/operation_id_spec.rb +63 -0
  50. data/spec/lib/apipie/generator/swagger/param_description/builder_spec.rb +163 -0
  51. data/spec/lib/apipie/generator/swagger/param_description/composite_spec.rb +95 -0
  52. data/spec/lib/apipie/generator/swagger/param_description/description_spec.rb +79 -0
  53. data/spec/lib/apipie/generator/swagger/param_description/in_spec.rb +86 -0
  54. data/spec/lib/apipie/generator/swagger/param_description/name_spec.rb +81 -0
  55. data/spec/lib/apipie/generator/swagger/param_description/type_spec.rb +178 -0
  56. data/spec/lib/apipie/generator/swagger/param_description_spec.rb +28 -0
  57. data/spec/lib/{generator → apipie/generator}/swagger/type_extractor_spec.rb +38 -18
  58. data/spec/lib/{method_description_spec.rb → apipie/method_description_spec.rb} +4 -4
  59. data/spec/lib/apipie/param_description/deprecation_spec.rb +31 -0
  60. data/spec/lib/{param_description_spec.rb → apipie/param_description_spec.rb} +81 -1
  61. data/spec/lib/{param_group_spec.rb → apipie/param_group_spec.rb} +5 -5
  62. data/spec/lib/{resource_description_spec.rb → apipie/resource_description_spec.rb} +2 -2
  63. data/spec/lib/swagger/swagger_dsl_spec.rb +1 -1
  64. data/spec/spec_helper.rb +1 -1
  65. metadata +85 -19
  66. /data/spec/{lib/swagger/response_validation_spec.rb → controllers/pets_controller_spec.rb} +0 -0
  67. /data/spec/lib/{extractor → apipie/extractor/recorder}/middleware_spec.rb +0 -0
  68. /data/spec/lib/{extractor → apipie/extractor}/writer_spec.rb +0 -0
  69. /data/spec/lib/{extractor → apipie}/extractor_spec.rb +0 -0
  70. /data/spec/lib/{file_handler_spec.rb → apipie/file_handler_spec.rb} +0 -0
  71. /data/spec/lib/{generator → apipie/generator}/swagger/warning_spec.rb +0 -0
  72. /data/spec/lib/{generator → apipie/generator}/swagger/warning_writer_spec.rb +0 -0
  73. /data/spec/lib/{method_description → apipie/method_description}/apis_service_spec.rb +0 -0
  74. /data/spec/lib/{validator_spec.rb → apipie/validator_spec.rb} +0 -0
  75. /data/spec/{controllers → test_engine}/memes_controller_spec.rb +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 68c72bdd4204b9dcb285d9f663c4c64dce315af16f9463d9e8ee9b8f28bfc14b
4
- data.tar.gz: 25c735365fb4b4733d9eab9b7f5b9439b1d8200113b550ab56c94c9d33253c10
3
+ metadata.gz: 5c985a0a0a96f041421d812221f6352f69fb32eb93ec6a6bb4a990b2151a39f8
4
+ data.tar.gz: 3d21ade5a4dfb08bc0faaf5c46fa8fe5e7cf294f14d9ee637c3e019b522f5bbf
5
5
  SHA512:
6
- metadata.gz: dbbfcb973af34864e3e6793d483e32adb3ff8d7e37ee676ec1e485bd4cd094e62c774b41ebe86219cd6e8ffdc2930579125298a918b3d0fc5e48bfaa4fc2260b
7
- data.tar.gz: 132c1d5652fc466c42f8f888ce5b9015531ba7d54d1c4c0227d843ed5b3ae0761a0acb365a0ef08135bf10ef8312b30b6fe099f6fe075eec23fd54c079ad9f92
6
+ metadata.gz: 907ba718cd32695e13ce42203d639891de031221f90475712b2c7e816b1db7304174922ea796d2a31cdc4050f768871b06c3e9efc968e4db447400531ad0ca45
7
+ data.tar.gz: 234ba3b4eab287d9530e09ae28c79821a509c4c57f8b42b1bf2da83d93141d3fb807c88cef97d9a889c4e4b1a70a94d41f92a2f5c6bf0e79f8c9ad3a65aa9f50
@@ -25,4 +25,4 @@ jobs:
25
25
  - name: Create RuboCop challenge pull request
26
26
  env:
27
27
  GITHUB_ACCESS_TOKEN: ${{ secrets.GITHUB_TOKEN }}
28
- run: bundle exec rubocop_challenger go --base-branch=master --email=rubocop@payrollhero.com --name="Rubocop Challenger" --mode=random
28
+ run: bundle exec rubocop_challenger go --exclude-limit=180 --base-branch=master --email=rubocop@payrollhero.com --name="Rubocop Challenger" --mode=random
@@ -0,0 +1,20 @@
1
+ name: RuboCop
2
+
3
+ on: [push, pull_request]
4
+
5
+ jobs:
6
+ build:
7
+ runs-on: ubuntu-latest
8
+ env:
9
+ BUNDLE_GEMFILE: gemfiles/Gemfile.rails70
10
+ steps:
11
+ - uses: actions/checkout@v3
12
+
13
+ - name: Set up Ruby 2.7
14
+ uses: ruby/setup-ruby@v1
15
+ with:
16
+ ruby-version: 2.7
17
+ bundler-cache: true
18
+
19
+ - name: Run rubocop
20
+ run: bundle exec rubocop --config .rubocop.yml
data/.rubocop.yml CHANGED
@@ -20,18 +20,99 @@ Layout/LineLength:
20
20
  - lib/apipie/response_description_adapter.rb
21
21
  - lib/apipie/swagger_generator.rb
22
22
  - lib/apipie/errors.rb
23
+ - lib/apipie/generator/swagger/warning.rb
23
24
  - lib/apipie/rspec/response_validation_helper.rb
25
+ - spec/controllers/pets_controller_spec.rb
24
26
  - spec/controllers/users_controller_spec.rb
25
27
  - spec/dummy/app/controllers/twitter_example_controller.rb
26
28
  - spec/dummy/config/initializers/secret_token.rb
27
29
  - spec/lib/application_spec.rb
28
30
  - spec/lib/param_description_spec.rb
31
+ - spec/lib/param_description_deprecation_spec.rb
29
32
  - spec/lib/swagger/response_validation_spec.rb
30
33
  - spec/spec_helper.rb
31
34
 
35
+ Metrics/ClassLength:
36
+ Max: 180
37
+ Exclude:
38
+ - lib/apipie/extractor/writer.rb
39
+ - lib/apipie/application.rb
40
+ - lib/apipie/param_description.rb
41
+ - lib/apipie/swagger_generator.rb
42
+ - spec/dummy/app/controllers/pets_controller.rb
43
+ - spec/dummy/app/controllers/twitter_example_controller.rb
44
+ - spec/dummy/app/controllers/users_controller.rb
45
+
46
+ Metrics/BlockLength:
47
+ Max: 25 # default
48
+ Exclude:
49
+ - app/controllers/apipie/apipies_controller.rb
50
+ - lib/apipie/generator/swagger/param_description/composite.rb
51
+ - lib/tasks/apipie.rake
52
+ - lib/apipie/swagger_generator.rb
53
+
32
54
  Naming/PredicateName:
33
55
  AllowedMethods:
34
56
  - have_field?
35
57
 
36
58
  Style/NumericPredicate:
37
59
  Enabled: false
60
+
61
+ Style/HashSyntax:
62
+ EnforcedStyle: no_mixed_keys
63
+ EnforcedShorthandSyntax: never # consistent
64
+
65
+ Style/Documentation:
66
+ Exclude:
67
+ - 'app/controllers/apipie/apipies_controller.rb'
68
+ - 'app/helpers/apipie_helper.rb'
69
+ - 'lib/apipie/apipie_module.rb'
70
+ - 'lib/apipie/application.rb'
71
+ - 'lib/apipie/configuration.rb'
72
+ - 'lib/apipie/core_ext/route.rb'
73
+ - 'lib/apipie/dsl_definition.rb'
74
+ - 'lib/apipie/error_description.rb'
75
+ - 'lib/apipie/errors.rb'
76
+ - 'lib/apipie/extractor.rb'
77
+ - 'lib/apipie/extractor/collector.rb'
78
+ - 'lib/apipie/extractor/recorder.rb'
79
+ - 'lib/apipie/extractor/writer.rb'
80
+ - 'lib/apipie/generator/generator.rb'
81
+ - 'lib/apipie/generator/swagger/context.rb'
82
+ - 'lib/apipie/generator/swagger/operation_id.rb'
83
+ - 'lib/apipie/generator/swagger/param_description.rb'
84
+ - 'lib/apipie/generator/swagger/param_description/builder.rb'
85
+ - 'lib/apipie/generator/swagger/param_description/composite.rb'
86
+ - 'lib/apipie/generator/swagger/param_description/description.rb'
87
+ - 'lib/apipie/generator/swagger/param_description/in.rb'
88
+ - 'lib/apipie/generator/swagger/param_description/name.rb'
89
+ - 'lib/apipie/generator/swagger/param_description/type.rb'
90
+ - 'lib/apipie/generator/swagger/swagger.rb'
91
+ - 'lib/apipie/generator/swagger/type.rb'
92
+ - 'lib/apipie/generator/swagger/type_extractor.rb'
93
+ - 'lib/apipie/generator/swagger/warning.rb'
94
+ - 'lib/apipie/generator/swagger/warning_writer.rb'
95
+ - 'lib/apipie/helpers.rb'
96
+ - 'lib/apipie/markup.rb'
97
+ - 'lib/apipie/method_description.rb'
98
+ - 'lib/apipie/method_description/api.rb'
99
+ - 'lib/apipie/middleware/checksum_in_headers.rb'
100
+ - 'lib/apipie/railtie.rb'
101
+ - 'lib/apipie/response_description.rb'
102
+ - 'lib/apipie/response_description_adapter.rb'
103
+ - 'lib/apipie/routes_formatter.rb'
104
+ - 'lib/apipie/routing.rb'
105
+ - 'lib/apipie/rspec/response_validation_helper.rb'
106
+ - 'lib/apipie/see_description.rb'
107
+ - 'lib/apipie/static_dispatcher.rb'
108
+ - 'lib/apipie/tag_list_description.rb'
109
+ - 'lib/apipie/validator.rb'
110
+ - 'lib/generators/apipie/install/install_generator.rb'
111
+ - 'lib/generators/apipie/views_generator.rb'
112
+ - spec/support/custom_bool_validator.rb
113
+ - spec/lib/validators/array_validator_spec.rb
114
+ - spec/dummy/**/*.rb
115
+
116
+ Naming/BlockForwarding:
117
+ EnforcedStyle: explicit
118
+ BlockForwardingName: block