Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add newest test apps #663

Merged
merged 13 commits into from
Oct 26, 2018
Merged

Add newest test apps #663

merged 13 commits into from
Oct 26, 2018

Conversation

deivid-rodriguez
Copy link
Contributor

@deivid-rodriguez deivid-rodriguez commented Oct 25, 2018

We were not testing against Rails 5.1 nor Rails 5.2. This PR adds fixture apps for those Rails versions, and test against them.

config.around do |example|
Timeout.timeout(test_timeout, &example)
end

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I def want that ... just set the timeout to something high for the slow tests

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Travis already has built-in timeout detection, not sure about Appveyor. I'll add it back anyways.

result = io.read
end
raise "FAILED #{command}\n#{result}" if $?.success? == !!options[:fail]
result
end

%w(rails42 rails50).each do |rails|
%w(rails42 rails50 rails51 rails52).each do |rails|
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe drop 5.0, supporting 2 latest could be good enough ...

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Up to you, just confirm and I'll drop 4.2 and 5.0 then.

@grosser
Copy link
Owner

grosser commented Oct 26, 2018 via email

@deivid-rodriguez
Copy link
Contributor Author

I see.

Well, I really hope that timeout never triggers and we no longer get anymore hangs... :) And that timeout's risks do not apply to us 😅.

I'll add it back tomorrow!

```
rails _5.1.6_ new spec/fixtures/rails51 --skip-listen --skip-spring
```
```
rails _5.2.1_ new spec/fixtures/rails52 --skip-listen --skip-spring --skip-bootsnap
```
With `bin/rails g model User` and each one.
Through `bin/rails db:migrate`.
@deivid-rodriguez
Copy link
Contributor Author

@grosser I applied your requests, this should be ready now!

@@ -189,7 +189,7 @@ def setup_runtime_log
config.raise_errors_for_deprecations!

# sometimes stuff hangs -> do not hang everything
config.include(Module.new {def test_timeout;30;end })
config.include(Module.new {def test_timeout;300;end })
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why do all tests need 5 minutes now ... can we get this back to everything gets 30s and the rails ones get 5 minutes ?

Copy link
Contributor Author

@deivid-rodriguez deivid-rodriguez Oct 26, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These tests were also sometimes timing out prior to this PR, and they are also sometimes passing without the modification in the timeout. I'm just increasing the timeout so that they pass more reliably. The new value, I took it from the unused let being removed in 326d08f. Instead, I'll dig into why that let became unused and try to restore it.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah ok, I misunderstood this. I see what you're doing now. Let me update it.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm unsure which value to use, though, I guess... 400? Or I can leave it as it is and just restart builds the few times they timeout?

I proposed to just remove the timeout because from all the times I have run the specs, I haven't seen a single hang, just some slow specs for which the timeout is not appropriate.

@grosser
Copy link
Owner

grosser commented Oct 26, 2018 via email

@deivid-rodriguez
Copy link
Contributor Author

Maybe we can instead enable the RSpec documentation formatter in CI, so one can easily see where the hang happened and debug it. If not, I'll bump the timeout in rails_spec.rb to 400 seconds, which should be enough I guess.

@grosser
Copy link
Owner

grosser commented Oct 26, 2018 via email

@deivid-rodriguez
Copy link
Contributor Author

Fair enough, I increased it to 360 (one more minute) only for the rails specs 👍.

@deivid-rodriguez
Copy link
Contributor Author

Ended up increasing it to 420 seconds, because with 360 one entry timed out.

@grosser grosser merged commit ca5a9d1 into grosser:master Oct 26, 2018
@grosser
Copy link
Owner

grosser commented Oct 26, 2018

thx!

@deivid-rodriguez deivid-rodriguez deleted the add_newest_test_apps branch October 26, 2018 20:22
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.

None yet

2 participants