2018-08-03 16:19:40 +00:00
|
|
|
require_relative '../spec_helper'
|
2018-03-04 15:09:32 +00:00
|
|
|
require_relative '../fixtures/classes'
|
2017-05-07 12:04:49 +00:00
|
|
|
|
|
|
|
describe 'UDPSocket.new' do
|
|
|
|
after :each do
|
|
|
|
@socket.close if @socket && !@socket.closed?
|
|
|
|
end
|
|
|
|
|
|
|
|
it 'without arguments' do
|
|
|
|
@socket = UDPSocket.new
|
|
|
|
@socket.should be_an_instance_of(UDPSocket)
|
|
|
|
end
|
|
|
|
|
2018-09-25 10:41:16 +00:00
|
|
|
it 'using Integer argument' do
|
2017-05-07 12:04:49 +00:00
|
|
|
@socket = UDPSocket.new(Socket::AF_INET)
|
|
|
|
@socket.should be_an_instance_of(UDPSocket)
|
|
|
|
end
|
|
|
|
|
|
|
|
it 'using Symbol argument' do
|
|
|
|
@socket = UDPSocket.new(:INET)
|
|
|
|
@socket.should be_an_instance_of(UDPSocket)
|
|
|
|
end
|
|
|
|
|
|
|
|
it 'using String argument' do
|
|
|
|
@socket = UDPSocket.new('INET')
|
|
|
|
@socket.should be_an_instance_of(UDPSocket)
|
|
|
|
end
|
|
|
|
|
2017-12-15 17:44:37 +00:00
|
|
|
it 'raises Errno::EAFNOSUPPORT or Errno::EPROTONOSUPPORT if unsupported family passed' do
|
2019-07-27 12:40:09 +02:00
|
|
|
-> { UDPSocket.new(-1) }.should raise_error(SystemCallError) { |e|
|
2017-12-15 17:44:37 +00:00
|
|
|
[Errno::EAFNOSUPPORT, Errno::EPROTONOSUPPORT].should include(e.class)
|
|
|
|
}
|
2017-05-07 12:04:49 +00:00
|
|
|
end
|
|
|
|
end
|