npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@sil/test

v0.0.6

Published

Simple testing lib without Jest

Downloads

279

Readme

Test

This testing framework provides a simple and flexible way to write and execute tests for JavaScript code. It allows developers to define test suites, individual tests, and expectations using intuitive syntax.

Installation

npm install @sil/test

Usage

Define Test Suites: Use the describe function to group related tests into suites.

describe('Suite Name', () => {
    // Define tests here using the `it` function
});

Define Tests: Inside each suite, use the it function to specify individual tests.

describe('Array Tests', () => {
    it('should return true for an empty array', () => {
        expect([]).toHaveLength(0);
    });
});

Expectations: Use the expect function to make assertions about values.

describe('String Tests', () => {
    it('should check if a string is defined', () => {
        expect('Hello').toBeDefined();
    });
});
run()

Assertion Methods

The expect function provides a variety of assertion methods to validate different types of values:

  • toEqual(expected): Check if two values are equal.
  • toBe(expected): Check if two values are strictly equal.
  • toHaveBeenCalled(): Check if a mock function has been called.
  • toBeDefined(): Check if a value is defined.
  • toBeTruthy(): Check if a value is truthy.
  • toBeFalsy(): Check if a value is falsy.
  • toBeGreaterThan(expected): Check if a value is greater than the expected value.
  • toBeLessThan(expected): Check if a value is less than the expected value.
  • toBeNull(): Check if a value is null.
  • toBeUndefined(): Check if a value is undefined.
  • toBeNaN(): Check if a value is NaN.
  • toContain(expected): Check if an array or string contains a specific element/value.
  • toContainEqual(expected): Check if an array contains an element that matches the expected value.
  • toMatchObject(expected): Check if an object contains properties matching those of the expected object.
  • toStrictEqual(expected): Check if two values are strictly equal.
  • toHaveLength(expected): Check if the length of an array or string matches the expected length.
describe('Math Tests', () => {
    it('should check if 2 + 2 equals 4', () => {
        expect(2 + 2).toEqual(4);
    });
});