From d95597129b5111dbfd3eeeffea2863790439ec1f Mon Sep 17 00:00:00 2001 From: Chris Wilcox Date: Thu, 23 Apr 2026 08:37:54 -0700 Subject: [PATCH 01/15] feat(e2e): add update-snap-binary CLI script for downloading snap tarballs Ports the snap binary download tool from Extension for MMQA-1366. Downloads tarball and response headers from npm registry, saves as .txt and -headers.json files. Co-Authored-By: Claude Opus 4.6 --- package.json | 1 + scripts/update-snap-binary.ts | 110 ++++++++++++++++++++++++++++++++++ 2 files changed, 111 insertions(+) create mode 100644 scripts/update-snap-binary.ts diff --git a/package.json b/package.json index 481fc889f49..f053efd282b 100644 --- a/package.json +++ b/package.json @@ -147,6 +147,7 @@ "feature-flags:sync": "ts-node tests/feature-flags/sync-production-flags.ts", "feature-flags:sync:check": "ts-node tests/feature-flags/sync-production-flags.ts --check", "feature-flags:sync:update": "ts-node tests/feature-flags/sync-production-flags.ts --update", + "update-snap-binary": "ts-node --transpile-only scripts/update-snap-binary.ts", "worktree:create": "yarn ts-node --transpile-only scripts/worktree-create.ts", "worktree:remove": "yarn ts-node --transpile-only scripts/worktree-remove.ts", "a:start": "scripts/perps/agentic/start-metro.sh", diff --git a/scripts/update-snap-binary.ts b/scripts/update-snap-binary.ts new file mode 100644 index 00000000000..e1b02f09f73 --- /dev/null +++ b/scripts/update-snap-binary.ts @@ -0,0 +1,110 @@ +import { existsSync, readdirSync, unlinkSync, mkdirSync, writeFileSync } from 'fs'; +import { resolve, join, basename } from 'path'; +import { valid } from 'semver'; + +const SNAP_BINARIES_DIR = resolve( + __dirname, + '../tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers', +); + +const RELEVANT_HEADERS = [ + 'accept-ranges', + 'content-length', + 'content-type', + 'etag', + 'vary', +]; + +function parseArgs(): { snapName: string; version: string } { + const arg = process.argv[2]; + if (!arg || !arg.startsWith('--')) { + console.error('Usage: yarn update-snap-binary --@'); + console.error('Example: yarn update-snap-binary --bip32-example-snap@2.3.0'); + process.exit(1); + } + + const nameVersion = arg.slice(2); + const atIndex = nameVersion.lastIndexOf('@'); + if (atIndex <= 0) { + console.error(`Invalid format: ${nameVersion}. Expected @`); + process.exit(1); + } + + const snapName = nameVersion.slice(0, atIndex); + const version = nameVersion.slice(atIndex + 1); + + if (!valid(version)) { + console.error(`Invalid semver version: ${version}`); + process.exit(1); + } + + return { snapName, version }; +} + +function deleteOldSnapFiles(snapName: string): void { + if (!existsSync(SNAP_BINARIES_DIR)) return; + const files = readdirSync(SNAP_BINARIES_DIR); + for (const file of files) { + if (file.startsWith(`${snapName}@`)) { + const filePath = join(SNAP_BINARIES_DIR, file); + unlinkSync(filePath); + console.log(`Deleted old file: ${file}`); + } + } +} + +async function downloadSnapBinary( + snapName: string, + version: string, +): Promise { + const scopedName = `@metamask/${snapName}`; + const tarballUrl = `https://registry.npmjs.org/${scopedName}/-/${snapName}-${version}.tgz`; + + console.log(`Downloading ${scopedName}@${version} from ${tarballUrl}`); + + const response = await fetch(tarballUrl); + if (!response.ok) { + throw new Error( + `Failed to download: ${response.status} ${response.statusText}`, + ); + } + + if (!existsSync(SNAP_BINARIES_DIR)) { + mkdirSync(SNAP_BINARIES_DIR, { recursive: true }); + } + + deleteOldSnapFiles(snapName); + + const buffer = Buffer.from(await response.arrayBuffer()); + const binaryPath = join( + SNAP_BINARIES_DIR, + `${snapName}@${version}.txt`, + ); + writeFileSync(binaryPath, buffer); + console.log(`Saved binary: ${basename(binaryPath)}`); + + const headers: Record = {}; + for (const headerName of RELEVANT_HEADERS) { + const value = response.headers.get(headerName); + if (value) { + headers[headerName] = value; + } + } + const headersPath = join( + SNAP_BINARIES_DIR, + `${snapName}@${version}-headers.json`, + ); + writeFileSync(headersPath, JSON.stringify(headers, null, 2)); + console.log(`Saved headers: ${basename(headersPath)}`); +} + +async function main(): Promise { + const { snapName, version } = parseArgs(); + await downloadSnapBinary(snapName, version); + console.log('Done.'); +} + +main().catch((error) => { + console.error(error); + process.exit(1); +}); From 247f3e486379cb9f8bcbd787d1420fb8b16a5390 Mon Sep 17 00:00:00 2001 From: Chris Wilcox Date: Thu, 23 Apr 2026 08:45:06 -0700 Subject: [PATCH 02/15] feat(e2e): add local snap binary tarballs for all 21 flask test snaps Downloaded from npm registry for offline serving during E2E tests. Each snap has a .txt (raw tarball) and -headers.json (response headers). Co-Authored-By: Claude Opus 4.6 --- ...round-events-example-snap@1.0.0-headers.json | 7 +++++++ .../background-events-example-snap@1.0.0.txt | Bin 0 -> 12336 bytes .../bip32-example-snap@2.3.0-headers.json | 7 +++++++ .../bip32-example-snap@2.3.0.txt | Bin 0 -> 72040 bytes .../bip44-example-snap@2.2.0-headers.json | 7 +++++++ .../bip44-example-snap@2.2.0.txt | Bin 0 -> 78008 bytes ...lient-status-example-snap@1.0.3-headers.json | 7 +++++++ .../client-status-example-snap@1.0.3.txt | Bin 0 -> 11873 bytes .../cronjob-example-snap@3.0.0-headers.json | 7 +++++++ .../cronjob-example-snap@3.0.0.txt | Bin 0 -> 14697 bytes .../dialog-example-snap@2.3.1-headers.json | 7 +++++++ .../dialog-example-snap@2.3.1.txt | Bin 0 -> 14985 bytes .../error-example-snap@2.1.3-headers.json | 7 +++++++ .../error-example-snap@2.1.3.txt | Bin 0 -> 7097 bytes ...eum-provider-example-snap@3.0.0-headers.json | 7 +++++++ .../ethereum-provider-example-snap@3.0.0.txt | Bin 0 -> 40830 bytes .../get-entropy-example-snap@2.2.0-headers.json | 7 +++++++ .../get-entropy-example-snap@2.2.0.txt | Bin 0 -> 28663 bytes .../get-file-example-snap@1.1.3-headers.json | 7 +++++++ .../get-file-example-snap@1.1.3.txt | Bin 0 -> 12290 bytes .../images-example-snap@1.2.0-headers.json | 7 +++++++ .../images-example-snap@1.2.0.txt | Bin 0 -> 17406 bytes ...teractive-ui-example-snap@2.5.0-headers.json | 7 +++++++ .../interactive-ui-example-snap@2.5.0.txt | Bin 0 -> 41673 bytes .../json-rpc-example-snap@2.1.3-headers.json | 7 +++++++ .../json-rpc-example-snap@2.1.3.txt | Bin 0 -> 12621 bytes .../jsx-example-snap@1.2.1-headers.json | 7 +++++++ .../jsx-example-snap@1.2.1.txt | Bin 0 -> 11962 bytes ...ecycle-hooks-example-snap@2.3.0-headers.json | 7 +++++++ .../lifecycle-hooks-example-snap@2.3.0.txt | Bin 0 -> 7557 bytes ...manage-state-example-snap@3.0.0-headers.json | 7 +++++++ .../manage-state-example-snap@3.0.0.txt | Bin 0 -> 13369 bytes ...ain-provider-example-snap@1.0.0-headers.json | 7 +++++++ .../multichain-provider-example-snap@1.0.0.txt | Bin 0 -> 42251 bytes .../name-lookup-example-snap@3.1.2-headers.json | 7 +++++++ .../name-lookup-example-snap@3.1.2.txt | Bin 0 -> 7213 bytes .../network-example-snap@2.2.0-headers.json | 7 +++++++ .../network-example-snap@2.2.0.txt | Bin 0 -> 13022 bytes .../preferences-example-snap@1.0.0-headers.json | 7 +++++++ .../preferences-example-snap@1.0.0.txt | Bin 0 -> 11617 bytes .../wasm-example-snap@2.1.5-headers.json | 7 +++++++ .../wasm-example-snap@2.1.5.txt | Bin 0 -> 13547 bytes 42 files changed, 147 insertions(+) create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/background-events-example-snap@1.0.0-headers.json create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/background-events-example-snap@1.0.0.txt create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/bip32-example-snap@2.3.0-headers.json create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/bip32-example-snap@2.3.0.txt create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/bip44-example-snap@2.2.0-headers.json create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/bip44-example-snap@2.2.0.txt create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/client-status-example-snap@1.0.3-headers.json create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/client-status-example-snap@1.0.3.txt create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/cronjob-example-snap@3.0.0-headers.json create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/cronjob-example-snap@3.0.0.txt create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/dialog-example-snap@2.3.1-headers.json create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/dialog-example-snap@2.3.1.txt create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/error-example-snap@2.1.3-headers.json create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/error-example-snap@2.1.3.txt create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/ethereum-provider-example-snap@3.0.0-headers.json create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/ethereum-provider-example-snap@3.0.0.txt create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/get-entropy-example-snap@2.2.0-headers.json create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/get-entropy-example-snap@2.2.0.txt create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/get-file-example-snap@1.1.3-headers.json create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/get-file-example-snap@1.1.3.txt create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/images-example-snap@1.2.0-headers.json create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/images-example-snap@1.2.0.txt create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/interactive-ui-example-snap@2.5.0-headers.json create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/interactive-ui-example-snap@2.5.0.txt create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/json-rpc-example-snap@2.1.3-headers.json create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/json-rpc-example-snap@2.1.3.txt create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/jsx-example-snap@1.2.1-headers.json create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/jsx-example-snap@1.2.1.txt create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/lifecycle-hooks-example-snap@2.3.0-headers.json create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/lifecycle-hooks-example-snap@2.3.0.txt create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/manage-state-example-snap@3.0.0-headers.json create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/manage-state-example-snap@3.0.0.txt create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/multichain-provider-example-snap@1.0.0-headers.json create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/multichain-provider-example-snap@1.0.0.txt create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/name-lookup-example-snap@3.1.2-headers.json create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/name-lookup-example-snap@3.1.2.txt create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/network-example-snap@2.2.0-headers.json create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/network-example-snap@2.2.0.txt create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/preferences-example-snap@1.0.0-headers.json create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/preferences-example-snap@1.0.0.txt create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/wasm-example-snap@2.1.5-headers.json create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/wasm-example-snap@2.1.5.txt diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/background-events-example-snap@1.0.0-headers.json b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/background-events-example-snap@1.0.0-headers.json new file mode 100644 index 00000000000..9cbf46c675c --- /dev/null +++ b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/background-events-example-snap@1.0.0-headers.json @@ -0,0 +1,7 @@ +{ + "accept-ranges": "bytes", + "content-length": "12336", + "content-type": "application/octet-stream", + "etag": "\"6089ae64c9d548802d1cb3cefc4a4366\"", + "vary": "Accept-Encoding" +} diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/background-events-example-snap@1.0.0.txt b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/background-events-example-snap@1.0.0.txt new file mode 100644 index 0000000000000000000000000000000000000000..cbb4523cb0e51ec684437917b161cde45c23182d GIT binary patch literal 12336 zcmV-0Fwf5)iwFP!000001MPind)qd$=zjLEfZ1Lz*@bDzNz+CyJNlcUYON;=r;omj<`qC7-ZT=PCJ-OO=Z$3q*1QNvjL+1f@}7IsdopeWK(r8ofX9aG>)R39e=nM`E=)0Or}ioga4Rt z%_eYvz|wakDQ0E1&#!r@)jq#vlWD>Cp~rt9_Hi6P>$FdH>|E|Lki|+JXg2ztqwV~6 z^YG`-fBrMI`u};!75b#QQVa}zTh1~qkIhEfMR(DABs z@#2!SPfy6>v(uCARrl=lk~}%PATKXFlw5SqFV0S0K8D*ATb*<-uP(aZzl1vopc#`B zKFmRZi&Diq7MsA%C?IOgih@iy12e{n=5nG4*ql_9ndt@gjLa0LMDnQ=*(`uHz--24bn0&SgFtYa(t+ zE{TwYmpa#T!e)9bWd1K4&%)W(LywJ39!W5n

