From f93547a8030bdd762a77f367c70eecda27c8cf76 Mon Sep 17 00:00:00 2001 From: Charles Lyding <19598772+clydin@users.noreply.github.com> Date: Tue, 16 Mar 2021 13:06:54 -0400 Subject: [PATCH] test(@angular-devkit/build-angular): avoid crashing during test failure in utility function Previously, if a browser build failed using the `browserBuild` test utility function, the test utility would try to access properties that did not exist and would crash. This increased the complexity to debug failing tests. With the new behavior, the `browserBuild` test utility will return with an empty `files` object and the failed builder result. --- packages/angular_devkit/build_angular/src/test-utils.ts | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/packages/angular_devkit/build_angular/src/test-utils.ts b/packages/angular_devkit/build_angular/src/test-utils.ts index 49f94784bfdf..f6f02bed9ecd 100644 --- a/packages/angular_devkit/build_angular/src/test-utils.ts +++ b/packages/angular_devkit/build_angular/src/test-utils.ts @@ -81,6 +81,15 @@ export async function browserBuild( const output = (await run.result) as BrowserBuilderOutput; expect(output.success).toBe(true); + if (!output.success) { + await run.stop(); + + return { + output, + files: {}, + }; + } + expect(output.outputPaths[0]).not.toBeUndefined(); const outputPath = normalize(output.outputPaths[0]);