random-db-populator
TypeScript icon, indicating that this package has built-in type declarations

1.0.0 • Public • Published

Type NPM License GitHub issues GitHub stars

Make it easier to populate your PostgreSQL and MySQL test environments, creating inserts with consistent random data. With clear language, you can focus on what makes your scenario unique.

Example: insert an inactive user which name is John. John must have 2 addresses. For all other params, I accept a random (but still valid) value.

// some pre-configurations steps that will be explained below...
database.insert('t_user', { name: 'John', is_active: false });

database.insert('t_address');
database.insert('t_address');

console.log(database.toSQL().join("\n"));
console.log(database.rollback().join("\n"));

The result will be:

INSERT INTO "t_user" ("id", "name", "surname", "email", "gender", "is_active", "birth", "created_at", "updated_at") VALUES (1, 'John', 'Bryant', 'john@doe.com', 'M', false, '2001-12-03', '2019-05-18 06:21:46', now());
INSERT INTO "t_address" ("id", "user_id", "street", "city", "country", "postcode", "phone", "receiver_name") VALUES (1, 1, 'Mofup Mill', 'Zadowwip', 'Congo - Brazzaville', '11216-075', '86 0451-9903', 'Norman Jackson');
INSERT INTO "t_address" ("id", "user_id", "street", "city", "country", "postcode", "phone", "receiver_name") VALUES (2, 1, 'Hepvep Grove', 'Jellebo', 'Puerto Rico', '05799-907', '36 3499-6594', 'Lucas Norris');
/*  --- ROLLBACK */ 
DELETE FROM "t_address" WHERE "id"=2;
DELETE FROM "t_address" WHERE "id"=1;
DELETE FROM "t_user" WHERE "id"=1;

Available databases:

  • Postgres
  • MySQL

Others databases will be added soon.

If you don't want to wait: check New Database Docs.

Examples

Clone random-db-populator-example. There you will find:

Wiki

Check full documentation.

Tip: Use typescript version. It will make it easier!

/random-db-populator/

    Package Sidebar

    Install

    npm i random-db-populator

    Weekly Downloads

    0

    Version

    1.0.0

    License

    ISC

    Unpacked Size

    214 kB

    Total Files

    139

    Last publish

    Collaborators

    • gabrielsc310