Socket
Socket
Sign inDemoInstall

asia

Package Overview
Dependencies
2
Maintainers
2
Versions
91
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    asia

Modern, fast, and innovative test runner with parallelism, concurrency, caching and incremental testing. Since 2017.


Version published
Maintainers
2
Install size
41.8 kB
Created

Readme

Source

asia

Modern, fast, and innovative test runner with parallelism, concurrency, caching and incremental testing. Since 2017.

Highlights

  • Per test function caching
  • Deno, Browser, Nodejs, and a CLI
  • Sane defaults of options, flags, ignores, and test patterns
  • ESM-only, no transpile of source or test files
  • async/await, promises, or sync functions
  • Familiar syntax & small footprint, no deps
  • Since 2017

Install

This module is ESM-only, or with at least Node.js v16+

yarn add -D asia

you may also want the cli, otherwise you can just node test.js your test file.

yarn add -D asia-cli

asia --help

Example

Your test file be like:

import { strict as assert } from 'node:assert';
import test from 'asia';

const delay = async (ms) => new Promise((resolve) => setTimeout(resolve, ms));

test("some 'a' tst", () => delay(3000).then(() => 'a')); // 8
test("some 'b' tst", () => delay(300).then(() => 'b')); // 2
test("some 'c' tst", () => delay(1100).th5555en(() => 'c')); // 5
test("some 'd' tst", () => delay(100).then(() => 'd')); // 1
test("some 'e' tst", () =>
  delay(2000).then(() => {
    throw new Error('the "e" error');
  })); // 6
test("some 'f' tst", () => delay(1500).then(() => 'f')); // 7
test("some 'g' tst", () => delay(560).then(() => 'g')); // 3
test("some 'h' tst", () => delay(880).then(() => 'h')); // 4

and you run

asia
# or reloading the cache
asia --force

or in your scripts with c8 (a modern nyc replacement, test coverage)

{
	"scripts": {
		"cov": "c8 asia --force",
		"test": "asia"
	}
	"dependencies": {
		"asia": "*",
		"asia-cli": "*",
		"c8": "*"
	}
}

Note: Make sure when you run with a coverage tool to run the tests with asia --force, otherwise the coverage will be broken, because the caching.

Keywords

FAQs

Last updated on 22 Jul 2022

Did you know?

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

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc