summaryrefslogtreecommitdiff
path: root/spec/ruby/library/socket/socket
diff options
context:
space:
mode:
authoreregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-08-17 23:51:47 +0000
committereregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-08-17 23:51:47 +0000
commita2d2a55d0cb3442705244050d6eac7a5863fcde8 (patch)
tree077a480503379f75bbf5127afd942954875bbf82 /spec/ruby/library/socket/socket
parentfb01ef38a15d1b3b8cc52d58d41778a0c8d34624 (diff)
Guard spec failing on Solaris
* https://rubyci.org/logs/rubyci.s3.amazonaws.com/unstable11x/ruby-trunk/log/20180817T182406Z.fail.html.gz git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64422 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'spec/ruby/library/socket/socket')
-rw-r--r--spec/ruby/library/socket/socket/connect_nonblock_spec.rb54
1 files changed, 28 insertions, 26 deletions
diff --git a/spec/ruby/library/socket/socket/connect_nonblock_spec.rb b/spec/ruby/library/socket/socket/connect_nonblock_spec.rb
index f3a4e496c8..037dc39131 100644
--- a/spec/ruby/library/socket/socket/connect_nonblock_spec.rb
+++ b/spec/ruby/library/socket/socket/connect_nonblock_spec.rb
@@ -16,37 +16,39 @@ describe "Socket#connect_nonblock" do
@thread.join if @thread
end
- it "connects the socket to the remote side" do
- port = nil
- accept = false
- @thread = Thread.new do
- server = TCPServer.new(@hostname, 0)
- port = server.addr[1]
- Thread.pass until accept
- conn = server.accept
- conn << "hello!"
- conn.close
- server.close
- end
+ platform_is_not :solaris do
+ it "connects the socket to the remote side" do
+ port = nil
+ accept = false
+ @thread = Thread.new do
+ server = TCPServer.new(@hostname, 0)
+ port = server.addr[1]
+ Thread.pass until accept
+ conn = server.accept
+ conn << "hello!"
+ conn.close
+ server.close
+ end
- Thread.pass until port
+ Thread.pass until port
- addr = Socket.sockaddr_in(port, @hostname)
- begin
- @socket.connect_nonblock(addr)
- rescue Errno::EINPROGRESS
- end
+ addr = Socket.sockaddr_in(port, @hostname)
+ begin
+ @socket.connect_nonblock(addr)
+ rescue Errno::EINPROGRESS
+ end
- accept = true
- IO.select nil, [@socket]
+ accept = true
+ IO.select nil, [@socket]
- begin
- @socket.connect_nonblock(addr)
- rescue Errno::EISCONN
- # Not all OS's use this errno, so we trap and ignore it
- end
+ begin
+ @socket.connect_nonblock(addr)
+ rescue Errno::EISCONN
+ # Not all OS's use this errno, so we trap and ignore it
+ end
- @socket.read(6).should == "hello!"
+ @socket.read(6).should == "hello!"
+ end
end
platform_is_not :freebsd, :solaris, :aix do