2018-03-04 15:09:32 +00:00
|
|
|
require_relative '../../../spec_helper'
|
|
|
|
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
|
|
|
|
|
|
|
|
it 'using Fixnum argument' do
|
|
|
|
@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
|
|
|
|
lambda { UDPSocket.new(-1) }.should raise_error(SystemCallError) { |e|
|
|
|
|
[Errno::EAFNOSUPPORT, Errno::EPROTONOSUPPORT].should include(e.class)
|
|
|
|
}
|
2017-05-07 12:04:49 +00:00
|
|
|
end
|
|
|
|
end
|