Make specs pending instead of failing in no multicast environments#9566
Make specs pending instead of failing in no multicast environments#9566waj merged 2 commits intocrystal-lang:masterfrom
Conversation
|
Sorry, I'm confused. Is this patch still necessary after #9438? |
|
Yeah, I suspected them to have the same reason initially, but given the IPv6 issues reproduce in some environments which this then does not, it looks like it's independent. I don't know what settings the hosted GHA runners have to trigger this. Either way, #9438 did not do anything about these. |
| @parent.report(:fail, description, file, line, Time.monotonic - start, ex) | ||
| Spec.abort! if Spec.fail_fast? | ||
| rescue ex : Spec::ExamplePending | ||
| @parent.report(:pending, description, file, line, Time.monotonic - start) |
There was a problem hiding this comment.
ex.message is not being used anywhere, is that intentional?
There was a problem hiding this comment.
For now yes.
While I felt it important to be able to specify a reason in the pending! call, making it clearer why that call is happening all of the sudden, we currently have no holistic approach to pending reasons. That is the pending method does not accept a reason in any form and there's no existing reporting format/infrastructure for this. I think pending should gain a way to collect reasons and then we should update the formatter to present them, but I felt introducing that holistic approach here to be a bit too much for what it wants to do, also because there's probably a lot more opinion on how that should be done.
See #9508 / #9508 (comment) for history and context.
I'd still argue to include this because while it doesn't happen in one of our current build environments, it might in somebody else's. Also I think the spec feature is quite nice :)
SEO: UDPSocket using IPv6 joins and transmits to multicast groups / UDPSocket using IPv4 joins and transmits to multicast groups /
setsockopt: Protocol not available (Socket::Error)