@aztec/end-to-end 2.1.0-rc.9 → 3.0.0-devnet.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dest/bench/client_flows/benchmark.d.ts +3 -2
- package/dest/bench/client_flows/benchmark.d.ts.map +1 -1
- package/dest/bench/client_flows/client_flows_benchmark.d.ts +16 -12
- package/dest/bench/client_flows/client_flows_benchmark.d.ts.map +1 -1
- package/dest/bench/client_flows/client_flows_benchmark.js +54 -58
- package/dest/bench/utils.d.ts +2 -11
- package/dest/bench/utils.d.ts.map +1 -1
- package/dest/bench/utils.js +10 -34
- package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.d.ts +7 -7
- package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.d.ts.map +1 -1
- package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.js +42 -42
- package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.d.ts +10 -8
- package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.d.ts.map +1 -1
- package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.js +31 -33
- package/dest/e2e_deploy_contract/deploy_test.d.ts +10 -4
- package/dest/e2e_deploy_contract/deploy_test.d.ts.map +1 -1
- package/dest/e2e_deploy_contract/deploy_test.js +9 -18
- package/dest/e2e_epochs/epochs_test.d.ts +3 -1
- package/dest/e2e_epochs/epochs_test.d.ts.map +1 -1
- package/dest/e2e_epochs/epochs_test.js +10 -9
- package/dest/e2e_fees/bridging_race.notest.js +12 -9
- package/dest/e2e_fees/fees_test.d.ts +5 -5
- package/dest/e2e_fees/fees_test.d.ts.map +1 -1
- package/dest/e2e_fees/fees_test.js +23 -31
- package/dest/e2e_l1_publisher/write_json.d.ts +3 -1
- package/dest/e2e_l1_publisher/write_json.d.ts.map +1 -1
- package/dest/e2e_l1_publisher/write_json.js +5 -5
- package/dest/e2e_multi_validator/utils.d.ts +1 -1
- package/dest/e2e_multi_validator/utils.d.ts.map +1 -1
- package/dest/e2e_nested_contract/nested_contract_test.d.ts +6 -3
- package/dest/e2e_nested_contract/nested_contract_test.d.ts.map +1 -1
- package/dest/e2e_nested_contract/nested_contract_test.js +7 -9
- package/dest/e2e_p2p/inactivity_slash_test.d.ts +2 -2
- package/dest/e2e_p2p/inactivity_slash_test.d.ts.map +1 -1
- package/dest/e2e_p2p/inactivity_slash_test.js +5 -2
- package/dest/e2e_p2p/p2p_network.d.ts +16 -4
- package/dest/e2e_p2p/p2p_network.d.ts.map +1 -1
- package/dest/e2e_p2p/p2p_network.js +32 -10
- package/dest/e2e_p2p/shared.d.ts +11 -13
- package/dest/e2e_p2p/shared.d.ts.map +1 -1
- package/dest/e2e_p2p/shared.js +49 -45
- package/dest/e2e_token_contract/token_contract_test.d.ts +5 -4
- package/dest/e2e_token_contract/token_contract_test.d.ts.map +1 -1
- package/dest/e2e_token_contract/token_contract_test.js +14 -17
- package/dest/fixtures/e2e_prover_test.d.ts +8 -6
- package/dest/fixtures/e2e_prover_test.d.ts.map +1 -1
- package/dest/fixtures/e2e_prover_test.js +40 -50
- package/dest/fixtures/get_acvm_config.d.ts +1 -1
- package/dest/fixtures/get_acvm_config.d.ts.map +1 -1
- package/dest/fixtures/get_bb_config.d.ts +1 -1
- package/dest/fixtures/get_bb_config.d.ts.map +1 -1
- package/dest/fixtures/get_bb_config.js +2 -2
- package/dest/fixtures/setup_l1_contracts.d.ts +1 -1
- package/dest/fixtures/setup_l1_contracts.d.ts.map +1 -1
- package/dest/fixtures/setup_l1_contracts.js +2 -2
- package/dest/fixtures/setup_p2p_test.d.ts +0 -7
- package/dest/fixtures/setup_p2p_test.d.ts.map +1 -1
- package/dest/fixtures/snapshot_manager.d.ts +10 -7
- package/dest/fixtures/snapshot_manager.d.ts.map +1 -1
- package/dest/fixtures/snapshot_manager.js +44 -34
- package/dest/fixtures/token_utils.d.ts +6 -4
- package/dest/fixtures/token_utils.d.ts.map +1 -1
- package/dest/fixtures/token_utils.js +11 -15
- package/dest/fixtures/utils.d.ts +23 -27
- package/dest/fixtures/utils.d.ts.map +1 -1
- package/dest/fixtures/utils.js +76 -101
- package/dest/fixtures/web3signer.d.ts +1 -1
- package/dest/fixtures/web3signer.d.ts.map +1 -1
- package/dest/fixtures/web3signer.js +16 -5
- package/dest/quality_of_service/alert_checker.d.ts +1 -1
- package/dest/quality_of_service/alert_checker.d.ts.map +1 -1
- package/dest/shared/cross_chain_test_harness.d.ts +16 -10
- package/dest/shared/cross_chain_test_harness.d.ts.map +1 -1
- package/dest/shared/cross_chain_test_harness.js +13 -15
- package/dest/shared/gas_portal_test_harness.d.ts +9 -6
- package/dest/shared/gas_portal_test_harness.d.ts.map +1 -1
- package/dest/shared/gas_portal_test_harness.js +10 -7
- package/dest/shared/jest_setup.js +1 -1
- package/dest/shared/submit-transactions.d.ts +5 -3
- package/dest/shared/submit-transactions.d.ts.map +1 -1
- package/dest/shared/submit-transactions.js +8 -7
- package/dest/shared/uniswap_l1_l2.d.ts +9 -6
- package/dest/shared/uniswap_l1_l2.d.ts.map +1 -1
- package/dest/shared/uniswap_l1_l2.js +29 -45
- package/dest/simulators/lending_simulator.d.ts +2 -1
- package/dest/simulators/lending_simulator.d.ts.map +1 -1
- package/dest/simulators/lending_simulator.js +3 -2
- package/dest/simulators/token_simulator.d.ts +3 -1
- package/dest/simulators/token_simulator.d.ts.map +1 -1
- package/dest/simulators/token_simulator.js +2 -2
- package/dest/spartan/setup_test_wallets.d.ts +19 -13
- package/dest/spartan/setup_test_wallets.d.ts.map +1 -1
- package/dest/spartan/setup_test_wallets.js +108 -85
- package/dest/spartan/utils.d.ts +44 -0
- package/dest/spartan/utils.d.ts.map +1 -1
- package/dest/spartan/utils.js +212 -20
- package/package.json +38 -37
- package/src/bench/client_flows/benchmark.ts +6 -6
- package/src/bench/client_flows/client_flows_benchmark.ts +62 -82
- package/src/bench/client_flows/data_extractor.ts +1 -1
- package/src/bench/utils.ts +9 -37
- package/src/e2e_blacklist_token_contract/blacklist_token_contract_test.ts +46 -63
- package/src/e2e_cross_chain_messaging/cross_chain_messaging_test.ts +33 -47
- package/src/e2e_deploy_contract/deploy_test.ts +17 -35
- package/src/e2e_epochs/epochs_test.ts +12 -14
- package/src/e2e_fees/bridging_race.notest.ts +14 -9
- package/src/e2e_fees/fees_test.ts +26 -38
- package/src/e2e_l1_publisher/write_json.ts +8 -6
- package/src/e2e_multi_validator/utils.ts +1 -1
- package/src/e2e_nested_contract/nested_contract_test.ts +11 -10
- package/src/e2e_p2p/inactivity_slash_test.ts +7 -3
- package/src/e2e_p2p/p2p_network.ts +105 -67
- package/src/e2e_p2p/shared.ts +50 -55
- package/src/e2e_token_contract/token_contract_test.ts +17 -17
- package/src/fixtures/e2e_prover_test.ts +51 -88
- package/src/fixtures/get_acvm_config.ts +1 -1
- package/src/fixtures/get_bb_config.ts +3 -2
- package/src/fixtures/setup_l1_contracts.ts +3 -3
- package/src/fixtures/setup_p2p_test.ts +0 -8
- package/src/fixtures/snapshot_manager.ts +61 -61
- package/src/fixtures/token_utils.ts +13 -21
- package/src/fixtures/utils.ts +87 -138
- package/src/fixtures/web3signer.ts +22 -5
- package/src/guides/up_quick_start.sh +2 -10
- package/src/quality_of_service/alert_checker.ts +1 -1
- package/src/shared/cross_chain_test_harness.ts +18 -29
- package/src/shared/gas_portal_test_harness.ts +12 -19
- package/src/shared/jest_setup.ts +1 -1
- package/src/shared/submit-transactions.ts +12 -8
- package/src/shared/uniswap_l1_l2.ts +61 -67
- package/src/simulators/lending_simulator.ts +3 -2
- package/src/simulators/token_simulator.ts +5 -2
- package/src/spartan/DEVELOP.md +8 -3
- package/src/spartan/setup_test_wallets.ts +133 -126
- package/src/spartan/utils.ts +268 -18
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup_p2p_test.d.ts","sourceRoot":"","sources":["../../src/fixtures/setup_p2p_test.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,KAAK,eAAe,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"setup_p2p_test.d.ts","sourceRoot":"","sources":["../../src/fixtures/setup_p2p_test.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,KAAK,eAAe,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAI3E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAoB,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAG9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AASrD,eAAO,MAAM,iCAAiC,IAAI,CAAC;AAEnD,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,EAAE,CAO7F;AAED,wBAAsB,WAAW,CAC/B,MAAM,EAAE,eAAe,GAAG;IAAE,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAAE,EAC1D,YAAY,EAAE,YAAY,EAC1B,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,mBAAmB,CAAC,EAAE,kBAAkB,EAAE,EAC1C,aAAa,CAAC,EAAE,MAAM,EACtB,WAAW,CAAC,EAAE,MAAM,EACpB,WAAW,SAAI,GACd,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAoC7B;AAED,4EAA4E;AAC5E,wBAAsB,UAAU,CAC9B,MAAM,EAAE,eAAe,GAAG;IAAE,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAAE,EAC1D,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,GAAG,SAAS,EACjC,YAAY,EAAE,MAAM,EACpB,mBAAmB,CAAC,EAAE,kBAAkB,EAAE,EAC1C,aAAa,CAAC,EAAE,MAAM,EACtB,WAAW,CAAC,EAAE,MAAM,EACpB,eAAe,CAAC,EAAE,iBAAiB,CAAC,MAAM,CAAC,6BAY5C;AAED,+EAA+E;AAC/E,wBAAsB,sBAAsB,CAC1C,UAAU,EAAE,eAAe,EAC3B,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,GAAG,SAAS,EACjC,mBAAmB,CAAC,EAAE,kBAAkB,EAAE,EAC1C,aAAa,CAAC,EAAE,MAAM,EACtB,WAAW,CAAC,EAAE,MAAM,EACpB,eAAe,CAAC,EAAE,iBAAiB,CAAC,MAAM,CAAC,6BAc5C;AAED,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,GAAG,SAAS,EACjC,YAAY,EAAE,MAAM,EACpB,cAAc,EAAE,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC,EAC/E,mBAAmB,CAAC,EAAE,kBAAkB,EAAE,EAC1C,aAAa,CAAC,EAAE,MAAM,EACtB,WAAW,CAAC,EAAE,MAAM,EACpB,eAAe,CAAC,EAAE,iBAAiB,CAAC,MAAM,CAAC,oDAwB5C;AAED,wBAAsB,eAAe,CACnC,MAAM,EAAE,eAAe,EACvB,gBAAgB,CAAC,EAAE,MAAM,EACzB,IAAI,CAAC,EAAE,MAAM,EACb,aAAa,CAAC,EAAE,MAAM,4BAgBvB;AAED,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,eAAe,EACvB,gBAAgB,CAAC,EAAE,MAAM,EACzB,IAAI,CAAC,EAAE,MAAM,EACb,YAAY,GAAE,MAAU,EACxB,aAAa,CAAC,EAAE,MAAM,4BAYvB"}
|
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
import { type InitialAccountData } from '@aztec/accounts/testing';
|
|
2
2
|
import { type AztecNodeConfig, AztecNodeService } from '@aztec/aztec-node';
|
|
3
|
-
import {
|
|
3
|
+
import { AztecAddress } from '@aztec/aztec.js/addresses';
|
|
4
|
+
import type { Logger } from '@aztec/aztec.js/log';
|
|
5
|
+
import type { AztecNode } from '@aztec/aztec.js/node';
|
|
6
|
+
import type { Wallet } from '@aztec/aztec.js/wallet';
|
|
4
7
|
import { AnvilTestWatcher, CheatCodes } from '@aztec/aztec/testing';
|
|
5
8
|
import { type BlobSinkServer } from '@aztec/blob-sink/server';
|
|
6
9
|
import { type DeployL1ContractsArgs, type DeployL1ContractsReturnType } from '@aztec/ethereum';
|
|
7
10
|
import { TestDateProvider } from '@aztec/foundation/timer';
|
|
8
11
|
import type { ProverNode } from '@aztec/prover-node';
|
|
9
|
-
import { type PXEService } from '@aztec/pxe/server';
|
|
10
12
|
import type { SequencerClient } from '@aztec/sequencer-client';
|
|
13
|
+
import { TestWallet } from '@aztec/test-wallet/server';
|
|
11
14
|
import type { Anvil } from '@viem/anvil';
|
|
12
15
|
import { type SetupOptions } from './utils.js';
|
|
13
16
|
export type SubsystemsContext = {
|
|
@@ -16,7 +19,7 @@ export type SubsystemsContext = {
|
|
|
16
19
|
bbConfig: any;
|
|
17
20
|
aztecNode: AztecNodeService;
|
|
18
21
|
aztecNodeConfig: AztecNodeConfig;
|
|
19
|
-
|
|
22
|
+
wallet: TestWallet;
|
|
20
23
|
deployL1ContractsValues: DeployL1ContractsReturnType;
|
|
21
24
|
proverNode?: ProverNode;
|
|
22
25
|
watcher: AnvilTestWatcher;
|
|
@@ -73,8 +76,8 @@ declare class SnapshotManager implements ISnapshotManager {
|
|
|
73
76
|
* Snapshot 'apply' helper function to add accounts.
|
|
74
77
|
* The 'restore' function is not provided, as it must be a closure within the test context to capture the results.
|
|
75
78
|
*/
|
|
76
|
-
export declare const deployAccounts: (numberOfAccounts: number, logger: Logger
|
|
77
|
-
|
|
79
|
+
export declare const deployAccounts: (numberOfAccounts: number, logger: Logger) => ({ wallet, initialFundedAccounts }: {
|
|
80
|
+
wallet: TestWallet;
|
|
78
81
|
initialFundedAccounts: InitialAccountData[];
|
|
79
82
|
}) => Promise<{
|
|
80
83
|
deployedAccounts: InitialAccountData[];
|
|
@@ -85,8 +88,8 @@ export declare const deployAccounts: (numberOfAccounts: number, logger: Logger,
|
|
|
85
88
|
* @param sender - Wallet to send the deployment tx.
|
|
86
89
|
* @param accountsToDeploy - Which accounts to publicly deploy.
|
|
87
90
|
* @param waitUntilProven - Whether to wait for the tx to be proven.
|
|
88
|
-
* @param
|
|
91
|
+
* @param node - AztecNode used to wait for proven tx.
|
|
89
92
|
*/
|
|
90
|
-
export declare function publicDeployAccounts(
|
|
93
|
+
export declare function publicDeployAccounts(wallet: Wallet, accountsToDeploy: AztecAddress[], waitUntilProven?: boolean, node?: AztecNode): Promise<void>;
|
|
91
94
|
export {};
|
|
92
95
|
//# sourceMappingURL=snapshot_manager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot_manager.d.ts","sourceRoot":"","sources":["../../src/fixtures/snapshot_manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,kBAAkB,
|
|
1
|
+
{"version":3,"file":"snapshot_manager.d.ts","sourceRoot":"","sources":["../../src/fixtures/snapshot_manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { SchnorrAccountContractArtifact } from '@aztec/accounts/schnorr';
|
|
2
|
-
import {
|
|
2
|
+
import { generateSchnorrAccounts } from '@aztec/accounts/testing';
|
|
3
3
|
import { AztecNodeService, getConfigEnvVars } from '@aztec/aztec-node';
|
|
4
|
-
import {
|
|
4
|
+
import { AztecAddress, EthAddress } from '@aztec/aztec.js/addresses';
|
|
5
|
+
import { getContractClassFromArtifact } from '@aztec/aztec.js/contracts';
|
|
6
|
+
import { BatchCall, waitForProven } from '@aztec/aztec.js/contracts';
|
|
5
7
|
import { publishContractClass, publishInstance } from '@aztec/aztec.js/deployment';
|
|
6
8
|
import { AnvilTestWatcher, CheatCodes } from '@aztec/aztec/testing';
|
|
7
9
|
import { createBlobSinkServer } from '@aztec/blob-sink/server';
|
|
@@ -14,9 +16,10 @@ import { tryRmDir } from '@aztec/foundation/fs';
|
|
|
14
16
|
import { createLogger } from '@aztec/foundation/log';
|
|
15
17
|
import { resolver, reviver } from '@aztec/foundation/serialize';
|
|
16
18
|
import { TestDateProvider } from '@aztec/foundation/timer';
|
|
17
|
-
import {
|
|
19
|
+
import { getPXEConfig } from '@aztec/pxe/server';
|
|
18
20
|
import { tryStop } from '@aztec/stdlib/interfaces/server';
|
|
19
21
|
import { getConfigEnvVars as getTelemetryConfig, initTelemetryClient } from '@aztec/telemetry-client';
|
|
22
|
+
import { TestWallet } from '@aztec/test-wallet/server';
|
|
20
23
|
import { getGenesisValues } from '@aztec/world-state/testing';
|
|
21
24
|
import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'fs';
|
|
22
25
|
import { copySync, removeSync } from 'fs-extra/esm';
|
|
@@ -118,7 +121,7 @@ export function createSnapshotManager(testName, dataPath, config = {}, deployL1C
|
|
|
118
121
|
// Execute the restoration function.
|
|
119
122
|
await restore(snapshotData, context);
|
|
120
123
|
// Save the snapshot data.
|
|
121
|
-
const ethCheatCodes = new EthCheatCodesWithState(context.aztecNodeConfig.l1RpcUrls);
|
|
124
|
+
const ethCheatCodes = new EthCheatCodesWithState(context.aztecNodeConfig.l1RpcUrls, context.dateProvider);
|
|
122
125
|
const anvilStateFile = `${this.livePath}/anvil.dat`;
|
|
123
126
|
await ethCheatCodes.dumpChainState(anvilStateFile);
|
|
124
127
|
writeFileSync(`${this.livePath}/${name}.json`, JSON.stringify(snapshotData || {}, resolver));
|
|
@@ -261,7 +264,8 @@ export function createSnapshotManager(testName, dataPath, config = {}, deployL1C
|
|
|
261
264
|
aztecNodeConfig.l1RpcUrls = [
|
|
262
265
|
res.rpcUrl
|
|
263
266
|
];
|
|
264
|
-
const
|
|
267
|
+
const dateProvider = new TestDateProvider();
|
|
268
|
+
const ethCheatCodes = new EthCheatCodesWithState(aztecNodeConfig.l1RpcUrls, dateProvider);
|
|
265
269
|
// Deploy our L1 contracts.
|
|
266
270
|
logger.verbose('Deploying L1 contracts...');
|
|
267
271
|
if (opts.l1StartTime) {
|
|
@@ -283,8 +287,7 @@ export function createSnapshotManager(testName, dataPath, config = {}, deployL1C
|
|
|
283
287
|
});
|
|
284
288
|
aztecNodeConfig.l1Contracts = deployL1ContractsValues.l1ContractAddresses;
|
|
285
289
|
aztecNodeConfig.rollupVersion = deployL1ContractsValues.rollupVersion;
|
|
286
|
-
const
|
|
287
|
-
const watcher = new AnvilTestWatcher(new EthCheatCodesWithState(aztecNodeConfig.l1RpcUrls), deployL1ContractsValues.l1ContractAddresses.rollupAddress, deployL1ContractsValues.l1Client, dateProvider);
|
|
290
|
+
const watcher = new AnvilTestWatcher(new EthCheatCodesWithState(aztecNodeConfig.l1RpcUrls, dateProvider), deployL1ContractsValues.l1ContractAddresses.rollupAddress, deployL1ContractsValues.l1Client, dateProvider);
|
|
288
291
|
await watcher.start();
|
|
289
292
|
const acvmConfig = await getACVMConfig(logger);
|
|
290
293
|
if (acvmConfig) {
|
|
@@ -304,7 +307,7 @@ export function createSnapshotManager(testName, dataPath, config = {}, deployL1C
|
|
|
304
307
|
l1Contracts: aztecNodeConfig.l1Contracts,
|
|
305
308
|
port: blobSinkPort,
|
|
306
309
|
dataDirectory: aztecNodeConfig.dataDirectory,
|
|
307
|
-
|
|
310
|
+
dataStoreMapSizeKb: aztecNodeConfig.dataStoreMapSizeKb
|
|
308
311
|
}, telemetry);
|
|
309
312
|
await blobSink.start();
|
|
310
313
|
logger.info('Creating and synching an aztec node...');
|
|
@@ -324,12 +327,12 @@ export function createSnapshotManager(testName, dataPath, config = {}, deployL1C
|
|
|
324
327
|
}, aztecNode, prefilledPublicData);
|
|
325
328
|
}
|
|
326
329
|
logger.verbose('Creating pxe...');
|
|
327
|
-
const pxeConfig =
|
|
330
|
+
const pxeConfig = getPXEConfig();
|
|
328
331
|
pxeConfig.dataDirectory = statePath ?? path.join(directoryToCleanup, randomBytes(8).toString('hex'));
|
|
329
332
|
// Only enable proving if specifically requested.
|
|
330
333
|
pxeConfig.proverEnabled = !!opts.realProofs;
|
|
331
|
-
const
|
|
332
|
-
const cheatCodes = await CheatCodes.create(aztecNodeConfig.l1RpcUrls,
|
|
334
|
+
const wallet = await TestWallet.create(aztecNode, pxeConfig);
|
|
335
|
+
const cheatCodes = await CheatCodes.create(aztecNodeConfig.l1RpcUrls, aztecNode, dateProvider);
|
|
333
336
|
if (statePath) {
|
|
334
337
|
writeFileSync(`${statePath}/aztec_node_config.json`, JSON.stringify(aztecNodeConfig, resolver));
|
|
335
338
|
writeFileSync(`${statePath}/accounts.json`, JSON.stringify(initialFundedAccounts, resolver));
|
|
@@ -338,7 +341,7 @@ export function createSnapshotManager(testName, dataPath, config = {}, deployL1C
|
|
|
338
341
|
aztecNodeConfig,
|
|
339
342
|
anvil,
|
|
340
343
|
aztecNode,
|
|
341
|
-
|
|
344
|
+
wallet,
|
|
342
345
|
sequencer: aztecNode.getSequencer(),
|
|
343
346
|
acvmConfig,
|
|
344
347
|
bbConfig,
|
|
@@ -376,7 +379,8 @@ export function createSnapshotManager(testName, dataPath, config = {}, deployL1C
|
|
|
376
379
|
];
|
|
377
380
|
// Load anvil state.
|
|
378
381
|
const anvilStateFile = `${statePath}/anvil.dat`;
|
|
379
|
-
const
|
|
382
|
+
const dateProvider = new TestDateProvider();
|
|
383
|
+
const ethCheatCodes = new EthCheatCodesWithState(aztecNodeConfig.l1RpcUrls, dateProvider);
|
|
380
384
|
await ethCheatCodes.loadChainState(anvilStateFile);
|
|
381
385
|
// TODO: Encapsulate this in a NativeAcvm impl.
|
|
382
386
|
const acvmConfig = await getACVMConfig(logger);
|
|
@@ -391,8 +395,7 @@ export function createSnapshotManager(testName, dataPath, config = {}, deployL1C
|
|
|
391
395
|
}
|
|
392
396
|
logger.verbose('Creating ETH clients...');
|
|
393
397
|
const l1Client = createExtendedL1Client(aztecNodeConfig.l1RpcUrls, mnemonicToAccount(MNEMONIC));
|
|
394
|
-
const
|
|
395
|
-
const watcher = new AnvilTestWatcher(new EthCheatCodesWithState(aztecNodeConfig.l1RpcUrls), aztecNodeConfig.l1Contracts.rollupAddress, l1Client, dateProvider);
|
|
398
|
+
const watcher = new AnvilTestWatcher(ethCheatCodes, aztecNodeConfig.l1Contracts.rollupAddress, l1Client, dateProvider);
|
|
396
399
|
await watcher.start();
|
|
397
400
|
const telemetry = initTelemetryClient(getTelemetryConfig());
|
|
398
401
|
const blobSink = await createBlobSinkServer({
|
|
@@ -401,7 +404,7 @@ export function createSnapshotManager(testName, dataPath, config = {}, deployL1C
|
|
|
401
404
|
l1Contracts: aztecNodeConfig.l1Contracts,
|
|
402
405
|
port: blobSinkPort,
|
|
403
406
|
dataDirectory: statePath,
|
|
404
|
-
|
|
407
|
+
dataStoreMapSizeKb: aztecNodeConfig.dataStoreMapSizeKb
|
|
405
408
|
}, telemetry);
|
|
406
409
|
await blobSink.start();
|
|
407
410
|
logger.verbose('Creating aztec node...');
|
|
@@ -423,15 +426,15 @@ export function createSnapshotManager(testName, dataPath, config = {}, deployL1C
|
|
|
423
426
|
}, aztecNode, prefilledPublicData);
|
|
424
427
|
}
|
|
425
428
|
logger.verbose('Creating pxe...');
|
|
426
|
-
const pxeConfig =
|
|
429
|
+
const pxeConfig = getPXEConfig();
|
|
427
430
|
pxeConfig.dataDirectory = statePath;
|
|
428
|
-
const
|
|
429
|
-
const cheatCodes = await CheatCodes.create(aztecNodeConfig.l1RpcUrls,
|
|
431
|
+
const wallet = await TestWallet.create(aztecNode, pxeConfig);
|
|
432
|
+
const cheatCodes = await CheatCodes.create(aztecNodeConfig.l1RpcUrls, aztecNode, dateProvider);
|
|
430
433
|
return {
|
|
431
434
|
aztecNodeConfig,
|
|
432
435
|
anvil,
|
|
433
436
|
aztecNode,
|
|
434
|
-
|
|
437
|
+
wallet,
|
|
435
438
|
sequencer: aztecNode.getSequencer(),
|
|
436
439
|
acvmConfig,
|
|
437
440
|
bbConfig,
|
|
@@ -452,13 +455,21 @@ export function createSnapshotManager(testName, dataPath, config = {}, deployL1C
|
|
|
452
455
|
/**
|
|
453
456
|
* Snapshot 'apply' helper function to add accounts.
|
|
454
457
|
* The 'restore' function is not provided, as it must be a closure within the test context to capture the results.
|
|
455
|
-
*/ export const deployAccounts = (numberOfAccounts, logger
|
|
458
|
+
*/ export const deployAccounts = (numberOfAccounts, logger)=>async ({ wallet, initialFundedAccounts })=>{
|
|
456
459
|
if (initialFundedAccounts.length < numberOfAccounts) {
|
|
457
460
|
throw new Error(`Cannot deploy more than ${initialFundedAccounts.length} initial accounts.`);
|
|
458
461
|
}
|
|
459
462
|
logger.verbose('Deploying accounts funded with fee juice...');
|
|
460
463
|
const deployedAccounts = initialFundedAccounts.slice(0, numberOfAccounts);
|
|
461
|
-
|
|
464
|
+
// Serial due to https://github.com/AztecProtocol/aztec-packages/issues/12045
|
|
465
|
+
for(let i = 0; i < deployedAccounts.length; i++){
|
|
466
|
+
const accountManager = await wallet.createSchnorrAccount(deployedAccounts[i].secret, deployedAccounts[i].salt, deployedAccounts[i].signingKey);
|
|
467
|
+
const deployMethod = await accountManager.getDeployMethod();
|
|
468
|
+
await deployMethod.send({
|
|
469
|
+
from: AztecAddress.ZERO,
|
|
470
|
+
skipClassPublication: i !== 0
|
|
471
|
+
}).wait();
|
|
472
|
+
}
|
|
462
473
|
return {
|
|
463
474
|
deployedAccounts
|
|
464
475
|
};
|
|
@@ -469,27 +480,26 @@ export function createSnapshotManager(testName, dataPath, config = {}, deployL1C
|
|
|
469
480
|
* @param sender - Wallet to send the deployment tx.
|
|
470
481
|
* @param accountsToDeploy - Which accounts to publicly deploy.
|
|
471
482
|
* @param waitUntilProven - Whether to wait for the tx to be proven.
|
|
472
|
-
* @param
|
|
473
|
-
*/ export async function publicDeployAccounts(
|
|
474
|
-
const
|
|
475
|
-
const instances = (await Promise.all(accountAddressesToDeploy.map((account)=>sender.getContractMetadata(account)))).map((metadata)=>metadata.contractInstance);
|
|
483
|
+
* @param node - AztecNode used to wait for proven tx.
|
|
484
|
+
*/ export async function publicDeployAccounts(wallet, accountsToDeploy, waitUntilProven = false, node) {
|
|
485
|
+
const instances = (await Promise.all(accountsToDeploy.map((account)=>wallet.getContractMetadata(account)))).map((metadata)=>metadata.contractInstance);
|
|
476
486
|
const contractClass = await getContractClassFromArtifact(SchnorrAccountContractArtifact);
|
|
477
|
-
const alreadyRegistered = (await
|
|
487
|
+
const alreadyRegistered = (await wallet.getContractClassMetadata(contractClass.id)).isContractClassPubliclyRegistered;
|
|
478
488
|
const calls = await Promise.all([
|
|
479
489
|
...!alreadyRegistered ? [
|
|
480
|
-
publishContractClass(
|
|
490
|
+
publishContractClass(wallet, SchnorrAccountContractArtifact)
|
|
481
491
|
] : [],
|
|
482
|
-
...instances.map((instance)=>publishInstance(
|
|
492
|
+
...instances.map((instance)=>publishInstance(wallet, instance))
|
|
483
493
|
]);
|
|
484
|
-
const batch = new BatchCall(
|
|
494
|
+
const batch = new BatchCall(wallet, calls);
|
|
485
495
|
const txReceipt = await batch.send({
|
|
486
|
-
from:
|
|
496
|
+
from: accountsToDeploy[0]
|
|
487
497
|
}).wait();
|
|
488
498
|
if (waitUntilProven) {
|
|
489
|
-
if (!
|
|
490
|
-
throw new Error('Need to provide
|
|
499
|
+
if (!node) {
|
|
500
|
+
throw new Error('Need to provide an AztecNode to wait for proven.');
|
|
491
501
|
} else {
|
|
492
|
-
await waitForProven(
|
|
502
|
+
await waitForProven(node, txReceipt);
|
|
493
503
|
}
|
|
494
504
|
}
|
|
495
505
|
}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { AztecAddress } from '@aztec/aztec.js/addresses';
|
|
2
|
+
import type { Logger } from '@aztec/aztec.js/log';
|
|
3
|
+
import type { Wallet } from '@aztec/aztec.js/wallet';
|
|
2
4
|
import { TokenContract } from '@aztec/noir-contracts.js/Token';
|
|
3
|
-
export declare function deployToken(
|
|
4
|
-
export declare function mintTokensToPrivate(token: TokenContract, minter: AztecAddress,
|
|
5
|
+
export declare function deployToken(wallet: Wallet, admin: AztecAddress, initialAdminBalance: bigint, logger: Logger): Promise<TokenContract>;
|
|
6
|
+
export declare function mintTokensToPrivate(token: TokenContract, minter: AztecAddress, recipient: AztecAddress, amount: bigint): Promise<void>;
|
|
5
7
|
export declare function expectTokenBalance(wallet: Wallet, token: TokenContract, owner: AztecAddress, expectedBalance: bigint, logger: Logger): Promise<void>;
|
|
6
|
-
export declare function mintNotes(
|
|
8
|
+
export declare function mintNotes(wallet: Wallet, minter: AztecAddress, recipient: AztecAddress, asset: TokenContract, noteAmounts: bigint[]): Promise<bigint>;
|
|
7
9
|
//# sourceMappingURL=token_utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token_utils.d.ts","sourceRoot":"","sources":["../../src/fixtures/token_utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"token_utils.d.ts","sourceRoot":"","sources":["../../src/fixtures/token_utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAE/D,wBAAsB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,0BAajH;AAED,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,aAAa,EACpB,MAAM,EAAE,YAAY,EACpB,SAAS,EAAE,YAAY,EACvB,MAAM,EAAE,MAAM,iBAGf;AAED,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,YAAY,EACnB,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,MAAM,iBAOf;AAED,wBAAsB,SAAS,CAC7B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,EACpB,SAAS,EAAE,YAAY,EACvB,KAAK,EAAE,aAAa,EACpB,WAAW,EAAE,MAAM,EAAE,GACpB,OAAO,CAAC,MAAM,CAAC,CAWjB"}
|
|
@@ -1,25 +1,21 @@
|
|
|
1
|
-
import { BatchCall } from '@aztec/aztec.js';
|
|
1
|
+
import { BatchCall } from '@aztec/aztec.js/contracts';
|
|
2
2
|
import { TokenContract } from '@aztec/noir-contracts.js/Token';
|
|
3
|
-
|
|
4
|
-
export async function deployToken(adminWallet, deployerAddress, initialAdminBalance, logger) {
|
|
3
|
+
export async function deployToken(wallet, admin, initialAdminBalance, logger) {
|
|
5
4
|
logger.info(`Deploying Token contract...`);
|
|
6
|
-
const contract = await TokenContract.deploy(
|
|
7
|
-
from:
|
|
5
|
+
const contract = await TokenContract.deploy(wallet, admin, 'TokenName', 'TokenSymbol', 18).send({
|
|
6
|
+
from: admin
|
|
8
7
|
}).deployed();
|
|
9
8
|
if (initialAdminBalance > 0n) {
|
|
10
|
-
|
|
11
|
-
await mintTokensToPrivate(contract, deployerAddress, adminWallet, deployerAddress, initialAdminBalance);
|
|
9
|
+
await mintTokensToPrivate(contract, admin, admin, initialAdminBalance);
|
|
12
10
|
}
|
|
13
11
|
logger.info('L2 contract deployed');
|
|
14
12
|
return contract;
|
|
15
13
|
}
|
|
16
|
-
export async function mintTokensToPrivate(token, minter,
|
|
17
|
-
|
|
18
|
-
await tokenAsMinter.methods.mint_to_private(recipient, amount).send({
|
|
14
|
+
export async function mintTokensToPrivate(token, minter, recipient, amount) {
|
|
15
|
+
await token.methods.mint_to_private(recipient, amount).send({
|
|
19
16
|
from: minter
|
|
20
17
|
}).wait();
|
|
21
18
|
}
|
|
22
|
-
// docs:end:token_utils
|
|
23
19
|
export async function expectTokenBalance(wallet, token, owner, expectedBalance, logger) {
|
|
24
20
|
// Then check the balance
|
|
25
21
|
const contractWithWallet = await TokenContract.at(token.address, wallet);
|
|
@@ -29,14 +25,14 @@ export async function expectTokenBalance(wallet, token, owner, expectedBalance,
|
|
|
29
25
|
logger.info(`Account ${owner} balance: ${balance}`);
|
|
30
26
|
expect(balance).toBe(expectedBalance);
|
|
31
27
|
}
|
|
32
|
-
export async function mintNotes(
|
|
33
|
-
// We can only mint
|
|
28
|
+
export async function mintNotes(wallet, minter, recipient, asset, noteAmounts) {
|
|
29
|
+
// We can only mint 5 notes at a time, since that's the maximum number of calls our entrypoints allow
|
|
34
30
|
// TODO(#13024): mint as many notes as possible in a single tx
|
|
35
|
-
const notesPerIteration =
|
|
31
|
+
const notesPerIteration = 5;
|
|
36
32
|
for(let mintedNotes = 0; mintedNotes < noteAmounts.length; mintedNotes += notesPerIteration){
|
|
37
33
|
const toMint = noteAmounts.slice(mintedNotes, mintedNotes + notesPerIteration);
|
|
38
34
|
const actions = toMint.map((amt)=>asset.methods.mint_to_private(recipient, amt));
|
|
39
|
-
await new BatchCall(
|
|
35
|
+
await new BatchCall(wallet, actions).send({
|
|
40
36
|
from: minter
|
|
41
37
|
}).wait();
|
|
42
38
|
}
|
package/dest/fixtures/utils.d.ts
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import { type InitialAccountData } from '@aztec/accounts/testing';
|
|
2
2
|
import { type AztecNodeConfig } from '@aztec/aztec-node';
|
|
3
|
-
import {
|
|
3
|
+
import { AztecAddress } from '@aztec/aztec.js/addresses';
|
|
4
|
+
import { type ContractMethod } from '@aztec/aztec.js/contracts';
|
|
5
|
+
import { type Logger } from '@aztec/aztec.js/log';
|
|
6
|
+
import { type AztecNode } from '@aztec/aztec.js/node';
|
|
7
|
+
import type { Wallet } from '@aztec/aztec.js/wallet';
|
|
4
8
|
import { AnvilTestWatcher, CheatCodes } from '@aztec/aztec/testing';
|
|
5
9
|
import { type BlobSinkServer } from '@aztec/blob-sink/server';
|
|
6
10
|
import { type DeployL1ContractsArgs, type DeployL1ContractsReturnType, type Operator } from '@aztec/ethereum';
|
|
@@ -11,30 +15,31 @@ import { TestDateProvider } from '@aztec/foundation/timer';
|
|
|
11
15
|
import type { DataStoreConfig } from '@aztec/kv-store/config';
|
|
12
16
|
import { MockGossipSubNetwork } from '@aztec/p2p/test-helpers';
|
|
13
17
|
import { type ProverNode, type ProverNodeConfig, type ProverNodeDeps } from '@aztec/prover-node';
|
|
14
|
-
import { type
|
|
18
|
+
import { type PXEConfig } from '@aztec/pxe/server';
|
|
15
19
|
import type { SequencerClient } from '@aztec/sequencer-client';
|
|
16
20
|
import { type ContractInstanceWithAddress } from '@aztec/stdlib/contract';
|
|
17
21
|
import type { AztecNodeAdmin } from '@aztec/stdlib/interfaces/client';
|
|
18
22
|
import type { PublicDataTreeLeaf } from '@aztec/stdlib/trees';
|
|
19
23
|
import { type TelemetryClient, type TelemetryClientConfig } from '@aztec/telemetry-client';
|
|
24
|
+
import { TestWallet } from '@aztec/test-wallet/server';
|
|
20
25
|
import { type Chain, type HDAccount, type PrivateKeyAccount } from 'viem';
|
|
21
26
|
export { deployAndInitializeTokenAndBridgeContracts } from '../shared/cross_chain_test_harness.js';
|
|
22
27
|
export { startAnvil };
|
|
23
28
|
export declare const getPrivateKeyFromIndex: (index: number) => Buffer | null;
|
|
24
29
|
export declare const setupL1Contracts: (l1RpcUrls: string[], account: HDAccount | PrivateKeyAccount, logger: Logger, args?: Partial<DeployL1ContractsArgs>, chain?: Chain) => Promise<DeployL1ContractsReturnType>;
|
|
25
30
|
/**
|
|
26
|
-
* Sets up Private eXecution Environment (PXE).
|
|
31
|
+
* Sets up Private eXecution Environment (PXE) and returns the corresponding test wallet.
|
|
27
32
|
* @param aztecNode - An instance of Aztec Node.
|
|
28
|
-
* @param opts - Partial configuration for the PXE
|
|
33
|
+
* @param opts - Partial configuration for the PXE.
|
|
29
34
|
* @param logger - The logger to be used.
|
|
30
35
|
* @param useLogSuffix - Whether to add a randomly generated suffix to the PXE debug logs.
|
|
31
|
-
* @returns
|
|
36
|
+
* @returns A test wallet, logger and teardown function.
|
|
32
37
|
*/
|
|
33
|
-
export declare function
|
|
38
|
+
export declare function setupPXEAndGetWallet(aztecNode: AztecNode, opts?: Partial<PXEConfig>, logger?: Logger, useLogSuffix?: boolean): Promise<{
|
|
34
39
|
/**
|
|
35
|
-
* The
|
|
40
|
+
* The wallet instance.
|
|
36
41
|
*/
|
|
37
|
-
|
|
42
|
+
wallet: TestWallet;
|
|
38
43
|
/**
|
|
39
44
|
* Logger instance named as the current test.
|
|
40
45
|
*/
|
|
@@ -105,18 +110,15 @@ export type EndToEndContext = {
|
|
|
105
110
|
proverNode: ProverNode | undefined;
|
|
106
111
|
/** A client to the sequencer service (undefined if connected to remote environment) */
|
|
107
112
|
sequencer: SequencerClient | undefined;
|
|
108
|
-
/** The Private eXecution Environment (PXE). */
|
|
109
|
-
pxe: PXE;
|
|
110
113
|
/** Return values from deployL1Contracts function. */
|
|
111
114
|
deployL1ContractsValues: DeployL1ContractsReturnType;
|
|
112
115
|
/** The Aztec Node configuration. */
|
|
113
116
|
config: AztecNodeConfig;
|
|
114
117
|
/** The data for the initial funded accounts. */
|
|
115
118
|
initialFundedAccounts: InitialAccountData[];
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
/** The accounts to be used. */
|
|
119
|
+
/** The wallet to be used. */
|
|
120
|
+
wallet: TestWallet;
|
|
121
|
+
/** The wallets to be used. */
|
|
120
122
|
accounts: AztecAddress[];
|
|
121
123
|
/** Logger instance named as the current test. */
|
|
122
124
|
logger: Logger;
|
|
@@ -145,20 +147,14 @@ export type EndToEndContext = {
|
|
|
145
147
|
* @param opts - Options to pass to the node initialization and to the setup script.
|
|
146
148
|
* @param pxeOpts - Options to pass to the PXE initialization.
|
|
147
149
|
*/
|
|
148
|
-
export declare function setup(numberOfAccounts?: number, opts?: SetupOptions, pxeOpts?: Partial<
|
|
150
|
+
export declare function setup(numberOfAccounts?: number, opts?: SetupOptions, pxeOpts?: Partial<PXEConfig>, chain?: Chain): Promise<EndToEndContext>;
|
|
149
151
|
/**
|
|
150
152
|
* Registers the contract class used for test accounts and publicly deploys the instances requested.
|
|
151
153
|
* Use this when you need to make a public call to an account contract, such as for requesting a public authwit.
|
|
152
154
|
* @param sender - Wallet to send the deployment tx.
|
|
153
155
|
* @param accountsToDeploy - Which accounts to publicly deploy.
|
|
154
156
|
*/
|
|
155
|
-
export declare function ensureAccountContractsPublished(
|
|
156
|
-
/**
|
|
157
|
-
* Sets the timestamp of the next block.
|
|
158
|
-
* @param rpcUrl - rpc url of the blockchain instance to connect to
|
|
159
|
-
* @param timestamp - the timestamp for the next block
|
|
160
|
-
*/
|
|
161
|
-
export declare function setNextBlockTimestamp(rpcUrl: string, timestamp: number): Promise<void>;
|
|
157
|
+
export declare function ensureAccountContractsPublished(wallet: Wallet, accountsToDeploy: AztecAddress[]): Promise<void>;
|
|
162
158
|
/**
|
|
163
159
|
* Returns a logger instance for the current test.
|
|
164
160
|
* @returns a logger instance for the current test.
|
|
@@ -171,13 +167,13 @@ export declare function getBalancesFn(symbol: string, method: ContractMethod, fr
|
|
|
171
167
|
export declare function expectMapping<K, V>(fn: (...k: K[]) => Promise<V[]>, inputs: K[], expectedOutputs: V[]): Promise<void>;
|
|
172
168
|
export declare function expectMappingDelta<K, V extends number | bigint>(initialValues: V[], fn: (...k: K[]) => Promise<V[]>, inputs: K[], expectedDiffs: V[]): Promise<void>;
|
|
173
169
|
/**
|
|
174
|
-
* Computes the address of the "canonical"
|
|
170
|
+
* Computes the address of the "canonical" SponsoredFPCContract. This is not a protocol contract
|
|
175
171
|
* but by conventions its address is computed with a salt of 0.
|
|
176
172
|
* @returns The address of the sponsored FPC contract
|
|
177
173
|
*/
|
|
178
174
|
export declare function getSponsoredFPCInstance(): Promise<ContractInstanceWithAddress>;
|
|
179
175
|
/**
|
|
180
|
-
* Computes the address of the "canonical"
|
|
176
|
+
* Computes the address of the "canonical" SponsoredFPCContract. This is not a protocol contract
|
|
181
177
|
* but by conventions its address is computed with a salt of 0.
|
|
182
178
|
* @returns The address of the sponsored FPC contract
|
|
183
179
|
*/
|
|
@@ -185,12 +181,12 @@ export declare function getSponsoredFPCAddress(): Promise<AztecAddress>;
|
|
|
185
181
|
/**
|
|
186
182
|
* Deploy a sponsored FPC contract to a running instance.
|
|
187
183
|
*/
|
|
188
|
-
export declare function setupSponsoredFPC(
|
|
184
|
+
export declare function setupSponsoredFPC(wallet: Wallet): Promise<ContractInstanceWithAddress>;
|
|
189
185
|
/**
|
|
190
186
|
* Registers the SponsoredFPC in this PXE instance
|
|
191
|
-
* @param
|
|
187
|
+
* @param wallet - The wallet
|
|
192
188
|
*/
|
|
193
|
-
export declare function registerSponsoredFPC(
|
|
189
|
+
export declare function registerSponsoredFPC(wallet: Wallet): Promise<void>;
|
|
194
190
|
export declare function waitForProvenChain(node: AztecNode, targetBlock?: number, timeoutSec?: number, intervalSec?: number): Promise<void>;
|
|
195
191
|
export declare function createAndSyncProverNode(proverNodePrivateKey: `0x${string}`, aztecNodeConfig: AztecNodeConfig, proverNodeConfig: Partial<ProverNodeConfig> & Pick<DataStoreConfig, 'dataDirectory'> & {
|
|
196
192
|
dontStart?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/fixtures/utils.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/fixtures/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,kBAAkB,EAAuD,MAAM,yBAAyB,CAAC;AAEvH,OAAO,EAAE,KAAK,eAAe,EAAsC,MAAM,mBAAmB,CAAC;AAC7F,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3E,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,KAAK,SAAS,EAAsC,MAAM,sBAAsB,CAAC;AAC1F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEpE,OAAO,EAAE,KAAK,cAAc,EAAwB,MAAM,yBAAyB,CAAC;AAEpF,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,2BAA2B,EAGhC,KAAK,QAAQ,EAOd,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAEL,aAAa,EAGb,UAAU,EACX,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAGvD,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAK9C,OAAO,EAAgB,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAI9D,OAAO,EAAE,oBAAoB,EAAkC,MAAM,yBAAyB,CAAC;AAE/F,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,gBAAgB,EAAE,KAAK,cAAc,EAAoB,MAAM,oBAAoB,CAAC;AACnH,OAAO,EAAE,KAAK,SAAS,EAAgB,MAAM,mBAAmB,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D,OAAO,EACL,KAAK,2BAA2B,EAGjC,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAGtE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAG3B,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,UAAU,EAA+B,MAAM,2BAA2B,CAAC;AAQpF,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,SAAS,EAAY,KAAK,iBAAiB,EAAe,MAAM,MAAM,CAAC;AASjG,OAAO,EAAE,0CAA0C,EAAE,MAAM,uCAAuC,CAAC;AACnG,OAAO,EAAE,UAAU,EAAE,CAAC;AAmBtB,eAAO,MAAM,sBAAsB,GAAI,OAAO,MAAM,KAAG,MAAM,GAAG,IAI/D,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,WAAW,MAAM,EAAE,EACnB,SAAS,SAAS,GAAG,iBAAiB,EACtC,QAAQ,MAAM,EACd,OAAM,OAAO,CAAC,qBAAqB,CAAM,EACzC,QAAO,KAAe,yCAcvB,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAsB,oBAAoB,CACxC,SAAS,EAAE,SAAS,EACpB,IAAI,GAAE,OAAO,CAAC,SAAS,CAAM,EAC7B,MAAM,SAAc,EACpB,YAAY,UAAQ,GACnB,OAAO,CAAC;IACT;;OAEG;IACH,MAAM,EAAE,UAAU,CAAC;IACnB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/B,CAAC,CAsBD;AA4ED,sCAAsC;AACtC,MAAM,MAAM,YAAY,GAAG;IACzB,iBAAiB;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yFAAyF;IACzF,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,0CAA0C;IAC1C,uBAAuB,CAAC,EAAE,2BAA2B,CAAC;IACtD,4EAA4E;IAC5E,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,6CAA6C;IAC7C,sBAAsB,CAAC,EAAE,EAAE,CAAC;IAC5B,uDAAuD;IACvD,6BAA6B,CAAC,EAAE,MAAM,CAAC;IACvC,0CAA0C;IAC1C,qBAAqB,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAC7C,4CAA4C;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mCAAmC;IACnC,iBAAiB,CAAC,EAAE,CAAC,QAAQ,GAAG;QAAE,UAAU,EAAE,KAAK,MAAM,EAAE,CAAA;KAAE,CAAC,EAAE,CAAC;IACjE,uBAAuB;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qCAAqC;IACrC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,4CAA4C;IAC5C,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,6CAA6C;IAC7C,eAAe,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,GAAG;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAC3E,+DAA+D;IAC/D,iBAAiB,CAAC,EAAE,kBAAkB,EAAE,CAAC;IACzC,mDAAmD;IACnD,gBAAgB,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC7C,gEAAgE;IAChE,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,gFAAgF;IAChF,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,6GAA6G;IAC7G,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,qDAAqD;IACrD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6CAA6C;IAC7C,cAAc,CAAC,EAAE,WAAW,CAAC,KAAK,MAAM,EAAE,CAAC,CAAC;CAC7C,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;AAE7B,yEAAyE;AACzE,MAAM,MAAM,eAAe,GAAG;IAC5B,0DAA0D;IAC1D,SAAS,EAAE,SAAS,CAAC;IACrB,8FAA8F;IAC9F,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,oEAAoE;IACpE,UAAU,EAAE,UAAU,GAAG,SAAS,CAAC;IACnC,uFAAuF;IACvF,SAAS,EAAE,eAAe,GAAG,SAAS,CAAC;IACvC,qDAAqD;IACrD,uBAAuB,EAAE,2BAA2B,CAAC;IACrD,oCAAoC;IACpC,MAAM,EAAE,eAAe,CAAC;IACxB,gDAAgD;IAChD,qBAAqB,EAAE,kBAAkB,EAAE,CAAC;IAC5C,6BAA6B;IAC7B,MAAM,EAAE,UAAU,CAAC;IACnB,8BAA8B;IAC9B,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,iDAAiD;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,uBAAuB;IACvB,UAAU,EAAE,UAAU,CAAC;IACvB,6BAA6B;IAC7B,aAAa,EAAE,aAAa,CAAC;IAC7B,4EAA4E;IAC5E,OAAO,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACtC,uHAAuH;IACvH,YAAY,EAAE,gBAAgB,GAAG,SAAS,CAAC;IAC3C,mEAAmE;IACnE,QAAQ,EAAE,cAAc,GAAG,SAAS,CAAC;IACrC,uBAAuB;IACvB,eAAe,EAAE,eAAe,GAAG,SAAS,CAAC;IAC7C,kHAAkH;IAClH,oBAAoB,EAAE,oBAAoB,GAAG,SAAS,CAAC;IACvD,uDAAuD;IACvD,mBAAmB,EAAE,kBAAkB,EAAE,GAAG,SAAS,CAAC;IACtD,6CAA6C;IAC7C,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/B,CAAC;AAEF;;;;;GAKG;AACH,wBAAsB,KAAK,CACzB,gBAAgB,SAAI,EACpB,IAAI,GAAE,YAAiB,EACvB,OAAO,GAAE,OAAO,CAAC,SAAS,CAAM,EAChC,KAAK,GAAE,KAAe,GACrB,OAAO,CAAC,eAAe,CAAC,CAyW1B;AAED;;;;;GAKG;AAEH,wBAAsB,+BAA+B,CAAC,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,YAAY,EAAE,iBA2BrG;AAOD;;;GAGG;AACH,wBAAgB,SAAS,WAOxB;AAED,MAAM,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC;AAC1D,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,GAAG,GACV,CAAC,GAAG,SAAS,EAAE,CAAC,YAAY,GAAG;IAAE,OAAO,EAAE,YAAY,CAAA;CAAE,CAAC,EAAE,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC,CAUnF;AAED,wBAAsB,aAAa,CAAC,CAAC,EAAE,CAAC,EACtC,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,EAC/B,MAAM,EAAE,CAAC,EAAE,EACX,eAAe,EAAE,CAAC,EAAE,GACnB,OAAO,CAAC,IAAI,CAAC,CAMf;AAED,wBAAsB,kBAAkB,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,EACnE,aAAa,EAAE,CAAC,EAAE,EAClB,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,EAC/B,MAAM,EAAE,CAAC,EAAE,EACX,aAAa,EAAE,CAAC,EAAE,GACjB,OAAO,CAAC,IAAI,CAAC,CAOf;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,IAAI,OAAO,CAAC,2BAA2B,CAAC,CAM9E;AAED;;;;GAIG;AACH,wBAAsB,sBAAsB,0BAG3C;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,MAAM,wCAQrD;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAExE;AAED,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,UAAU,SAAK,EAAE,WAAW,SAAI,iBAS/G;AAED,wBAAgB,uBAAuB,CACrC,oBAAoB,EAAE,KAAK,MAAM,EAAE,EACnC,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC,eAAe,EAAE,eAAe,CAAC,GAAG;IAAE,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,EAC9G,SAAS,EAAE,SAAS,GAAG,SAAS,EAChC,mBAAmB,GAAE,kBAAkB,EAAO,EAC9C,cAAc,GAAE,cAAmB,uBAuDpC"}
|