Add type definition for factory.resetSequence (#38340)

This commit is contained in:
Olivier Kamers 2019-09-19 21:18:07 +02:00 committed by Daniel Rosenwasser
parent 9c7a0a6262
commit 1b758b9c5c
2 changed files with 20 additions and 1 deletions

View File

@ -22,7 +22,17 @@ interface SuperUser extends User {
factory.setAdapter("my-adapter", "my-adapter-name");
// Testing sequence to use it on its own
const scoreSequence = factory.seq<number>('User.score', score => score + 1);
const scoreSequence = factory.sequence<number>(
'User.score',
score => score + 1,
);
const scoreSeq = factory.seq<number>('User.score', score => score + 1);
// Testing sequence resetting
factory.resetSeq();
factory.resetSequence();
factory.resetSeq('User.score');
factory.resetSequence('User.score');
// Testing define with seq, assoc, assocAttrs, assocMany
factory.define<User>(

View File

@ -3,6 +3,7 @@
// Definitions by: Stack Builders <https://github.com/stackbuilders>
// Sebastián Estrella <https://github.com/sestrella>
// Luis Fernando Alvarez <https://github.com/elcuy>
// Olivier Kamers <https://github.com/OlivierKamers>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 2.8
@ -84,11 +85,19 @@ declare namespace factory {
* Generate values sequentially inside a factory
*/
seq<T>(name: string, fn: (sequence: number) => T): Generator<T>;
sequence<T>(name: string, fn: (sequence: number) => T): Generator<T>;
/**
* Register an adapter, either as default or tied to a specific model
*/
setAdapter(adapter: any, name?: string): void;
/**
* Reset sequence generator with the given name
* or all generators if no name is given.
*/
resetSequence(name?: string): void;
resetSeq(name?: string): void;
}
interface Options<T> {