diff options
Diffstat (limited to 'spec/ruby/library/socket/unixsocket/socketpair_spec.rb')
-rw-r--r-- | spec/ruby/library/socket/unixsocket/socketpair_spec.rb | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/spec/ruby/library/socket/unixsocket/socketpair_spec.rb b/spec/ruby/library/socket/unixsocket/socketpair_spec.rb new file mode 100644 index 0000000000..3e9646f76b --- /dev/null +++ b/spec/ruby/library/socket/unixsocket/socketpair_spec.rb @@ -0,0 +1,40 @@ +require_relative '../spec_helper' + +with_feature :unix_socket do + describe 'UNIXSocket.socketpair' do + before do + @s1, @s2 = UNIXSocket.socketpair + end + + after do + @s1.close + @s2.close + end + + 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' + end + + 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', ''] + end + + it 'sets the socket peer addresses to empty Strings' do + @s1.peeraddr.should == ['AF_UNIX', ''] + @s2.peeraddr.should == ['AF_UNIX', ''] + end + end +end |