Issue #7420 has been updated by nobu (Nobuyoshi Nakada).


Thank you for the pointing out.

Since SystemCallError.=== matches by the errno values, so it works on platforms where they are just aliases, but EAGAIN and EWOULDBLOCK were actually different on Windows.
Should Errno::EAGAIN match an instance of Errno::EWOULDBLOCK on every platforms where those are defined?
----------------------------------------
Bug #7420: Writeable pipe and timeout tests are failing (MinGW)
https://bugs.ruby-lang.org/issues/7420#change-33659

Author: luislavena (Luis Lavena)
Status: Assigned
Priority: Normal
Assignee: nobu (Nobuyoshi Nakada)
Category: test
Target version: 2.0.0
ruby -v: ruby 2.0.0dev (2012-11-22 trunk 37790) [i386-mingw32]


=begin

The tests added in r37785, associated with Feature #4646 might require a guard against Windows because are failing in the Windows CI:

http://ci.rubyinstaller.org/job/ruby-trunk-x64-test-all/246/console
http://ci.rubyinstaller.org/job/ruby-trunk-x86-test-all/346/console

   1) Error:
 test_wait_writable_EPIPE(TestIOWait):
 Errno::EWOULDBLOCK: A non-blocking socket operation could not be completed immediately. - write would block
     C:/Users/Luis/Code/ruby/ruby/test/io/wait/test_io_wait.rb:103:in `write_nonblock'
     C:/Users/Luis/Code/ruby/ruby/test/io/wait/test_io_wait.rb:103:in `fill_pipe'
     C:/Users/Luis/Code/ruby/ruby/test/io/wait/test_io_wait.rb:87:in `test_wait_writable_EPIPE'

   2) Error:
 test_wait_writable_timeout(TestIOWait):
 Errno::EWOULDBLOCK: A non-blocking socket operation could not be completed immediately. - write would block
     C:/Users/Luis/Code/ruby/ruby/test/io/wait/test_io_wait.rb:103:in `write_nonblock'
     C:/Users/Luis/Code/ruby/ruby/test/io/wait/test_io_wait.rb:103:in `fill_pipe'
     C:/Users/Luis/Code/ruby/ruby/test/io/wait/test_io_wait.rb:80:in `test_wait_writable_timeout'

=end


-- 
http://bugs.ruby-lang.org/