summaryrefslogtreecommitdiff
path: root/spec/ruby/library/socket/addrinfo/ip_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/ruby/library/socket/addrinfo/ip_spec.rb')
-rw-r--r--spec/ruby/library/socket/addrinfo/ip_spec.rb50
1 files changed, 38 insertions, 12 deletions
diff --git a/spec/ruby/library/socket/addrinfo/ip_spec.rb b/spec/ruby/library/socket/addrinfo/ip_spec.rb
index 2e4b613ae5..2237eca263 100644
--- a/spec/ruby/library/socket/addrinfo/ip_spec.rb
+++ b/spec/ruby/library/socket/addrinfo/ip_spec.rb
@@ -1,5 +1,5 @@
-require File.expand_path('../../../../spec_helper', __FILE__)
-require 'socket'
+require_relative '../spec_helper'
+require_relative '../fixtures/classes'
describe "Addrinfo#ip?" do
describe "for an ipv4 socket" do
@@ -8,7 +8,7 @@ describe "Addrinfo#ip?" do
end
it "returns true" do
- @addrinfo.ip?.should be_true
+ @addrinfo.ip?.should == true
end
end
@@ -18,19 +18,45 @@ describe "Addrinfo#ip?" do
end
it "returns true" do
- @addrinfo.ip?.should be_true
+ @addrinfo.ip?.should == true
end
end
- platform_is_not :windows do
- describe "for a unix socket" do
- before :each do
- @addrinfo = Addrinfo.unix("/tmp/sock")
- end
+ describe "for a unix socket" do
+ before :each do
+ @addrinfo = Addrinfo.unix("/tmp/sock")
+ end
+
+ it "returns false" do
+ @addrinfo.ip?.should == false
+ end
+ end
+end
+
+describe 'Addrinfo.ip' do
+ SocketSpecs.each_ip_protocol do |family, ip_address|
+ it 'returns an Addrinfo instance' do
+ Addrinfo.ip(ip_address).should.instance_of?(Addrinfo)
+ end
+
+ it 'sets the IP address' do
+ Addrinfo.ip(ip_address).ip_address.should == ip_address
+ end
+
+ it 'sets the port to 0' do
+ Addrinfo.ip(ip_address).ip_port.should == 0
+ end
+
+ it 'sets the address family' do
+ Addrinfo.ip(ip_address).afamily.should == family
+ end
+
+ it 'sets the protocol family' do
+ Addrinfo.ip(ip_address).pfamily.should == family
+ end
- it "returns Socket::AF_INET6" do
- @addrinfo.ip?.should be_false
- end
+ it 'sets the socket type to 0' do
+ Addrinfo.ip(ip_address).socktype.should == 0
end
end
end