Skip to content

Commit

Permalink
fix: fixing making sent txs fail with correct error messages (#7852)
Browse files Browse the repository at this point in the history
This PR fixes the outdated error messages brought on by #7841.

Please see that PR for more context.
  • Loading branch information
sklppy88 committed Aug 12, 2024
1 parent 1538fa7 commit d00810d
Show file tree
Hide file tree
Showing 8 changed files with 24 additions and 11 deletions.
8 changes: 6 additions & 2 deletions yarn-project/end-to-end/src/e2e_block_building.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -208,7 +208,9 @@ describe('e2e_block_building', () => {
it('private -> private', async () => {
const nullifier = Fr.random();
await contract.methods.emit_nullifier(nullifier).send().wait();
await expect(contract.methods.emit_nullifier(nullifier).send().wait()).rejects.toThrow('dropped');
await expect(contract.methods.emit_nullifier(nullifier).send().wait()).rejects.toThrow(
'The simulated transaction is unable to be added to state and is invalid.',
);
});

it('public -> public', async () => {
Expand All @@ -230,7 +232,9 @@ describe('e2e_block_building', () => {
it('public -> private', async () => {
const nullifier = Fr.random();
await contract.methods.emit_nullifier_public(nullifier).send().wait();
await expect(contract.methods.emit_nullifier(nullifier).send().wait()).rejects.toThrow('dropped');
await expect(contract.methods.emit_nullifier(nullifier).send().wait()).rejects.toThrow(
'The simulated transaction is unable to be added to state and is invalid.',
);
});
});
});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,9 @@ describe('e2e_deploy_contract legacy', () => {
const deployer = new ContractDeployer(TestContractArtifact, wallet);

await deployer.deploy().send({ contractAddressSalt }).wait({ wallet });
await expect(deployer.deploy().send({ contractAddressSalt }).wait()).rejects.toThrow(/dropped/);
await expect(deployer.deploy().send({ contractAddressSalt }).wait()).rejects.toThrow(
/The simulated transaction is unable to be added to state and is invalid./,
);
});

it('should not deploy a contract which failed the public part of the execution', async () => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ describe('e2e_deploy_contract private initialization', () => {
.constructor(...initArgs)
.send()
.wait(),
).rejects.toThrow(/dropped/);
).rejects.toThrow(/The simulated transaction is unable to be added to state and is invalid./);
});

it('refuses to call a private function that requires initialization', async () => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,9 +53,9 @@ describe('e2e_voting_contract', () => {
}),
).rejects.toThrow('The simulated transaction is unable to be added to state and is invalid.');

// We try voting again, but our TX is dropped due to trying to emit duplicate nullifiers
// We try voting again, but our TX is invalid due to trying to emit duplicate nullifiers
await expect(votingContract.methods.cast_vote(candidate).send().wait()).rejects.toThrow(
'Reason: Tx dropped by P2P node.',
'The simulated transaction is unable to be added to state and is invalid.',
);
});
});
Expand Down
8 changes: 6 additions & 2 deletions yarn-project/end-to-end/src/e2e_prover/full.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,11 @@ describe('full_prover', () => {
sentPublicTx.wait({ timeout: 10, interval: 0.1 }),
]);

expect(String((results[0] as PromiseRejectedResult).reason)).toMatch(/Tx dropped by P2P node/);
expect(String((results[1] as PromiseRejectedResult).reason)).toMatch(/Tx dropped by P2P node/);
expect(String((results[0] as PromiseRejectedResult).reason)).toMatch(
/Error: The simulated transaction is unable to be added to state and is invalid./,
);
expect(String((results[1] as PromiseRejectedResult).reason)).toMatch(
/Error: The simulated transaction is unable to be added to state and is invalid./,
);
});
});
3 changes: 2 additions & 1 deletion yarn-project/end-to-end/src/fixtures/fixtures.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@ export const U128_UNDERFLOW_ERROR = "Assertion failed: attempt to subtract with
export const U128_OVERFLOW_ERROR = "Assertion failed: attempt to add with overflow 'hi == high'";
export const BITSIZE_TOO_BIG_ERROR = "'self.__assert_max_bit_size(bit_size)'";
// TODO(https://github.com/AztecProtocol/aztec-packages/issues/5818): Make these a fixed error after transition.
export const DUPLICATE_NULLIFIER_ERROR = /dropped|duplicate nullifier|reverted/;
export const DUPLICATE_NULLIFIER_ERROR =
/dropped|duplicate nullifier|reverted|The simulated transaction is unable to be added to state and is invalid./;
export const NO_L1_TO_L2_MSG_ERROR =
/No non-nullified L1 to L2 message found for message hash|Tried to consume nonexistent L1-to-L2 message/;
export const STATIC_CALL_STATE_MODIFICATION_ERROR =
Expand Down
4 changes: 3 additions & 1 deletion yarn-project/end-to-end/src/guides/dapp_testing.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -214,7 +214,9 @@ describe('guides/dapp/testing', () => {
await call2.prove();

await call1.send().wait();
await expect(call2.send().wait()).rejects.toThrow(/dropped/);
await expect(call2.send().wait()).rejects.toThrow(
/The simulated transaction is unable to be added to state and is invalid./,
);
// docs:end:tx-dropped
});

Expand Down
2 changes: 1 addition & 1 deletion yarn-project/pxe/src/pxe_service/pxe_service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -529,7 +529,7 @@ export class PXEService implements PXE {
throw new Error(`A settled tx with equal hash ${txHash.toString()} exists.`);
}

const isValidTx = await this.node.validateTx(tx);
const isValidTx = await this.node.isValidTx(tx);

if (!isValidTx) {
throw new Error('The simulated transaction is unable to be added to state and is invalid.');
Expand Down

0 comments on commit d00810d

Please sign in to comment.