Skip to content

Commit 373b63e

Browse files
committed
fix(@angular/build): expose unit test and karma builder API
This commit exposes the Karma and Unit test builder API Closes: #30644
1 parent d96a093 commit 373b63e

File tree

5 files changed

+23
-13
lines changed

5 files changed

+23
-13
lines changed

packages/angular/build/src/builders/unit-test/builder.ts

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,14 @@ import { OutputHashing } from '../application/schema';
2424
import { writeTestFiles } from '../karma/application_builder';
2525
import { findTests, getTestEntrypoints } from '../karma/find-tests';
2626
import { useKarmaBuilder } from './karma-bridge';
27-
import { NormalizedUnitTestOptions, injectTestingPolyfills, normalizeOptions } from './options';
28-
import type { Schema as UnitTestOptions } from './schema';
27+
import {
28+
NormalizedUnitTestBuilderOptions,
29+
injectTestingPolyfills,
30+
normalizeOptions,
31+
} from './options';
32+
import type { Schema as UnitTestBuilderOptions } from './schema';
2933

30-
export type { UnitTestOptions };
34+
export type { UnitTestBuilderOptions };
3135

3236
type VitestCoverageOption = Exclude<import('vitest/node').InlineConfig['coverage'], undefined>;
3337

@@ -36,7 +40,7 @@ type VitestCoverageOption = Exclude<import('vitest/node').InlineConfig['coverage
3640
*/
3741
// eslint-disable-next-line max-lines-per-function
3842
export async function* execute(
39-
options: UnitTestOptions,
43+
options: UnitTestBuilderOptions,
4044
context: BuilderContext,
4145
extensions: ApplicationBuilderExtensions = {},
4246
): AsyncIterable<BuilderOutput> {
@@ -383,7 +387,7 @@ function generateOutputPath(): string {
383387
return path.join('dist', 'test-out', `${datePrefix}-${uuidSuffix}`);
384388
}
385389
function generateCoverageOption(
386-
codeCoverage: NormalizedUnitTestOptions['codeCoverage'],
390+
codeCoverage: NormalizedUnitTestBuilderOptions['codeCoverage'],
387391
workspaceRoot: string,
388392
outputPath: string,
389393
): VitestCoverageOption {

packages/angular/build/src/builders/unit-test/index.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@
77
*/
88

99
import { type Builder, createBuilder } from '@angular-devkit/architect';
10-
import { type UnitTestOptions, execute } from './builder';
10+
import { type UnitTestBuilderOptions, execute } from './builder';
1111

12-
export { type UnitTestOptions, execute };
12+
export { type UnitTestBuilderOptions, execute };
1313

14-
const builder: Builder<UnitTestOptions> = createBuilder(execute);
14+
const builder: Builder<UnitTestBuilderOptions> = createBuilder(execute);
1515

1616
export default builder;

packages/angular/build/src/builders/unit-test/karma-bridge.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,11 @@
99
import type { BuilderContext, BuilderOutput } from '@angular-devkit/architect';
1010
import type { ApplicationBuilderInternalOptions } from '../application/options';
1111
import type { KarmaBuilderOptions } from '../karma';
12-
import { type NormalizedUnitTestOptions, injectTestingPolyfills } from './options';
12+
import { type NormalizedUnitTestBuilderOptions, injectTestingPolyfills } from './options';
1313

1414
export async function useKarmaBuilder(
1515
context: BuilderContext,
16-
unitTestOptions: NormalizedUnitTestOptions,
16+
unitTestOptions: NormalizedUnitTestBuilderOptions,
1717
): Promise<AsyncIterable<BuilderOutput>> {
1818
if (unitTestOptions.debug) {
1919
context.logger.warn(

packages/angular/build/src/builders/unit-test/options.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,14 @@ import path from 'node:path';
1111
import { normalizeCacheOptions } from '../../utils/normalize-cache';
1212
import { getProjectRootPaths } from '../../utils/project-metadata';
1313
import { isTTY } from '../../utils/tty';
14-
import type { Schema as UnitTestOptions } from './schema';
14+
import type { Schema as UnitTestBuilderOptions } from './schema';
1515

16-
export type NormalizedUnitTestOptions = Awaited<ReturnType<typeof normalizeOptions>>;
16+
export type NormalizedUnitTestBuilderOptions = Awaited<ReturnType<typeof normalizeOptions>>;
1717

1818
export async function normalizeOptions(
1919
context: BuilderContext,
2020
projectName: string,
21-
options: UnitTestOptions,
21+
options: UnitTestBuilderOptions,
2222
) {
2323
// Setup base paths based on workspace root and project information
2424
const workspaceRoot = context.workspaceRoot;

packages/angular/build/src/index.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,3 +26,9 @@ export {
2626
execute as executeNgPackagrBuilder,
2727
type NgPackagrBuilderOptions,
2828
} from './builders/ng-packagr';
29+
export {
30+
execute as executeUnitTestBuilder,
31+
type UnitTestBuilderOptions,
32+
} from './builders/unit-test';
33+
34+
export { execute as executeKarmaBuilder, type KarmaBuilderOptions } from './builders/karma';

0 commit comments

Comments
 (0)