# Mock a dependency the tests currently call for real

A third-party the tests currently call for real, replaced with a mock server so the suite stops depending on somebody else's uptime.

Category: Mocks, fixtures, and test doubles
Source: https://letsship.ai/use-cases/stand-up-a-mock-server
Published: 2026-08-25

## Goal

Stand up a mock server for a dependency the test suite currently calls over the network.

## Acceptance criteria

- The suite passes with no network access
- Mock responses are recorded from the real service, not invented
- Suite timing before and after is recorded
- One test still runs against the real service, on a schedule rather than per commit

## What lands as proof

A green suite with networking disabled, plus the timing difference that removing the network calls bought.

## Prompt

Copy this to an agent to open the ticket:

```text
Create a Linear issue in my team and assign it to the SHIP agent.

Title: Mock {dependency} so the suite runs offline

Description: Stand up a mock server for a dependency the test suite currently calls over the network.

Acceptance criteria:
- The suite passes with no network access
- Mock responses are recorded from the real service, not invented
- Suite timing before and after is recorded
- One test still runs against the real service, on a schedule rather than per commit

Before you create the issue, find a third-party service this repository's tests call directly and replace {dependency} with it.
```

## Questions

### What does the agent actually change?

The ticket is scoped to one outcome: stand up a mock server for a dependency the test suite currently calls over the network. Work that serves that outcome is in scope, and anything outside it is left for a separate ticket, so the pull request stays reviewable.

### How do I know the work is done?

The pull request carries the evidence, not only the diff. Here that means the suite runs offline, timing measured before and after, so a reviewer can confirm the result without reproducing the work locally.

### How much oversight does this need?

The run stops once the plan is written. Somebody reads the approach and approves it before any code exists, which is the cheapest moment to redirect the work.
