Skip to content

Commit 2563cae

Browse files
authored
Merge pull request #2110 from Automattic/fix/2109-visual-compare-origin
2 parents a742eca + abdb9fc commit 2563cae

2 files changed

Lines changed: 10 additions & 4 deletions

File tree

packages/runtime-playground/src/browser-visual-compare.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -414,6 +414,10 @@ function stringFileRef(value: unknown): string | undefined {
414414
return undefined
415415
}
416416

417+
export function visualCompareWordPressUrl(server: PlaygroundCliServer): string {
418+
return server.wordpressUrl ?? server.serverUrl
419+
}
420+
417421
export async function runVisualCompareCommand({
418422
artifactRoot,
419423
runtimeSpec,
@@ -496,7 +500,7 @@ async function runVisualComparePairCommand({
496500
const candidatePath = artifactSession.absolutePath("candidate.png")
497501
const diffPath = artifactSession.absolutePath("diff.png")
498502
const startedAt = now()
499-
const preview = browserPreviewRouting(args, runtimeSpec, server.serverUrl)
503+
const preview = browserPreviewRouting(args, runtimeSpec, visualCompareWordPressUrl(server))
500504
const sourceTargetUrl = sourceUrl ? resolveBrowserPreviewUrl(sourceUrl, preview.effectiveOrigin) : undefined
501505
const candidateTargetUrl = candidateUrl ? resolveBrowserPreviewUrl(candidateUrl, preview.effectiveOrigin) : undefined
502506
let finalSourceUrl = sourceTargetUrl
@@ -844,7 +848,7 @@ function visualCompareMatrixArtifact(
844848
artifactType: "visual-compare",
845849
requestedUrl: expectedEntries.map((entry) => entry.name).join(","),
846850
url: firstArtifact?.url ?? "visual-compare-matrix",
847-
preview: firstArtifact?.preview ?? browserPreviewRouting(args, runtimeSpec, server.serverUrl),
851+
preview: firstArtifact?.preview ?? browserPreviewRouting(args, runtimeSpec, visualCompareWordPressUrl(server)),
848852
files: {
849853
summary: matrixSummary.files.summary,
850854
...(matrixSummary.files.blocksEngineVisualParity ? { blocksEngineVisualParity: matrixSummary.files.blocksEngineVisualParity } : {}),
@@ -1170,7 +1174,7 @@ async function writeVisualCompareMatrixSummary(
11701174
blocksEngineVisualParity: "files/browser/visual-compare/blocks-engine-visual-parity-report.json",
11711175
},
11721176
...(!matrixComplete ? {
1173-
preview: entries[0]?.artifact.preview ?? browserPreviewRouting(args, runtimeSpec, server.serverUrl),
1177+
preview: entries[0]?.artifact.preview ?? browserPreviewRouting(args, runtimeSpec, visualCompareWordPressUrl(server)),
11741178
limitations: ["visual compare matrix was interrupted or an expected input was missing before all comparisons completed; recovered comparisons contain complete per-entry evidence for finished viewports and structured diagnostics for incomplete entries"],
11751179
} : {}),
11761180
}

tests/browser-visual-compare-contract.test.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,13 @@ import { join } from "node:path"
44

55
import { PNG } from "pngjs"
66
import { commandRegistry } from "../packages/runtime-core/src/command-registry.js"
7-
import { runVisualCompareCommand } from "../packages/runtime-playground/dist/browser-visual-compare.js"
7+
import { runVisualCompareCommand, visualCompareWordPressUrl } from "../packages/runtime-playground/dist/browser-visual-compare.js"
88
import { withTempDir } from "../scripts/test-kit.js"
99

1010
const visualCompare = commandRegistry.find((definition) => definition.id === "wordpress.visual-compare")
1111
assert.ok(visualCompare, "wordpress.visual-compare is registered")
12+
assert.equal(visualCompareWordPressUrl({ serverUrl: "http://preview.test", wordpressUrl: "http://wordpress.test" } as never), "http://wordpress.test")
13+
assert.equal(visualCompareWordPressUrl({ serverUrl: "http://preview.test" } as never), "http://preview.test")
1214

1315
const acceptedArgs = visualCompare.acceptedArgs
1416
const maxElements = acceptedArgs.find((arg) => arg.name === "max-explanation-elements")

0 commit comments

Comments
 (0)