From 60af6fef3c664ac7dab53fcde28c30f30ce862aa Mon Sep 17 00:00:00 2001 From: Benoit Daloze Date: Mon, 10 Jun 2019 12:45:00 +0200 Subject: [PATCH] Fix Resolv specs to not depend on a system /etc/hosts file * https://rubyci.org/logs/rubyci.s3.amazonaws.com/archlinux/ruby-master/log/20190609T153804Z.fail.html.gz * Thanks @naruse for the tip. --- spec/ruby/library/resolv/fixtures/hosts | 1 + spec/ruby/library/resolv/get_address_spec.rb | 8 ++++---- spec/ruby/library/resolv/get_addresses_spec.rb | 8 ++++---- spec/ruby/library/resolv/get_name_spec.rb | 7 ++++--- spec/ruby/library/resolv/get_names_spec.rb | 7 +++---- 5 files changed, 16 insertions(+), 15 deletions(-) create mode 100644 spec/ruby/library/resolv/fixtures/hosts diff --git a/spec/ruby/library/resolv/fixtures/hosts b/spec/ruby/library/resolv/fixtures/hosts new file mode 100644 index 0000000000..a50f3d6a69 --- /dev/null +++ b/spec/ruby/library/resolv/fixtures/hosts @@ -0,0 +1 @@ +127.0.0.1 localhost localhost4 diff --git a/spec/ruby/library/resolv/get_address_spec.rb b/spec/ruby/library/resolv/get_address_spec.rb index 3506a652b6..eecf5e0f6f 100644 --- a/spec/ruby/library/resolv/get_address_spec.rb +++ b/spec/ruby/library/resolv/get_address_spec.rb @@ -4,11 +4,11 @@ require 'resolv' describe "Resolv#getaddress" do platform_is_not :windows do it "resolves localhost" do - res = Resolv.new([Resolv::Hosts.new]) + hosts = Resolv::Hosts.new(fixture(__FILE__ , "hosts")) + res = Resolv.new([hosts]) - lambda { - res.getaddress("localhost") - }.should_not raise_error(Resolv::ResolvError) + res.getaddress("localhost").should == "127.0.0.1" + res.getaddress("localhost4").should == "127.0.0.1" end end diff --git a/spec/ruby/library/resolv/get_addresses_spec.rb b/spec/ruby/library/resolv/get_addresses_spec.rb index c484161163..7e89c3c884 100644 --- a/spec/ruby/library/resolv/get_addresses_spec.rb +++ b/spec/ruby/library/resolv/get_addresses_spec.rb @@ -4,11 +4,11 @@ require 'resolv' describe "Resolv#getaddresses" do platform_is_not :windows do it "resolves localhost" do - res = Resolv.new([Resolv::Hosts.new]) + hosts = Resolv::Hosts.new(fixture(__FILE__ , "hosts")) + res = Resolv.new([hosts]) - addresses = res.getaddresses("localhost") - addresses.should_not == nil - addresses.size.should > 0 + res.getaddresses("localhost").should == ["127.0.0.1"] + res.getaddresses("localhost4").should == ["127.0.0.1"] end end end diff --git a/spec/ruby/library/resolv/get_name_spec.rb b/spec/ruby/library/resolv/get_name_spec.rb index 0433836b5f..006014bde2 100644 --- a/spec/ruby/library/resolv/get_name_spec.rb +++ b/spec/ruby/library/resolv/get_name_spec.rb @@ -4,9 +4,10 @@ require 'resolv' describe "Resolv#getname" do platform_is_not :windows do it "resolves 127.0.0.1" do - lambda { - Resolv.getname("127.0.0.1") - }.should_not raise_error(Resolv::ResolvError) + hosts = Resolv::Hosts.new(fixture(__FILE__ , "hosts")) + res = Resolv.new([hosts]) + + res.getname("127.0.0.1").should == "localhost" end end diff --git a/spec/ruby/library/resolv/get_names_spec.rb b/spec/ruby/library/resolv/get_names_spec.rb index fa77ba771f..897e24e7ec 100644 --- a/spec/ruby/library/resolv/get_names_spec.rb +++ b/spec/ruby/library/resolv/get_names_spec.rb @@ -4,11 +4,10 @@ require 'resolv' describe "Resolv#getnames" do platform_is_not :windows do it "resolves 127.0.0.1" do - res = Resolv.new([Resolv::Hosts.new]) + hosts = Resolv::Hosts.new(fixture(__FILE__ , "hosts")) + res = Resolv.new([hosts]) - names = res.getnames("127.0.0.1") - names.should_not == nil - names.size.should > 0 + names = res.getnames("127.0.0.1").should == ["localhost", "localhost4"] end end end