yeoman-test 11.5.3 → 11.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -31,12 +31,12 @@ export type RunContextSettings = {
31
31
  */
32
32
  namespace?: string;
33
33
  };
34
- type PromiseRunResult<GeneratorType extends BaseGenerator> = Promise<RunResult<GeneratorType>>;
34
+ type PromiseRunResult<GeneratorType extends BaseGenerator, ResultType = RunResult<GeneratorType>> = Promise<ResultType>;
35
35
  type MockedGeneratorFactory<GenParameter extends BaseGenerator = DefaultGeneratorApi> = (GeneratorClass?: GetGeneratorConstructor<GenParameter>) => GetGeneratorConstructor<GenParameter>;
36
36
  type EnvironmentOptions = BaseEnvironmentOptions & {
37
37
  createEnv?: CreateEnvironment;
38
38
  };
39
- export declare class RunContextBase<GeneratorType extends BaseGenerator = DefaultGeneratorApi> extends EventEmitter {
39
+ export declare class RunContextBase<GeneratorType extends BaseGenerator = DefaultGeneratorApi, ResultType = RunResult<GeneratorType>> extends EventEmitter {
40
40
  readonly mockedGenerators: Record<string, unknown>;
41
41
  env: DefaultEnvironmentApi;
42
42
  generator: GeneratorType;
@@ -81,11 +81,12 @@ export declare class RunContextBase<GeneratorType extends BaseGenerator = Defaul
81
81
  * @return {this}
82
82
  */
83
83
  constructor(generatorType?: string | GetGeneratorConstructor<GeneratorType>, settings?: RunContextSettings, environmentOptions?: EnvironmentOptions, helpers?: YeomanTest);
84
+ createRunResult(): ResultType;
84
85
  /**
85
86
  * Run the generator on the environment and promises a RunResult instance.
86
87
  * @return {PromiseRunResult} Promise a RunResult instance.
87
88
  */
88
- run(): PromiseRunResult<GeneratorType>;
89
+ run(): PromiseRunResult<GeneratorType, ResultType>;
89
90
  on(eventName: string | symbol, listener: (...arguments_: any[]) => void): this;
90
91
  /**
91
92
  * @deprecated
@@ -306,7 +307,7 @@ export declare class RunContextBase<GeneratorType extends BaseGenerator = Defaul
306
307
  * Return a promise representing the generator run process
307
308
  * @return Promise resolved on end or rejected on error
308
309
  */
309
- protected toPromise(): PromiseRunResult<GeneratorType>;
310
+ protected toPromise(): PromiseRunResult<GeneratorType, ResultType>;
310
311
  protected _createRunResultOptions(): RunResultOptions<GeneratorType>;
311
312
  /**
312
313
  * Keeps compatibility with events
@@ -321,10 +322,10 @@ export declare class RunContextBase<GeneratorType extends BaseGenerator = Defaul
321
322
  */
322
323
  private setDir;
323
324
  }
324
- export default class RunContext<GeneratorType extends BaseGenerator = BaseGenerator> extends RunContextBase<GeneratorType> implements Promise<RunResult<GeneratorType>> {
325
- then<TResult1 = RunResult<GeneratorType>, TResult2 = never>(onfulfilled?: ((value: RunResult<GeneratorType>) => TResult1 | PromiseLike<TResult1>) | undefined, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | undefined): Promise<TResult1 | TResult2>;
326
- catch<TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | undefined): Promise<RunResult<GeneratorType> | TResult>;
327
- finally(onfinally?: (() => void) | undefined): Promise<RunResult<GeneratorType>>;
325
+ export default class RunContext<GeneratorType extends BaseGenerator = BaseGenerator, ResultType = RunResult<GeneratorType>> extends RunContextBase<GeneratorType, ResultType> implements Promise<ResultType> {
326
+ then<TResult1 = ResultType, TResult2 = never>(onfulfilled?: ((value: ResultType) => TResult1 | PromiseLike<TResult1>) | null | undefined, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | null | undefined): Promise<TResult1 | TResult2>;
327
+ catch<TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | null | undefined): Promise<ResultType | TResult>;
328
+ finally(onfinally?: (() => void) | null | undefined): Promise<ResultType>;
328
329
  get [Symbol.toStringTag](): string;
329
330
  }
330
331
  export declare class BasicRunContext<GeneratorType extends BaseGenerator = BaseGenerator> extends RunContext<GeneratorType> {
@@ -74,6 +74,9 @@ export class RunContextBase extends EventEmitter {
74
74
  this.memFs = settings?.memFs ?? createMemFs();
75
75
  this.mockedGeneratorFactory = this.helpers.createMockedGenerator;
76
76
  }
77
+ createRunResult() {
78
+ return new RunResult(this._createRunResultOptions());
79
+ }
77
80
  /**
78
81
  * Run the generator on the environment and promises a RunResult instance.
79
82
  * @return {PromiseRunResult} Promise a RunResult instance.
@@ -91,7 +94,7 @@ export class RunContextBase extends EventEmitter {
91
94
  this.helpers.restorePrompt(this.env);
92
95
  this.completed = true;
93
96
  }
94
- const runResult = new RunResult(this._createRunResultOptions());
97
+ const runResult = this.createRunResult();
95
98
  testContext.runResult = runResult;
96
99
  return runResult;
97
100
  }
@@ -582,7 +585,7 @@ export class RunContextBase extends EventEmitter {
582
585
  * @return Promise resolved on end or rejected on error
583
586
  */
584
587
  async toPromise() {
585
- return this.environmentPromise ?? this.run();
588
+ return (this.environmentPromise ?? this.run());
586
589
  }
587
590
  _createRunResultOptions() {
588
591
  return {
@@ -59,7 +59,7 @@ export default class RunResult<GeneratorType extends BaseGenerator = BaseGenerat
59
59
  * Create another RunContext reusing the settings.
60
60
  * See helpers.create api
61
61
  */
62
- create<G extends BaseGenerator = GeneratorType>(GeneratorOrNamespace: string | GetGeneratorConstructor<G>, settings?: RunContextSettings, environmentOptions?: BaseEnvironmentOptions): import("./run-context.js").default<G>;
62
+ create<G extends BaseGenerator = GeneratorType>(GeneratorOrNamespace: string | GetGeneratorConstructor<G>, settings?: RunContextSettings, environmentOptions?: BaseEnvironmentOptions): import("./run-context.js").default<G, RunResult<G>>;
63
63
  getSpawnArgsUsingDefaultImplementation(): unknown[][];
64
64
  /**
65
65
  * Return an object with fs changes.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "yeoman-test",
3
- "version": "11.5.3",
3
+ "version": "11.7.0",
4
4
  "description": "Test utilities for Yeoman generators",
5
5
  "keywords": [
6
6
  "yeoman",
@@ -70,9 +70,9 @@
70
70
  "yeoman-generator": "^8.1.2"
71
71
  },
72
72
  "peerDependencies": {
73
- "@yeoman/adapter": "^1.6.0 || ^2.0.0 || ^3.0.0 || ^4.0.1",
73
+ "@yeoman/adapter": "^1.6.0 || ^2.0.0 || ^3.0.0 || ^4.0.1 || ^5.0.0",
74
74
  "@yeoman/types": "^1.5.0",
75
- "mem-fs": "^4.1.0",
75
+ "mem-fs": "^4.1.0 || 6.0.0",
76
76
  "yeoman-environment": "^4.0.0 || ^5.0.0-beta.0 || ^6.0.0",
77
77
  "yeoman-generator": "^7.0.0 || ^8.0.0-beta.0"
78
78
  },