1#!/usr/bin/env python3
2"""Build and run the actual wasm notebook receipt regression."""
3from pathlib import Path
4import sys
5
6sys.path.insert(0, str(Path(__file__).resolve().parents[1]))
7from cargo_fresh import clean_local
8import release_web
9
10
11def main():
12 environment = release_web.environment()
13 target = Path(environment['CARGO_TARGET_DIR'])
14 output = target / 'receipt-probe'
15 clean_local(release_web.ROOT, '--target', 'wasm32-unknown-unknown', environment=environment)
16 release_web.run(['cargo', 'build', '--locked', '-p', 'notebook', '--example', 'browser_receipts',
17 '--target', 'wasm32-unknown-unknown'], env=environment)
18 release_web.run([release_web.tool('wasm-bindgen'), '--target', 'nodejs', '--no-typescript',
19 '--out-dir', output,
20 target / 'wasm32-unknown-unknown/debug/examples/browser_receipts.wasm'])
21 release_web.run(['node', Path(__file__).with_suffix('.mjs'), output / 'browser_receipts.js'])
22
23
24if __name__ == '__main__':
25 main()