draper 4.0.4 → 4.0.5

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 (129) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +6 -0
  3. data/README.md +3 -6
  4. data/lib/draper/collection_decorator.rb +0 -6
  5. data/lib/draper/compatibility/broadcastable.rb +24 -0
  6. data/lib/draper/compatibility/global_id.rb +9 -5
  7. data/lib/draper/decoratable.rb +5 -0
  8. data/lib/draper/decorator.rb +2 -18
  9. data/lib/draper/railtie.rb +6 -1
  10. data/lib/draper/version.rb +1 -1
  11. metadata +4 -232
  12. data/.github/PULL_REQUEST_TEMPLATE.md +0 -24
  13. data/.github/workflows/ci.yml +0 -71
  14. data/.gitignore +0 -18
  15. data/Gemfile +0 -46
  16. data/bin/bundle +0 -114
  17. data/bin/rake +0 -29
  18. data/draper.gemspec +0 -34
  19. data/spec/draper/collection_decorator_spec.rb +0 -291
  20. data/spec/draper/configuration_spec.rb +0 -49
  21. data/spec/draper/decoratable/equality_spec.rb +0 -10
  22. data/spec/draper/decoratable_spec.rb +0 -235
  23. data/spec/draper/decorated_association_spec.rb +0 -82
  24. data/spec/draper/decorates_assigned_spec.rb +0 -71
  25. data/spec/draper/decorator_spec.rb +0 -872
  26. data/spec/draper/draper_spec.rb +0 -25
  27. data/spec/draper/factory_spec.rb +0 -247
  28. data/spec/draper/finders_spec.rb +0 -166
  29. data/spec/draper/helper_proxy_spec.rb +0 -61
  30. data/spec/draper/lazy_helpers_spec.rb +0 -21
  31. data/spec/draper/query_methods/load_strategy_spec.rb +0 -26
  32. data/spec/draper/query_methods_spec.rb +0 -80
  33. data/spec/draper/undecorate_chain_spec.rb +0 -20
  34. data/spec/draper/undecorate_spec.rb +0 -19
  35. data/spec/draper/view_context/build_strategy_spec.rb +0 -115
  36. data/spec/draper/view_context_spec.rb +0 -182
  37. data/spec/draper/view_helpers_spec.rb +0 -8
  38. data/spec/dummy/.rspec +0 -1
  39. data/spec/dummy/Rakefile +0 -7
  40. data/spec/dummy/app/assets/config/manifest.js +0 -3
  41. data/spec/dummy/app/controllers/application_controller.rb +0 -2
  42. data/spec/dummy/app/controllers/base_controller.rb +0 -4
  43. data/spec/dummy/app/controllers/localized_urls.rb +0 -5
  44. data/spec/dummy/app/controllers/posts_controller.rb +0 -20
  45. data/spec/dummy/app/decorators/comment_decorator.rb +0 -13
  46. data/spec/dummy/app/decorators/mongoid_post_decorator.rb +0 -2
  47. data/spec/dummy/app/decorators/post_decorator.rb +0 -60
  48. data/spec/dummy/app/helpers/application_helper.rb +0 -5
  49. data/spec/dummy/app/jobs/publish_post_job.rb +0 -7
  50. data/spec/dummy/app/mailers/application_mailer.rb +0 -3
  51. data/spec/dummy/app/mailers/post_mailer.rb +0 -19
  52. data/spec/dummy/app/models/admin.rb +0 -3
  53. data/spec/dummy/app/models/application_record.rb +0 -3
  54. data/spec/dummy/app/models/comment.rb +0 -3
  55. data/spec/dummy/app/models/mongoid_post.rb +0 -3
  56. data/spec/dummy/app/models/post.rb +0 -7
  57. data/spec/dummy/app/models/user.rb +0 -3
  58. data/spec/dummy/app/views/layouts/application.html.erb +0 -11
  59. data/spec/dummy/app/views/post_mailer/decorated_email.html.erb +0 -1
  60. data/spec/dummy/app/views/posts/_post.html.erb +0 -42
  61. data/spec/dummy/app/views/posts/show.html.erb +0 -1
  62. data/spec/dummy/bin/rails +0 -4
  63. data/spec/dummy/config/application.rb +0 -39
  64. data/spec/dummy/config/boot.rb +0 -5
  65. data/spec/dummy/config/database.yml +0 -25
  66. data/spec/dummy/config/environment.rb +0 -5
  67. data/spec/dummy/config/environments/development.rb +0 -78
  68. data/spec/dummy/config/environments/production.rb +0 -102
  69. data/spec/dummy/config/environments/test.rb +0 -69
  70. data/spec/dummy/config/initializers/backtrace_silencers.rb +0 -7
  71. data/spec/dummy/config/initializers/draper.rb +0 -5
  72. data/spec/dummy/config/initializers/filter_parameter_logging.rb +0 -4
  73. data/spec/dummy/config/initializers/inflections.rb +0 -15
  74. data/spec/dummy/config/initializers/mime_types.rb +0 -5
  75. data/spec/dummy/config/initializers/secret_token.rb +0 -8
  76. data/spec/dummy/config/initializers/session_store.rb +0 -8
  77. data/spec/dummy/config/locales/en.yml +0 -5
  78. data/spec/dummy/config/mongoid.yml +0 -142
  79. data/spec/dummy/config/routes.rb +0 -9
  80. data/spec/dummy/config/storage.yml +0 -7
  81. data/spec/dummy/config.ru +0 -4
  82. data/spec/dummy/db/migrate/20121019115657_create_posts.rb +0 -8
  83. data/spec/dummy/db/migrate/20240907041839_create_comments.rb +0 -9
  84. data/spec/dummy/db/schema.rb +0 -28
  85. data/spec/dummy/db/seeds.rb +0 -2
  86. data/spec/dummy/fast_spec/post_decorator_spec.rb +0 -37
  87. data/spec/dummy/lib/tasks/test.rake +0 -16
  88. data/spec/dummy/log/.gitkeep +0 -0
  89. data/spec/dummy/public/404.html +0 -26
  90. data/spec/dummy/public/422.html +0 -26
  91. data/spec/dummy/public/500.html +0 -25
  92. data/spec/dummy/public/favicon.ico +0 -0
  93. data/spec/dummy/script/rails +0 -6
  94. data/spec/dummy/spec/decorators/active_model_serializers_spec.rb +0 -12
  95. data/spec/dummy/spec/decorators/devise_spec.rb +0 -55
  96. data/spec/dummy/spec/decorators/helpers_spec.rb +0 -21
  97. data/spec/dummy/spec/decorators/post_decorator_spec.rb +0 -64
  98. data/spec/dummy/spec/decorators/spec_type_spec.rb +0 -7
  99. data/spec/dummy/spec/decorators/view_context_spec.rb +0 -22
  100. data/spec/dummy/spec/jobs/publish_post_job_spec.rb +0 -11
  101. data/spec/dummy/spec/mailers/post_mailer_spec.rb +0 -25
  102. data/spec/dummy/spec/models/application_spec.rb +0 -7
  103. data/spec/dummy/spec/models/mongoid_post_spec.rb +0 -8
  104. data/spec/dummy/spec/models/post_spec.rb +0 -51
  105. data/spec/dummy/spec/rails_helper.rb +0 -69
  106. data/spec/dummy/spec/shared_examples/decoratable.rb +0 -22
  107. data/spec/dummy/spec/spec_helper.rb +0 -93
  108. data/spec/dummy/test/decorators/minitest/devise_test.rb +0 -55
  109. data/spec/dummy/test/decorators/minitest/helpers_test.rb +0 -21
  110. data/spec/dummy/test/decorators/minitest/spec_type_test.rb +0 -52
  111. data/spec/dummy/test/decorators/minitest/view_context_test.rb +0 -24
  112. data/spec/dummy/test/decorators/test_unit/devise_test.rb +0 -55
  113. data/spec/dummy/test/decorators/test_unit/helpers_test.rb +0 -21
  114. data/spec/dummy/test/decorators/test_unit/view_context_test.rb +0 -24
  115. data/spec/dummy/test/minitest_helper.rb +0 -2
  116. data/spec/dummy/test/test_helper.rb +0 -3
  117. data/spec/generators/controller/controller_generator_spec.rb +0 -23
  118. data/spec/generators/decorator/decorator_generator_spec.rb +0 -93
  119. data/spec/generators/install/install_generator_spec.rb +0 -19
  120. data/spec/integration/integration_spec.rb +0 -70
  121. data/spec/performance/active_record.rb +0 -4
  122. data/spec/performance/benchmark.rb +0 -55
  123. data/spec/performance/decorators.rb +0 -45
  124. data/spec/performance/models.rb +0 -20
  125. data/spec/spec_helper.rb +0 -50
  126. data/spec/support/dummy_app.rb +0 -85
  127. data/spec/support/matchers/have_text.rb +0 -50
  128. data/spec/support/shared_examples/decoratable_equality.rb +0 -40
  129. data/spec/support/shared_examples/view_helpers.rb +0 -39
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 78c5e444690de191d46a5be87ed46a3f9be6ec0ffd59fed6dcd1d63e5d527b85
4
- data.tar.gz: f92be8ee42d8ce2e48c1743077f758eef779296593fcbcdef9a82fd5937a03ae
3
+ metadata.gz: 01d36de260431b65888e966e0ae86d336da78fb154c016e3e1871c07db8b1502
4
+ data.tar.gz: 773cef0abfa87de807d460dca408a86d1aa9f34e2e652486c6b242c9819ad178
5
5
  SHA512:
