Webmock Adapter

Note: only available since v0.11.0

This integration interfaces with webmock, a popular ruby gem for stubbing HTTP requests in tests.

Here’s how you can activate this integration:

# minitest
require "webmock/minitest"
require "httpx/adapters/webmock"

class Mytest < Minitest::Test
  def setup
    WebMock.enable!
    stub_http_request(:get, "https://www.google.com").and_return(status: 200, body: "here's google")
  end

  def test_httpx_call
    response = HTTPX.get("https://www.google.com")
    assert response.status == 200
    assert response.body.to_s == "here's google"
  end
end

# in rspec
require "webmock/rspec"
require "httpx/adapters/webmock"

describe "httpx calls" do
  before do
    WebMock.enable!
    stub_http_request(:get, "https://www.google.com").and_return(status: 200, body: "here's google")
  end
  it "mocks the request" do
    response = HTTPX.get("https://www.google.com")
    expect(response.status).to eq(200)
    expect(response.body.to_s).to eq("here's google")
  end
end

Next: Considerations