Skip to content

Fix Ruby 2.7 warning in minitest assert_text#2365

Merged
twalpole merged 1 commit intoteamcapybara:masterfrom
eileencodes:fix-assert_text-for-ruby-2-7
Jun 15, 2020
Merged

Fix Ruby 2.7 warning in minitest assert_text#2365
twalpole merged 1 commit intoteamcapybara:masterfrom
eileencodes:fix-assert_text-for-ruby-2-7

Conversation

@eileencodes
Copy link
Contributor

In our application at GitHub we were seeing a warning coming from
assert_text on the latest version and building the source from master.

Warning we were seeing:

/vendor/gems/2.7.1/ruby/2.7.0/gems/capybara-3.32.2/lib/capybara/minitest.rb:56: warning: Using the last argument as keyword parameters is deprecated; maybe ** should be added to the call
/vendor/gems/2.7.1/ruby/2.7.0/gems/capybara-3.32.2/lib/capybara/minitest.rb:56:in `assert_text'

The warning is only visible when assert_text is delegated from
minitest which is why I've updated the minitest_spec.rb file to include
an argument. I was unable to see or reproduce this warning in the assert
text test.

I don't really get why ruby2_keywords wasn't adequate for this change
but from my testing my changes work in Ruby 2.6 and 2.7 and fix the
warning in 2.7.

In our application at GitHub we were seeing a warning coming from
`assert_text` on the latest version and building the source from master.

Warning we were seeing:

```
/vendor/gems/2.7.1/ruby/2.7.0/gems/capybara-3.32.2/lib/capybara/minitest.rb:56: warning: Using the last argument as keyword parameters is deprecated; maybe ** should be added to the call
/vendor/gems/2.7.1/ruby/2.7.0/gems/capybara-3.32.2/lib/capybara/minitest.rb:56:in `assert_text'
```

The warning is only visible when `assert_text` is delegated from
minitest which is why I've updated the minitest_spec.rb file to include
an argument. I was unable to see or reproduce this warning in the assert
text test.

I don't really get why `ruby2_keywords` wasn't adequate for this change
but from my testing my changes work in Ruby 2.6 and 2.7 and fix the
warning in 2.7.
@twalpole
Copy link
Member

Thanks for this. I don't understand why ruby2_keywords wasn't adequate either, but then the whole deprecation of keyword arguments behavior has been handled terribly by Ruby (imho) so i don't find it surprising.

@twalpole twalpole merged commit 8f86f46 into teamcapybara:master Jun 15, 2020
@eileencodes eileencodes deleted the fix-assert_text-for-ruby-2-7 branch June 15, 2020 17:27
@eileencodes
Copy link
Contributor Author

Is this something that I can help backport for the 3.32 series? Let me know if I can help at all with that, or if this will be in a future version 😄

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants