summaryrefslogtreecommitdiff
path: root/spec/ruby/library/socket/socket/getservbyname_spec.rb
blob: d80e948a1b02ff17b3eff782105871bbbf81ea4a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
require_relative '../spec_helper'
require_relative '../fixtures/classes'

describe "Socket#getservbyname" do
  it "returns the port for service 'discard'" do
    Socket.getservbyname('discard').should == 9
  end

  it "returns the port for service 'discard' with protocol 'tcp'" do
    Socket.getservbyname('discard', 'tcp').should == 9
  end

  it 'returns the port for service "http"' do
    Socket.getservbyname('http').should == 80
  end

  it 'returns the port for service "http" with protocol "tcp"' do
    Socket.getservbyname('http', 'tcp').should == 80
  end

  it "returns the port for service 'domain' with protocol 'udp'" do
    Socket.getservbyname('domain', 'udp').should == 53
  end

  it "returns the port for service 'daytime'" do
    Socket.getservbyname('daytime').should == 13
  end

  it "raises a SocketError when the service or port is invalid" do
    lambda { Socket.getservbyname('invalid') }.should raise_error(SocketError)
  end
end