diff --git a/yarn-project/protocol-contracts/src/class-registerer/__snapshots__/index.test.ts.snap b/yarn-project/protocol-contracts/src/class-registerer/__snapshots__/index.test.ts.snap deleted file mode 100644 index 5a1ca9ca985..00000000000 --- a/yarn-project/protocol-contracts/src/class-registerer/__snapshots__/index.test.ts.snap +++ /dev/null @@ -1,43 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`ClassRegisterer returns canonical protocol contract 1`] = ` -{ - "address": AztecAddress<0x2140db629d95644ef26140fa5ae87749ae28d373176af9a2e458052ced96c7b3>, - "contractClass": { - "artifactHash": Fr<0x20d64bd232dd14c00fedcaf31d10ad879a63eee4183824d1cadf2dac49b1f9ce>, - "id": Fr<0x2ced3a9029e1a272aa799dd8d66c3fae1dffed2259cc96b578a4bcc997d6c7b1>, - "packedBytecode": Buffer<0x00000000>, - "privateFunctions": [ - { - "isInternal": false, - "selector": Selector<0x2318f305>, - "vkHash": Fr<0x0000000000000000000000000000000000000000000000000000000000000000>, - }, - { - "isInternal": false, - "selector": Selector<0x237fa87b>, - "vkHash": Fr<0x0000000000000000000000000000000000000000000000000000000000000000>, - }, - { - "isInternal": false, - "selector": Selector<0x98bc6593>, - "vkHash": Fr<0x0000000000000000000000000000000000000000000000000000000000000000>, - }, - ], - "privateFunctionsRoot": Fr<0x0930d0038f2076b5a41aec6905cda5f201f20b75f3f9703d2aabbaea86268ac5>, - "publicBytecodeCommitment": Fr<0x1dae27cc7fe2af345f160253be3875d449a7e9ba6bd68747d87d4e7054b81115>, - "publicFunctions": [], - "version": 1, - }, - "instance": { - "address": AztecAddress<0x2140db629d95644ef26140fa5ae87749ae28d373176af9a2e458052ced96c7b3>, - "contractClassId": Fr<0x2ced3a9029e1a272aa799dd8d66c3fae1dffed2259cc96b578a4bcc997d6c7b1>, - "deployer": AztecAddress<0x0000000000000000000000000000000000000000000000000000000000000000>, - "initializationHash": Fr<0x0000000000000000000000000000000000000000000000000000000000000000>, - "portalContractAddress": EthAddress<0x0000000000000000000000000000000000000000>, - "publicKeysHash": Fr<0x27b1d0839a5b23baf12a8d195b18ac288fcf401afb2f70b8a4b529ede5fa9fed>, - "salt": Fr<0x0000000000000000000000000000000000000000000000000000000000000001>, - "version": 1, - }, -} -`; diff --git a/yarn-project/protocol-contracts/src/class-registerer/index.test.ts b/yarn-project/protocol-contracts/src/class-registerer/index.test.ts index 26b85367caf..aa6764915a5 100644 --- a/yarn-project/protocol-contracts/src/class-registerer/index.test.ts +++ b/yarn-project/protocol-contracts/src/class-registerer/index.test.ts @@ -1,14 +1,12 @@ -import { setupCustomSnapshotSerializers } from '@aztec/foundation/testing'; - -import omit from 'lodash.omit'; +import { computeContractAddressFromInstance, getContractClassFromArtifact } from '@aztec/circuits.js'; import { ClassRegistererAddress, getCanonicalClassRegisterer } from './index.js'; describe('ClassRegisterer', () => { - setupCustomSnapshotSerializers(expect); it('returns canonical protocol contract', () => { const contract = getCanonicalClassRegisterer(); - expect(omit(contract, 'artifact')).toMatchSnapshot(); + expect(computeContractAddressFromInstance(contract.instance)).toEqual(contract.address); + expect(getContractClassFromArtifact(contract.artifact).id).toEqual(contract.contractClass.id); expect(contract.address.toString()).toEqual(ClassRegistererAddress.toString()); }); }); diff --git a/yarn-project/protocol-contracts/src/gas-token/__snapshots__/index.test.ts.snap b/yarn-project/protocol-contracts/src/gas-token/__snapshots__/index.test.ts.snap deleted file mode 100644 index 9410889ee34..00000000000 --- a/yarn-project/protocol-contracts/src/gas-token/__snapshots__/index.test.ts.snap +++ /dev/null @@ -1,49 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`GasToken returns canonical protocol contract 1`] = ` -{ - "address": AztecAddress<0x0eebbe7c767b7714af931ff870bf463a337368a32b2c6d74aee643666c144a92>, - "instance": { - "address": AztecAddress<0x0eebbe7c767b7714af931ff870bf463a337368a32b2c6d74aee643666c144a92>, - "contractClassId": Fr<0x1835554be57183ba37afb88ec985aa22d96f5e054c17c5e1aaff17710a6928fe>, - "deployer": AztecAddress<0x0000000000000000000000000000000000000000000000000000000000000000>, - "initializationHash": Fr<0x0000000000000000000000000000000000000000000000000000000000000000>, - "portalContractAddress": EthAddress<0x0000000000000000000000000000000000000000>, - "publicKeysHash": Fr<0x27b1d0839a5b23baf12a8d195b18ac288fcf401afb2f70b8a4b529ede5fa9fed>, - "salt": Fr<0x0000000000000000000000000000000000000000000000000000000000000001>, - "version": 1, - }, -} -`; - -exports[`GasToken returns canonical protocol contract 2`] = ` -{ - "artifactHash": Fr<0x18af4bb0ca6fe07d0ae6da493b2c7b1af038ee904721dbba9b6e571e6d495726>, - "id": Fr<0x1835554be57183ba37afb88ec985aa22d96f5e054c17c5e1aaff17710a6928fe>, - "privateFunctions": [], - "privateFunctionsRoot": Fr<0x15d28cad4c0736decea8997cb324cf0a0e0602f4d74472cd977bce2c8dd9923f>, - "publicBytecodeCommitment": Fr<0x15548f53508922e8025f7006eab35b4587a3abc1e43ed85251283656930e149d>, - "version": 1, -} -`; - -exports[`GasToken returns canonical protocol contract 3`] = ` -[ - { - "isInternal": false, - "selector": Selector<0x0b5879db>, - }, - { - "isInternal": false, - "selector": Selector<0x5b7863df>, - }, - { - "isInternal": false, - "selector": Selector<0x69e04dfd>, - }, - { - "isInternal": false, - "selector": Selector<0x6bfd1d5b>, - }, -] -`; diff --git a/yarn-project/protocol-contracts/src/gas-token/index.test.ts b/yarn-project/protocol-contracts/src/gas-token/index.test.ts index 3e17606291a..4a15655d4a3 100644 --- a/yarn-project/protocol-contracts/src/gas-token/index.test.ts +++ b/yarn-project/protocol-contracts/src/gas-token/index.test.ts @@ -1,24 +1,11 @@ -import { EthAddress } from '@aztec/circuits.js'; -import { setupCustomSnapshotSerializers } from '@aztec/foundation/testing'; - -import omit from 'lodash.omit'; +import { EthAddress, computeContractAddressFromInstance, getContractClassFromArtifact } from '@aztec/circuits.js'; import { getCanonicalGasToken } from './index.js'; describe('GasToken', () => { - setupCustomSnapshotSerializers(expect); it('returns canonical protocol contract', () => { - // if you're updating the snapshots here then you'll also have to update CANONICAL_GAS_TOKEN_ADDRESS in - // - noir-projects/noir-contracts/contracts/fpc_contract/src/main.nr - // - noir-projects/noir-contracts/contracts/app_subscription_contract/src/main.nr const contract = getCanonicalGasToken(EthAddress.ZERO); - expect(omit(contract, ['artifact', 'contractClass'])).toMatchSnapshot(); - - // bytecode is very large - expect(omit(contract.contractClass, ['packedBytecode', 'publicFunctions'])).toMatchSnapshot(); - - // this contract has public bytecode - expect(contract.contractClass.publicFunctions.map(x => omit(x, 'bytecode'))).toMatchSnapshot(); - expect(contract.contractClass.packedBytecode.length).toBeGreaterThan(0); + expect(computeContractAddressFromInstance(contract.instance)).toEqual(contract.address); + expect(getContractClassFromArtifact(contract.artifact).id).toEqual(contract.contractClass.id); }); }); diff --git a/yarn-project/protocol-contracts/src/instance-deployer/__snapshots__/index.test.ts.snap b/yarn-project/protocol-contracts/src/instance-deployer/__snapshots__/index.test.ts.snap deleted file mode 100644 index 1550776e587..00000000000 --- a/yarn-project/protocol-contracts/src/instance-deployer/__snapshots__/index.test.ts.snap +++ /dev/null @@ -1,33 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`InstanceDeployer returns canonical protocol contract 1`] = ` -{ - "address": AztecAddress<0x00de4d0d9913ddba5fbba9286031b4a5dc9b2af5e824154ae75938f96c1bfe78>, - "contractClass": { - "artifactHash": Fr<0x088abf2a235b9047f92f51a30630eeec47614f5f997d42aa70bc6c20ecf27b87>, - "id": Fr<0x22905afb676c1c6736b344418266b16dbf06c2e13bdcd386617bc5b8db3103df>, - "packedBytecode": Buffer<0x00000000>, - "privateFunctions": [ - { - "isInternal": false, - "selector": Selector<0x883355ab>, - "vkHash": Fr<0x0000000000000000000000000000000000000000000000000000000000000000>, - }, - ], - "privateFunctionsRoot": Fr<0x15a91b2ada8e46d36cfdcd4e46c9c3c29f1b159a60b1ec67d8ed7a3782f89eef>, - "publicBytecodeCommitment": Fr<0x1dae27cc7fe2af345f160253be3875d449a7e9ba6bd68747d87d4e7054b81115>, - "publicFunctions": [], - "version": 1, - }, - "instance": { - "address": AztecAddress<0x00de4d0d9913ddba5fbba9286031b4a5dc9b2af5e824154ae75938f96c1bfe78>, - "contractClassId": Fr<0x22905afb676c1c6736b344418266b16dbf06c2e13bdcd386617bc5b8db3103df>, - "deployer": AztecAddress<0x0000000000000000000000000000000000000000000000000000000000000000>, - "initializationHash": Fr<0x0000000000000000000000000000000000000000000000000000000000000000>, - "portalContractAddress": EthAddress<0x0000000000000000000000000000000000000000>, - "publicKeysHash": Fr<0x27b1d0839a5b23baf12a8d195b18ac288fcf401afb2f70b8a4b529ede5fa9fed>, - "salt": Fr<0x0000000000000000000000000000000000000000000000000000000000000001>, - "version": 1, - }, -} -`; diff --git a/yarn-project/protocol-contracts/src/instance-deployer/index.test.ts b/yarn-project/protocol-contracts/src/instance-deployer/index.test.ts index 0bd8e117eb6..d3bcc28212f 100644 --- a/yarn-project/protocol-contracts/src/instance-deployer/index.test.ts +++ b/yarn-project/protocol-contracts/src/instance-deployer/index.test.ts @@ -1,16 +1,14 @@ +import { computeContractAddressFromInstance, getContractClassFromArtifact } from '@aztec/circuits.js'; import { setupCustomSnapshotSerializers } from '@aztec/foundation/testing'; -import omit from 'lodash.omit'; - import { InstanceDeployerAddress, getCanonicalInstanceDeployer } from './index.js'; describe('InstanceDeployer', () => { setupCustomSnapshotSerializers(expect); it('returns canonical protocol contract', () => { - // TODO(@spalladino): Consider sorting functions by selector when constructing the contract - // class, or even better, when calling loadContractArtifact from the Noir output. const contract = getCanonicalInstanceDeployer(); - expect(omit(contract, 'artifact')).toMatchSnapshot(); + expect(computeContractAddressFromInstance(contract.instance)).toEqual(contract.address); + expect(getContractClassFromArtifact(contract.artifact).id).toEqual(contract.contractClass.id); expect(contract.address.toString()).toEqual(InstanceDeployerAddress.toString()); }); });