@aztec/end-to-end 3.0.0-nightly.20250922 → 3.0.0-nightly.20250923
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/client_flows_benchmark.d.ts +0 -1
- package/dest/bench/client_flows/client_flows_benchmark.d.ts.map +1 -1
- package/dest/bench/client_flows/client_flows_benchmark.js +5 -8
- package/dest/bench/utils.d.ts +1 -10
- package/dest/bench/utils.d.ts.map +1 -1
- package/dest/bench/utils.js +0 -25
- package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.d.ts +1 -2
- 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 +1 -3
- package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.d.ts +1 -2
- 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 +6 -8
- package/dest/e2e_deploy_contract/deploy_test.d.ts +3 -3
- package/dest/e2e_deploy_contract/deploy_test.d.ts.map +1 -1
- package/dest/e2e_deploy_contract/deploy_test.js +2 -3
- package/dest/e2e_fees/fees_test.d.ts +1 -2
- package/dest/e2e_fees/fees_test.d.ts.map +1 -1
- package/dest/e2e_fees/fees_test.js +5 -8
- package/dest/e2e_nested_contract/nested_contract_test.d.ts +1 -2
- package/dest/e2e_nested_contract/nested_contract_test.d.ts.map +1 -1
- package/dest/e2e_nested_contract/nested_contract_test.js +1 -3
- package/dest/e2e_p2p/shared.d.ts +2 -1
- package/dest/e2e_p2p/shared.d.ts.map +1 -1
- package/dest/e2e_p2p/shared.js +5 -3
- package/dest/fixtures/e2e_prover_test.d.ts +0 -2
- package/dest/fixtures/e2e_prover_test.d.ts.map +1 -1
- package/dest/fixtures/e2e_prover_test.js +6 -9
- package/dest/fixtures/snapshot_manager.d.ts +0 -2
- package/dest/fixtures/snapshot_manager.d.ts.map +1 -1
- package/dest/fixtures/snapshot_manager.js +2 -4
- package/dest/fixtures/utils.d.ts +12 -14
- package/dest/fixtures/utils.d.ts.map +1 -1
- package/dest/fixtures/utils.js +17 -19
- package/dest/shared/cross_chain_test_harness.d.ts +2 -6
- package/dest/shared/cross_chain_test_harness.d.ts.map +1 -1
- package/dest/shared/cross_chain_test_harness.js +3 -5
- package/dest/shared/gas_portal_test_harness.d.ts +5 -6
- package/dest/shared/gas_portal_test_harness.d.ts.map +1 -1
- package/dest/shared/gas_portal_test_harness.js +5 -5
- package/dest/shared/uniswap_l1_l2.d.ts +1 -3
- package/dest/shared/uniswap_l1_l2.d.ts.map +1 -1
- package/dest/shared/uniswap_l1_l2.js +3 -4
- package/dest/spartan/setup_test_wallets.d.ts +5 -5
- package/dest/spartan/setup_test_wallets.d.ts.map +1 -1
- package/dest/spartan/setup_test_wallets.js +10 -12
- package/package.json +37 -37
- package/src/bench/client_flows/client_flows_benchmark.ts +4 -8
- package/src/bench/utils.ts +1 -28
- package/src/e2e_blacklist_token_contract/blacklist_token_contract_test.ts +1 -4
- package/src/e2e_cross_chain_messaging/cross_chain_messaging_test.ts +5 -9
- package/src/e2e_deploy_contract/deploy_test.ts +4 -5
- package/src/e2e_fees/fees_test.ts +6 -9
- package/src/e2e_nested_contract/nested_contract_test.ts +2 -4
- package/src/e2e_p2p/shared.ts +6 -2
- package/src/fixtures/e2e_prover_test.ts +7 -12
- package/src/fixtures/snapshot_manager.ts +3 -6
- package/src/fixtures/utils.ts +21 -30
- package/src/shared/cross_chain_test_harness.ts +0 -5
- package/src/shared/gas_portal_test_harness.ts +4 -6
- package/src/shared/uniswap_l1_l2.ts +1 -7
- package/src/spartan/setup_test_wallets.ts +10 -15
package/src/fixtures/utils.ts
CHANGED
|
@@ -8,7 +8,6 @@ import {
|
|
|
8
8
|
BatchCall,
|
|
9
9
|
type ContractMethod,
|
|
10
10
|
type Logger,
|
|
11
|
-
type PXE,
|
|
12
11
|
type Wallet,
|
|
13
12
|
createAztecNodeClient,
|
|
14
13
|
createLogger,
|
|
@@ -57,12 +56,7 @@ import type { P2PClientDeps } from '@aztec/p2p';
|
|
|
57
56
|
import { MockGossipSubNetwork, getMockPubSubP2PServiceFactory } from '@aztec/p2p/test-helpers';
|
|
58
57
|
import { protocolContractTreeRoot } from '@aztec/protocol-contracts';
|
|
59
58
|
import { type ProverNode, type ProverNodeConfig, type ProverNodeDeps, createProverNode } from '@aztec/prover-node';
|
|
60
|
-
import {
|
|
61
|
-
type PXEService,
|
|
62
|
-
type PXEServiceConfig,
|
|
63
|
-
createPXEServiceWithSimulator,
|
|
64
|
-
getPXEServiceConfig,
|
|
65
|
-
} from '@aztec/pxe/server';
|
|
59
|
+
import { type PXEServiceConfig, createPXEServiceWithSimulator, getPXEServiceConfig } from '@aztec/pxe/server';
|
|
66
60
|
import type { SequencerClient } from '@aztec/sequencer-client';
|
|
67
61
|
import type { TestSequencerClient } from '@aztec/sequencer-client/test';
|
|
68
62
|
import { MemoryCircuitRecorder, SimulatorRecorderWrapper, WASMSimulator } from '@aztec/simulator/client';
|
|
@@ -148,23 +142,23 @@ export const setupL1Contracts = async (
|
|
|
148
142
|
};
|
|
149
143
|
|
|
150
144
|
/**
|
|
151
|
-
* Sets up Private eXecution Environment (PXE).
|
|
145
|
+
* Sets up Private eXecution Environment (PXE) and returns the corresponding test wallet.
|
|
152
146
|
* @param aztecNode - An instance of Aztec Node.
|
|
153
147
|
* @param opts - Partial configuration for the PXE service.
|
|
154
148
|
* @param logger - The logger to be used.
|
|
155
149
|
* @param useLogSuffix - Whether to add a randomly generated suffix to the PXE debug logs.
|
|
156
|
-
* @returns
|
|
150
|
+
* @returns A test wallet, logger and teardown function.
|
|
157
151
|
*/
|
|
158
|
-
export async function
|
|
152
|
+
export async function setupPXEServiceAndGetWallet(
|
|
159
153
|
aztecNode: AztecNode,
|
|
160
154
|
opts: Partial<PXEServiceConfig> = {},
|
|
161
155
|
logger = getLogger(),
|
|
162
156
|
useLogSuffix = false,
|
|
163
157
|
): Promise<{
|
|
164
158
|
/**
|
|
165
|
-
* The
|
|
159
|
+
* The wallet instance.
|
|
166
160
|
*/
|
|
167
|
-
|
|
161
|
+
wallet: TestWallet;
|
|
168
162
|
/**
|
|
169
163
|
* Logger instance named as the current test.
|
|
170
164
|
*/
|
|
@@ -195,8 +189,10 @@ export async function setupPXEService(
|
|
|
195
189
|
|
|
196
190
|
const teardown = configuredDataDirectory ? () => Promise.resolve() : () => tryRmDir(pxeServiceConfig.dataDirectory!);
|
|
197
191
|
|
|
192
|
+
const wallet = new TestWallet(pxe, aztecNode);
|
|
193
|
+
|
|
198
194
|
return {
|
|
199
|
-
|
|
195
|
+
wallet,
|
|
200
196
|
logger,
|
|
201
197
|
teardown,
|
|
202
198
|
};
|
|
@@ -236,12 +232,12 @@ async function setupWithRemoteEnvironment(
|
|
|
236
232
|
rollupVersion,
|
|
237
233
|
};
|
|
238
234
|
const ethCheatCodes = new EthCheatCodes(config.l1RpcUrls);
|
|
239
|
-
const
|
|
235
|
+
const wallet = new TestWallet(pxeClient, aztecNode);
|
|
236
|
+
const cheatCodes = await CheatCodes.create(config.l1RpcUrls, wallet, aztecNode);
|
|
240
237
|
const teardown = () => Promise.resolve();
|
|
241
238
|
|
|
242
239
|
logger.verbose('Populating wallet from already registered accounts...');
|
|
243
|
-
const initialFundedAccounts = await getDeployedTestAccounts(
|
|
244
|
-
const wallet = new TestWallet(pxeClient, aztecNode);
|
|
240
|
+
const initialFundedAccounts = await getDeployedTestAccounts(wallet);
|
|
245
241
|
|
|
246
242
|
if (initialFundedAccounts.length < numberOfAccounts) {
|
|
247
243
|
throw new Error(`Required ${numberOfAccounts} accounts. Found ${initialFundedAccounts.length}.`);
|
|
@@ -260,7 +256,6 @@ async function setupWithRemoteEnvironment(
|
|
|
260
256
|
aztecNodeAdmin: undefined,
|
|
261
257
|
sequencer: undefined,
|
|
262
258
|
proverNode: undefined,
|
|
263
|
-
pxe: pxeClient,
|
|
264
259
|
deployL1ContractsValues,
|
|
265
260
|
config,
|
|
266
261
|
initialFundedAccounts,
|
|
@@ -337,8 +332,6 @@ export type EndToEndContext = {
|
|
|
337
332
|
proverNode: ProverNode | undefined;
|
|
338
333
|
/** A client to the sequencer service (undefined if connected to remote environment) */
|
|
339
334
|
sequencer: SequencerClient | undefined;
|
|
340
|
-
/** The Private eXecution Environment (PXE). */
|
|
341
|
-
pxe: PXE;
|
|
342
335
|
/** Return values from deployL1Contracts function. */
|
|
343
336
|
deployL1ContractsValues: DeployL1ContractsReturnType;
|
|
344
337
|
/** The Aztec Node configuration. */
|
|
@@ -655,9 +648,9 @@ export async function setup(
|
|
|
655
648
|
}
|
|
656
649
|
|
|
657
650
|
logger.verbose('Creating a pxe...');
|
|
658
|
-
const {
|
|
651
|
+
const { wallet, teardown: pxeTeardown } = await setupPXEServiceAndGetWallet(aztecNode!, pxeOpts, logger);
|
|
659
652
|
|
|
660
|
-
const cheatCodes = await CheatCodes.create(config.l1RpcUrls,
|
|
653
|
+
const cheatCodes = await CheatCodes.create(config.l1RpcUrls, wallet, aztecNode);
|
|
661
654
|
|
|
662
655
|
if (
|
|
663
656
|
(opts.aztecTargetCommitteeSize && opts.aztecTargetCommitteeSize > 0) ||
|
|
@@ -670,7 +663,6 @@ export async function setup(
|
|
|
670
663
|
await cheatCodes.rollup.setupEpoch();
|
|
671
664
|
await cheatCodes.rollup.debugRollup();
|
|
672
665
|
}
|
|
673
|
-
const wallet = new TestWallet(pxe, aztecNode);
|
|
674
666
|
let accounts: AztecAddress[] = [];
|
|
675
667
|
// Below we continue with what we described in the long comment on line 571.
|
|
676
668
|
if (numberOfAccounts === 0) {
|
|
@@ -736,7 +728,6 @@ export async function setup(
|
|
|
736
728
|
mockGossipSubNetwork,
|
|
737
729
|
prefilledPublicData,
|
|
738
730
|
proverNode,
|
|
739
|
-
pxe,
|
|
740
731
|
sequencer: sequencerClient,
|
|
741
732
|
teardown,
|
|
742
733
|
telemetryClient: telemetry,
|
|
@@ -866,7 +857,7 @@ export async function expectMappingDelta<K, V extends number | bigint>(
|
|
|
866
857
|
}
|
|
867
858
|
|
|
868
859
|
/**
|
|
869
|
-
* Computes the address of the "canonical"
|
|
860
|
+
* Computes the address of the "canonical" SponsoredFPCContract. This is not a protocol contract
|
|
870
861
|
* but by conventions its address is computed with a salt of 0.
|
|
871
862
|
* @returns The address of the sponsored FPC contract
|
|
872
863
|
*/
|
|
@@ -879,7 +870,7 @@ export function getSponsoredFPCInstance(): Promise<ContractInstanceWithAddress>
|
|
|
879
870
|
}
|
|
880
871
|
|
|
881
872
|
/**
|
|
882
|
-
* Computes the address of the "canonical"
|
|
873
|
+
* Computes the address of the "canonical" SponsoredFPCContract. This is not a protocol contract
|
|
883
874
|
* but by conventions its address is computed with a salt of 0.
|
|
884
875
|
* @returns The address of the sponsored FPC contract
|
|
885
876
|
*/
|
|
@@ -891,22 +882,22 @@ export async function getSponsoredFPCAddress() {
|
|
|
891
882
|
/**
|
|
892
883
|
* Deploy a sponsored FPC contract to a running instance.
|
|
893
884
|
*/
|
|
894
|
-
export async function setupSponsoredFPC(
|
|
885
|
+
export async function setupSponsoredFPC(wallet: Wallet) {
|
|
895
886
|
const instance = await getContractInstanceFromInstantiationParams(SponsoredFPCContract.artifact, {
|
|
896
887
|
salt: new Fr(SPONSORED_FPC_SALT),
|
|
897
888
|
});
|
|
898
889
|
|
|
899
|
-
await
|
|
890
|
+
await wallet.registerContract({ instance, artifact: SponsoredFPCContract.artifact });
|
|
900
891
|
getLogger().info(`SponsoredFPC: ${instance.address}`);
|
|
901
892
|
return instance;
|
|
902
893
|
}
|
|
903
894
|
|
|
904
895
|
/**
|
|
905
896
|
* Registers the SponsoredFPC in this PXE instance
|
|
906
|
-
* @param
|
|
897
|
+
* @param wallet - The wallet
|
|
907
898
|
*/
|
|
908
|
-
export async function registerSponsoredFPC(
|
|
909
|
-
await
|
|
899
|
+
export async function registerSponsoredFPC(wallet: Wallet): Promise<void> {
|
|
900
|
+
await wallet.registerContract({ instance: await getSponsoredFPCInstance(), artifact: SponsoredFPCContract.artifact });
|
|
910
901
|
}
|
|
911
902
|
|
|
912
903
|
export async function waitForProvenChain(node: AztecNode, targetBlock?: number, timeoutSec = 60, intervalSec = 1) {
|
|
@@ -11,7 +11,6 @@ import {
|
|
|
11
11
|
type L2AmountClaim,
|
|
12
12
|
type L2AmountClaimWithRecipient,
|
|
13
13
|
type Logger,
|
|
14
|
-
type PXE,
|
|
15
14
|
type SiblingPath,
|
|
16
15
|
type TxReceipt,
|
|
17
16
|
type Wallet,
|
|
@@ -131,7 +130,6 @@ export type CrossChainContext = {
|
|
|
131
130
|
export class CrossChainTestHarness {
|
|
132
131
|
static async new(
|
|
133
132
|
aztecNode: AztecNode,
|
|
134
|
-
pxeService: PXE,
|
|
135
133
|
l1Client: ExtendedViemWalletClient,
|
|
136
134
|
wallet: Wallet,
|
|
137
135
|
ownerAddress: AztecAddress,
|
|
@@ -154,7 +152,6 @@ export class CrossChainTestHarness {
|
|
|
154
152
|
|
|
155
153
|
return new CrossChainTestHarness(
|
|
156
154
|
aztecNode,
|
|
157
|
-
pxeService,
|
|
158
155
|
logger,
|
|
159
156
|
token,
|
|
160
157
|
bridge,
|
|
@@ -174,8 +171,6 @@ export class CrossChainTestHarness {
|
|
|
174
171
|
constructor(
|
|
175
172
|
/** Aztec node instance. */
|
|
176
173
|
public aztecNode: AztecNode,
|
|
177
|
-
/** Private eXecution Environment (PXE). */
|
|
178
|
-
public pxeService: PXE,
|
|
179
174
|
/** Logger. */
|
|
180
175
|
public logger: Logger,
|
|
181
176
|
|
|
@@ -7,7 +7,6 @@ import {
|
|
|
7
7
|
type L1TokenManager,
|
|
8
8
|
type L2AmountClaim,
|
|
9
9
|
type Logger,
|
|
10
|
-
type PXE,
|
|
11
10
|
type Wallet,
|
|
12
11
|
retryUntil,
|
|
13
12
|
} from '@aztec/aztec.js';
|
|
@@ -27,7 +26,6 @@ export interface IGasBridgingTestHarness {
|
|
|
27
26
|
export interface FeeJuicePortalTestingHarnessFactoryConfig {
|
|
28
27
|
aztecNode: AztecNode;
|
|
29
28
|
aztecNodeAdmin?: AztecNodeAdmin;
|
|
30
|
-
pxeService: PXE;
|
|
31
29
|
l1Client: ExtendedViemWalletClient;
|
|
32
30
|
wallet: Wallet;
|
|
33
31
|
logger: Logger;
|
|
@@ -38,7 +36,7 @@ export class FeeJuicePortalTestingHarnessFactory {
|
|
|
38
36
|
private constructor(private config: FeeJuicePortalTestingHarnessFactoryConfig) {}
|
|
39
37
|
|
|
40
38
|
private async createReal() {
|
|
41
|
-
const { aztecNode, aztecNodeAdmin,
|
|
39
|
+
const { aztecNode, aztecNodeAdmin, l1Client, wallet, logger } = this.config;
|
|
42
40
|
|
|
43
41
|
const ethAccount = EthAddress.fromString((await l1Client.getAddresses())[0]);
|
|
44
42
|
const l1ContractAddresses = (await aztecNode.getNodeInfo()).l1ContractAddresses;
|
|
@@ -55,7 +53,7 @@ export class FeeJuicePortalTestingHarnessFactory {
|
|
|
55
53
|
return new GasBridgingTestHarness(
|
|
56
54
|
aztecNode,
|
|
57
55
|
aztecNodeAdmin,
|
|
58
|
-
|
|
56
|
+
wallet,
|
|
59
57
|
logger,
|
|
60
58
|
gasL2,
|
|
61
59
|
ethAccount,
|
|
@@ -85,8 +83,8 @@ export class GasBridgingTestHarness implements IGasBridgingTestHarness {
|
|
|
85
83
|
public aztecNode: AztecNode,
|
|
86
84
|
/** Aztec node admin interface */
|
|
87
85
|
public aztecNodeAdmin: AztecNodeAdmin | undefined,
|
|
88
|
-
/**
|
|
89
|
-
public
|
|
86
|
+
/** Wallet. */
|
|
87
|
+
public wallet: Wallet,
|
|
90
88
|
/** Logger. */
|
|
91
89
|
public logger: Logger,
|
|
92
90
|
|
|
@@ -4,7 +4,6 @@ import {
|
|
|
4
4
|
EthAddress,
|
|
5
5
|
Fr,
|
|
6
6
|
type Logger,
|
|
7
|
-
type PXE,
|
|
8
7
|
computeAuthWitMessageHash,
|
|
9
8
|
generateClaimSecret,
|
|
10
9
|
} from '@aztec/aztec.js';
|
|
@@ -43,8 +42,6 @@ const TIMEOUT = 360_000;
|
|
|
43
42
|
export type UniswapSetupContext = {
|
|
44
43
|
/** Aztec Node instance */
|
|
45
44
|
aztecNode: AztecNode;
|
|
46
|
-
/** The Private eXecution Environment (PXE). */
|
|
47
|
-
pxe: PXE;
|
|
48
45
|
/** Logger instance named as the current test. */
|
|
49
46
|
logger: Logger;
|
|
50
47
|
/** The L1 wallet client, extended with public actions. */
|
|
@@ -75,7 +72,6 @@ export const uniswapL1L2TestSuite = (
|
|
|
75
72
|
const DAI_ADDRESS: EthAddress = EthAddress.fromString('0x6B175474E89094C44Da98b954EedeAC495271d0F');
|
|
76
73
|
|
|
77
74
|
let aztecNode: AztecNode;
|
|
78
|
-
let pxe: PXE;
|
|
79
75
|
let logger: Logger;
|
|
80
76
|
|
|
81
77
|
let l1Client: ExtendedViemWalletClient;
|
|
@@ -102,7 +98,7 @@ export const uniswapL1L2TestSuite = (
|
|
|
102
98
|
let cheatCodes: CheatCodes;
|
|
103
99
|
let version: number;
|
|
104
100
|
beforeAll(async () => {
|
|
105
|
-
({ aztecNode,
|
|
101
|
+
({ aztecNode, logger, l1Client, wallet, ownerAddress, sponsorAddress, deployL1ContractsValues, cheatCodes } =
|
|
106
102
|
await setup());
|
|
107
103
|
|
|
108
104
|
if (Number(await l1Client.getBlockNumber()) < expectedForkBlockNumber) {
|
|
@@ -121,7 +117,6 @@ export const uniswapL1L2TestSuite = (
|
|
|
121
117
|
logger.info('Deploying DAI Portal, initializing and deploying l2 contract...');
|
|
122
118
|
daiCrossChainHarness = await CrossChainTestHarness.new(
|
|
123
119
|
aztecNode,
|
|
124
|
-
pxe,
|
|
125
120
|
deployL1ContractsValues.l1Client,
|
|
126
121
|
wallet,
|
|
127
122
|
ownerAddress,
|
|
@@ -132,7 +127,6 @@ export const uniswapL1L2TestSuite = (
|
|
|
132
127
|
logger.info('Deploying WETH Portal, initializing and deploying l2 contract...');
|
|
133
128
|
wethCrossChainHarness = await CrossChainTestHarness.new(
|
|
134
129
|
aztecNode,
|
|
135
|
-
pxe,
|
|
136
130
|
l1Client,
|
|
137
131
|
wallet,
|
|
138
132
|
ownerAddress,
|
|
@@ -6,7 +6,6 @@ import {
|
|
|
6
6
|
type FeePaymentMethod,
|
|
7
7
|
Fr,
|
|
8
8
|
L1FeeJuicePortalManager,
|
|
9
|
-
type PXE,
|
|
10
9
|
SponsoredFeePaymentMethod,
|
|
11
10
|
type Wallet,
|
|
12
11
|
createAztecNodeClient,
|
|
@@ -25,7 +24,6 @@ import { getBBConfig } from '../fixtures/get_bb_config.js';
|
|
|
25
24
|
import { getSponsoredFPCAddress, registerSponsoredFPC } from '../fixtures/utils.js';
|
|
26
25
|
|
|
27
26
|
export interface TestAccounts {
|
|
28
|
-
pxe: PXE;
|
|
29
27
|
aztecNode: AztecNode;
|
|
30
28
|
wallet: TestWallet;
|
|
31
29
|
accounts: AztecAddress[];
|
|
@@ -52,7 +50,7 @@ export async function setupTestAccountsWithTokens(
|
|
|
52
50
|
const aztecNode = createAztecNodeClient(nodeUrl);
|
|
53
51
|
const wallet = new TestWallet(pxe, aztecNode);
|
|
54
52
|
|
|
55
|
-
const [recipientAccount, ...accounts] = (await getDeployedTestAccounts(
|
|
53
|
+
const [recipientAccount, ...accounts] = (await getDeployedTestAccounts(wallet)).slice(0, ACCOUNT_COUNT + 1);
|
|
56
54
|
|
|
57
55
|
const tokenAdmin = accounts[0];
|
|
58
56
|
const tokenAddress = await deployTokenAndMint(
|
|
@@ -66,7 +64,6 @@ export async function setupTestAccountsWithTokens(
|
|
|
66
64
|
const tokenContract = await TokenContract.at(tokenAddress, wallet);
|
|
67
65
|
|
|
68
66
|
return {
|
|
69
|
-
pxe,
|
|
70
67
|
aztecNode,
|
|
71
68
|
accounts: accounts.map(acc => acc.address),
|
|
72
69
|
wallet,
|
|
@@ -79,13 +76,12 @@ export async function setupTestAccountsWithTokens(
|
|
|
79
76
|
}
|
|
80
77
|
|
|
81
78
|
export async function deploySponsoredTestAccounts(
|
|
82
|
-
|
|
79
|
+
wallet: TestWallet,
|
|
83
80
|
aztecNode: AztecNode,
|
|
84
81
|
mintAmount: bigint,
|
|
85
82
|
logger: Logger,
|
|
86
83
|
numberOfFundedWallets = 1,
|
|
87
84
|
): Promise<TestAccounts> {
|
|
88
|
-
const wallet = new TestWallet(pxe, aztecNode);
|
|
89
85
|
const [recipient, ...funded] = await generateSchnorrAccounts(numberOfFundedWallets + 1);
|
|
90
86
|
const recipientAccount = await wallet.createSchnorrAccount(recipient.secret, recipient.salt);
|
|
91
87
|
const fundedAccounts = await Promise.all(funded.map(a => wallet.createSchnorrAccount(a.secret, a.salt)));
|
|
@@ -112,7 +108,6 @@ export async function deploySponsoredTestAccounts(
|
|
|
112
108
|
const tokenContract = await TokenContract.at(tokenAddress, wallet);
|
|
113
109
|
|
|
114
110
|
return {
|
|
115
|
-
pxe,
|
|
116
111
|
aztecNode,
|
|
117
112
|
wallet,
|
|
118
113
|
accounts: fundedAccounts.map(acc => acc.getAddress()),
|
|
@@ -143,7 +138,7 @@ export async function deployTestAccountsWithTokens(
|
|
|
143
138
|
|
|
144
139
|
const claims = await Promise.all(
|
|
145
140
|
fundedAccounts.map(a =>
|
|
146
|
-
bridgeL1FeeJuice(l1RpcUrls, mnemonicOrPrivateKey,
|
|
141
|
+
bridgeL1FeeJuice(l1RpcUrls, mnemonicOrPrivateKey, aztecNode, a.getAddress(), undefined, logger),
|
|
147
142
|
),
|
|
148
143
|
);
|
|
149
144
|
|
|
@@ -172,7 +167,6 @@ export async function deployTestAccountsWithTokens(
|
|
|
172
167
|
const tokenContract = await TokenContract.at(tokenAddress, wallet);
|
|
173
168
|
|
|
174
169
|
return {
|
|
175
|
-
pxe,
|
|
176
170
|
aztecNode,
|
|
177
171
|
wallet,
|
|
178
172
|
accounts: fundedAccounts.map(acc => acc.getAddress()),
|
|
@@ -187,7 +181,6 @@ export async function deployTestAccountsWithTokens(
|
|
|
187
181
|
async function bridgeL1FeeJuice(
|
|
188
182
|
l1RpcUrls: string[],
|
|
189
183
|
mnemonicOrPrivateKey: string,
|
|
190
|
-
pxe: PXE,
|
|
191
184
|
aztecNode: AztecNode,
|
|
192
185
|
recipient: AztecAddress,
|
|
193
186
|
amount: bigint | undefined,
|
|
@@ -293,23 +286,25 @@ export async function performTransfers({
|
|
|
293
286
|
}
|
|
294
287
|
}
|
|
295
288
|
|
|
296
|
-
export async function
|
|
289
|
+
export async function createWalletAndAztecNodeClient(
|
|
297
290
|
nodeUrl: string,
|
|
298
291
|
proverEnabled: boolean,
|
|
299
292
|
logger: Logger,
|
|
300
|
-
): Promise<{
|
|
301
|
-
const
|
|
293
|
+
): Promise<{ wallet: TestWallet; aztecNode: AztecNode; cleanup: () => Promise<void> }> {
|
|
294
|
+
const aztecNode = createAztecNodeClient(nodeUrl);
|
|
302
295
|
const [bbConfig, acvmConfig] = await Promise.all([getBBConfig(logger), getACVMConfig(logger)]);
|
|
303
|
-
const pxe = await createPXEService(
|
|
296
|
+
const pxe = await createPXEService(aztecNode, {
|
|
304
297
|
dataDirectory: undefined,
|
|
305
298
|
dataStoreMapSizeKB: 1024 * 1024,
|
|
306
299
|
...bbConfig,
|
|
307
300
|
...acvmConfig,
|
|
308
301
|
proverEnabled,
|
|
309
302
|
});
|
|
303
|
+
const wallet = new TestWallet(pxe, aztecNode);
|
|
310
304
|
|
|
311
305
|
return {
|
|
312
|
-
|
|
306
|
+
wallet,
|
|
307
|
+
aztecNode,
|
|
313
308
|
async cleanup() {
|
|
314
309
|
await pxe.stop();
|
|
315
310
|
await bbConfig?.cleanup();
|