Skip to content

Commit

Permalink
Synchronise specs for UNIXSocket.pair and UNIXSocket.socketpair
Browse files Browse the repository at this point in the history
The methods are aliases. This change is to make it easier to see that we
added a combination of both specs. This makes it easier to convert it
into a shared spec
  • Loading branch information
herwinw committed Jan 28, 2024
1 parent e36cbdc commit 06fd769
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 21 deletions.
13 changes: 9 additions & 4 deletions library/socket/unixsocket/pair_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -15,22 +15,27 @@
@s2.close
end

it "returns two UNIXSockets" do
@s1.should be_an_instance_of(UNIXSocket)
@s2.should be_an_instance_of(UNIXSocket)
end

it "returns a pair of connected sockets" do
@s1.puts "foo"
@s2.gets.should == "foo\n"
end

it "returns sockets with no name" do
@s1.path.should == @s2.path
it "sets the socket paths to empty Strings" do
@s1.path.should == ""
@s2.path.should == ""
end

it "returns sockets with no address" do
it "sets the socket addresses to empty Strings" do
@s1.addr.should == ["AF_UNIX", ""]
@s2.addr.should == ["AF_UNIX", ""]
end

it "returns sockets with no peeraddr" do
it "sets the socket peer addresses to empty Strings" do
@s1.peeraddr.should == ["AF_UNIX", ""]
@s2.peeraddr.should == ["AF_UNIX", ""]
end
Expand Down
37 changes: 20 additions & 17 deletions library/socket/unixsocket/socketpair_spec.rb
Original file line number Diff line number Diff line change
@@ -1,40 +1,43 @@
require_relative '../spec_helper'
require_relative '../fixtures/classes'
require_relative '../shared/partially_closable_sockets'

with_feature :unix_socket do
describe 'UNIXSocket.socketpair' do
before do
describe "UNIXSocket.socketpair" do
it_should_behave_like :partially_closable_sockets

before :each do
@s1, @s2 = UNIXSocket.socketpair
end

after do
after :each do
@s1.close
@s2.close
end

it 'returns two UNIXSockets' do
it "returns two UNIXSockets" do
@s1.should be_an_instance_of(UNIXSocket)
@s2.should be_an_instance_of(UNIXSocket)
end

it 'connects the sockets to each other' do
@s1.write('hello')

@s2.recv(5).should == 'hello'
it "returns a pair of connected sockets" do
@s1.puts "foo"
@s2.gets.should == "foo\n"
end

it 'sets the socket paths to empty Strings' do
@s1.path.should == ''
@s2.path.should == ''
it "sets the socket paths to empty Strings" do
@s1.path.should == ""
@s2.path.should == ""
end

it 'sets the socket addresses to empty Strings' do
@s1.addr.should == ['AF_UNIX', '']
@s2.addr.should == ['AF_UNIX', '']
it "sets the socket addresses to empty Strings" do
@s1.addr.should == ["AF_UNIX", ""]
@s2.addr.should == ["AF_UNIX", ""]
end

it 'sets the socket peer addresses to empty Strings' do
@s1.peeraddr.should == ['AF_UNIX', '']
@s2.peeraddr.should == ['AF_UNIX', '']
it "sets the socket peer addresses to empty Strings" do
@s1.peeraddr.should == ["AF_UNIX", ""]
@s2.peeraddr.should == ["AF_UNIX", ""]
end
end
end

0 comments on commit 06fd769

Please sign in to comment.