Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@zuplo/checkly

Package Overview
Dependencies
Maintainers
0
Versions
11
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@zuplo/checkly

This is a helper that makes it easy to use Checkly with Zuplo APIs.

  • 1.2.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
0
Created
Source

Zuplo Checkly Utilities

A simple wrapper utility for Checkly API tests that makes it easier to write and manage tests.

The key change here is that the utility allows writing tests using fetch API standard objects (Request, Headers, etc.) rather than using key/value pairs.

Installation

npm install @zuplo/checkly

Usage

The library outputs two functions: check and asserts.

import { asserts, check } from "@zuplo/checkly";

The check function is similar to the Checkly ApiChecks construct, but uses a modified version of ApiCheckProps object that uses fetch API standard objects.

The object is structured as follows:

Omit<ApiCheckProps, "request"> & {
  request: Omit<RequestInit, "body"> & { url: string; body?: string };
  assertions: Assertion[] | undefined;
}

The asserts function is just an alias to Checkly's AssertionBuilder class.

The url property in the request object is the only required property and must be a relative path. The value of ENVIRONMENT_URL will be prepended to the path when the check is run.

NOTE: The id value of each check is generated automatically using the name of the test because I find it tiresome to write IDs manually for each test. :)

Running Tests

Running the tests is done normally using the Checkly CLI. The ENVIRONMENT_URL environment variable must be set to the base URL of the API.

npx checkly test run -e ENVIRONMENT_URL=https://example.com

Examples

Basic check

import { asserts, check } from "@zuplo/checkly";

check({
  name: "Should return okay",
  request: {
    url: "/hello-world",
  },
  assertions: [asserts().statusCode().equals(200)],
});

Check with Headers

import { asserts, check } from "@zuplo/checkly";

check({
  name: "Should send headers",
  request: {
    url: "/hello-world",
    method: "GET",
    headers: {
      "Content-Type": "application/json",
      Authorization: "Bearer token",
    },
  },
  assertions: [asserts().statusCode().equals(200)],
});

Check with Body

import { asserts, check } from "@zuplo/checkly";

check({
  name: "Should send a body",
  request: {
    url: "/hello-world",
    method: "POST",
    headers: {
      "Content-Type": "application/json",
    },
    body: JSON.stringify({ key: "value" }),
  },
  assertions: [asserts().statusCode().equals(200)],
});

Release

To run a new release, run the following command:

npm version {major|minor|patch}

FAQs

Package last updated on 27 Aug 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc