Commit 67b7c3c
committed
WIP: Fix some Mocha deprecation warnings
This fixes some of the warnings related to strict keyword argument
matching, like this one:
Mocha deprecation warning at app/services/asset_manager/attachment_updater/update.rb:15:in `call':
Expectation defined at test/unit/services/asset_manager/attachment_updater/draft_status_updates_test.rb:28:
in `block (3 levels) in <class:DraftStatusUpdatesTest>'
expected keyword arguments ("draft" => true),
but received positional hash ({"draft" => true}).
These will stop matching when strict keyword argument matching is enabled.
See the documentation for Mocha::Configuration#strict_keyword_argument_matching=.
In order to fix the warnings, I've changed the signature of
AssetManager::AssetUpdater#call so that new_attributes parameter must be supplied
as keyword arguments rather than a positional Hash. This had the
advantage that I only needed to change
AssetManager::AttachmentUpdater::Update#call to convert the
deep_stringify_keys into keyword arguments using a double-splat; I
didn't need to change all the places where
AssetManager::AssetUpdater#call is stubbed.
An alternative would be to leave the signature of
AssetManager::AssetUpdater#call unchanged and change the calls to
Expectation#with for all the relevant stubs to pass a positional Hash,
i.e. wrapped in braces.
This article [1] is a very useful reference.
[1]: https://www.ruby-lang.org/en/news/2019/12/12/separation-of-positional-and-keyword-arguments-in-ruby-3-0/1 parent 4b62bcb commit 67b7c3c
File tree
2 files changed
+4
-4
lines changed- app/services/asset_manager
- attachment_updater
2 files changed
+4
-4
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
16 | | - | |
17 | | - | |
| 16 | + | |
| 17 | + | |
18 | 18 | | |
19 | 19 | | |
20 | | - | |
| 20 | + | |
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
18 | | - | |
| 18 | + | |
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
| |||
0 commit comments