Skip to content

redhat-plumbers-in-action/testing-farm

Repository files navigation

Testing Farm

npm version Tests Linters CodeQL codecov

Typesafe access to Testing Farm's REST API.

API

Creating the API instance

import TestingFarmAPI from "testing-farm";

const api = new TestingFarmAPI("https://api.dev.testing-farm.io/v0.1");
await api.about();

List a Test Requests

documentation of - GET /requests

const queryParams = { /* https://api.dev.testing-farm.io/redoc#operation/get_test_requests_v0_1_requests_get */ }

const requests: Requests[] = await api.requests(queryParams);
const requests: unknown = await api.requests(queryParams, false);

Request a New Test

documentation of - POST /requests

const request = { /* https://api.dev.testing-farm.io/redoc#operation/request_a_new_test_v0_1_requests_post */ }

const response: NewRequestResponse = await api.newRequest(request);
const response: unknown = await api.newRequest(request, false);
const response: unknown = await api.unsafeNewRequest(request /* unknown type */);

Test Request Details

documentation of - GET /requests/{request_id}

const details: Request = await api.requestDetails('test-id');
const details: unknown = await api.requestDetails('test-id', false);

Cancel a Test Request

documentation of - DELETE /requests/{request_id}

const response: CancelRequestResponse = await cancelRequest('test-id');
const response: unknown = await cancelRequest('test-id', false);

Composes Public Ranch

documentation of - GET /composes

const composes: Composes = await api.composes();
const composes: unknown = await api.composes(false);

Composes

documentation of - GET /composes/{ranch}

const composes: Composes = await api.ranchComposes('public');
const composes: unknown = await api.ranchComposes('public', false);

About Testing Farm

documentation of - GET /about

const about: About = await api.about();
const about: unknown = await api.about(false);