summaryrefslogtreecommitdiffstats
path: root/packages/meshbay-hub/tests/test_challenge_signature_client.py
diff options
context:
space:
mode:
Diffstat (limited to 'packages/meshbay-hub/tests/test_challenge_signature_client.py')
-rw-r--r--packages/meshbay-hub/tests/test_challenge_signature_client.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/packages/meshbay-hub/tests/test_challenge_signature_client.py b/packages/meshbay-hub/tests/test_challenge_signature_client.py
index 90aa5f2..e3c33ac 100644
--- a/packages/meshbay-hub/tests/test_challenge_signature_client.py
+++ b/packages/meshbay-hub/tests/test_challenge_signature_client.py
@@ -20,6 +20,7 @@ import pytest
from cryptography.hazmat.primitives.asymmetric.ed25519 import Ed25519PrivateKey
from meshbay_common.crypto import pk_to_b64
from meshbay_common.handshake import challenge_transcript, webrtc_binding
+from spa_source import transport_argv
STATIC = Path(__file__).resolve().parents[1] / "src" / "meshbay_hub" / "static"
@@ -39,7 +40,9 @@ globalThis.document = {
};
const STATIC = process.argv[2];
new Function(fs.readFileSync(`${STATIC}/crypto.js`, 'utf8'))();
-const src = fs.readFileSync(`${STATIC}/transport.js`, 'utf8');
+// argv[4]: transport.js and the parts split out of it, joined as one scope.
+const src = process.argv[4].split(require('path').delimiter)
+ .map((p) => fs.readFileSync(p, 'utf8')).join('\n');
const { _challengeProvesNodeKey } =
new Function(src + '\nreturn { _challengeProvesNodeKey };')();
@@ -93,7 +96,7 @@ def test_the_browser_holds_the_node_to_its_challenge(tmp_path):
harness.write_text(_HARNESS)
payload = tmp_path / "cases.json"
payload.write_text(json.dumps([c for c, _ in cases.values()]))
- proc = subprocess.run(["node", str(harness), str(STATIC), str(payload)],
+ proc = subprocess.run(["node", str(harness), str(STATIC), str(payload), transport_argv()],
capture_output=True, text=True, timeout=60)
assert proc.returncode == 0, proc.stderr
got = dict(zip(cases, json.loads(proc.stdout)))