mirror of
https://github.com/mastodon/mastodon.git
synced 2026-05-06 13:28:54 -05:00
27 lines
781 B
Ruby
27 lines
781 B
Ruby
# frozen_string_literal: true
|
|
|
|
require 'rails_helper'
|
|
|
|
RSpec.describe Request::Socket do
|
|
describe '.open' do
|
|
context 'when an IPv6 only host lookup' do
|
|
let(:resolv_service) { instance_double(Resolv) }
|
|
let(:socket_service) { instance_double(Socket).as_null_object }
|
|
|
|
before do
|
|
allow(Resolv).to receive(:new).and_return(resolv_service)
|
|
allow(Socket).to receive(:new).and_return(socket_service)
|
|
allow(resolv_service).to receive(:getaddresses).with('example.com').and_return(%w(2001:4860:4860::8844))
|
|
end
|
|
|
|
it 'returns a valid socket' do
|
|
described_class.open('example.com')
|
|
|
|
expect(Socket)
|
|
.to have_received(:new)
|
|
.with(Socket::AF_INET6, Socket::SOCK_STREAM, 0)
|
|
end
|
|
end
|
|
end
|
|
end
|