Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

@testingrequired/tf

Package Overview
Dependencies
Maintainers
1
Versions
24
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@testingrequired/tf

A testing framework

latest
npmnpm
Version
0.0.23
Version published
Weekly downloads
57
256.25%
Maintainers
1
Weekly downloads
 
Created
Source

tf

Build Status

A testing framework.

Features

  • Testing behavior agnostic
  • Effortlessly extendable
  • Most batteries included

Note

This is not a production ready project yet. Breaking changes should be expected.

Getting Started

Install

npm version

$ npm i -D @testingrequired/tf@latest

Supported Node Versions

latest & lts

Executable

The framework doesn't provide an executable so you'll need to create one: ./bin/tf.js

import { run } from "@testingrequired/tf";

run();

Configure

This will do nothing so far. The framework makes zero assumptions about how you want it to behave. Unit testing, mocking, what your test syntax looks like. You will need to define that behavior using middleware in the executable:

import { run, config, middleware } from "@testingrequired/tf";

const { starter, matchTestFiles, specSyntax } = middleware;

run(config(starter, matchTestFiles("./tests/**/*.spec.js"), specSyntax));

A config composes middleware to define that behavior. Here matchTestFiles defines how to find the test files while specSyntax defines how to read the them.

starter is an optional middleware that bundles some of the core middlewares to get you started: randomize test order, run tests, report results and more. Of course you can skip this and define exactly what middleware you wish to use.

Wire Test Script

{
  ...package,
  "scripts": {
    "test": "node -r esm ./bin/tf.js"
  }
}

This example uses esm to support ES modules in your executable.

Write Tests

Create a test file: ./tests/example.spec.js

describe("increment value", () => {
  let value = 0;

  beforeEach(() => {
    value++;
  });

  it("should equal correct value", () => assert(value === 1));
});

Run Tests

$ npm test

Example Project

See a simple implementation: https://github.com/testingrequired/tf-example

Next Steps

Middleware

Look through the growing list of available middleware to build the testing functionality your project needs.

More In Depth

The anatomy documentation explains how the framework is structured and how middleware works. This would be a good place to start if you want to write custom middleware.

Custom Middleware

Define the behavior required to run your tests by writing custom middleware.

Contributing

See development.

Built With

FAQs

Package last updated on 12 Oct 2019

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