Skip to content

Question: How to create a factory outputs tuples? #72

@ranmocy

Description

@ranmocy

Currently the builder interface looks like this:

export declare type Builder<T, K extends keyof T = keyof T> = {
    [P in K]: T[P] | Generator<T[P]> | Derived<T, T[P]>;
};

Which seems like only could describe objects. Would it be possible to create a factory generates tuples? Tuple has fixed length ([number, number]), where array has arbitrary length (number[]).

What I'm trying to get is a Factory<[number, number]>. The best version I could get is:

const generator: Generator<[number, number]> = each<[number, number]>(() => [
  faker.datatype.number(),
  faker.datatype.number(),
])
const factory = makeFactory<[number, number]>(generator.build(0))

Which is not randomized, and calling factory.build() gives me an object:

{
  "0": 80479,
  "1": 32384,
  "length": 2
}

Any suggestion?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions