diff options
Diffstat (limited to 'spec/support/helpers/dns_helpers.rb')
-rw-r--r-- | spec/support/helpers/dns_helpers.rb | 35 |
1 files changed, 8 insertions, 27 deletions
diff --git a/spec/support/helpers/dns_helpers.rb b/spec/support/helpers/dns_helpers.rb index 52c708e77a5..1795b0a9ac3 100644 --- a/spec/support/helpers/dns_helpers.rb +++ b/spec/support/helpers/dns_helpers.rb @@ -12,38 +12,19 @@ module DnsHelpers end def stub_all_dns! - allow(Addrinfo).to receive(:getaddrinfo).and_return([]) + allow(Addrinfo).to receive(:getaddrinfo).with(anything, anything, nil, :STREAM).and_return([]) + allow(Addrinfo).to receive(:getaddrinfo).with(anything, anything, nil, :STREAM, anything, anything).and_return([]) end def stub_invalid_dns! - invalid_addresses = %r{ - \A - (?: - foobar\.\w | - (?:\d{1,3}\.){4,}\d{1,3} - ) - \z - }ix - - allow(Addrinfo).to receive(:getaddrinfo) - .with(invalid_addresses, any_args) - .and_raise(SocketError, 'getaddrinfo: Name or service not known') + allow(Addrinfo).to receive(:getaddrinfo).with(/\Afoobar\.\w|(\d{1,3}\.){4,}\d{1,3}\z/i, anything, nil, :STREAM) do + raise SocketError.new("getaddrinfo: Name or service not known") + end end def permit_local_dns! - local_addresses = %r{ - \A - (?: - (?:127|10)\.0\.0\.\d{1,3} | - (?:192\.168|172\.16)\.\d{1,3}\.\d{1,3} | - 0\.0\.0\.0 | - localhost - ) - \z - }ix - - allow(Addrinfo).to receive(:getaddrinfo) - .with(local_addresses, any_args) - .and_call_original + local_addresses = /\A(127|10)\.0\.0\.\d{1,3}|(192\.168|172\.16)\.\d{1,3}\.\d{1,3}|0\.0\.0\.0|localhost\z/i + allow(Addrinfo).to receive(:getaddrinfo).with(local_addresses, anything, nil, :STREAM).and_call_original + allow(Addrinfo).to receive(:getaddrinfo).with(local_addresses, anything, nil, :STREAM, anything, anything, any_args).and_call_original end end |