mock-uuid
TypeScript icon, indicating that this package has built-in type declarations

1.1.1 • Public • Published

Mock UUID

This package is ment for testing and development purposes where a repeatable UUID is needed only. My personal reason to do it is to fill a mock state in React, and to be honest because I was bored and went a bit overboard. :-P

Goes beyond saying but don't use this in production. Use a proper UUID library.

Repo at Github: https://github.com/nkholski/mock-uuid

Install

Run npm i -D mock-uuid

Public methods

Method Signature Description
v2,v3,v4,v5 no parameters Mimics v2,v3,v4,v5 in UUID
mockUuid.getIncrementalGenerator (seed:number = Math.E, uuidVersion = 4, variant = 1) => () => uuid:string Function to generate uuid with built in incrementation
mockUuid.getGenerator (seed:number = Math.E, uuidVersion = 4, variant = 1) => (i: number) => uuid:string Function to generate uuid with index as a parameter
mockUuid.get (i: number, seed = Math.E, uuidVersion = 4, variant = 1) => uuid:string Get UUID with index i

Parameters

Parameter Valid values Description
seed any number Uuid generation is based on the seed.
uuidVersion 2,3,4 or 5 Which version of UUID to generate (version 1 is not supported)
variant 0,1,2,3 Which variant to use

Usage example

Recommended: Switching between UUID and Mock UUID

Import import { v4 as uuidv4 } from "mock-uuid" during development to be able to easilly switch Mock UUID to proper UUID in production by changing the import to import { v4 as uuidv4 } from 'uuid'. All your code should work with either. (works for v2, v3, v4 and v5)

Mocking a list of books:

import { mockUuid } from "mock-uuid";

const books = [];
const getUuid = mockUuid.getIncrementalGenerator();
for(let i=0;i<numberOfBooks;i++){
    books.push({
        id: uuid(),
        title: `book ${i+1}`,
    });
}

Mocking a list of books with uuid by index:

import { mockUuid } from "mock-uuid";
 
const books:Book[] = [];
for(let i=0;i<numberOfBooks;i++){
    books.push({
        id:  mockUuid.getUuid(i),
        title: `book ${i+1}`,
    });
}
books[0].id === mockUuid.getUuid(0); // <-- true

Development

The script is built in Typescript. The intructions below is only relevant if you want to poke in it. Start with $ npm i to install dependencies.

  • Build: npm run build
  • Test: npm run test

Readme

Keywords

Package Sidebar

Install

npm i mock-uuid

Weekly Downloads

195

Version

1.1.1

License

MIT

Unpacked Size

6.95 kB

Total Files

6

Last publish

Collaborators

  • nkholski