Content-Length: 345914 | pFad | http://github.com/factory-js/factory-js

8B GitHub - factory-js/factory-js: 🏭 The object generator for testing.
Skip to content

factory-js/factory-js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FactoryJS

The object generator for testing.

coverage npm bundle size

DocumentationContributing Guide

Features

  • Type Safety - It helps prevent configuration errors and typos.
  • ⚙️ Highly Functional - You can define variables, traits, and properties that depend on other properties.
  • 🪶 Lightweight - It is very lightweight as it does not depend on any other packages.
  • 📦 ORM-Friendly API - Designed to be used also with ORMs like Prisma and Drizzle.

Quick Start

  1. Install FactoryJS.
pnpm add -D @factory-js/factory
  1. Define a factory and use it in your tests, database seeds, etc.
import { factory } from "@factory-js/factory";

// Define the factory
const userFactory = factory.define({
  props: {
    firstName: () => "John",
    lastName: () => "Doe",
    role: () => "guest",
  },
  vars: {},
});

describe("when a user is admin", () => {
  it("returns true", async () => {
    const user = await userFactory(db)
      .props({ role: () => "admin" }) // Override role to admin
      .build();
    expect(isAdmin(user)).toBe(true);
  });
});

To learn more about FactoryJS, check the Documentation.

License

MIT









ApplySandwichStrip

pFad - (p)hone/(F)rame/(a)nonymizer/(d)eclutterfier!      Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

Fetched URL: http://github.com/factory-js/factory-js

Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy