@aztec/end-to-end 0.0.0-test.0 → 0.0.1-fake-c83136db25
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 +61 -0
- package/dest/bench/client_flows/benchmark.d.ts.map +1 -0
- package/dest/bench/client_flows/benchmark.js +261 -0
- package/dest/bench/client_flows/client_flows_benchmark.d.ts +73 -0
- package/dest/bench/client_flows/client_flows_benchmark.d.ts.map +1 -0
- package/dest/bench/client_flows/client_flows_benchmark.js +311 -0
- package/dest/bench/client_flows/config.d.ts +14 -0
- package/dest/bench/client_flows/config.d.ts.map +1 -0
- package/dest/bench/client_flows/config.js +106 -0
- package/dest/bench/client_flows/data_extractor.d.ts +2 -0
- package/dest/bench/client_flows/data_extractor.d.ts.map +1 -0
- package/dest/bench/client_flows/data_extractor.js +99 -0
- package/dest/bench/utils.d.ts +10 -36
- package/dest/bench/utils.d.ts.map +1 -1
- package/dest/bench/utils.js +26 -66
- package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.d.ts +20 -12
- 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 +85 -57
- package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.d.ts +18 -24
- 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 +48 -69
- package/dest/e2e_deploy_contract/deploy_test.d.ts +14 -6
- package/dest/e2e_deploy_contract/deploy_test.d.ts.map +1 -1
- package/dest/e2e_deploy_contract/deploy_test.js +13 -19
- package/dest/e2e_epochs/epochs_test.d.ts +58 -17
- package/dest/e2e_epochs/epochs_test.d.ts.map +1 -1
- package/dest/e2e_epochs/epochs_test.js +224 -43
- package/dest/e2e_fees/bridging_race.notest.d.ts +2 -0
- package/dest/e2e_fees/bridging_race.notest.d.ts.map +1 -0
- package/dest/e2e_fees/bridging_race.notest.js +63 -0
- package/dest/e2e_fees/fees_test.d.ts +20 -9
- package/dest/e2e_fees/fees_test.d.ts.map +1 -1
- package/dest/e2e_fees/fees_test.js +98 -107
- package/dest/e2e_l1_publisher/write_json.d.ts +10 -0
- package/dest/e2e_l1_publisher/write_json.d.ts.map +1 -0
- package/dest/e2e_l1_publisher/write_json.js +57 -0
- package/dest/e2e_multi_validator/utils.d.ts +12 -0
- package/dest/e2e_multi_validator/utils.d.ts.map +1 -0
- package/dest/e2e_multi_validator/utils.js +214 -0
- package/dest/e2e_nested_contract/nested_contract_test.d.ts +9 -6
- package/dest/e2e_nested_contract/nested_contract_test.d.ts.map +1 -1
- package/dest/e2e_nested_contract/nested_contract_test.js +22 -19
- package/dest/e2e_p2p/inactivity_slash_test.d.ts +31 -0
- package/dest/e2e_p2p/inactivity_slash_test.d.ts.map +1 -0
- package/dest/e2e_p2p/inactivity_slash_test.js +135 -0
- package/dest/e2e_p2p/p2p_network.d.ts +69 -22
- package/dest/e2e_p2p/p2p_network.d.ts.map +1 -1
- package/dest/e2e_p2p/p2p_network.js +180 -129
- package/dest/e2e_p2p/shared.d.ts +41 -5
- package/dest/e2e_p2p/shared.d.ts.map +1 -1
- package/dest/e2e_p2p/shared.js +163 -19
- package/dest/e2e_token_contract/token_contract_test.d.ts +11 -5
- package/dest/e2e_token_contract/token_contract_test.d.ts.map +1 -1
- package/dest/e2e_token_contract/token_contract_test.js +50 -26
- package/dest/{e2e_prover → fixtures}/e2e_prover_test.d.ts +14 -9
- package/dest/fixtures/e2e_prover_test.d.ts.map +1 -0
- package/dest/{e2e_prover → fixtures}/e2e_prover_test.js +95 -100
- package/dest/fixtures/fixtures.d.ts +5 -6
- package/dest/fixtures/fixtures.d.ts.map +1 -1
- package/dest/fixtures/fixtures.js +4 -3
- 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_acvm_config.js +2 -14
- 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 +10 -17
- package/dest/fixtures/l1_to_l2_messaging.d.ts +8 -5
- package/dest/fixtures/l1_to_l2_messaging.d.ts.map +1 -1
- package/dest/fixtures/l1_to_l2_messaging.js +44 -18
- package/dest/fixtures/setup_l1_contracts.d.ts +3 -3
- package/dest/fixtures/setup_l1_contracts.d.ts.map +1 -1
- package/dest/fixtures/setup_l1_contracts.js +4 -4
- package/dest/fixtures/setup_p2p_test.d.ts +14 -13
- package/dest/fixtures/setup_p2p_test.d.ts.map +1 -1
- package/dest/fixtures/setup_p2p_test.js +73 -21
- package/dest/fixtures/snapshot_manager.d.ts +15 -7
- package/dest/fixtures/snapshot_manager.d.ts.map +1 -1
- package/dest/fixtures/snapshot_manager.js +147 -121
- package/dest/fixtures/token_utils.d.ts +6 -3
- package/dest/fixtures/token_utils.d.ts.map +1 -1
- package/dest/fixtures/token_utils.js +23 -10
- package/dest/fixtures/utils.d.ts +76 -37
- package/dest/fixtures/utils.d.ts.map +1 -1
- package/dest/fixtures/utils.js +464 -368
- package/dest/fixtures/web3signer.d.ts +5 -0
- package/dest/fixtures/web3signer.d.ts.map +1 -0
- package/dest/fixtures/web3signer.js +53 -0
- 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 +41 -25
- package/dest/shared/cross_chain_test_harness.d.ts.map +1 -1
- package/dest/shared/cross_chain_test_harness.js +104 -50
- package/dest/shared/gas_portal_test_harness.d.ts +32 -24
- package/dest/shared/gas_portal_test_harness.d.ts.map +1 -1
- package/dest/shared/gas_portal_test_harness.js +50 -29
- 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 +13 -11
- package/dest/shared/uniswap_l1_l2.d.ts.map +1 -1
- package/dest/shared/uniswap_l1_l2.js +138 -108
- package/dest/simulators/lending_simulator.d.ts +6 -6
- package/dest/simulators/lending_simulator.d.ts.map +1 -1
- package/dest/simulators/lending_simulator.js +13 -16
- package/dest/simulators/token_simulator.d.ts +5 -2
- package/dest/simulators/token_simulator.d.ts.map +1 -1
- package/dest/simulators/token_simulator.js +16 -13
- package/dest/spartan/setup_test_wallets.d.ts +23 -10
- package/dest/spartan/setup_test_wallets.d.ts.map +1 -1
- package/dest/spartan/setup_test_wallets.js +167 -58
- package/dest/spartan/utils.d.ts +100 -303
- package/dest/spartan/utils.d.ts.map +1 -1
- package/dest/spartan/utils.js +407 -130
- package/package.json +61 -56
- package/src/bench/client_flows/benchmark.ts +341 -0
- package/src/bench/client_flows/client_flows_benchmark.ts +402 -0
- package/src/bench/client_flows/config.ts +61 -0
- package/src/bench/client_flows/data_extractor.ts +111 -0
- package/src/bench/utils.ts +22 -76
- package/src/e2e_blacklist_token_contract/blacklist_token_contract_test.ts +80 -77
- package/src/e2e_cross_chain_messaging/cross_chain_messaging_test.ts +63 -105
- package/src/e2e_deploy_contract/deploy_test.ts +23 -38
- package/src/e2e_epochs/epochs_test.ts +274 -54
- package/src/e2e_fees/bridging_race.notest.ts +80 -0
- package/src/e2e_fees/fees_test.ts +137 -136
- package/src/e2e_l1_publisher/write_json.ts +76 -0
- package/src/e2e_multi_validator/utils.ts +258 -0
- package/src/e2e_nested_contract/nested_contract_test.ts +27 -18
- package/src/e2e_p2p/inactivity_slash_test.ts +178 -0
- package/src/e2e_p2p/p2p_network.ts +272 -166
- package/src/e2e_p2p/shared.ts +244 -29
- package/src/e2e_token_contract/token_contract_test.ts +43 -39
- package/src/fixtures/dumps/epoch_proof_result.json +1 -1
- package/src/{e2e_prover → fixtures}/e2e_prover_test.ts +101 -145
- package/src/fixtures/fixtures.ts +4 -3
- package/src/fixtures/get_acvm_config.ts +3 -11
- package/src/fixtures/get_bb_config.ts +18 -13
- package/src/fixtures/l1_to_l2_messaging.ts +53 -23
- package/src/fixtures/setup_l1_contracts.ts +6 -7
- package/src/fixtures/setup_p2p_test.ts +112 -38
- package/src/fixtures/snapshot_manager.ts +187 -139
- package/src/fixtures/token_utils.ts +29 -12
- package/src/fixtures/utils.ts +552 -425
- package/src/fixtures/web3signer.ts +63 -0
- package/src/guides/up_quick_start.sh +6 -14
- package/src/quality_of_service/alert_checker.ts +1 -1
- package/src/shared/cross_chain_test_harness.ts +108 -79
- package/src/shared/gas_portal_test_harness.ts +58 -49
- package/src/shared/jest_setup.ts +1 -1
- package/src/shared/submit-transactions.ts +12 -8
- package/src/shared/uniswap_l1_l2.ts +173 -176
- package/src/simulators/lending_simulator.ts +12 -15
- package/src/simulators/token_simulator.ts +21 -13
- package/src/spartan/DEVELOP.md +121 -0
- package/src/spartan/setup_test_wallets.ts +215 -93
- package/src/spartan/utils.ts +458 -130
- package/dest/e2e_prover/e2e_prover_test.d.ts.map +0 -1
- package/dest/sample-dapp/connect.js +0 -12
- package/dest/sample-dapp/contracts.js +0 -10
- package/dest/sample-dapp/deploy.js +0 -35
- package/dest/sample-dapp/index.js +0 -98
- package/src/sample-dapp/connect.mjs +0 -16
- package/src/sample-dapp/contracts.mjs +0 -14
- package/src/sample-dapp/deploy.mjs +0 -40
- package/src/sample-dapp/index.mjs +0 -128
|
@@ -1,33 +1,27 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
type Logger,
|
|
10
|
-
type PXE,
|
|
11
|
-
type Wallet,
|
|
12
|
-
retryUntil,
|
|
13
|
-
} from '@aztec/aztec.js';
|
|
14
|
-
import type { ViemPublicClient, ViemWalletClient } from '@aztec/ethereum';
|
|
1
|
+
import { AztecAddress, EthAddress } from '@aztec/aztec.js/addresses';
|
|
2
|
+
import { L1FeeJuicePortalManager, type L1TokenManager, type L2AmountClaim } from '@aztec/aztec.js/ethereum';
|
|
3
|
+
import { Fr } from '@aztec/aztec.js/fields';
|
|
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';
|
|
7
|
+
import type { ExtendedViemWalletClient } from '@aztec/ethereum';
|
|
8
|
+
import { retryUntil } from '@aztec/foundation/retry';
|
|
15
9
|
import { FeeJuiceContract } from '@aztec/noir-contracts.js/FeeJuice';
|
|
16
10
|
import { ProtocolContractAddress } from '@aztec/protocol-contracts';
|
|
11
|
+
import type { AztecNodeAdmin } from '@aztec/stdlib/interfaces/client';
|
|
17
12
|
|
|
18
13
|
export interface IGasBridgingTestHarness {
|
|
19
14
|
getL1FeeJuiceBalance(address: EthAddress): Promise<bigint>;
|
|
20
|
-
prepareTokensOnL1(
|
|
21
|
-
bridgeFromL1ToL2(
|
|
15
|
+
prepareTokensOnL1(owner: AztecAddress): Promise<L2AmountClaim>;
|
|
16
|
+
bridgeFromL1ToL2(owner: AztecAddress, claimer: AztecAddress): Promise<void>;
|
|
22
17
|
feeJuice: FeeJuiceContract;
|
|
23
18
|
l1FeeJuiceAddress: EthAddress;
|
|
24
19
|
}
|
|
25
20
|
|
|
26
21
|
export interface FeeJuicePortalTestingHarnessFactoryConfig {
|
|
27
22
|
aztecNode: AztecNode;
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
walletClient: ViemWalletClient;
|
|
23
|
+
aztecNodeAdmin?: AztecNodeAdmin;
|
|
24
|
+
l1Client: ExtendedViemWalletClient;
|
|
31
25
|
wallet: Wallet;
|
|
32
26
|
logger: Logger;
|
|
33
27
|
mockL1?: boolean;
|
|
@@ -37,10 +31,10 @@ export class FeeJuicePortalTestingHarnessFactory {
|
|
|
37
31
|
private constructor(private config: FeeJuicePortalTestingHarnessFactoryConfig) {}
|
|
38
32
|
|
|
39
33
|
private async createReal() {
|
|
40
|
-
const { aztecNode,
|
|
34
|
+
const { aztecNode, aztecNodeAdmin, l1Client, wallet, logger } = this.config;
|
|
41
35
|
|
|
42
|
-
const ethAccount = EthAddress.fromString((await
|
|
43
|
-
const l1ContractAddresses = (await
|
|
36
|
+
const ethAccount = EthAddress.fromString((await l1Client.getAddresses())[0]);
|
|
37
|
+
const l1ContractAddresses = (await aztecNode.getNodeInfo()).l1ContractAddresses;
|
|
44
38
|
|
|
45
39
|
const feeJuiceAddress = l1ContractAddresses.feeJuiceAddress;
|
|
46
40
|
const feeJuicePortalAddress = l1ContractAddresses.feeJuicePortalAddress;
|
|
@@ -53,14 +47,15 @@ export class FeeJuicePortalTestingHarnessFactory {
|
|
|
53
47
|
|
|
54
48
|
return new GasBridgingTestHarness(
|
|
55
49
|
aztecNode,
|
|
56
|
-
|
|
50
|
+
aztecNodeAdmin,
|
|
51
|
+
wallet,
|
|
57
52
|
logger,
|
|
58
53
|
gasL2,
|
|
59
54
|
ethAccount,
|
|
60
55
|
feeJuicePortalAddress,
|
|
61
56
|
feeJuiceAddress,
|
|
62
|
-
|
|
63
|
-
|
|
57
|
+
l1ContractAddresses.feeAssetHandlerAddress!,
|
|
58
|
+
l1Client,
|
|
64
59
|
);
|
|
65
60
|
}
|
|
66
61
|
|
|
@@ -81,8 +76,10 @@ export class GasBridgingTestHarness implements IGasBridgingTestHarness {
|
|
|
81
76
|
constructor(
|
|
82
77
|
/** Aztec node */
|
|
83
78
|
public aztecNode: AztecNode,
|
|
84
|
-
/**
|
|
85
|
-
public
|
|
79
|
+
/** Aztec node admin interface */
|
|
80
|
+
public aztecNodeAdmin: AztecNodeAdmin | undefined,
|
|
81
|
+
/** Wallet. */
|
|
82
|
+
public wallet: Wallet,
|
|
86
83
|
/** Logger. */
|
|
87
84
|
public logger: Logger,
|
|
88
85
|
|
|
@@ -96,44 +93,45 @@ export class GasBridgingTestHarness implements IGasBridgingTestHarness {
|
|
|
96
93
|
public feeJuicePortalAddress: EthAddress,
|
|
97
94
|
/** Underlying token for portal tests. */
|
|
98
95
|
public l1FeeJuiceAddress: EthAddress,
|
|
99
|
-
/**
|
|
100
|
-
public
|
|
101
|
-
/** Viem
|
|
102
|
-
public
|
|
96
|
+
/** Fee asset handler address. */
|
|
97
|
+
public feeAssetHandlerAddress: EthAddress,
|
|
98
|
+
/** Viem Extended client instance. */
|
|
99
|
+
public l1Client: ExtendedViemWalletClient,
|
|
103
100
|
) {
|
|
104
101
|
this.feeJuicePortalManager = new L1FeeJuicePortalManager(
|
|
105
102
|
this.feeJuicePortalAddress,
|
|
106
103
|
this.l1FeeJuiceAddress,
|
|
107
|
-
this.
|
|
108
|
-
this.
|
|
104
|
+
this.feeAssetHandlerAddress,
|
|
105
|
+
this.l1Client,
|
|
109
106
|
this.logger,
|
|
110
107
|
);
|
|
111
108
|
|
|
112
109
|
this.l1TokenManager = this.feeJuicePortalManager.getTokenManager();
|
|
113
110
|
}
|
|
114
111
|
|
|
115
|
-
async mintTokensOnL1(
|
|
116
|
-
const balanceBefore = await this.l1TokenManager.getL1TokenBalance(to.toString());
|
|
117
|
-
await this.l1TokenManager.mint(
|
|
118
|
-
|
|
112
|
+
async mintTokensOnL1(to: EthAddress = this.ethAccount) {
|
|
113
|
+
// const balanceBefore = await this.l1TokenManager.getL1TokenBalance(to.toString());
|
|
114
|
+
await this.l1TokenManager.mint(to.toString());
|
|
115
|
+
|
|
116
|
+
// expect(await this.l1TokenManager.getL1TokenBalance(to.toString())).toEqual(balanceBefore + amount);
|
|
119
117
|
}
|
|
120
118
|
|
|
121
119
|
async getL1FeeJuiceBalance(address: EthAddress) {
|
|
122
120
|
return await this.l1TokenManager.getL1TokenBalance(address.toString());
|
|
123
121
|
}
|
|
124
122
|
|
|
125
|
-
sendTokensToPortalPublic(bridgeAmount: bigint, l2Address: AztecAddress
|
|
126
|
-
return this.feeJuicePortalManager.bridgeTokensPublic(l2Address, bridgeAmount,
|
|
123
|
+
sendTokensToPortalPublic(bridgeAmount: bigint, l2Address: AztecAddress) {
|
|
124
|
+
return this.feeJuicePortalManager.bridgeTokensPublic(l2Address, bridgeAmount, false);
|
|
127
125
|
}
|
|
128
126
|
|
|
129
|
-
async consumeMessageOnAztecAndClaimPrivately(owner: AztecAddress, claim: L2AmountClaim) {
|
|
127
|
+
async consumeMessageOnAztecAndClaimPrivately(owner: AztecAddress, claimer: AztecAddress, claim: L2AmountClaim) {
|
|
130
128
|
this.logger.info('Consuming messages on L2 Privately');
|
|
131
129
|
const { claimAmount, claimSecret, messageLeafIndex } = claim;
|
|
132
|
-
await this.feeJuice.methods.claim(owner, claimAmount, claimSecret, messageLeafIndex).send().wait();
|
|
130
|
+
await this.feeJuice.methods.claim(owner, claimAmount, claimSecret, messageLeafIndex).send({ from: claimer }).wait();
|
|
133
131
|
}
|
|
134
132
|
|
|
135
133
|
async getL2PublicBalanceOf(owner: AztecAddress) {
|
|
136
|
-
return await this.feeJuice.methods.balance_of_public(owner).simulate();
|
|
134
|
+
return await this.feeJuice.methods.balance_of_public(owner).simulate({ from: owner });
|
|
137
135
|
}
|
|
138
136
|
|
|
139
137
|
async expectPublicBalanceOnL2(owner: AztecAddress, expectedBalance: bigint) {
|
|
@@ -141,8 +139,10 @@ export class GasBridgingTestHarness implements IGasBridgingTestHarness {
|
|
|
141
139
|
expect(balance).toBe(expectedBalance);
|
|
142
140
|
}
|
|
143
141
|
|
|
144
|
-
async prepareTokensOnL1(
|
|
145
|
-
const
|
|
142
|
+
async prepareTokensOnL1(owner: AztecAddress) {
|
|
143
|
+
const bridgeAmount = await this.l1TokenManager.getMintAmount();
|
|
144
|
+
await this.mintTokensOnL1();
|
|
145
|
+
const claim = await this.sendTokensToPortalPublic(bridgeAmount, owner);
|
|
146
146
|
|
|
147
147
|
const isSynced = async () => await this.aztecNode.isL1ToL2MessageSynced(Fr.fromHexString(claim.messageHash));
|
|
148
148
|
await retryUntil(isSynced, `message ${claim.messageHash} sync`, 24, 1);
|
|
@@ -154,19 +154,28 @@ export class GasBridgingTestHarness implements IGasBridgingTestHarness {
|
|
|
154
154
|
return claim;
|
|
155
155
|
}
|
|
156
156
|
|
|
157
|
-
async bridgeFromL1ToL2(
|
|
157
|
+
async bridgeFromL1ToL2(owner: AztecAddress, claimer: AztecAddress) {
|
|
158
158
|
// Prepare the tokens on the L1 side
|
|
159
|
-
const claim = await this.prepareTokensOnL1(
|
|
159
|
+
const claim = await this.prepareTokensOnL1(owner);
|
|
160
160
|
|
|
161
161
|
// Consume L1 -> L2 message and claim tokens privately on L2
|
|
162
|
-
await this.consumeMessageOnAztecAndClaimPrivately(owner, claim);
|
|
163
|
-
await this.expectPublicBalanceOnL2(owner, bridgeAmount);
|
|
162
|
+
await this.consumeMessageOnAztecAndClaimPrivately(owner, claimer, claim);
|
|
164
163
|
}
|
|
165
164
|
|
|
166
165
|
private async advanceL2Block() {
|
|
167
166
|
const initialBlockNumber = await this.aztecNode.getBlockNumber();
|
|
168
|
-
|
|
167
|
+
|
|
168
|
+
let minTxsPerBlock = undefined;
|
|
169
|
+
if (this.aztecNodeAdmin) {
|
|
170
|
+
({ minTxsPerBlock } = await this.aztecNodeAdmin.getConfig());
|
|
171
|
+
await this.aztecNodeAdmin.setConfig({ minTxsPerBlock: 0 }); // Set to 0 to ensure we can advance the block
|
|
172
|
+
}
|
|
173
|
+
|
|
169
174
|
await retryUntil(async () => (await this.aztecNode.getBlockNumber()) >= initialBlockNumber + 1);
|
|
175
|
+
|
|
176
|
+
if (this.aztecNodeAdmin && minTxsPerBlock !== undefined) {
|
|
177
|
+
await this.aztecNodeAdmin.setConfig({ minTxsPerBlock });
|
|
178
|
+
}
|
|
170
179
|
}
|
|
171
180
|
}
|
|
172
181
|
// docs:end:cross_chain_test_harness
|
package/src/shared/jest_setup.ts
CHANGED
|
@@ -1,20 +1,24 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
1
|
+
import { AztecAddress } from '@aztec/aztec.js/addresses';
|
|
2
|
+
import type { SentTx } from '@aztec/aztec.js/contracts';
|
|
3
|
+
import { Fr, GrumpkinScalar } from '@aztec/aztec.js/fields';
|
|
4
|
+
import type { Logger } from '@aztec/aztec.js/log';
|
|
5
|
+
import { TxStatus } from '@aztec/aztec.js/tx';
|
|
3
6
|
import { times } from '@aztec/foundation/collection';
|
|
4
|
-
import type {
|
|
7
|
+
import type { TestWallet } from '@aztec/test-wallet/server';
|
|
5
8
|
|
|
6
|
-
// submits a set of transactions to the provided
|
|
9
|
+
// submits a set of transactions to the provided Wallet
|
|
7
10
|
export const submitTxsTo = async (
|
|
8
|
-
|
|
11
|
+
wallet: TestWallet,
|
|
12
|
+
submitter: AztecAddress,
|
|
9
13
|
numTxs: number,
|
|
10
|
-
wallet: Wallet,
|
|
11
14
|
logger: Logger,
|
|
12
15
|
): Promise<SentTx[]> => {
|
|
13
16
|
const txs: SentTx[] = [];
|
|
14
17
|
await Promise.all(
|
|
15
18
|
times(numTxs, async () => {
|
|
16
|
-
const accountManager = await
|
|
17
|
-
const
|
|
19
|
+
const accountManager = await wallet.createSchnorrAccount(Fr.random(), Fr.random(), GrumpkinScalar.random());
|
|
20
|
+
const deployMethod = await accountManager.getDeployMethod();
|
|
21
|
+
const tx = deployMethod.send({ from: submitter });
|
|
18
22
|
const txHash = await tx.getTxHash();
|
|
19
23
|
|
|
20
24
|
logger.info(`Tx sent with hash ${txHash}`);
|