From c379bae8e95552ea2a05619e97d5ebce38bf9c8a Mon Sep 17 00:00:00 2001 From: Steve Sanderson Date: Sat, 28 Mar 2020 17:53:46 +0000 Subject: [PATCH] Fix SWAM hash (#20240) --- .../targets/ServiceWorkerAssetsManifest.targets | 14 +++++++++++--- .../test/BlazorWasmTemplateTest.cs | 5 +++-- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/src/Components/WebAssembly/Build/src/targets/ServiceWorkerAssetsManifest.targets b/src/Components/WebAssembly/Build/src/targets/ServiceWorkerAssetsManifest.targets index 383d8cdd2b..15cb4372ae 100644 --- a/src/Components/WebAssembly/Build/src/targets/ServiceWorkerAssetsManifest.targets +++ b/src/Components/WebAssembly/Build/src/targets/ServiceWorkerAssetsManifest.targets @@ -23,7 +23,7 @@ Inputs="@(ServiceWorkerAssetsManifestItem)" Outputs="$(_ServiceWorkerAssetsManifestIntermediateOutputPath)" BeforeTargets="_BlazorStaticWebAssetsCopyGeneratedFilesToOutputDirectory" - DependsOnTargets="_ComputeServiceWorkerAssetsManifestFileHashes; _ComputeDefaultServiceWorkerAssetsManifestVersion"> + DependsOnTargets="_ComputeServiceWorkerAssetsManifestFileHashes; _ComputeDefaultServiceWorkerAssetsManifestVersion; _GenerateServiceWorkerIntermediateFiles"> - + <_CombinedHashIntermediatePath>$(_BlazorIntermediateOutputPath)serviceworkerhashes.txt + + + + + DependsOnTargets="_ComputeServiceWorkerOutputs"> <_BlazorOutputWithTargetPath Include="@(_ServiceWorkerIntermediateFile)" /> diff --git a/src/ProjectTemplates/test/BlazorWasmTemplateTest.cs b/src/ProjectTemplates/test/BlazorWasmTemplateTest.cs index ac959a96ec..8905f0934e 100644 --- a/src/ProjectTemplates/test/BlazorWasmTemplateTest.cs +++ b/src/ProjectTemplates/test/BlazorWasmTemplateTest.cs @@ -191,10 +191,11 @@ namespace Templates.Test var serviceWorkerContents = ReadFile(publishDir, "service-worker.js"); // Parse the "version": "..." value from the SWAM, and check it's in the service worker - var serviceWorkerAssetsManifestVersionMatch = new Regex(@"^\s*\""version\"":\s*\""([^\""]+)\""", RegexOptions.Multiline) + var serviceWorkerAssetsManifestVersionMatch = new Regex(@"^\s*\""version\"":\s*(\""[^\""]+\"")", RegexOptions.Multiline) .Match(serviceWorkerAssetsManifestContents); Assert.True(serviceWorkerAssetsManifestVersionMatch.Success); - var serviceWorkerAssetsManifestVersion = serviceWorkerAssetsManifestVersionMatch.Groups[1].Captures[0]; + var serviceWorkerAssetsManifestVersionJson = serviceWorkerAssetsManifestVersionMatch.Groups[1].Captures[0].Value; + var serviceWorkerAssetsManifestVersion = JsonSerializer.Deserialize(serviceWorkerAssetsManifestVersionJson); Assert.True(serviceWorkerContents.Contains($"/* Manifest version: {serviceWorkerAssetsManifestVersion} */", StringComparison.Ordinal)); }