*DI(P{15i3XsL2n>2D`A3&Jtr(h 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 v*bXe?%L6Wi}@^fym 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

o1 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¬frK#IT$QiEKL0P4&8q~|_WmPU0 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 literal 0 HcmV?d00001 diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/dialog-example-snap@2.3.1-headers.json b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/dialog-example-snap@2.3.1-headers.json new file mode 100644 index 00000000000..e709d5e1e12 --- /dev/null +++ b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/dialog-example-snap@2.3.1-headers.json @@ -0,0 +1,7 @@ +{ + "accept-ranges": "bytes", + "content-length": "14985", + "content-type": "application/octet-stream", + "etag": "\"2ba3e0bc12c6102b0b8364df36d35fee\"", + "vary": "Accept-Encoding" +} diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/dialog-example-snap@2.3.1.txt b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/dialog-example-snap@2.3.1.txt new file mode 100644 index 0000000000000000000000000000000000000000..838f6ceb13c8dc934af6c83e5133df86b0ba3fe7 GIT binary patch literal 14985 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 T-(P?K1AqSy;04Jg0KxzOqCs44 literal 0 HcmV?d00001 diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/error-example-snap@2.1.3-headers.json b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/error-example-snap@2.1.3-headers.json new file mode 100644 index 00000000000..40dde2e6668 --- /dev/null +++ b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/error-example-snap@2.1.3-headers.json @@ -0,0 +1,7 @@ +{ + "accept-ranges": "bytes", + "content-length": "7097", + "content-type": "application/octet-stream", + "etag": "\"0f020a896a5e7e71490980948e215922\"", + "vary": "Accept-Encoding" +} diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/error-example-snap@2.1.3.txt b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/error-example-snap@2.1.3.txt new file mode 100644 index 0000000000000000000000000000000000000000..10d3536e558391f39a970fc18e0f286ffdec2358 GIT binary patch literal 7097 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 literal 0 HcmV?d00001 diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/ethereum-provider-example-snap@3.0.0-headers.json b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/ethereum-provider-example-snap@3.0.0-headers.json new file mode 100644 index 00000000000..548e6b8006a --- /dev/null +++ b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/ethereum-provider-example-snap@3.0.0-headers.json @@ -0,0 +1,7 @@ +{ + "accept-ranges": "bytes", + "content-length": "40830", + "content-type": "application/octet-stream", + "etag": "\"f7162b1783325693be06cf33e22a2046\"", + "vary": "Accept-Encoding" +} diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/ethereum-provider-example-snap@3.0.0.txt b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/ethereum-provider-example-snap@3.0.0.txt new file mode 100644 index 0000000000000000000000000000000000000000..06e20b366025c4d6e6a06da26e095ff2f30efd52 GIT binary patch literal 40830 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�FbO%s+l^Fp6w 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 literal 0 HcmV?d00001 diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/get-file-example-snap@1.1.3-headers.json b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/get-file-example-snap@1.1.3-headers.json new file mode 100644 index 00000000000..209c16bfe9e --- /dev/null +++ b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/get-file-example-snap@1.1.3-headers.json @@ -0,0 +1,7 @@ +{ + "accept-ranges": "bytes", + "content-length": "12290", + "content-type": "application/octet-stream", + "etag": "\"8135e843e047041b4bc331ff81490d1f\"", + "vary": "Accept-Encoding" +} diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/get-file-example-snap@1.1.3.txt b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/get-file-example-snap@1.1.3.txt new file mode 100644 index 0000000000000000000000000000000000000000..efc5cca5ba4fbd8b87603da41f439889b9d34eac GIT binary patch literal 12290 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 literal 0 HcmV?d00001 diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/images-example-snap@1.2.0-headers.json b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/images-example-snap@1.2.0-headers.json new file mode 100644 index 00000000000..fe8abd86bfd --- /dev/null +++ b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/images-example-snap@1.2.0-headers.json @@ -0,0 +1,7 @@ +{ + "accept-ranges": "bytes", + "content-length": "17406", + "content-type": "application/octet-stream", + "etag": "\"53d8d18e3a90eafc45e6b99fa3963f0d\"", + "vary": "Accept-Encoding" +} diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/images-example-snap@1.2.0.txt b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/images-example-snap@1.2.0.txt new file mode 100644 index 0000000000000000000000000000000000000000..8998a9b0ffa7956504cf64e66c8f8a10edb6c313 GIT binary patch literal 17406 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�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

    VyTpG%xo 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�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 literal 0 HcmV?d00001 diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/jsx-example-snap@1.2.1-headers.json b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/jsx-example-snap@1.2.1-headers.json new file mode 100644 index 00000000000..1ca9693b944 --- /dev/null +++ b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/jsx-example-snap@1.2.1-headers.json @@ -0,0 +1,7 @@ +{ + "accept-ranges": "bytes", + "content-length": "11962", + "content-type": "application/octet-stream", + "etag": "\"c618ad778d68fb7bb01568a3f79755ad\"", + "vary": "Accept-Encoding" +} diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/jsx-example-snap@1.2.1.txt b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/jsx-example-snap@1.2.1.txt new file mode 100644 index 0000000000000000000000000000000000000000..50cf4720afc253946503445d9d75657e335463e5 GIT binary patch literal 11962 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 bZofCAe!sq7->>i2%JqK$u|;*70B!&Pn1|Sq literal 0 HcmV?d00001 diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/manage-state-example-snap@3.0.0-headers.json b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/manage-state-example-snap@3.0.0-headers.json new file mode 100644 index 00000000000..0e5e1629005 --- /dev/null +++ b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/manage-state-example-snap@3.0.0-headers.json @@ -0,0 +1,7 @@ +{ + "accept-ranges": "bytes", + "content-length": "13369", + "content-type": "application/octet-stream", + "etag": "\"ebf53ab08e421cb48ca87a46a36453f4\"", + "vary": "Accept-Encoding" +} diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/manage-state-example-snap@3.0.0.txt b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/manage-state-example-snap@3.0.0.txt new file mode 100644 index 0000000000000000000000000000000000000000..22213aeb0bd5e86a2d6379c1436c734e8dfaaf90 GIT binary patch literal 13369 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 P?el*C(Dwb80I~o8iq2$5 literal 0 HcmV?d00001 diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/multichain-provider-example-snap@1.0.0-headers.json b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/multichain-provider-example-snap@1.0.0-headers.json new file mode 100644 index 00000000000..70e320ed806 --- /dev/null +++ b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/multichain-provider-example-snap@1.0.0-headers.json @@ -0,0 +1,7 @@ +{ + "accept-ranges": "bytes", + "content-length": "42251", + "content-type": "application/octet-stream", + "etag": "\"a653b90d4181b08d66589fa3ff193d8c\"", + "vary": "Accept-Encoding" +} diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/multichain-provider-example-snap@1.0.0.txt b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/multichain-provider-example-snap@1.0.0.txt new file mode 100644 index 0000000000000000000000000000000000000000..b87fac873edbac50c508729dbbabd5ee3a532c67 GIT binary patch literal 42251 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 literal 0 HcmV?d00001 diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/name-lookup-example-snap@3.1.2-headers.json b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/name-lookup-example-snap@3.1.2-headers.json new file mode 100644 index 00000000000..297ae58d8f7 --- /dev/null +++ b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/name-lookup-example-snap@3.1.2-headers.json @@ -0,0 +1,7 @@ +{ + "accept-ranges": "bytes", + "content-length": "7213", + "content-type": "application/octet-stream", + "etag": "\"46c1c1d932d24ba1f8525db185d6e082\"", + "vary": "Accept-Encoding" +} diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/name-lookup-example-snap@3.1.2.txt b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/name-lookup-example-snap@3.1.2.txt new file mode 100644 index 0000000000000000000000000000000000000000..28f5d75cfd3ae75e1bfb599be8d215fe796eced9 GIT binary patch literal 7213 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 literal 0 HcmV?d00001 diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/wasm-example-snap@2.1.5-headers.json b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/wasm-example-snap@2.1.5-headers.json new file mode 100644 index 00000000000..13628762a6f --- /dev/null +++ b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/wasm-example-snap@2.1.5-headers.json @@ -0,0 +1,7 @@ +{ + "accept-ranges": "bytes", + "content-length": "13547", + "content-type": "application/octet-stream", + "etag": "\"d97d99aecc904046e68bd9bc1a73f1b0\"", + "vary": "Accept-Encoding" +} diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/wasm-example-snap@2.1.5.txt b/tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/wasm-example-snap@2.1.5.txt new file mode 100644 index 0000000000000000000000000000000000000000..9a9deabf2c393bbc268daa28ee158e6070e016c8 GIT binary patch literal 13547 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 Date: Thu, 23 Apr 2026 08:47:32 -0700 Subject: [PATCH 03/15] feat(e2e): add snap binary mock functions for local tarball serving Provides createSnapMock() and 21 individual mock functions that intercept npm registry tarball downloads via the /proxy pattern and return local binary files. Co-Authored-By: Claude Opus 4.6 --- .../snaps/snap-binary-mocks.ts | 222 ++++++++++++++++++ 1 file changed, 222 insertions(+) create mode 100644 tests/api-mocking/mock-response-data/snaps/snap-binary-mocks.ts diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binary-mocks.ts b/tests/api-mocking/mock-response-data/snaps/snap-binary-mocks.ts new file mode 100644 index 00000000000..768020c4451 --- /dev/null +++ b/tests/api-mocking/mock-response-data/snaps/snap-binary-mocks.ts @@ -0,0 +1,222 @@ +/* eslint-disable import-x/no-nodejs-modules */ +/* eslint-disable import-x/no-namespace */ +import * as fs from 'fs'; +import * as path from 'path'; +import * as semver from 'semver'; +import type { Mockttp } from 'mockttp'; +import { getDecodedProxiedURL } from '../../../smoke/notifications/utils/helpers'; + +const SNAP_BINARIES_DIR = path.resolve(__dirname, 'snap-binaries-and-headers'); + +/** + * Scans the binaries directory for files matching `@.txt` + * and returns the latest version via semver sort. + */ +export function getLocalSnapLatestVersion(snapNamePrefix: string): string { + const files = fs.readdirSync(SNAP_BINARIES_DIR); + const versions: string[] = []; + + for (const file of files) { + if (!file.startsWith(`${snapNamePrefix}@`) || !file.endsWith('.txt')) { + continue; + } + const version = file + .slice(`${snapNamePrefix}@`.length) + .replace(/\.txt$/, ''); + if (semver.valid(version)) { + versions.push(version); + } + } + + if (versions.length === 0) { + throw new Error( + `No local binary found for snap "${snapNamePrefix}". ` + + `Run: yarn update-snap-binary --${snapNamePrefix}@`, + ); + } + + versions.sort(semver.rcompare); + return versions[0]; +} + +interface CreateSnapMockOptions { + mockServer: Mockttp; + snapNamePrefix: string; + specificVersion?: string; +} + +/** + * Registers a mockttp rule that intercepts the npm registry tarball download + * for the given snap and returns the local binary file. + */ +export async function createSnapMock( + options: CreateSnapMockOptions, +): Promise { + const { mockServer, snapNamePrefix, specificVersion } = options; + const version = specificVersion ?? getLocalSnapLatestVersion(snapNamePrefix); + + const binaryPath = path.join( + SNAP_BINARIES_DIR, + `${snapNamePrefix}@${version}.txt`, + ); + const headersPath = path.join( + SNAP_BINARIES_DIR, + `${snapNamePrefix}@${version}-headers.json`, + ); + + if (!fs.existsSync(binaryPath)) { + throw new Error( + `Snap binary not found: ${binaryPath}. ` + + `Run: yarn update-snap-binary --${snapNamePrefix}@${version}`, + ); + } + + const rawBody = fs.readFileSync(binaryPath); + const headers = JSON.parse(fs.readFileSync(headersPath, 'utf-8')); + + const expectedUrlSubstring = `registry.npmjs.org/@metamask/${snapNamePrefix}/-/${snapNamePrefix}-${version}.tgz`; + + await mockServer + .forGet('/proxy') + .matching((request) => { + const decodedUrl = getDecodedProxiedURL(request.url); + return decodedUrl.includes(expectedUrlSubstring); + }) + .thenCallback(() => ({ + statusCode: 200, + rawBody, + headers, + })); +} + +// --- Individual snap mock functions --- + +export async function mockBackgroundEventsSnap( + mockServer: Mockttp, +): Promise { + return createSnapMock({ + mockServer, + snapNamePrefix: 'background-events-example-snap', + }); +} + +export async function mockBip32Snap(mockServer: Mockttp): Promise { + return createSnapMock({ mockServer, snapNamePrefix: 'bip32-example-snap' }); +} + +export async function mockBip44Snap(mockServer: Mockttp): Promise { + return createSnapMock({ mockServer, snapNamePrefix: 'bip44-example-snap' }); +} + +export async function mockClientStatusSnap(mockServer: Mockttp): Promise { + return createSnapMock({ + mockServer, + snapNamePrefix: 'client-status-example-snap', + }); +} + +export async function mockCronjobSnap(mockServer: Mockttp): Promise { + return createSnapMock({ mockServer, snapNamePrefix: 'cronjob-example-snap' }); +} + +export async function mockDialogSnap(mockServer: Mockttp): Promise { + return createSnapMock({ mockServer, snapNamePrefix: 'dialog-example-snap' }); +} + +export async function mockErrorSnap(mockServer: Mockttp): Promise { + return createSnapMock({ mockServer, snapNamePrefix: 'error-example-snap' }); +} + +export async function mockEthereumProviderSnap( + mockServer: Mockttp, +): Promise { + return createSnapMock({ + mockServer, + snapNamePrefix: 'ethereum-provider-example-snap', + }); +} + +export async function mockGetEntropySnap(mockServer: Mockttp): Promise { + return createSnapMock({ + mockServer, + snapNamePrefix: 'get-entropy-example-snap', + }); +} + +export async function mockGetFileSnap(mockServer: Mockttp): Promise { + return createSnapMock({ + mockServer, + snapNamePrefix: 'get-file-example-snap', + }); +} + +export async function mockImagesSnap(mockServer: Mockttp): Promise { + return createSnapMock({ mockServer, snapNamePrefix: 'images-example-snap' }); +} + +export async function mockInteractiveUiSnap( + mockServer: Mockttp, +): Promise { + return createSnapMock({ + mockServer, + snapNamePrefix: 'interactive-ui-example-snap', + }); +} + +export async function mockJsonRpcSnap(mockServer: Mockttp): Promise { + return createSnapMock({ + mockServer, + snapNamePrefix: 'json-rpc-example-snap', + }); +} + +export async function mockJsxSnap(mockServer: Mockttp): Promise { + return createSnapMock({ mockServer, snapNamePrefix: 'jsx-example-snap' }); +} + +export async function mockLifecycleHooksSnap( + mockServer: Mockttp, +): Promise { + return createSnapMock({ + mockServer, + snapNamePrefix: 'lifecycle-hooks-example-snap', + }); +} + +export async function mockManageStateSnap(mockServer: Mockttp): Promise { + return createSnapMock({ + mockServer, + snapNamePrefix: 'manage-state-example-snap', + }); +} + +export async function mockMultichainProviderSnap( + mockServer: Mockttp, +): Promise { + return createSnapMock({ + mockServer, + snapNamePrefix: 'multichain-provider-example-snap', + }); +} + +export async function mockNameLookupSnap(mockServer: Mockttp): Promise { + return createSnapMock({ + mockServer, + snapNamePrefix: 'name-lookup-example-snap', + }); +} + +export async function mockNetworkSnap(mockServer: Mockttp): Promise { + return createSnapMock({ mockServer, snapNamePrefix: 'network-example-snap' }); +} + +export async function mockPreferencesSnap(mockServer: Mockttp): Promise { + return createSnapMock({ + mockServer, + snapNamePrefix: 'preferences-example-snap', + }); +} + +export async function mockWasmSnap(mockServer: Mockttp): Promise { + return createSnapMock({ mockServer, snapNamePrefix: 'wasm-example-snap' }); +} From 8c7efec7d7dc7e2ab5bf50fc146f4c60c584e71e Mon Sep 17 00:00:00 2001 From: Chris Wilcox Date: Thu, 23 Apr 2026 08:48:58 -0700 Subject: [PATCH 04/15] feat(e2e): add snap binary mocks to ethereum-provider and multichain-provider specs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit These specs already had testSpecificMock — adds the snap tarball mock call alongside existing feature flag and genesis block mocks. Co-Authored-By: Claude Opus 4.6 --- tests/smoke/snaps/test-snap-ethereum-provider.spec.ts | 2 ++ tests/smoke/snaps/test-snap-multichain-provider.spec.ts | 2 ++ 2 files changed, 4 insertions(+) diff --git a/tests/smoke/snaps/test-snap-ethereum-provider.spec.ts b/tests/smoke/snaps/test-snap-ethereum-provider.spec.ts index 48484acfb1e..1e22e752d1d 100644 --- a/tests/smoke/snaps/test-snap-ethereum-provider.spec.ts +++ b/tests/smoke/snaps/test-snap-ethereum-provider.spec.ts @@ -11,6 +11,7 @@ import { Mockttp } from 'mockttp'; import { setupRemoteFeatureFlagsMock } from '../../api-mocking/helpers/remoteFeatureFlagsHelper'; import { confirmationFeatureFlags } from '../../api-mocking/mock-responses/feature-flags-mocks'; import { mockGenesisBlocks } from './mocks'; +import { mockEthereumProviderSnap } from '../../api-mocking/mock-response-data/snaps/snap-binary-mocks'; jest.setTimeout(150_000); @@ -27,6 +28,7 @@ describe(FlaskBuildTests('Ethereum Provider Snap Tests'), () => { Object.assign({}, ...confirmationFeatureFlags), ); await mockGenesisBlocks(mockServer); + await mockEthereumProviderSnap(mockServer); }, }, async () => { diff --git a/tests/smoke/snaps/test-snap-multichain-provider.spec.ts b/tests/smoke/snaps/test-snap-multichain-provider.spec.ts index 0334e286e3f..ae9a809ce48 100644 --- a/tests/smoke/snaps/test-snap-multichain-provider.spec.ts +++ b/tests/smoke/snaps/test-snap-multichain-provider.spec.ts @@ -11,6 +11,7 @@ import { Mockttp } from 'mockttp'; import { setupRemoteFeatureFlagsMock } from '../../api-mocking/helpers/remoteFeatureFlagsHelper'; import { confirmationFeatureFlags } from '../../api-mocking/mock-responses/feature-flags-mocks'; import { mockGenesisBlocks } from './mocks'; +import { mockMultichainProviderSnap } from '../../api-mocking/mock-response-data/snaps/snap-binary-mocks'; jest.setTimeout(150_000); @@ -27,6 +28,7 @@ describe(FlaskBuildTests('Multichain Provider Snap Tests'), () => { Object.assign({}, ...confirmationFeatureFlags), ); await mockGenesisBlocks(mockServer); + await mockMultichainProviderSnap(mockServer); }, }, async () => { From e4efe2017638a2057bbc631680511c8b87b26b39 Mon Sep 17 00:00:00 2001 From: Chris Wilcox Date: Thu, 23 Apr 2026 08:54:10 -0700 Subject: [PATCH 05/15] feat(e2e): add testSpecificMock with snap binary mocks to 20 flask specs Each spec now intercepts the npm registry tarball download for its snap and serves the local binary via MockServer's /proxy pattern. Co-Authored-By: Claude Opus 4.6 --- tests/smoke/snaps/test-snap-background-events.spec.ts | 5 +++++ tests/smoke/snaps/test-snap-bip-32.spec.ts | 5 +++++ tests/smoke/snaps/test-snap-bip-44.spec.ts | 5 +++++ tests/smoke/snaps/test-snap-client-status.spec.ts | 5 +++++ tests/smoke/snaps/test-snap-cronjob.spec.ts | 5 +++++ tests/smoke/snaps/test-snap-dialog.spec.ts | 5 +++++ tests/smoke/snaps/test-snap-get-entropy.spec.ts | 5 +++++ tests/smoke/snaps/test-snap-get-file.spec.ts | 5 +++++ tests/smoke/snaps/test-snap-get-preferences.spec.ts | 5 +++++ tests/smoke/snaps/test-snap-image.spec.ts | 5 +++++ tests/smoke/snaps/test-snap-installed.spec.ts | 5 +++++ tests/smoke/snaps/test-snap-interactive-ui.spec.ts | 5 +++++ tests/smoke/snaps/test-snap-jsx.spec.ts | 5 +++++ tests/smoke/snaps/test-snap-lifecycle.spec.ts | 5 +++++ tests/smoke/snaps/test-snap-manage-state.spec.ts | 5 +++++ tests/smoke/snaps/test-snap-management.spec.ts | 5 +++++ tests/smoke/snaps/test-snap-name-lookup.spec.ts | 5 +++++ tests/smoke/snaps/test-snap-network-access.spec.ts | 5 +++++ tests/smoke/snaps/test-snap-uilinks.spec.ts | 5 +++++ tests/smoke/snaps/test-snap-wasm.spec.ts | 5 +++++ 20 files changed, 100 insertions(+) diff --git a/tests/smoke/snaps/test-snap-background-events.spec.ts b/tests/smoke/snaps/test-snap-background-events.spec.ts index 1aa0168d5f6..0b542cd2c15 100644 --- a/tests/smoke/snaps/test-snap-background-events.spec.ts +++ b/tests/smoke/snaps/test-snap-background-events.spec.ts @@ -8,6 +8,8 @@ import Assertions from '../../framework/Assertions'; import Matchers from '../../framework/Matchers'; import { BrowserViewSelectorsIDs } from '../../../app/components/Views/BrowserTab/BrowserView.testIds'; import { TestSnapResultSelectorWebIDS } from '../../selectors/Browser/TestSnaps.selectors'; +import { Mockttp } from 'mockttp'; +import { mockBackgroundEventsSnap } from '../../api-mocking/mock-response-data/snaps/snap-binary-mocks'; jest.setTimeout(150_000); @@ -18,6 +20,9 @@ describe(FlaskBuildTests('Background Events Snap Tests'), () => { fixture: new FixtureBuilder().build(), restartDevice: true, skipReactNativeReload: true, + testSpecificMock: async (mockServer: Mockttp) => { + await mockBackgroundEventsSnap(mockServer); + }, }, async () => { await loginToApp(); diff --git a/tests/smoke/snaps/test-snap-bip-32.spec.ts b/tests/smoke/snaps/test-snap-bip-32.spec.ts index ae742d31257..2b54ba991b7 100644 --- a/tests/smoke/snaps/test-snap-bip-32.spec.ts +++ b/tests/smoke/snaps/test-snap-bip-32.spec.ts @@ -5,6 +5,8 @@ import FixtureBuilder from '../../framework/fixtures/FixtureBuilder'; import { withFixtures } from '../../framework/fixtures/FixtureHelper'; import Assertions from '../../framework/Assertions'; import TestSnaps from '../../page-objects/Browser/TestSnaps'; +import { Mockttp } from 'mockttp'; +import { mockBip32Snap } from '../../api-mocking/mock-response-data/snaps/snap-binary-mocks'; jest.setTimeout(150_000); @@ -15,6 +17,9 @@ describe(FlaskBuildTests('BIP-32 Snap Tests'), () => { fixture: new FixtureBuilder().withMultiSRPKeyringController().build(), restartDevice: true, skipReactNativeReload: true, + testSpecificMock: async (mockServer: Mockttp) => { + await mockBip32Snap(mockServer); + }, }, async () => { await loginToApp(); diff --git a/tests/smoke/snaps/test-snap-bip-44.spec.ts b/tests/smoke/snaps/test-snap-bip-44.spec.ts index c393f9aa668..c699d600c42 100644 --- a/tests/smoke/snaps/test-snap-bip-44.spec.ts +++ b/tests/smoke/snaps/test-snap-bip-44.spec.ts @@ -5,6 +5,8 @@ import FixtureBuilder from '../../framework/fixtures/FixtureBuilder'; import { withFixtures } from '../../framework/fixtures/FixtureHelper'; import TestSnaps from '../../page-objects/Browser/TestSnaps'; import Assertions from '../../framework/Assertions'; +import { Mockttp } from 'mockttp'; +import { mockBip44Snap } from '../../api-mocking/mock-response-data/snaps/snap-binary-mocks'; jest.setTimeout(150_000); @@ -15,6 +17,9 @@ describe(FlaskBuildTests('BIP-44 Snap Tests'), () => { fixture: new FixtureBuilder().withMultiSRPKeyringController().build(), restartDevice: true, skipReactNativeReload: true, + testSpecificMock: async (mockServer: Mockttp) => { + await mockBip44Snap(mockServer); + }, }, async () => { await loginToApp(); diff --git a/tests/smoke/snaps/test-snap-client-status.spec.ts b/tests/smoke/snaps/test-snap-client-status.spec.ts index 38ffab7d4ea..b142ee12d20 100644 --- a/tests/smoke/snaps/test-snap-client-status.spec.ts +++ b/tests/smoke/snaps/test-snap-client-status.spec.ts @@ -6,6 +6,8 @@ import { withFixtures } from '../../framework/fixtures/FixtureHelper'; import TestSnaps from '../../page-objects/Browser/TestSnaps'; import sdkPackageJson from '@metamask/snaps-sdk/package.json'; import packageJson from '../../../package.json'; +import { Mockttp } from 'mockttp'; +import { mockClientStatusSnap } from '../../api-mocking/mock-response-data/snaps/snap-binary-mocks'; jest.setTimeout(150_000); @@ -16,6 +18,9 @@ describe(FlaskBuildTests('Client Status Snap Tests'), () => { fixture: new FixtureBuilder().build(), restartDevice: true, skipReactNativeReload: true, + testSpecificMock: async (mockServer: Mockttp) => { + await mockClientStatusSnap(mockServer); + }, }, async () => { await loginToApp(); diff --git a/tests/smoke/snaps/test-snap-cronjob.spec.ts b/tests/smoke/snaps/test-snap-cronjob.spec.ts index b3571e5b0dc..add1f991126 100644 --- a/tests/smoke/snaps/test-snap-cronjob.spec.ts +++ b/tests/smoke/snaps/test-snap-cronjob.spec.ts @@ -5,6 +5,8 @@ import FixtureBuilder from '../../framework/fixtures/FixtureBuilder'; import { withFixtures } from '../../framework/fixtures/FixtureHelper'; import TestSnaps from '../../page-objects/Browser/TestSnaps'; import { Assertions } from '../../framework'; +import { Mockttp } from 'mockttp'; +import { mockCronjobSnap } from '../../api-mocking/mock-response-data/snaps/snap-binary-mocks'; jest.setTimeout(150_000); @@ -15,6 +17,9 @@ describe(FlaskBuildTests('Cronjob Snap Tests'), () => { fixture: new FixtureBuilder().build(), restartDevice: true, skipReactNativeReload: true, + testSpecificMock: async (mockServer: Mockttp) => { + await mockCronjobSnap(mockServer); + }, }, async () => { await loginToApp(); diff --git a/tests/smoke/snaps/test-snap-dialog.spec.ts b/tests/smoke/snaps/test-snap-dialog.spec.ts index 7e474157460..e64405eb5d4 100644 --- a/tests/smoke/snaps/test-snap-dialog.spec.ts +++ b/tests/smoke/snaps/test-snap-dialog.spec.ts @@ -7,6 +7,8 @@ import Gestures from '../../framework/Gestures'; import { Matchers } from '../../framework'; import { withFixtures } from '../../framework/fixtures/FixtureHelper'; import FixtureBuilder from '../../framework/fixtures/FixtureBuilder'; +import { Mockttp } from 'mockttp'; +import { mockDialogSnap } from '../../api-mocking/mock-response-data/snaps/snap-binary-mocks'; jest.setTimeout(150_000); @@ -17,6 +19,9 @@ describe(FlaskBuildTests('Dialog Snap Tests'), () => { fixture: new FixtureBuilder().build(), restartDevice: true, skipReactNativeReload: true, + testSpecificMock: async (mockServer: Mockttp) => { + await mockDialogSnap(mockServer); + }, }, async () => { await loginToApp(); diff --git a/tests/smoke/snaps/test-snap-get-entropy.spec.ts b/tests/smoke/snaps/test-snap-get-entropy.spec.ts index 5d11acde517..40ae79492ab 100644 --- a/tests/smoke/snaps/test-snap-get-entropy.spec.ts +++ b/tests/smoke/snaps/test-snap-get-entropy.spec.ts @@ -5,6 +5,8 @@ import FixtureBuilder from '../../framework/fixtures/FixtureBuilder'; import { withFixtures } from '../../framework/fixtures/FixtureHelper'; import TestSnaps from '../../page-objects/Browser/TestSnaps'; import Assertions from '../../framework/Assertions'; +import { Mockttp } from 'mockttp'; +import { mockGetEntropySnap } from '../../api-mocking/mock-response-data/snaps/snap-binary-mocks'; jest.setTimeout(150_000); @@ -36,6 +38,9 @@ describe(FlaskBuildTests('Get Entropy Snap Tests'), () => { fixture: new FixtureBuilder().withMultiSRPKeyringController().build(), restartDevice: true, skipReactNativeReload: true, + testSpecificMock: async (mockServer: Mockttp) => { + await mockGetEntropySnap(mockServer); + }, }, async () => { await withIosDetoxSyncDisabledForAccountActivityWs(async () => { diff --git a/tests/smoke/snaps/test-snap-get-file.spec.ts b/tests/smoke/snaps/test-snap-get-file.spec.ts index 1f0d692e311..ec0c1a257cb 100644 --- a/tests/smoke/snaps/test-snap-get-file.spec.ts +++ b/tests/smoke/snaps/test-snap-get-file.spec.ts @@ -4,6 +4,8 @@ import { navigateToBrowserView } from '../../flows/browser.flow'; import FixtureBuilder from '../../framework/fixtures/FixtureBuilder'; import { withFixtures } from '../../framework/fixtures/FixtureHelper'; import TestSnaps from '../../page-objects/Browser/TestSnaps'; +import { Mockttp } from 'mockttp'; +import { mockGetFileSnap } from '../../api-mocking/mock-response-data/snaps/snap-binary-mocks'; jest.setTimeout(150_000); @@ -14,6 +16,9 @@ describe(FlaskBuildTests('Get File Snap Tests'), () => { fixture: new FixtureBuilder().build(), restartDevice: true, skipReactNativeReload: true, + testSpecificMock: async (mockServer: Mockttp) => { + await mockGetFileSnap(mockServer); + }, }, async () => { await loginToApp(); diff --git a/tests/smoke/snaps/test-snap-get-preferences.spec.ts b/tests/smoke/snaps/test-snap-get-preferences.spec.ts index 01c3765da5b..c26c6abc328 100644 --- a/tests/smoke/snaps/test-snap-get-preferences.spec.ts +++ b/tests/smoke/snaps/test-snap-get-preferences.spec.ts @@ -4,6 +4,8 @@ import TestSnaps from '../../page-objects/Browser/TestSnaps'; import { FlaskBuildTests } from '../../tags'; import { loginToApp } from '../../flows/wallet.flow'; import { navigateToBrowserView } from '../../flows/browser.flow'; +import { Mockttp } from 'mockttp'; +import { mockPreferencesSnap } from '../../api-mocking/mock-response-data/snaps/snap-binary-mocks'; jest.setTimeout(150_000); @@ -19,6 +21,9 @@ describe(FlaskBuildTests('Get Preferences Snap Tests'), () => { .build(), restartDevice: true, skipReactNativeReload: true, + testSpecificMock: async (mockServer: Mockttp) => { + await mockPreferencesSnap(mockServer); + }, }, async () => { await loginToApp(); diff --git a/tests/smoke/snaps/test-snap-image.spec.ts b/tests/smoke/snaps/test-snap-image.spec.ts index b1c1ca367c6..9d9e43748ff 100644 --- a/tests/smoke/snaps/test-snap-image.spec.ts +++ b/tests/smoke/snaps/test-snap-image.spec.ts @@ -5,6 +5,8 @@ import FixtureBuilder from '../../framework/fixtures/FixtureBuilder'; import { withFixtures } from '../../framework/fixtures/FixtureHelper'; import TestSnaps from '../../page-objects/Browser/TestSnaps'; import { Assertions, Matchers } from '../../framework'; +import { Mockttp } from 'mockttp'; +import { mockImagesSnap } from '../../api-mocking/mock-response-data/snaps/snap-binary-mocks'; jest.setTimeout(150_000); @@ -15,6 +17,9 @@ describe(FlaskBuildTests('Image Snap Tests'), () => { fixture: new FixtureBuilder().build(), restartDevice: true, skipReactNativeReload: true, + testSpecificMock: async (mockServer: Mockttp) => { + await mockImagesSnap(mockServer); + }, }, async () => { await loginToApp(); diff --git a/tests/smoke/snaps/test-snap-installed.spec.ts b/tests/smoke/snaps/test-snap-installed.spec.ts index 6ec28a00037..14f980420fa 100644 --- a/tests/smoke/snaps/test-snap-installed.spec.ts +++ b/tests/smoke/snaps/test-snap-installed.spec.ts @@ -5,6 +5,8 @@ import { FlaskBuildTests } from '../../tags'; import TestSnaps from '../../page-objects/Browser/TestSnaps'; import { loginToApp } from '../../flows/wallet.flow'; import { navigateToBrowserView } from '../../flows/browser.flow'; +import { Mockttp } from 'mockttp'; +import { mockErrorSnap } from '../../api-mocking/mock-response-data/snaps/snap-binary-mocks'; jest.setTimeout(150_000); @@ -15,6 +17,9 @@ describe(FlaskBuildTests('Installed Snap Tests'), () => { fixture: new FixtureBuilder().build(), restartDevice: true, skipReactNativeReload: true, + testSpecificMock: async (mockServer: Mockttp) => { + await mockErrorSnap(mockServer); + }, }, async () => { await loginToApp(); diff --git a/tests/smoke/snaps/test-snap-interactive-ui.spec.ts b/tests/smoke/snaps/test-snap-interactive-ui.spec.ts index 88e2cbd5d8f..81dfe86246a 100644 --- a/tests/smoke/snaps/test-snap-interactive-ui.spec.ts +++ b/tests/smoke/snaps/test-snap-interactive-ui.spec.ts @@ -7,6 +7,8 @@ import TestSnaps from '../../page-objects/Browser/TestSnaps'; import { Assertions } from '../../framework'; import Matchers from '../../framework/Matchers'; import { DateTime } from 'luxon'; +import { Mockttp } from 'mockttp'; +import { mockInteractiveUiSnap } from '../../api-mocking/mock-response-data/snaps/snap-binary-mocks'; jest.setTimeout(150_000); @@ -17,6 +19,9 @@ describe(FlaskBuildTests('Interactive UI Snap Tests'), () => { fixture: new FixtureBuilder().build(), restartDevice: true, skipReactNativeReload: true, + testSpecificMock: async (mockServer: Mockttp) => { + await mockInteractiveUiSnap(mockServer); + }, }, async () => { await loginToApp(); diff --git a/tests/smoke/snaps/test-snap-jsx.spec.ts b/tests/smoke/snaps/test-snap-jsx.spec.ts index 670151401d5..915acd39726 100644 --- a/tests/smoke/snaps/test-snap-jsx.spec.ts +++ b/tests/smoke/snaps/test-snap-jsx.spec.ts @@ -5,6 +5,8 @@ import FixtureBuilder from '../../framework/fixtures/FixtureBuilder'; import { withFixtures } from '../../framework/fixtures/FixtureHelper'; import TestSnaps from '../../page-objects/Browser/TestSnaps'; import { Assertions, Gestures, Matchers } from '../../framework'; +import { Mockttp } from 'mockttp'; +import { mockJsxSnap } from '../../api-mocking/mock-response-data/snaps/snap-binary-mocks'; jest.setTimeout(150_000); @@ -15,6 +17,9 @@ describe(FlaskBuildTests('JSX Snap Tests'), () => { fixture: new FixtureBuilder().build(), restartDevice: true, skipReactNativeReload: true, + testSpecificMock: async (mockServer: Mockttp) => { + await mockJsxSnap(mockServer); + }, }, async () => { await loginToApp(); diff --git a/tests/smoke/snaps/test-snap-lifecycle.spec.ts b/tests/smoke/snaps/test-snap-lifecycle.spec.ts index edc25c276d7..b30f6307c80 100644 --- a/tests/smoke/snaps/test-snap-lifecycle.spec.ts +++ b/tests/smoke/snaps/test-snap-lifecycle.spec.ts @@ -5,6 +5,8 @@ import { FlaskBuildTests } from '../../tags'; import Assertions from '../../framework/Assertions'; import { loginToApp } from '../../flows/wallet.flow'; import { navigateToBrowserView } from '../../flows/browser.flow'; +import { Mockttp } from 'mockttp'; +import { mockLifecycleHooksSnap } from '../../api-mocking/mock-response-data/snaps/snap-binary-mocks'; jest.setTimeout(150_000); @@ -15,6 +17,9 @@ describe(FlaskBuildTests('Lifecycle hooks Snap Tests'), () => { fixture: new FixtureBuilder().build(), restartDevice: true, skipReactNativeReload: true, + testSpecificMock: async (mockServer: Mockttp) => { + await mockLifecycleHooksSnap(mockServer); + }, }, async () => { await loginToApp(); diff --git a/tests/smoke/snaps/test-snap-manage-state.spec.ts b/tests/smoke/snaps/test-snap-manage-state.spec.ts index 10ecf57cb9b..5e63af66b3a 100644 --- a/tests/smoke/snaps/test-snap-manage-state.spec.ts +++ b/tests/smoke/snaps/test-snap-manage-state.spec.ts @@ -4,6 +4,8 @@ import { navigateToBrowserView } from '../../flows/browser.flow'; import FixtureBuilder from '../../framework/fixtures/FixtureBuilder'; import { withFixtures } from '../../framework/fixtures/FixtureHelper'; import TestSnaps from '../../page-objects/Browser/TestSnaps'; +import { Mockttp } from 'mockttp'; +import { mockManageStateSnap } from '../../api-mocking/mock-response-data/snaps/snap-binary-mocks'; jest.setTimeout(150_000); @@ -14,6 +16,9 @@ describe(FlaskBuildTests('Manage State Snap Tests'), () => { fixture: new FixtureBuilder().build(), restartDevice: true, skipReactNativeReload: true, + testSpecificMock: async (mockServer: Mockttp) => { + await mockManageStateSnap(mockServer); + }, }, async () => { await loginToApp(); diff --git a/tests/smoke/snaps/test-snap-management.spec.ts b/tests/smoke/snaps/test-snap-management.spec.ts index 570567604f2..349ec26682d 100644 --- a/tests/smoke/snaps/test-snap-management.spec.ts +++ b/tests/smoke/snaps/test-snap-management.spec.ts @@ -10,6 +10,8 @@ import SnapSettingsView from '../../page-objects/Settings/SnapSettingsView'; import { Assertions } from '../../framework'; import BrowserView from '../../page-objects/Browser/BrowserView'; import AccountMenu from '../../page-objects/AccountMenu/AccountMenu'; +import { Mockttp } from 'mockttp'; +import { mockDialogSnap } from '../../api-mocking/mock-response-data/snaps/snap-binary-mocks'; jest.setTimeout(150_000); @@ -20,6 +22,9 @@ describe(FlaskBuildTests('Snap Management Tests'), () => { fixture: new FixtureBuilder().build(), restartDevice: true, skipReactNativeReload: true, + testSpecificMock: async (mockServer: Mockttp) => { + await mockDialogSnap(mockServer); + }, }, async () => { await loginToApp(); diff --git a/tests/smoke/snaps/test-snap-name-lookup.spec.ts b/tests/smoke/snaps/test-snap-name-lookup.spec.ts index e0ca57077b9..d609c748b26 100644 --- a/tests/smoke/snaps/test-snap-name-lookup.spec.ts +++ b/tests/smoke/snaps/test-snap-name-lookup.spec.ts @@ -12,6 +12,8 @@ import BrowserView from '../../page-objects/Browser/BrowserView'; import TransactionConfirmView from '../../page-objects/Send/TransactionConfirmView'; import TokenOverview from '../../page-objects/wallet/TokenOverview'; import NetworkListModal from '../../page-objects/Network/NetworkListModal'; +import { Mockttp } from 'mockttp'; +import { mockNameLookupSnap } from '../../api-mocking/mock-response-data/snaps/snap-binary-mocks'; jest.setTimeout(150_000); @@ -24,6 +26,9 @@ describe(FlaskBuildTests('Name Lookup Snap Tests'), () => { fixture: new FixtureBuilder().build(), restartDevice: true, skipReactNativeReload: true, + testSpecificMock: async (mockServer: Mockttp) => { + await mockNameLookupSnap(mockServer); + }, }, async () => { await loginToApp(); diff --git a/tests/smoke/snaps/test-snap-network-access.spec.ts b/tests/smoke/snaps/test-snap-network-access.spec.ts index ae36102ed5c..482e63472ec 100644 --- a/tests/smoke/snaps/test-snap-network-access.spec.ts +++ b/tests/smoke/snaps/test-snap-network-access.spec.ts @@ -7,6 +7,8 @@ import TestSnaps from '../../page-objects/Browser/TestSnaps'; import { getAnvilPortForTest } from '../../framework/fixtures/FixtureUtils'; import { LocalNodeType } from '../../framework'; import { defaultOptions } from '../../seeder/anvil-manager'; +import { Mockttp } from 'mockttp'; +import { mockNetworkSnap } from '../../api-mocking/mock-response-data/snaps/snap-binary-mocks'; jest.setTimeout(150_000); @@ -26,6 +28,9 @@ describe(FlaskBuildTests('Network Access Snap Tests'), () => { }, }, ], + testSpecificMock: async (mockServer: Mockttp) => { + await mockNetworkSnap(mockServer); + }, }, async () => { await loginToApp(); diff --git a/tests/smoke/snaps/test-snap-uilinks.spec.ts b/tests/smoke/snaps/test-snap-uilinks.spec.ts index 441adbae717..874c420c9fc 100644 --- a/tests/smoke/snaps/test-snap-uilinks.spec.ts +++ b/tests/smoke/snaps/test-snap-uilinks.spec.ts @@ -5,6 +5,8 @@ import { FlaskBuildTests } from '../../tags'; import { loginToApp } from '../../flows/wallet.flow'; import { navigateToBrowserView } from '../../flows/browser.flow'; import { Assertions, Matchers } from '../../framework'; +import { Mockttp } from 'mockttp'; +import { mockDialogSnap } from '../../api-mocking/mock-response-data/snaps/snap-binary-mocks'; jest.setTimeout(150_000); @@ -15,6 +17,9 @@ describe(FlaskBuildTests('UI Links Snap Test'), () => { fixture: new FixtureBuilder().build(), restartDevice: true, skipReactNativeReload: true, + testSpecificMock: async (mockServer: Mockttp) => { + await mockDialogSnap(mockServer); + }, }, async () => { await loginToApp(); diff --git a/tests/smoke/snaps/test-snap-wasm.spec.ts b/tests/smoke/snaps/test-snap-wasm.spec.ts index 40d7886ec6f..86f0e2bb01f 100644 --- a/tests/smoke/snaps/test-snap-wasm.spec.ts +++ b/tests/smoke/snaps/test-snap-wasm.spec.ts @@ -4,6 +4,8 @@ import { navigateToBrowserView } from '../../flows/browser.flow'; import FixtureBuilder from '../../framework/fixtures/FixtureBuilder'; import { withFixtures } from '../../framework/fixtures/FixtureHelper'; import TestSnaps from '../../page-objects/Browser/TestSnaps'; +import { Mockttp } from 'mockttp'; +import { mockWasmSnap } from '../../api-mocking/mock-response-data/snaps/snap-binary-mocks'; jest.setTimeout(150_000); @@ -14,6 +16,9 @@ describe(FlaskBuildTests('WASM Snap Tests'), () => { fixture: new FixtureBuilder().build(), restartDevice: true, skipReactNativeReload: true, + testSpecificMock: async (mockServer: Mockttp) => { + await mockWasmSnap(mockServer); + }, }, async () => { await loginToApp(); From b6f9bc0f21e8ed143b9afdc50ba3636c2c6c9c4b Mon Sep 17 00:00:00 2001 From: Chris Wilcox Date: Thu, 23 Apr 2026 08:57:05 -0700 Subject: [PATCH 06/15] feat(e2e): add snap binary mocks for multi-snap RPC test Mocks both bip32 and json-rpc snap tarballs in the same testSpecificMock since the spec installs both snaps. Co-Authored-By: Claude Opus 4.6 --- tests/smoke/snaps/test-snap-rpc.spec.ts | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/tests/smoke/snaps/test-snap-rpc.spec.ts b/tests/smoke/snaps/test-snap-rpc.spec.ts index 7c550775635..20fac112674 100644 --- a/tests/smoke/snaps/test-snap-rpc.spec.ts +++ b/tests/smoke/snaps/test-snap-rpc.spec.ts @@ -4,6 +4,11 @@ import { FlaskBuildTests } from '../../tags'; import { loginToApp } from '../../flows/wallet.flow'; import { navigateToBrowserView } from '../../flows/browser.flow'; import { withFixtures } from '../../framework/fixtures/FixtureHelper'; +import { Mockttp } from 'mockttp'; +import { + mockBip32Snap, + mockJsonRpcSnap, +} from '../../api-mocking/mock-response-data/snaps/snap-binary-mocks'; jest.setTimeout(150_000); @@ -14,6 +19,10 @@ describe(FlaskBuildTests('Snap RPC Tests'), () => { fixture: new FixtureBuilder().withMultiSRPKeyringController().build(), restartDevice: true, skipReactNativeReload: true, + testSpecificMock: async (mockServer: Mockttp) => { + await mockBip32Snap(mockServer); + await mockJsonRpcSnap(mockServer); + }, }, async () => { await loginToApp(); From bb2a9c071622365bbd19400fca3e187eb81ea7e0 Mon Sep 17 00:00:00 2001 From: Chris Wilcox Date: Thu, 23 Apr 2026 08:58:00 -0700 Subject: [PATCH 07/15] feat(e2e): remove npm URI allowlist bypass from MockServerE2E Now that all snap tarballs are served locally via testSpecificMock, the bypass for malformed npm: URIs is no longer needed. Any unmocked npm registry requests will be caught by validateLiveRequests(). Co-Authored-By: Claude Opus 4.6 --- tests/api-mocking/MockServerE2E.ts | 6 ------ 1 file changed, 6 deletions(-) diff --git a/tests/api-mocking/MockServerE2E.ts b/tests/api-mocking/MockServerE2E.ts index 3f4326441f3..88260d5f69b 100644 --- a/tests/api-mocking/MockServerE2E.ts +++ b/tests/api-mocking/MockServerE2E.ts @@ -157,12 +157,6 @@ const isUrlAllowed = (url: string): boolean => { return true; } - // Malformed npm: package URIs that leak through the snap proxy - // e.g. https://https//npm:@metamask/... or npm:@metamask/... - if (/^(?:https?:\/\/.*)?npm[:@]@?metamask\//.test(url)) { - return true; - } - const parsedUrl = new URL(url); const hostname = parsedUrl.hostname; From 2f4c52a2ae586d52802bdd375884cb024a521332 Mon Sep 17 00:00:00 2001 From: Chris Wilcox Date: Thu, 23 Apr 2026 10:01:29 -0700 Subject: [PATCH 08/15] =?UTF-8?q?fix(e2e):=20address=20review=20=E2=80=94?= =?UTF-8?q?=20gitattributes,=20inline=20helper,=20headers=20check?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add .gitattributes binary marker for snap tarball .txt files to prevent CRLF normalization corruption - Inline getDecodedProxiedURL to remove cross-layer import from smoke/notifications into the shared api-mocking layer - Add headersPath existence check in createSnapMock for a clear error message when the -headers.json file is missing Co-Authored-By: Claude Opus 4.6 --- .gitattributes | 3 +++ .../mock-response-data/snaps/snap-binary-mocks.ts | 11 ++++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/.gitattributes b/.gitattributes index 45a3dcb2a20..a6b511d88c5 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,3 +1,6 @@ # Windows files should use crlf line endings # https://help.github.com/articles/dealing-with-line-endings/ *.bat text eol=crlf + +# Snap binary tarballs stored with .txt extension must not be normalized +tests/api-mocking/mock-response-data/snaps/snap-binaries-and-headers/*.txt binary diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binary-mocks.ts b/tests/api-mocking/mock-response-data/snaps/snap-binary-mocks.ts index 768020c4451..9ca633d3d90 100644 --- a/tests/api-mocking/mock-response-data/snaps/snap-binary-mocks.ts +++ b/tests/api-mocking/mock-response-data/snaps/snap-binary-mocks.ts @@ -4,10 +4,12 @@ import * as fs from 'fs'; import * as path from 'path'; import * as semver from 'semver'; import type { Mockttp } from 'mockttp'; -import { getDecodedProxiedURL } from '../../../smoke/notifications/utils/helpers'; const SNAP_BINARIES_DIR = path.resolve(__dirname, 'snap-binaries-and-headers'); +const getDecodedProxiedURL = (url: string) => + decodeURIComponent(String(new URL(url).searchParams.get('url'))); + /** * Scans the binaries directory for files matching `@.txt` * and returns the latest version via semver sort. @@ -71,6 +73,13 @@ export async function createSnapMock( ); } + if (!fs.existsSync(headersPath)) { + throw new Error( + `Snap headers not found: ${headersPath}. ` + + `Run: yarn update-snap-binary --${snapNamePrefix}@${version}`, + ); + } + const rawBody = fs.readFileSync(binaryPath); const headers = JSON.parse(fs.readFileSync(headersPath, 'utf-8')); From e56372e61babbd9f6d48ee062d89aa8519ffb23c Mon Sep 17 00:00:00 2001 From: Chris Wilcox Date: Thu, 23 Apr 2026 12:20:15 -0700 Subject: [PATCH 09/15] fix(e2e): restore npm URI allowlist bypass for snap proxy leaks The ethereum-provider and multichain-provider snaps make a direct GET request using a malformed npm: URI that bypasses the /proxy route. The binary mocks only intercept proxied tarball requests, so these direct requests still need the allowlist bypass. Co-Authored-By: Claude Opus 4.6 --- tests/api-mocking/MockServerE2E.ts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tests/api-mocking/MockServerE2E.ts b/tests/api-mocking/MockServerE2E.ts index 88260d5f69b..3f4326441f3 100644 --- a/tests/api-mocking/MockServerE2E.ts +++ b/tests/api-mocking/MockServerE2E.ts @@ -157,6 +157,12 @@ const isUrlAllowed = (url: string): boolean => { return true; } + // Malformed npm: package URIs that leak through the snap proxy + // e.g. https://https//npm:@metamask/... or npm:@metamask/... + if (/^(?:https?:\/\/.*)?npm[:@]@?metamask\//.test(url)) { + return true; + } + const parsedUrl = new URL(url); const hostname = parsedUrl.hostname; From 53875d771b3a28008ab1ffcf305c4faf82ed7cc9 Mon Sep 17 00:00:00 2001 From: Chris Wilcox Date: Thu, 23 Apr 2026 14:34:34 -0700 Subject: [PATCH 10/15] fix(scripts): sanitize input and guard output paths in update-snap-binary Address CodeQL "Network data written to file" finding by validating the snap name against path traversal characters and verifying resolved output paths stay within the target directory. Co-Authored-By: Claude Opus 4.6 --- scripts/update-snap-binary.ts | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/scripts/update-snap-binary.ts b/scripts/update-snap-binary.ts index e1b02f09f73..fff14db12fe 100644 --- a/scripts/update-snap-binary.ts +++ b/scripts/update-snap-binary.ts @@ -33,6 +33,11 @@ function parseArgs(): { snapName: string; version: string } { const snapName = nameVersion.slice(0, atIndex); const version = nameVersion.slice(atIndex + 1); + if (!/^[a-z0-9-]+$/i.test(snapName)) { + console.error(`Invalid snap name: ${snapName}. Only alphanumeric and hyphens allowed.`); + process.exit(1); + } + if (!valid(version)) { console.error(`Invalid semver version: ${version}`); process.exit(1); @@ -76,10 +81,13 @@ async function downloadSnapBinary( deleteOldSnapFiles(snapName); const buffer = Buffer.from(await response.arrayBuffer()); - const binaryPath = join( - SNAP_BINARIES_DIR, - `${snapName}@${version}.txt`, - ); + const binaryPath = resolve(SNAP_BINARIES_DIR, `${snapName}@${version}.txt`); + const headersPath = resolve(SNAP_BINARIES_DIR, `${snapName}@${version}-headers.json`); + + if (!binaryPath.startsWith(SNAP_BINARIES_DIR) || !headersPath.startsWith(SNAP_BINARIES_DIR)) { + throw new Error('Resolved path escapes target directory'); + } + writeFileSync(binaryPath, buffer); console.log(`Saved binary: ${basename(binaryPath)}`); @@ -90,10 +98,6 @@ async function downloadSnapBinary( headers[headerName] = value; } } - const headersPath = join( - SNAP_BINARIES_DIR, - `${snapName}@${version}-headers.json`, - ); writeFileSync(headersPath, JSON.stringify(headers, null, 2)); console.log(`Saved headers: ${basename(headersPath)}`); } From f2ef5e4a27a5f932a6127718d74c4e6ab35648d1 Mon Sep 17 00:00:00 2001 From: Chris Wilcox Date: Thu, 23 Apr 2026 20:58:50 -0700 Subject: [PATCH 11/15] ci: retrigger CI checks Co-Authored-By: Claude Opus 4.6 From a457e00bca93c86bfd3b014531e9327c200ffb34 Mon Sep 17 00:00:00 2001 From: Chris Wilcox Date: Thu, 23 Apr 2026 21:08:28 -0700 Subject: [PATCH 12/15] fix(e2e): import getDecodedProxiedURL from shared helper instead of duplicating Co-Authored-By: Claude Opus 4.6 --- .../api-mocking/mock-response-data/snaps/snap-binary-mocks.ts | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/tests/api-mocking/mock-response-data/snaps/snap-binary-mocks.ts b/tests/api-mocking/mock-response-data/snaps/snap-binary-mocks.ts index 9ca633d3d90..d18baa1bb63 100644 --- a/tests/api-mocking/mock-response-data/snaps/snap-binary-mocks.ts +++ b/tests/api-mocking/mock-response-data/snaps/snap-binary-mocks.ts @@ -4,12 +4,10 @@ import * as fs from 'fs'; import * as path from 'path'; import * as semver from 'semver'; import type { Mockttp } from 'mockttp'; +import { getDecodedProxiedURL } from '../../../smoke/notifications/utils/helpers'; const SNAP_BINARIES_DIR = path.resolve(__dirname, 'snap-binaries-and-headers'); -const getDecodedProxiedURL = (url: string) => - decodeURIComponent(String(new URL(url).searchParams.get('url'))); - /** * Scans the binaries directory for files matching `@.txt` * and returns the latest version via semver sort. From 90806bb71eb782639b94d3e15cd6a142d499d719 Mon Sep 17 00:00:00 2001 From: Chris Wilcox Date: Fri, 15 May 2026 01:39:09 -0700 Subject: [PATCH 13/15] test(e2e): patch react-native-blob-util for snap tarball mocking MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Mocks for snap tarball downloads (added in this PR) never fired because ReactNativeBlobUtil.fetch() and config(...).fetch() invoke the native HTTP bridge directly, bypassing shim.js's fetch/XHR/expo-fetch patches. Tests have been silently hitting the live npm registry. Adds a JS-layer shim that wraps RNBlobUtil's fetch APIs so HTTP/HTTPS URLs are rewritten to MockServerE2E's /proxy?url= endpoint before the native call. Mirrors the existing shim.js pattern for fetch/XHR/WebSocket /expo-fetch. iOS and Android both work without OS-level proxy infra. - app/util/test/blobUtilShim.js: rewriteBlobUtilUrl + idempotent patchReactNativeBlobUtilForE2E that wraps fetch and config in place - app/util/test/blobUtilShim.test.js: 14 tests covering edge cases (https/http, file://, content://, RNBlobUtil-file://, already-proxied, non-strings, custom host, idempotency) plus an integration test that mirrors npm.ts's call pattern exactly - shim.js: wires the patch into the existing isMockServerAvailable block - tests/api-mocking/MockServerE2E.ts: extends handleDirectFetch to forward content-length / content-type / content-encoding / content-disposition / etag / last-modified upstream headers (npm.ts asserts content-length is present) Runtime evidence on Android emulator (recorded in MMQA-1805): - [SPIKE] blob-util GET -> status=200 len=17 logged from inside the app - /proxy?url=https://registry.npmjs.org/spike-test received by mock server Follow-up: the npm: regex bypass in MockServerE2E.ts (line 163) is left in place. The malformed https://https//npm:@metamask/... URIs from ethereum-provider and multichain-provider snaps now flow through the shim to /proxy, where the URL constructor parses host as "https" — not in any allowlist. Removing the bypass requires either a synthetic mock matcher for the malformed pattern or an upstream Snaps fix; tracked separately. Co-Authored-By: Claude Opus 4.7 (1M context) --- app/util/test/blobUtilShim.js | 70 +++++++++++ app/util/test/blobUtilShim.test.js | 185 +++++++++++++++++++++++++++++ shim.js | 24 ++++ tests/api-mocking/MockServerE2E.ts | 38 +++++- 4 files changed, 315 insertions(+), 2 deletions(-) create mode 100644 app/util/test/blobUtilShim.js create mode 100644 app/util/test/blobUtilShim.test.js diff --git a/app/util/test/blobUtilShim.js b/app/util/test/blobUtilShim.js new file mode 100644 index 00000000000..af0c5e149a4 --- /dev/null +++ b/app/util/test/blobUtilShim.js @@ -0,0 +1,70 @@ +// Routes react-native-blob-util's JS-side fetch through the MockServerE2E +// /proxy?url=… endpoint in E2E builds, so snap tarball downloads (npm.ts) +// and other native blob-util traffic become visible to the mock server +// without OS-level proxying or CA cert installation. + +const REWRITABLE_PROTOCOL_REGEX = /^https?:\/\//i; + +export function rewriteBlobUtilUrl( + url, + mockServerPort, + mockServerHost = 'localhost', +) { + if (typeof url !== 'string') { + return url; + } + if (!REWRITABLE_PROTOCOL_REGEX.test(url)) { + return url; + } + const mockServerOrigin = `http://${mockServerHost}:${mockServerPort}`; + if (url.startsWith(mockServerOrigin)) { + return url; + } + return `${mockServerOrigin}/proxy?url=${encodeURIComponent(url)}`; +} + +export function patchReactNativeBlobUtilForE2E( + blobUtilModule, + mockServerPort, + mockServerHost = 'localhost', +) { + if (!blobUtilModule || blobUtilModule.__e2eBlobUtilPatched) { + return; + } + + const originalFetch = blobUtilModule.fetch; + if (typeof originalFetch === 'function') { + blobUtilModule.fetch = function patchedFetch(method, url, ...rest) { + return originalFetch.call( + this, + method, + rewriteBlobUtilUrl(url, mockServerPort, mockServerHost), + ...rest, + ); + }; + } + + const originalConfig = blobUtilModule.config; + if (typeof originalConfig === 'function') { + blobUtilModule.config = function patchedConfig(options) { + const result = originalConfig.call(this, options); + if (result && typeof result.fetch === 'function') { + const innerFetch = result.fetch; + result.fetch = function patchedConfiguredFetch(method, url, ...rest) { + return innerFetch.call( + this, + method, + rewriteBlobUtilUrl(url, mockServerPort, mockServerHost), + ...rest, + ); + }; + } + return result; + }; + } + + Object.defineProperty(blobUtilModule, '__e2eBlobUtilPatched', { + value: true, + enumerable: false, + }); +} diff --git a/app/util/test/blobUtilShim.test.js b/app/util/test/blobUtilShim.test.js new file mode 100644 index 00000000000..2a3c8420599 --- /dev/null +++ b/app/util/test/blobUtilShim.test.js @@ -0,0 +1,185 @@ +import { + rewriteBlobUtilUrl, + patchReactNativeBlobUtilForE2E, +} from './blobUtilShim'; + +describe('rewriteBlobUtilUrl', () => { + it('routes https URLs through the proxy', () => { + expect(rewriteBlobUtilUrl('https://registry.npmjs.org/foo.tgz', 8000)).toBe( + 'http://localhost:8000/proxy?url=https%3A%2F%2Fregistry.npmjs.org%2Ffoo.tgz', + ); + }); + + it('routes http URLs through the proxy', () => { + expect(rewriteBlobUtilUrl('http://example.com/bar', 8000)).toBe( + 'http://localhost:8000/proxy?url=http%3A%2F%2Fexample.com%2Fbar', + ); + }); + + it('leaves file:// URIs unchanged', () => { + expect(rewriteBlobUtilUrl('file:///tmp/x', 8000)).toBe('file:///tmp/x'); + }); + + it('leaves content:// URIs unchanged', () => { + expect(rewriteBlobUtilUrl('content://media/external/x', 8000)).toBe( + 'content://media/external/x', + ); + }); + + it("leaves react-native-blob-util's prefixed file URIs unchanged", () => { + expect(rewriteBlobUtilUrl('ReactNativeBlobUtil-file:///tmp/x', 8000)).toBe( + 'ReactNativeBlobUtil-file:///tmp/x', + ); + }); + + it('does not double-proxy URLs already pointing at the mock server', () => { + const already = 'http://localhost:8000/proxy?url=https%3A%2F%2Ffoo.com'; + expect(rewriteBlobUtilUrl(already, 8000)).toBe(already); + }); + + it('passes through non-string inputs unchanged', () => { + expect(rewriteBlobUtilUrl(undefined, 8000)).toBe(undefined); + expect(rewriteBlobUtilUrl(null, 8000)).toBe(null); + expect(rewriteBlobUtilUrl(42, 8000)).toBe(42); + }); + + it('honors a custom host (e.g. Android emulator 10.0.2.2)', () => { + expect(rewriteBlobUtilUrl('https://foo.com/x', 8000, '10.0.2.2')).toBe( + 'http://10.0.2.2:8000/proxy?url=https%3A%2F%2Ffoo.com%2Fx', + ); + }); +}); + +describe('patchReactNativeBlobUtilForE2E', () => { + it('rewrites URLs passed to the top-level fetch()', async () => { + const nativeFetch = jest.fn().mockResolvedValue({ status: 200 }); + const moduleObj = { fetch: nativeFetch, config: jest.fn() }; + + patchReactNativeBlobUtilForE2E(moduleObj, 8000); + + await moduleObj.fetch('GET', 'https://registry.npmjs.org/foo.tgz', { + Accept: '*/*', + }); + + expect(nativeFetch).toHaveBeenCalledWith( + 'GET', + 'http://localhost:8000/proxy?url=https%3A%2F%2Fregistry.npmjs.org%2Ffoo.tgz', + { Accept: '*/*' }, + ); + }); + + it('rewrites URLs passed to config(...).fetch() — the npm.ts pattern', async () => { + const nativeFetch = jest.fn().mockResolvedValue({ status: 200 }); + const originalConfig = jest.fn(() => ({ fetch: nativeFetch })); + const moduleObj = { fetch: jest.fn(), config: originalConfig }; + + patchReactNativeBlobUtilForE2E(moduleObj, 8000); + + const { fetch: configuredFetch } = moduleObj.config({ + fileCache: true, + appendExt: 'tgz', + }); + await configuredFetch('GET', 'https://github.io/snap.tgz'); + + expect(originalConfig).toHaveBeenCalledWith({ + fileCache: true, + appendExt: 'tgz', + }); + expect(nativeFetch).toHaveBeenCalledWith( + 'GET', + 'http://localhost:8000/proxy?url=https%3A%2F%2Fgithub.io%2Fsnap.tgz', + ); + }); + + it('is idempotent — calling patch twice does not double-wrap', async () => { + const nativeFetch = jest.fn().mockResolvedValue({}); + const moduleObj = { + fetch: nativeFetch, + config: jest.fn(() => ({ fetch: nativeFetch })), + }; + + patchReactNativeBlobUtilForE2E(moduleObj, 8000); + patchReactNativeBlobUtilForE2E(moduleObj, 8000); + + await moduleObj.fetch('GET', 'https://x.com'); + expect(nativeFetch).toHaveBeenCalledTimes(1); + expect(nativeFetch).toHaveBeenCalledWith( + 'GET', + 'http://localhost:8000/proxy?url=https%3A%2F%2Fx.com', + ); + }); + + it('leaves file URIs untouched (file fetch path stays native)', async () => { + const nativeFetch = jest.fn().mockResolvedValue({}); + const moduleObj = { fetch: nativeFetch, config: jest.fn() }; + + patchReactNativeBlobUtilForE2E(moduleObj, 8000); + + await moduleObj.fetch('GET', 'ReactNativeBlobUtil-file:///tmp/x'); + expect(nativeFetch).toHaveBeenCalledWith( + 'GET', + 'ReactNativeBlobUtil-file:///tmp/x', + ); + }); + + it('honors a custom host when wiring the patch', async () => { + const nativeFetch = jest.fn().mockResolvedValue({}); + const moduleObj = { fetch: nativeFetch, config: jest.fn() }; + + patchReactNativeBlobUtilForE2E(moduleObj, 8000, '10.0.2.2'); + + await moduleObj.fetch('GET', 'https://foo.com/x'); + expect(nativeFetch).toHaveBeenCalledWith( + 'GET', + 'http://10.0.2.2:8000/proxy?url=https%3A%2F%2Ffoo.com%2Fx', + ); + }); + + it('proves the real npm.ts call path is covered (config + destructure + fetch)', async () => { + // Mirrors app/core/Snaps/location/npm.ts:38-53 exactly. + const calls = []; + const fakeBlobUtil = { + fetch: () => { + throw new Error('top-level fetch should not be hit in this path'); + }, + config(options) { + calls.push({ kind: 'config', options }); + return { + fetch: (method, url) => { + calls.push({ kind: 'configured-fetch', method, url }); + return Promise.resolve({ + respInfo: { + status: 200, + headers: { 'content-length': '12345' }, + }, + data: '/tmp/cached.tgz', + flush: () => { + /* no-op: mirrors FetchBlobResponse.flush in npm.ts */ + }, + }); + }, + }; + }, + }; + + patchReactNativeBlobUtilForE2E(fakeBlobUtil, 8000); + + const { fetch: blobFetch } = fakeBlobUtil.config({ + fileCache: true, + appendExt: 'tgz', + }); + const tarballUrl = new URL('https://github.io/snaps/some-snap-1.0.0.tgz'); + const response = await blobFetch('GET', tarballUrl.toString()); + + expect(calls).toEqual([ + { kind: 'config', options: { fileCache: true, appendExt: 'tgz' } }, + { + kind: 'configured-fetch', + method: 'GET', + url: 'http://localhost:8000/proxy?url=https%3A%2F%2Fgithub.io%2Fsnaps%2Fsome-snap-1.0.0.tgz', + }, + ]); + expect(response.respInfo.status).toBe(200); + expect(response.respInfo.headers['content-length']).toBe('12345'); + }); +}); diff --git a/shim.js b/shim.js index f946306f4d6..6b71686053b 100644 --- a/shim.js +++ b/shim.js @@ -450,6 +450,30 @@ if (enableApiCallLogs || isTest) { console.log(`[WS Patch] Routes: ${JSON.stringify(wsRoutes)}`); } + // Patch react-native-blob-util so snap tarball downloads (npm.ts) and + // any other consumer of its `fetch` / `config(...).fetch` API route + // through the mock proxy. These calls originate in JS but the HTTP + // request is performed by the native bridge (OkHttp on Android, + // NSURLSession on iOS), which bypasses fetch/XHR/expo-fetch patching. + try { + const RNBlobUtil = require('react-native-blob-util').default; + const { + patchReactNativeBlobUtilForE2E, + } = require('./app/util/test/blobUtilShim'); + const mockHost = MOCKTTP_URL.replace(/^https?:\/\//, '').split(':')[0]; + patchReactNativeBlobUtilForE2E(RNBlobUtil, mockServerPort, mockHost); + // eslint-disable-next-line no-console + console.log( + `[E2E SHIM] react-native-blob-util patched → ${MOCKTTP_URL}/proxy?url=...`, + ); + } catch (err) { + // eslint-disable-next-line no-console + console.warn( + '[E2E SHIM] Failed to patch react-native-blob-util:', + err?.message ?? err, + ); + } + // Patch expo/fetch so its native networking routes through the mock // proxy. Bridge-controller's SSE `getQuoteStream` (and any other expo // fetch consumer) MUST hit the mock or the swap/bridge E2E quote diff --git a/tests/api-mocking/MockServerE2E.ts b/tests/api-mocking/MockServerE2E.ts index 43edaeb59d6..732ed144c22 100644 --- a/tests/api-mocking/MockServerE2E.ts +++ b/tests/api-mocking/MockServerE2E.ts @@ -187,12 +187,41 @@ const isUrlAllowed = (url: string): boolean => { const isUrlSuppressedFromLogs = (url: string): boolean => SUPPRESSED_LOGS_URLS.some((pattern: RegExp) => pattern.test(url)); +// Response headers that callers may rely on (e.g. react-native-blob-util's +// tarball download asserts that `content-length` is present in respInfo). +// Other upstream headers are dropped to avoid leaking proxy-internal state. +const FORWARDED_RESPONSE_HEADERS = [ + 'content-length', + 'content-type', + 'content-encoding', + 'content-disposition', + 'etag', + 'last-modified', +]; + +const extractForwardedResponseHeaders = ( + response: Response, +): Record => { + const forwarded: Record = {}; + for (const name of FORWARDED_RESPONSE_HEADERS) { + const value = response.headers.get(name); + if (value !== null) { + forwarded[name] = value; + } + } + return forwarded; +}; + const handleDirectFetch = async ( url: string, method: string, headers: Headers, requestBody?: string, -): Promise<{ statusCode: number; body: string }> => { +): Promise<{ + statusCode: number; + body: string; + headers: Record; +}> => { try { const fetchHeaders: HeadersInit = {}; for (const [key, value] of Object.entries(headers)) { @@ -208,7 +237,11 @@ const handleDirectFetch = async ( }); const responseBody = await response.text(); - return { statusCode: response.status, body: responseBody }; + return { + statusCode: response.status, + body: responseBody, + headers: extractForwardedResponseHeaders(response), + }; } catch (error) { if (!isUrlSuppressedFromLogs(url)) { logger.error('Error forwarding request:', url, error); @@ -216,6 +249,7 @@ const handleDirectFetch = async ( return { statusCode: 500, body: JSON.stringify({ error: 'Failed to forward request' }), + headers: { 'content-type': 'application/json' }, }; } }; From 81512e9308e6c9083974aebeaa6434474d737577 Mon Sep 17 00:00:00 2001 From: Chris Wilcox Date: Fri, 15 May 2026 09:12:46 -0700 Subject: [PATCH 14/15] Revert "test(e2e): patch react-native-blob-util for snap tarball mocking" This reverts commit 90806bb71eb782639b94d3e15cd6a142d499d719. --- app/util/test/blobUtilShim.js | 70 ----------- app/util/test/blobUtilShim.test.js | 185 ----------------------------- shim.js | 24 ---- tests/api-mocking/MockServerE2E.ts | 38 +----- 4 files changed, 2 insertions(+), 315 deletions(-) delete mode 100644 app/util/test/blobUtilShim.js delete mode 100644 app/util/test/blobUtilShim.test.js diff --git a/app/util/test/blobUtilShim.js b/app/util/test/blobUtilShim.js deleted file mode 100644 index af0c5e149a4..00000000000 --- a/app/util/test/blobUtilShim.js +++ /dev/null @@ -1,70 +0,0 @@ -// Routes react-native-blob-util's JS-side fetch through the MockServerE2E -// /proxy?url=… endpoint in E2E builds, so snap tarball downloads (npm.ts) -// and other native blob-util traffic become visible to the mock server -// without OS-level proxying or CA cert installation. - -const REWRITABLE_PROTOCOL_REGEX = /^https?:\/\//i; - -export function rewriteBlobUtilUrl( - url, - mockServerPort, - mockServerHost = 'localhost', -) { - if (typeof url !== 'string') { - return url; - } - if (!REWRITABLE_PROTOCOL_REGEX.test(url)) { - return url; - } - const mockServerOrigin = `http://${mockServerHost}:${mockServerPort}`; - if (url.startsWith(mockServerOrigin)) { - return url; - } - return `${mockServerOrigin}/proxy?url=${encodeURIComponent(url)}`; -} - -export function patchReactNativeBlobUtilForE2E( - blobUtilModule, - mockServerPort, - mockServerHost = 'localhost', -) { - if (!blobUtilModule || blobUtilModule.__e2eBlobUtilPatched) { - return; - } - - const originalFetch = blobUtilModule.fetch; - if (typeof originalFetch === 'function') { - blobUtilModule.fetch = function patchedFetch(method, url, ...rest) { - return originalFetch.call( - this, - method, - rewriteBlobUtilUrl(url, mockServerPort, mockServerHost), - ...rest, - ); - }; - } - - const originalConfig = blobUtilModule.config; - if (typeof originalConfig === 'function') { - blobUtilModule.config = function patchedConfig(options) { - const result = originalConfig.call(this, options); - if (result && typeof result.fetch === 'function') { - const innerFetch = result.fetch; - result.fetch = function patchedConfiguredFetch(method, url, ...rest) { - return innerFetch.call( - this, - method, - rewriteBlobUtilUrl(url, mockServerPort, mockServerHost), - ...rest, - ); - }; - } - return result; - }; - } - - Object.defineProperty(blobUtilModule, '__e2eBlobUtilPatched', { - value: true, - enumerable: false, - }); -} diff --git a/app/util/test/blobUtilShim.test.js b/app/util/test/blobUtilShim.test.js deleted file mode 100644 index 2a3c8420599..00000000000 --- a/app/util/test/blobUtilShim.test.js +++ /dev/null @@ -1,185 +0,0 @@ -import { - rewriteBlobUtilUrl, - patchReactNativeBlobUtilForE2E, -} from './blobUtilShim'; - -describe('rewriteBlobUtilUrl', () => { - it('routes https URLs through the proxy', () => { - expect(rewriteBlobUtilUrl('https://registry.npmjs.org/foo.tgz', 8000)).toBe( - 'http://localhost:8000/proxy?url=https%3A%2F%2Fregistry.npmjs.org%2Ffoo.tgz', - ); - }); - - it('routes http URLs through the proxy', () => { - expect(rewriteBlobUtilUrl('http://example.com/bar', 8000)).toBe( - 'http://localhost:8000/proxy?url=http%3A%2F%2Fexample.com%2Fbar', - ); - }); - - it('leaves file:// URIs unchanged', () => { - expect(rewriteBlobUtilUrl('file:///tmp/x', 8000)).toBe('file:///tmp/x'); - }); - - it('leaves content:// URIs unchanged', () => { - expect(rewriteBlobUtilUrl('content://media/external/x', 8000)).toBe( - 'content://media/external/x', - ); - }); - - it("leaves react-native-blob-util's prefixed file URIs unchanged", () => { - expect(rewriteBlobUtilUrl('ReactNativeBlobUtil-file:///tmp/x', 8000)).toBe( - 'ReactNativeBlobUtil-file:///tmp/x', - ); - }); - - it('does not double-proxy URLs already pointing at the mock server', () => { - const already = 'http://localhost:8000/proxy?url=https%3A%2F%2Ffoo.com'; - expect(rewriteBlobUtilUrl(already, 8000)).toBe(already); - }); - - it('passes through non-string inputs unchanged', () => { - expect(rewriteBlobUtilUrl(undefined, 8000)).toBe(undefined); - expect(rewriteBlobUtilUrl(null, 8000)).toBe(null); - expect(rewriteBlobUtilUrl(42, 8000)).toBe(42); - }); - - it('honors a custom host (e.g. Android emulator 10.0.2.2)', () => { - expect(rewriteBlobUtilUrl('https://foo.com/x', 8000, '10.0.2.2')).toBe( - 'http://10.0.2.2:8000/proxy?url=https%3A%2F%2Ffoo.com%2Fx', - ); - }); -}); - -describe('patchReactNativeBlobUtilForE2E', () => { - it('rewrites URLs passed to the top-level fetch()', async () => { - const nativeFetch = jest.fn().mockResolvedValue({ status: 200 }); - const moduleObj = { fetch: nativeFetch, config: jest.fn() }; - - patchReactNativeBlobUtilForE2E(moduleObj, 8000); - - await moduleObj.fetch('GET', 'https://registry.npmjs.org/foo.tgz', { - Accept: '*/*', - }); - - expect(nativeFetch).toHaveBeenCalledWith( - 'GET', - 'http://localhost:8000/proxy?url=https%3A%2F%2Fregistry.npmjs.org%2Ffoo.tgz', - { Accept: '*/*' }, - ); - }); - - it('rewrites URLs passed to config(...).fetch() — the npm.ts pattern', async () => { - const nativeFetch = jest.fn().mockResolvedValue({ status: 200 }); - const originalConfig = jest.fn(() => ({ fetch: nativeFetch })); - const moduleObj = { fetch: jest.fn(), config: originalConfig }; - - patchReactNativeBlobUtilForE2E(moduleObj, 8000); - - const { fetch: configuredFetch } = moduleObj.config({ - fileCache: true, - appendExt: 'tgz', - }); - await configuredFetch('GET', 'https://github.io/snap.tgz'); - - expect(originalConfig).toHaveBeenCalledWith({ - fileCache: true, - appendExt: 'tgz', - }); - expect(nativeFetch).toHaveBeenCalledWith( - 'GET', - 'http://localhost:8000/proxy?url=https%3A%2F%2Fgithub.io%2Fsnap.tgz', - ); - }); - - it('is idempotent — calling patch twice does not double-wrap', async () => { - const nativeFetch = jest.fn().mockResolvedValue({}); - const moduleObj = { - fetch: nativeFetch, - config: jest.fn(() => ({ fetch: nativeFetch })), - }; - - patchReactNativeBlobUtilForE2E(moduleObj, 8000); - patchReactNativeBlobUtilForE2E(moduleObj, 8000); - - await moduleObj.fetch('GET', 'https://x.com'); - expect(nativeFetch).toHaveBeenCalledTimes(1); - expect(nativeFetch).toHaveBeenCalledWith( - 'GET', - 'http://localhost:8000/proxy?url=https%3A%2F%2Fx.com', - ); - }); - - it('leaves file URIs untouched (file fetch path stays native)', async () => { - const nativeFetch = jest.fn().mockResolvedValue({}); - const moduleObj = { fetch: nativeFetch, config: jest.fn() }; - - patchReactNativeBlobUtilForE2E(moduleObj, 8000); - - await moduleObj.fetch('GET', 'ReactNativeBlobUtil-file:///tmp/x'); - expect(nativeFetch).toHaveBeenCalledWith( - 'GET', - 'ReactNativeBlobUtil-file:///tmp/x', - ); - }); - - it('honors a custom host when wiring the patch', async () => { - const nativeFetch = jest.fn().mockResolvedValue({}); - const moduleObj = { fetch: nativeFetch, config: jest.fn() }; - - patchReactNativeBlobUtilForE2E(moduleObj, 8000, '10.0.2.2'); - - await moduleObj.fetch('GET', 'https://foo.com/x'); - expect(nativeFetch).toHaveBeenCalledWith( - 'GET', - 'http://10.0.2.2:8000/proxy?url=https%3A%2F%2Ffoo.com%2Fx', - ); - }); - - it('proves the real npm.ts call path is covered (config + destructure + fetch)', async () => { - // Mirrors app/core/Snaps/location/npm.ts:38-53 exactly. - const calls = []; - const fakeBlobUtil = { - fetch: () => { - throw new Error('top-level fetch should not be hit in this path'); - }, - config(options) { - calls.push({ kind: 'config', options }); - return { - fetch: (method, url) => { - calls.push({ kind: 'configured-fetch', method, url }); - return Promise.resolve({ - respInfo: { - status: 200, - headers: { 'content-length': '12345' }, - }, - data: '/tmp/cached.tgz', - flush: () => { - /* no-op: mirrors FetchBlobResponse.flush in npm.ts */ - }, - }); - }, - }; - }, - }; - - patchReactNativeBlobUtilForE2E(fakeBlobUtil, 8000); - - const { fetch: blobFetch } = fakeBlobUtil.config({ - fileCache: true, - appendExt: 'tgz', - }); - const tarballUrl = new URL('https://github.io/snaps/some-snap-1.0.0.tgz'); - const response = await blobFetch('GET', tarballUrl.toString()); - - expect(calls).toEqual([ - { kind: 'config', options: { fileCache: true, appendExt: 'tgz' } }, - { - kind: 'configured-fetch', - method: 'GET', - url: 'http://localhost:8000/proxy?url=https%3A%2F%2Fgithub.io%2Fsnaps%2Fsome-snap-1.0.0.tgz', - }, - ]); - expect(response.respInfo.status).toBe(200); - expect(response.respInfo.headers['content-length']).toBe('12345'); - }); -}); diff --git a/shim.js b/shim.js index 6b71686053b..f946306f4d6 100644 --- a/shim.js +++ b/shim.js @@ -450,30 +450,6 @@ if (enableApiCallLogs || isTest) { console.log(`[WS Patch] Routes: ${JSON.stringify(wsRoutes)}`); } - // Patch react-native-blob-util so snap tarball downloads (npm.ts) and - // any other consumer of its `fetch` / `config(...).fetch` API route - // through the mock proxy. These calls originate in JS but the HTTP - // request is performed by the native bridge (OkHttp on Android, - // NSURLSession on iOS), which bypasses fetch/XHR/expo-fetch patching. - try { - const RNBlobUtil = require('react-native-blob-util').default; - const { - patchReactNativeBlobUtilForE2E, - } = require('./app/util/test/blobUtilShim'); - const mockHost = MOCKTTP_URL.replace(/^https?:\/\//, '').split(':')[0]; - patchReactNativeBlobUtilForE2E(RNBlobUtil, mockServerPort, mockHost); - // eslint-disable-next-line no-console - console.log( - `[E2E SHIM] react-native-blob-util patched → ${MOCKTTP_URL}/proxy?url=...`, - ); - } catch (err) { - // eslint-disable-next-line no-console - console.warn( - '[E2E SHIM] Failed to patch react-native-blob-util:', - err?.message ?? err, - ); - } - // Patch expo/fetch so its native networking routes through the mock // proxy. Bridge-controller's SSE `getQuoteStream` (and any other expo // fetch consumer) MUST hit the mock or the swap/bridge E2E quote diff --git a/tests/api-mocking/MockServerE2E.ts b/tests/api-mocking/MockServerE2E.ts index 732ed144c22..43edaeb59d6 100644 --- a/tests/api-mocking/MockServerE2E.ts +++ b/tests/api-mocking/MockServerE2E.ts @@ -187,41 +187,12 @@ const isUrlAllowed = (url: string): boolean => { const isUrlSuppressedFromLogs = (url: string): boolean => SUPPRESSED_LOGS_URLS.some((pattern: RegExp) => pattern.test(url)); -// Response headers that callers may rely on (e.g. react-native-blob-util's -// tarball download asserts that `content-length` is present in respInfo). -// Other upstream headers are dropped to avoid leaking proxy-internal state. -const FORWARDED_RESPONSE_HEADERS = [ - 'content-length', - 'content-type', - 'content-encoding', - 'content-disposition', - 'etag', - 'last-modified', -]; - -const extractForwardedResponseHeaders = ( - response: Response, -): Record => { - const forwarded: Record = {}; - for (const name of FORWARDED_RESPONSE_HEADERS) { - const value = response.headers.get(name); - if (value !== null) { - forwarded[name] = value; - } - } - return forwarded; -}; - const handleDirectFetch = async ( url: string, method: string, headers: Headers, requestBody?: string, -): Promise<{ - statusCode: number; - body: string; - headers: Record; -}> => { +): Promise<{ statusCode: number; body: string }> => { try { const fetchHeaders: HeadersInit = {}; for (const [key, value] of Object.entries(headers)) { @@ -237,11 +208,7 @@ const handleDirectFetch = async ( }); const responseBody = await response.text(); - return { - statusCode: response.status, - body: responseBody, - headers: extractForwardedResponseHeaders(response), - }; + return { statusCode: response.status, body: responseBody }; } catch (error) { if (!isUrlSuppressedFromLogs(url)) { logger.error('Error forwarding request:', url, error); @@ -249,7 +216,6 @@ const handleDirectFetch = async ( return { statusCode: 500, body: JSON.stringify({ error: 'Failed to forward request' }), - headers: { 'content-type': 'application/json' }, }; } }; From d9a4ae6e2f6a2856cea4aa14f28bd84e572f086b Mon Sep 17 00:00:00 2001 From: Chris Wilcox Date: Fri, 15 May 2026 15:22:40 -0700 Subject: [PATCH 15/15] test(e2e): route snap tarball downloads through MockServerE2E proxy MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ReactNativeBlobUtil.fetch() bypasses shim.js's JS-layer fetch/XHR/expo-fetch patches because it dispatches directly to OkHttp/NSURLSession. As a result, the testSpecificMock rules registered for snap tarball downloads never fire, and tests silently hit the live npm registry. Rewrite the tarball URL at the source — inside NpmLocation.fetchNpmTarball — when running in E2E. The request body and headers contract with native ReactNativeBlobUtil stays untouched; only the target URL changes from `https://registry.npmjs.org/...` to `http://localhost:/proxy?url=`. Changes: - app/core/Snaps/location/npm.ts: rewrite tarballUrl when isE2E - app/util/test/utils.js: export FALLBACK_MOCK_SERVER_PORT + getMockServerPortInApp helper, mirroring fixtureServerPort/commandQueueServerPort pattern - shim.js: store launchArgs.mockServerPort in testConfig so app code can read it - app/core/Snaps/location/npm.test.ts: 2 new tests covering the rewrite both ways (E2E on / off) Co-Authored-By: Claude Opus 4.7 (1M context) --- app/core/Snaps/location/npm.test.ts | 70 ++++++++++++++++++++++++----- app/core/Snaps/location/npm.ts | 13 +++++- app/util/test/utils.js | 3 ++ shim.js | 4 ++ 4 files changed, 77 insertions(+), 13 deletions(-) diff --git a/app/core/Snaps/location/npm.test.ts b/app/core/Snaps/location/npm.test.ts index 0839e6db295..d27491b29d6 100644 --- a/app/core/Snaps/location/npm.test.ts +++ b/app/core/Snaps/location/npm.test.ts @@ -1,4 +1,15 @@ import { NativeModules } from 'react-native'; + +// Mock the isE2E flag via a mutable variable so individual tests can toggle it. +let mockIsE2E = false; +jest.mock('../../../util/test/utils', () => ({ + get isE2E() { + return mockIsE2E; + }, + getMockServerPortInApp: jest.fn(() => 8000), +})); + +// eslint-disable-next-line import-x/first import { NpmLocation } from './npm'; // Mock RNTar native module before anything else @@ -6,20 +17,22 @@ NativeModules.RNTar = { unTar: jest.fn().mockResolvedValue('/document-dir/archive'), }; +const mockBlobFetch = jest.fn((..._args: unknown[]) => + Promise.resolve({ + flush: jest.fn(), + data: '/document-dir/archive.tgz', + respInfo: { + status: 200, + headers: { + 'content-length': '2000', + }, + }, + }), +); + jest.mock('react-native-blob-util', () => ({ config: jest.fn(() => ({ - fetch: jest.fn(() => - Promise.resolve({ - flush: jest.fn(), - data: '/document-dir/archive.tgz', - respInfo: { - status: 200, - headers: { - 'content-length': '2000', - }, - }, - }), - ), + fetch: mockBlobFetch, })), fs: { unlink: jest.fn().mockResolvedValue(undefined), @@ -46,6 +59,11 @@ jest.mock('react-native-blob-util', () => ({ })); describe('NpmLocation', () => { + beforeEach(() => { + mockBlobFetch.mockClear(); + mockIsE2E = false; + }); + // This test is heavily mocked and not necesarily a good indicator that everything works E2E. it('fetches and unpacks tarballs', async () => { const location = new NpmLocation(new URL('npm:@metamask/example-snap')); @@ -61,4 +79,32 @@ describe('NpmLocation', () => { `module.exports.onRpcRequest = () => null`, ); }); + + describe('E2E URL rewriting', () => { + it('routes tarball downloads to MockServerE2E /proxy when isE2E is true', async () => { + mockIsE2E = true; + + const location = new NpmLocation(new URL('npm:@metamask/example-snap')); + await location.fetch('snap.manifest.json'); + + expect(mockBlobFetch).toHaveBeenCalledWith( + 'GET', + expect.stringMatching( + /^http:\/\/localhost:8000\/proxy\?url=https%3A%2F%2Fregistry\.npmjs\.org%2F/, + ), + ); + }); + + it('uses the original tarball URL when isE2E is false', async () => { + mockIsE2E = false; + + const location = new NpmLocation(new URL('npm:@metamask/example-snap')); + await location.fetch('snap.manifest.json'); + + expect(mockBlobFetch).toHaveBeenCalledWith( + 'GET', + expect.stringMatching(/^https:\/\/registry\.npmjs\.org\//), + ); + }); + }); }); diff --git a/app/core/Snaps/location/npm.ts b/app/core/Snaps/location/npm.ts index 6d2ec6f09ac..f4b48a7b1e7 100644 --- a/app/core/Snaps/location/npm.ts +++ b/app/core/Snaps/location/npm.ts @@ -10,6 +10,7 @@ import { getNpmCanonicalBasePath, TARBALL_SIZE_SAFETY_LIMIT, } from '@metamask/snaps-controllers'; +import { isE2E, getMockServerPortInApp } from '../../../util/test/utils'; const { RNTar } = NativeModules; @@ -50,7 +51,17 @@ export class NpmLocation extends BaseNpmLocation { let response: FetchBlobResponse | null = null; let untarPath: string | null = null; try { - response = await this.#blobFetch('GET', tarballUrl.toString()); + // In E2E tests, route the tarball download through MockServerE2E's /proxy + // endpoint so test-specific mocks can intercept it. ReactNativeBlobUtil's + // native fetch bypasses shim.js's JS-layer fetch/XHR patches, so the + // redirect must happen here at the source URL. + const fetchUrl = isE2E + ? `http://localhost:${getMockServerPortInApp()}/proxy?url=${encodeURIComponent( + tarballUrl.toString(), + )}` + : tarballUrl.toString(); + + response = await this.#blobFetch('GET', fetchUrl); const responseInfo = response.respInfo; diff --git a/app/util/test/utils.js b/app/util/test/utils.js index fc552f6b511..095e7bb4a22 100644 --- a/app/util/test/utils.js +++ b/app/util/test/utils.js @@ -5,6 +5,7 @@ export const flushPromises = () => new Promise(setImmediate); // iOS: These are overridden by LaunchArgs at runtime export const FALLBACK_FIXTURE_SERVER_PORT = 12345; export const FALLBACK_COMMAND_QUEUE_SERVER_PORT = 2446; +export const FALLBACK_MOCK_SERVER_PORT = 8000; // E2E test configuration required in app export const testConfig = {}; @@ -42,5 +43,7 @@ export const getFixturesServerPortInApp = () => testConfig.fixtureServerPort ?? FALLBACK_FIXTURE_SERVER_PORT; export const getCommandQueueServerPortInApp = () => testConfig.commandQueueServerPort ?? FALLBACK_COMMAND_QUEUE_SERVER_PORT; +export const getMockServerPortInApp = () => + testConfig.mockServerPort ?? FALLBACK_MOCK_SERVER_PORT; export const isRc = process.env.METAMASK_ENVIRONMENT === 'rc'; diff --git a/shim.js b/shim.js index f946306f4d6..4627256aa58 100644 --- a/shim.js +++ b/shim.js @@ -35,6 +35,7 @@ import { LaunchArguments } from 'react-native-launch-arguments'; import { FALLBACK_FIXTURE_SERVER_PORT, FALLBACK_COMMAND_QUEUE_SERVER_PORT, + FALLBACK_MOCK_SERVER_PORT, isE2E, isTest, enableApiCallLogs, @@ -114,6 +115,9 @@ if (isTest) { testConfig.commandQueueServerPort = raw?.commandQueueServerPort ? raw.commandQueueServerPort : FALLBACK_COMMAND_QUEUE_SERVER_PORT; + testConfig.mockServerPort = raw?.mockServerPort + ? raw.mockServerPort + : FALLBACK_MOCK_SERVER_PORT; } // Fix for https://github.com/facebook/react-native/issues/5667