Registry / testing / superagent-mocker

superagent-mocker

JSON →
library0.5.2jsnpmunverified

A simple REST API mocking library for superagent in browser or Node.js. Version 0.5.2 (final release) with no updates since 2017. Allows defining route handlers for GET, POST, PUT, PATCH, DELETE with URL parameters and body access. Supports custom timeout, header matching, and route teardown. Differentiates by working directly on the superagent instance, no separate server needed, suitable for frontend testing.

npm install superagent-mocker
INSTALL
IMPORT
SIG · SUPERAGENT-MOCKER
S
superagent-mocker
testingjavascriptv0.5.2
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

mock
import mock from 'superagent-mocker'
var mock = require('superagent-mocker')()
ESM import returns default function that takes superagent instance
mock.get
mock.get('/path', handler)
mock.get({url:'/path'}, handler)
First argument is string URL pattern, not object
mock.clearRoutes
mock.clearRoutes()
mock.clear()
Method is named clearRoutes, not clear

Shows basic mock setup: import, attach to superagent, define a GET route with URL param, set timeout, and issue request.

import request from 'superagent'; import mock from 'superagent-mocker'; mock(request); mock.get('/hello/:name', (req) => { return { message: `Hello ${req.params.name}!` }; }); mock.timeout = 50; request .get('/hello/World') .end((err, res) => { console.log(res.body); // { message: 'Hello World!' } });
Debug
Known issues
gotchamock() modifies the superagent instance globally; all requests after calling mock(request) will be intercepted until mock.unmock() is called.
fix
Call mock.unmock() after each test to restore original behavior.
affects: >=0.0.1
deprecatedThe package is unmaintained and may not work with modern superagent versions (>=4). Last release 0.5.2 was in 2017.
fix
Consider alternatives like nock or msw for active support.
affects: >=0.0.1
gotchaHeader keys are lowercased when returned in req.headers.
fix
When asserting headers, use lowercase keys: req.headers['x-custom-header'].
affects: >=0.0.1
gotchaTimeout can be a function or number. If not set, requests may hang.
fix
Set mock.timeout to a number (e.g., 100) or a function returning a number.
affects: >=0.0.1
Errors
Common errors & fixes
TypeError: mock is not a function
Importing as named export instead of default
fix
Use: import mock from 'superagent-mocker';
TypeError: request.get is not a function
Forgot to call mock(request) before using mocked endpoints
fix
Call mock(request) after both imports.
Cannot set property of undefined
Trying to mock a route before calling mock(request)
fix
Ensure mock(request) is called before mock.get(...)
Upgrade
Version history
0.5.2latest on npm
Audit
Dependencies
superagentrequiredpatches superagent to intercept requests
Agent activity
4 hits · last 30 days
node
4
Resources
superagent-mocker — npm install superagent-mocker · libregistry