6
- metadata.gz: 2b2d10594f175019d7cbee9b7af7f811c8978349abae3cdce746abd94f24501d81b519c9da9ae350658265dd5aa0b33cdd9b3f18e26df922363227df8f57c4a4
7
- data.tar.gz: 81565fd7b8034294a41c49b557f48619e6cee814056d2d4bff4c0e6f17c024877b250b421d4a185310f6b6fa3dee14b51d954b6ee3cef39100d3cfb4c9582af7
6
+ metadata.gz: bc3e685a475539225c88e1d7cc44575ec5ce59872ddd1babede55eb9a07c323a2fa267e3d35d55d2c009a12948e83273150c132829597c8bc641c99c15445f7b
7
+ data.tar.gz: 37670673d87b1fea1b93bf435756d1ddaee6da897c1f3905c9aaec7c1b7dab6e02cb3ea9c52ab106a98b54c0e254c1f0e2d8fddaab0ba539a8a308b9cbdd58ea
data/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Draper Changelog
2
2
 
3
+ ## 4.0.5 - 2025-11-12
4
+
5
+ ### Fixes
6
+ * Remove unused files from package [#945](https://github.com/drapergem/draper/pull/945)
7
+ * Support Rails 8.1 [#949](https://github.com/drapergem/draper/pull/949)
8
+
3
9
  ## 4.0.4 - 2025-01-28
4
10
 
5
11
  ### Fixes
data/README.md CHANGED
@@ -1,8 +1,6 @@
1
1
  # Draper: View Models for Rails
2
2
 
3
- [![Actions Status](https://github.com/drapergem/draper/workflows/CI/badge.svg?branch=master)](https://github.com/drapergem/draper/actions?query=workflow%3Aci+branch%3Amaster)
4
- [![Code Climate](https://codeclimate.com/github/drapergem/draper.svg)](https://codeclimate.com/github/drapergem/draper)
5
- [![Test Coverage](https://api.codeclimate.com/v1/badges/0d40c43951d516bf6985/test_coverage)](https://codeclimate.com/github/drapergem/draper/test_coverage)
3
+ [![Actions Status](https://github.com/drapergem/draper/actions/workflows/ci.yml/badge.svg?branch=master)](https://github.com/drapergem/draper/actions?query=workflow%3Aci+branch%3Amaster)
6
4
  [![Inline docs](http://inch-ci.org/github/drapergem/draper.svg?branch=master)](http://inch-ci.org/github/drapergem/draper)
7
5
 
8
6
  Draper adds an object-oriented layer of presentation logic to your Rails
@@ -672,9 +670,8 @@ you can include this module manually.
672
670
  [Active Job](http://edgeguides.rubyonrails.org/active_job_basics.html) allows you to pass ActiveRecord
673
671
  objects to background tasks directly and performs the necessary serialization and deserialization. In
674
672
  order to do this, arguments to a background job must implement [Global ID](https://github.com/rails/globalid).
675
- Decorated objects implement Global ID by delegating to the object they are decorating. This means
676
- you can pass decorated objects to background jobs, however, the object won't be decorated when it is
677
- deserialized.
673
+ Decorators implement Global ID.
674
+ This means you can pass decorated objects to background jobs, and get them just as decorated when deserialized.
678
675
 
679
676
  ## Contributors
680
677
 
@@ -61,12 +61,6 @@ module Draper
61
61
 
62
62
  alias :decorated_with? :instance_of?
63
63
 
64
- def kind_of?(klass)
65
- decorated_collection.kind_of?(klass) || super
66
- end
67
-
68
- alias_method :is_a?, :kind_of?
69
-
70
64
  def replace(other)
71
65
  decorated_collection.replace(other)
72
66
  self
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Draper
4
+ module Compatibility
5
+ # It would look consistent to use decorated objects inside templates broadcasted with
6
+ # Turbo::Broadcastable.
7
+ #
8
+ # This compatibility patch fixes the issue by overriding the original defaults to decorate the
9
+ # object, that's passed to the partial in a local variable.
10
+ module Broadcastable
11
+ private
12
+
13
+ def broadcast_rendering_with_defaults(options)
14
+ return super unless decorator_class?
15
+
16
+ # Add the decorated current instance into the locals (see original method for details).
17
+ options[:locals] =
18
+ (options[:locals] || {}).reverse_merge!(model_name.element.to_sym => decorate)
19
+
20
+ super
21
+ end
22
+ end
23
+ end
24
+ end
@@ -5,17 +5,21 @@ module Draper
5
5
  # and deserialization. In order to do this, arguments to a background job must implement
6
6
  # [Global ID](https://github.com/rails/globalid).
7
7
  #
8
- # This compatibility patch implements Global ID for decorated objects by delegating to the object
9
- # that is decorated. This means you can pass decorated objects to background jobs, but
10
- # the object won't be decorated when it is deserialized. This patch is meant as an intermediate
11
- # fix until we can find a way to deserialize the decorated object correctly.
8
+ # This compatibility patch implements Global ID for decorated objects by defining `.find(id)`
9
+ # class method that uses the original one and decorates the result.
10
+ # This means you can pass decorated objects to background jobs and they will be decorated when
11
+ # deserialized.
12
12
  module GlobalID
13
13
  extend ActiveSupport::Concern
14
14
 
15
15
  included do
16
16
  include ::GlobalID::Identification
17
+ end
17
18
 
18
- delegate :to_global_id, :to_signed_global_id, to: :object
19
+ class_methods do
20
+ def find(*args)
21
+ object_class.find(*args).decorate
22
+ end
19
23
  end
20
24
  end
21
25
  end
@@ -1,4 +1,5 @@
1
1
  require 'draper/decoratable/equality'
2
+ require 'draper/compatibility/broadcastable'
2
3
 
3
4
  module Draper
4
5
  # Provides shortcuts to decorate objects directly, so you can do
@@ -13,6 +14,10 @@ module Draper
13
14
 
14
15
  autoload :CollectionProxy, 'draper/decoratable/collection_proxy'
15
16
 
17
+ included do
18
+ prepend Draper::Compatibility::Broadcastable if defined? Turbo::Broadcastable
19
+ end
20
+
16
21
  # Decorates the object using the inferred {#decorator_class}.
17
22
  # @param [Hash] options
18
23
  # see {Decorator#initialize}
@@ -33,7 +33,7 @@ module Draper
33
33
  options.assert_valid_keys(:context)
34
34
  @object = object
35
35
  @context = options.fetch(:context, {})
36
- handle_multiple_decoration(options) if object.instance_of?(self.class)
36
+ handle_multiple_decoration(options) if object.is_a?(Draper::Decorator)
37
37
  end
38
38
 
39
39
  class << self
@@ -185,22 +185,6 @@ module Draper
185
185
  self.class.hash ^ object.hash
186
186
  end
187
187
 
188
- # Checks if `self.kind_of?(klass)` or `object.kind_of?(klass)`
189
- #
190
- # @param [Class] klass
191
- def kind_of?(klass)
192
- super || object.kind_of?(klass)
193
- end
194
-
195
- alias :is_a? :kind_of?
196
-
197
- # Checks if `self.instance_of?(klass)` or `object.instance_of?(klass)`
198
- #
199
- # @param [Class] klass
200
- def instance_of?(klass)
201
- super || object.instance_of?(klass)
202
- end
203
-
204
188
  delegate :to_s
205
189
 
206
190
  # In case object is nil
@@ -267,7 +251,7 @@ module Draper
267
251
  if object.applied_decorators.last == self.class
268
252
  @context = object.context unless options.has_key?(:context)
269
253
  @object = object.object
270
- else
254
+ elsif object.applied_decorators.include?(self.class)
271
255
  warn "Reapplying #{self.class} decorator to target that is already decorated with it. Call stack:\n#{caller(1).join("\n")}"
272
256
  end
273
257
  end
@@ -56,7 +56,12 @@ module Draper
56
56
  Draper::ViewContext.build
57
57
  end
58
58
 
59
- console { initialize_view_context }
59
+ console do
60
+ initialize_view_context
61
+ if ActiveSupport.gem_version >= Gem::Version.new('8.1.0')
62
+ ActiveSupport::ExecutionContext.nestable = false
63
+ end
64
+ end
60
65
 
61
66
  runner { initialize_view_context }
62
67
 
@@ -1,3 +1,3 @@
1
1
  module Draper
2
- VERSION = '4.0.4'
2
+ VERSION = '4.0.5'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: draper
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.0.4
4
+ version: 4.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeff Casimir
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2025-01-28 00:00:00.000000000 Z
12
+ date: 2025-11-12 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport
@@ -217,26 +217,20 @@ extensions: []
217
217
  extra_rdoc_files: []
218
218
  files:
219
219
  - ".codeclimate.yml"
220
- - ".github/PULL_REQUEST_TEMPLATE.md"
221
- - ".github/workflows/ci.yml"
222
- - ".gitignore"
223
220
  - ".rspec"
224
221
  - ".rubocop.yml"
225
222
  - ".yardopts"
226
223
  - CHANGELOG.md
227
224
  - CONTRIBUTING.md
228
- - Gemfile
229
225
  - Guardfile
230
226
  - LICENSE
231
227
  - README.md
232
228
  - Rakefile
233
- - bin/bundle
234
- - bin/rake
235
- - draper.gemspec
236
229
  - lib/draper.rb
237
230
  - lib/draper/automatic_delegation.rb
238
231
  - lib/draper/collection_decorator.rb
239
232
  - lib/draper/compatibility/api_only.rb
233
+ - lib/draper/compatibility/broadcastable.rb
240
234
  - lib/draper/compatibility/global_id.rb
241
235
  - lib/draper/configuration.rb
242
236
  - lib/draper/decoratable.rb
@@ -276,117 +270,6 @@ files:
276
270
  - lib/generators/rspec/templates/decorator_spec.rb
277
271
  - lib/generators/test_unit/decorator_generator.rb
278
272
  - lib/generators/test_unit/templates/decorator_test.rb
279
- - spec/draper/collection_decorator_spec.rb
280
- - spec/draper/configuration_spec.rb
281
- - spec/draper/decoratable/equality_spec.rb
282
- - spec/draper/decoratable_spec.rb
283
- - spec/draper/decorated_association_spec.rb
284
- - spec/draper/decorates_assigned_spec.rb
285
- - spec/draper/decorator_spec.rb
286
- - spec/draper/draper_spec.rb
287
- - spec/draper/factory_spec.rb
288
- - spec/draper/finders_spec.rb
289
- - spec/draper/helper_proxy_spec.rb
290
- - spec/draper/lazy_helpers_spec.rb
291
- - spec/draper/query_methods/load_strategy_spec.rb
292
- - spec/draper/query_methods_spec.rb
293
- - spec/draper/undecorate_chain_spec.rb
294
- - spec/draper/undecorate_spec.rb
295
- - spec/draper/view_context/build_strategy_spec.rb
296
- - spec/draper/view_context_spec.rb
297
- - spec/draper/view_helpers_spec.rb
298
- - spec/dummy/.rspec
299
- - spec/dummy/Rakefile
300
- - spec/dummy/app/assets/config/manifest.js
301
- - spec/dummy/app/controllers/application_controller.rb
302
- - spec/dummy/app/controllers/base_controller.rb
303
- - spec/dummy/app/controllers/localized_urls.rb
304
- - spec/dummy/app/controllers/posts_controller.rb
305
- - spec/dummy/app/decorators/comment_decorator.rb
306
- - spec/dummy/app/decorators/mongoid_post_decorator.rb
307
- - spec/dummy/app/decorators/post_decorator.rb
308
- - spec/dummy/app/helpers/application_helper.rb
309
- - spec/dummy/app/jobs/publish_post_job.rb
310
- - spec/dummy/app/mailers/application_mailer.rb
311
- - spec/dummy/app/mailers/post_mailer.rb
312
- - spec/dummy/app/models/admin.rb
313
- - spec/dummy/app/models/application_record.rb
314
- - spec/dummy/app/models/comment.rb
315
- - spec/dummy/app/models/mongoid_post.rb
316
- - spec/dummy/app/models/post.rb
317
- - spec/dummy/app/models/user.rb
318
- - spec/dummy/app/views/layouts/application.html.erb
319
- - spec/dummy/app/views/post_mailer/decorated_email.html.erb
320
- - spec/dummy/app/views/posts/_post.html.erb
321
- - spec/dummy/app/views/posts/show.html.erb
322
- - spec/dummy/bin/rails
323
- - spec/dummy/config.ru
324
- - spec/dummy/config/application.rb
325
- - spec/dummy/config/boot.rb
326
- - spec/dummy/config/database.yml
327
- - spec/dummy/config/environment.rb
328
- - spec/dummy/config/environments/development.rb
329
- - spec/dummy/config/environments/production.rb
330
- - spec/dummy/config/environments/test.rb
331
- - spec/dummy/config/initializers/backtrace_silencers.rb
332
- - spec/dummy/config/initializers/draper.rb
333
- - spec/dummy/config/initializers/filter_parameter_logging.rb
334
- - spec/dummy/config/initializers/inflections.rb
335
- - spec/dummy/config/initializers/mime_types.rb
336
- - spec/dummy/config/initializers/secret_token.rb
337
- - spec/dummy/config/initializers/session_store.rb
338
- - spec/dummy/config/locales/en.yml
339
- - spec/dummy/config/mongoid.yml
340
- - spec/dummy/config/routes.rb
341
- - spec/dummy/config/storage.yml
342
- - spec/dummy/db/migrate/20121019115657_create_posts.rb
343
- - spec/dummy/db/migrate/20240907041839_create_comments.rb
344
- - spec/dummy/db/schema.rb
345
- - spec/dummy/db/seeds.rb
346
- - spec/dummy/fast_spec/post_decorator_spec.rb
347
- - spec/dummy/lib/tasks/test.rake
348
- - spec/dummy/log/.gitkeep
349
- - spec/dummy/public/404.html
350
- - spec/dummy/public/422.html
351
- - spec/dummy/public/500.html
352
- - spec/dummy/public/favicon.ico
353
- - spec/dummy/script/rails
354
- - spec/dummy/spec/decorators/active_model_serializers_spec.rb
355
- - spec/dummy/spec/decorators/devise_spec.rb
356
- - spec/dummy/spec/decorators/helpers_spec.rb
357
- - spec/dummy/spec/decorators/post_decorator_spec.rb
358
- - spec/dummy/spec/decorators/spec_type_spec.rb
359
- - spec/dummy/spec/decorators/view_context_spec.rb
360
- - spec/dummy/spec/jobs/publish_post_job_spec.rb
361
- - spec/dummy/spec/mailers/post_mailer_spec.rb
362
- - spec/dummy/spec/models/application_spec.rb
363
- - spec/dummy/spec/models/mongoid_post_spec.rb
364
- - spec/dummy/spec/models/post_spec.rb
365
- - spec/dummy/spec/rails_helper.rb
366
- - spec/dummy/spec/shared_examples/decoratable.rb
367
- - spec/dummy/spec/spec_helper.rb
368
- - spec/dummy/test/decorators/minitest/devise_test.rb
369
- - spec/dummy/test/decorators/minitest/helpers_test.rb
370
- - spec/dummy/test/decorators/minitest/spec_type_test.rb
371
- - spec/dummy/test/decorators/minitest/view_context_test.rb
372
- - spec/dummy/test/decorators/test_unit/devise_test.rb
373
- - spec/dummy/test/decorators/test_unit/helpers_test.rb
374
- - spec/dummy/test/decorators/test_unit/view_context_test.rb
375
- - spec/dummy/test/minitest_helper.rb
376
- - spec/dummy/test/test_helper.rb
377
- - spec/generators/controller/controller_generator_spec.rb
378
- - spec/generators/decorator/decorator_generator_spec.rb
379
- - spec/generators/install/install_generator_spec.rb
380
- - spec/integration/integration_spec.rb
381
- - spec/performance/active_record.rb
382
- - spec/performance/benchmark.rb
383
- - spec/performance/decorators.rb
384
- - spec/performance/models.rb
385
- - spec/spec_helper.rb
386
- - spec/support/dummy_app.rb
387
- - spec/support/matchers/have_text.rb
388
- - spec/support/shared_examples/decoratable_equality.rb
389
- - spec/support/shared_examples/view_helpers.rb
390
273
  homepage: https://github.com/drapergem/draper
391
274
  licenses:
392
275
  - MIT
@@ -410,115 +293,4 @@ rubygems_version: 3.5.23
410
293
  signing_key:
411
294
  specification_version: 4
412
295
  summary: View Models for Rails
413
- test_files:
414
- - spec/draper/collection_decorator_spec.rb
415
- - spec/draper/configuration_spec.rb
416
- - spec/draper/decoratable/equality_spec.rb
417
- - spec/draper/decoratable_spec.rb
418
- - spec/draper/decorated_association_spec.rb
419
- - spec/draper/decorates_assigned_spec.rb
420
- - spec/draper/decorator_spec.rb
421
- - spec/draper/draper_spec.rb
422
- - spec/draper/factory_spec.rb
423
- - spec/draper/finders_spec.rb
424
- - spec/draper/helper_proxy_spec.rb
425
- - spec/draper/lazy_helpers_spec.rb
426
- - spec/draper/query_methods/load_strategy_spec.rb
427
- - spec/draper/query_methods_spec.rb
428
- - spec/draper/undecorate_chain_spec.rb
429
- - spec/draper/undecorate_spec.rb
430
- - spec/draper/view_context/build_strategy_spec.rb
431
- - spec/draper/view_context_spec.rb
432
- - spec/draper/view_helpers_spec.rb
433
- - spec/dummy/.rspec
434
- - spec/dummy/Rakefile
435
- - spec/dummy/app/assets/config/manifest.js
436
- - spec/dummy/app/controllers/application_controller.rb
437
- - spec/dummy/app/controllers/base_controller.rb
438
- - spec/dummy/app/controllers/localized_urls.rb
439
- - spec/dummy/app/controllers/posts_controller.rb
440
- - spec/dummy/app/decorators/comment_decorator.rb
441
- - spec/dummy/app/decorators/mongoid_post_decorator.rb
442
- - spec/dummy/app/decorators/post_decorator.rb
443
- - spec/dummy/app/helpers/application_helper.rb
444
- - spec/dummy/app/jobs/publish_post_job.rb
445
- - spec/dummy/app/mailers/application_mailer.rb
446
- - spec/dummy/app/mailers/post_mailer.rb
447
- - spec/dummy/app/models/admin.rb
448
- - spec/dummy/app/models/application_record.rb
449
- - spec/dummy/app/models/comment.rb
450
- - spec/dummy/app/models/mongoid_post.rb
451
- - spec/dummy/app/models/post.rb
452
- - spec/dummy/app/models/user.rb
453
- - spec/dummy/app/views/layouts/application.html.erb
454
- - spec/dummy/app/views/post_mailer/decorated_email.html.erb
455
- - spec/dummy/app/views/posts/_post.html.erb
456
- - spec/dummy/app/views/posts/show.html.erb
457
- - spec/dummy/bin/rails
458
- - spec/dummy/config.ru
459
- - spec/dummy/config/application.rb
460
- - spec/dummy/config/boot.rb
461
- - spec/dummy/config/database.yml
462
- - spec/dummy/config/environment.rb
463
- - spec/dummy/config/environments/development.rb
464
- - spec/dummy/config/environments/production.rb
465
- - spec/dummy/config/environments/test.rb
466
- - spec/dummy/config/initializers/backtrace_silencers.rb
467
- - spec/dummy/config/initializers/draper.rb
468
- - spec/dummy/config/initializers/filter_parameter_logging.rb
469
- - spec/dummy/config/initializers/inflections.rb
470
- - spec/dummy/config/initializers/mime_types.rb
471
- - spec/dummy/config/initializers/secret_token.rb
472
- - spec/dummy/config/initializers/session_store.rb
473
- - spec/dummy/config/locales/en.yml
474
- - spec/dummy/config/mongoid.yml
475
- - spec/dummy/config/routes.rb
476
- - spec/dummy/config/storage.yml
477
- - spec/dummy/db/migrate/20121019115657_create_posts.rb
478
- - spec/dummy/db/migrate/20240907041839_create_comments.rb
479
- - spec/dummy/db/schema.rb
480
- - spec/dummy/db/seeds.rb
481
- - spec/dummy/fast_spec/post_decorator_spec.rb
482
- - spec/dummy/lib/tasks/test.rake
483
- - spec/dummy/log/.gitkeep
484
- - spec/dummy/public/404.html
485
- - spec/dummy/public/422.html
486
- - spec/dummy/public/500.html
487
- - spec/dummy/public/favicon.ico
488
- - spec/dummy/script/rails
489
- - spec/dummy/spec/decorators/active_model_serializers_spec.rb
490
- - spec/dummy/spec/decorators/devise_spec.rb
491
- - spec/dummy/spec/decorators/helpers_spec.rb
492
- - spec/dummy/spec/decorators/post_decorator_spec.rb
493
- - spec/dummy/spec/decorators/spec_type_spec.rb
494
- - spec/dummy/spec/decorators/view_context_spec.rb
495
- - spec/dummy/spec/jobs/publish_post_job_spec.rb
496
- - spec/dummy/spec/mailers/post_mailer_spec.rb
497
- - spec/dummy/spec/models/application_spec.rb
498
- - spec/dummy/spec/models/mongoid_post_spec.rb
499
- - spec/dummy/spec/models/post_spec.rb
500
- - spec/dummy/spec/rails_helper.rb
501
- - spec/dummy/spec/shared_examples/decoratable.rb
502
- - spec/dummy/spec/spec_helper.rb
503
- - spec/dummy/test/decorators/minitest/devise_test.rb
504
- - spec/dummy/test/decorators/minitest/helpers_test.rb
505
- - spec/dummy/test/decorators/minitest/spec_type_test.rb
506
- - spec/dummy/test/decorators/minitest/view_context_test.rb
507
- - spec/dummy/test/decorators/test_unit/devise_test.rb
508
- - spec/dummy/test/decorators/test_unit/helpers_test.rb
509
- - spec/dummy/test/decorators/test_unit/view_context_test.rb
510
- - spec/dummy/test/minitest_helper.rb
511
- - spec/dummy/test/test_helper.rb
512
- - spec/generators/controller/controller_generator_spec.rb
513
- - spec/generators/decorator/decorator_generator_spec.rb
514
- - spec/generators/install/install_generator_spec.rb
515
- - spec/integration/integration_spec.rb
516
- - spec/performance/active_record.rb
517
- - spec/performance/benchmark.rb
518
- - spec/performance/decorators.rb
519
- - spec/performance/models.rb
520
- - spec/spec_helper.rb
521
- - spec/support/dummy_app.rb
522
- - spec/support/matchers/have_text.rb
523
- - spec/support/shared_examples/decoratable_equality.rb
524
- - spec/support/shared_examples/view_helpers.rb
296
+ test_files: []
@@ -1,24 +0,0 @@
1
- ## Description
2
- Detail your changes here.
3
- A few sentences describing the overall goals of the pull request's commits will suffice.
4
- Some questions you might answer:
5
-
6
- * Why was this change required?
7
- * Did you have any tough decisions to make? Which one(s) did you go with and why?
8
- * Are there any deployment impacts to this change?
9
- * Is there something you aren't happy with or that needs extra attention?
10
-
11
- ## Testing
12
- Outline steps to test your changes.
13
-
14
- 1. Go here.
15
- 1. Click this.
16
- 1. See that.
17
-
18
- ## To-Dos
19
- - [ ] tests
20
- - [ ] documentation
21
-
22
- ## References
23
- * [GitHub Issue ####](https://github.com/drapergem/draper/issues/####)
24
- * [GitHub Pull Request ####](https://github.com/drapergem/draper/pull/####)
@@ -1,71 +0,0 @@
1
- ---
2
- name: CI
3
-
4
- on:
5
- push:
6
- branches:
7
- - master
8
- pull_request:
9
-
10
- permissions:
11
- contents: read
12
-
13
- jobs:
14
- rspec:
15
- name: >-
16
- rspec (${{ matrix.ruby }})
17
-
18
- runs-on: ubuntu-latest
19
-
20
- strategy:
21
- fail-fast: false
22
- matrix:
23
- ruby:
24
- - 3.3
25
- - 3.2
26
- - 3.1
27
- rails:
28
- - 7.2
29
- include:
30
- # Edge
31
- - { ruby: 'head', rails: 'edge', allow-fail: true }
32
- # Outdated
33
- - { ruby: '3.0', rails: '7.1' }
34
- - { ruby: '2.7', rails: '6' } # RSpec AR Expectations support Rails 7.1 since Ruby 3.0
35
- - { ruby: '2.6', rails: '6' }
36
- - { ruby: '2.5', rails: '6' }
37
- - { ruby: '2.4', rails: '5' }
38
-
39
- env:
40
- RAILS_VERSION: "${{ matrix.rails }}"
41
-
42
- services:
43
- mongodb:
44
- image: mongo
45
- ports:
46
- - 27017:27017
47
-
48
- steps:
49
- - uses: actions/checkout@v4
50
-
51
- - name: Setup Ruby
52
- uses: ruby/setup-ruby@v1
53
- with:
54
- ruby-version: ${{ matrix.ruby }}
55
- rubygems: latest
56
- bundler-cache: true
57
-
58
- - name: RSpec & publish code coverage
59
- uses: paambaati/codeclimate-action@v8
60
- env:
61
- CC_TEST_REPORTER_ID: b7ba588af2a540fa96c267b3655a2afe31ea29976dc25905a668dd28d5e88915
62
- with:
63
- coverageCommand: bin/rake
64
- continue-on-error: ${{ matrix.allow-fail }}
65
- id: test
66
-
67
- - name: >-
68
- Test ${{ steps.test.outcome }}
69
- run: |
70
- echo Ruby ${{ matrix.ruby }}
71
- echo Rails ${{ matrix.rails }}
data/.gitignore DELETED
@@ -1,18 +0,0 @@
1
- *.gem
2
- .rvmrc
3
- .ruby-version
4
- .ruby-gemset
5
- .bundle
6
- Gemfile.lock
7
- pkg/*
8
- coverage.data
9
- coverage/*
10
- .yardoc
11
- doc/*
12
- tmp
13
- vendor/bundle
14
- *.swp
15
- *.swo
16
- *.DS_Store
17
- spec/dummy/log/*
18
- spec/dummy/db/*.sqlite3
data/Gemfile DELETED
@@ -1,46 +0,0 @@
1
- source "https://rubygems.org"
2
-
3
- gemspec
4
-
5
- gem 'puma'
6
-
7
- platforms :ruby do
8
- if RUBY_VERSION >= "2.5.0"
9
- gem 'sqlite3'
10
- else
11
- gem 'sqlite3', '~> 1.3.6'
12
- end
13
- end
14
-
15
- platforms :jruby do
16
- gem "minitest"
17
- gem "activerecord-jdbcsqlite3-adapter"
18
- end
19
-
20
- case rails_version = ENV['RAILS_VERSION']
21
- when nil
22
- gem 'rails'
23
- when 'edge'
24
- gem 'rails', github: 'rails/rails'
25
- else
26
- gem 'rails', "~> #{rails_version}.0"
27
- end
28
-
29
- gem 'mongoid' unless
30
- rails_version == 'edge'
31
- gem 'active_model_serializers'
32
-
33
- case RUBY_VERSION
34
- when '2.6'...'3.0'
35
- gem "turbo-rails", "<= 2.0.7"
36
- gem "redis", "~> 4.0"
37
- when '3.0'...'4'
38
- gem 'turbo-rails'
39
- gem 'redis', '~> 4.0'
40
- end
41
-
42
- if RUBY_VERSION < "2.5.0"
43
- gem 'rspec-activerecord-expectations', '~> 1.2.0'
44
- gem 'simplecov', '0.17.1'
45
- gem "loofah", "< 2.21.0" # Workaround for `uninitialized constant Nokogiri::HTML4`
46
- end