Skip to content

Commit

Permalink
Merge branch 'master' into ad/acir-tests-bb
Browse files Browse the repository at this point in the history
  • Loading branch information
ludamad authored May 22, 2024
2 parents a8cc778 + d504c03 commit c45e319
Show file tree
Hide file tree
Showing 9 changed files with 31 additions and 25 deletions.
8 changes: 5 additions & 3 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -154,7 +154,7 @@ jobs:
needs:
- acir-bench
- bench-e2e
runs-on: ${{ inputs.username || github.actor }}-x86
runs-on: ${{ github.event.pull_request.user.login || github.actor }}-x86
steps:
- uses: actions/checkout@v4
with:
Expand Down Expand Up @@ -460,7 +460,7 @@ jobs:
boxes:
needs: build
runs-on: ${{ inputs.username || github.actor }}-x86
runs-on: ${{ github.event.pull_request.user.login || github.actor }}-x86
steps:
- uses: actions/checkout@v4
with: { ref: "${{ github.event.pull_request.head.sha }}" }
Expand All @@ -476,7 +476,7 @@ jobs:

boxes-test:
needs: boxes
runs-on: ${{ inputs.username || github.actor }}-x86
runs-on: ${{ github.event.pull_request.user.login || github.actor }}-x86
strategy:
fail-fast: false
matrix:
Expand Down Expand Up @@ -531,6 +531,8 @@ jobs:

merge-check:
runs-on: ubuntu-latest
permissions:
actions: write
needs:
- setup
# - bench-e2e # does not block merge
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/rerun.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ on:
jobs:
rerun:
runs-on: ubuntu-latest
permissions:
actions: write
steps:
- name: rerun ${{ inputs.run_id }}
env:
Expand Down
2 changes: 1 addition & 1 deletion boxes/Earthfile
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ BOX_TEST_FROM_CACHE:
ENV AZTEC_DOCKER_TAG=$aztec_docker_tag
ENV CI=1
# need a different project name for each to run in parallel
LET project_name=$box_$browser
LET project_name="$box"_"$browser"
IF docker compose > /dev/null 2>&1
LET CMD="docker compose"
ELSE
Expand Down
13 changes: 7 additions & 6 deletions boxes/boxes/react/src/contracts/src/main.nr
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
contract BoxReact {
use dep::aztec::prelude::{AztecAddress, PrivateMutable, Map, NoteInterface, NoteHeader};
use dep::aztec::protocol_types::grumpkin_point::GrumpkinPoint;

use dep::value_note::value_note::{ValueNote, VALUE_NOTE_LEN};

Expand All @@ -10,17 +11,17 @@ contract BoxReact {

#[aztec(private)]
#[aztec(initializer)]
fn constructor(number: Field, owner: AztecAddress) {
fn constructor(number: Field, owner: AztecAddress, owner_npk_m_hash: Field, owner_ivpk_m: GrumpkinPoint) {
let numbers = storage.numbers;
let mut new_number = ValueNote::new(number, owner);
numbers.at(owner).initialize(&mut new_number, true);
let mut new_number = ValueNote::new(number, owner_npk_m_hash);
numbers.at(owner).initialize(&mut new_number, true, owner_ivpk_m);
}

#[aztec(private)]
fn setNumber(number: Field, owner: AztecAddress) {
fn setNumber(number: Field, owner: AztecAddress, owner_npk_m_hash: Field, owner_ivpk_m: GrumpkinPoint) {
let numbers = storage.numbers;
let mut new_number = ValueNote::new(number, owner);
numbers.at(owner).replace(&mut new_number, true);
let mut new_number = ValueNote::new(number, owner_npk_m_hash);
numbers.at(owner).replace(&mut new_number, true, owner_ivpk_m);
}

unconstrained fn getNumber(owner: AztecAddress) -> pub ValueNote {
Expand Down
2 changes: 1 addition & 1 deletion boxes/boxes/react/src/hooks/useContract.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ export function useContract() {
setWait(true);
const wallet = await deployerEnv.getWallet();
const salt = Fr.random();
const tx = await BoxReactContract.deploy(wallet, Fr.random(), wallet.getCompleteAddress().address).send({
const tx = await BoxReactContract.deploy(wallet, Fr.random(), wallet.getCompleteAddress().address, wallet.getCompleteAddress().publicKeys.masterNullifierPublicKey.hash(), wallet.getCompleteAddress().publicKeys.masterIncomingViewingPublicKey).send({
contractAddressSalt: salt,
});
const contract = await toast.promise(tx.deployed(), {
Expand Down
4 changes: 2 additions & 2 deletions boxes/boxes/react/src/hooks/useNumber.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ export function useNumber({ contract }: { contract: Contract }) {

setWait(true);
const deployerWallet = await deployerEnv.getWallet();
const viewTxReceipt = await contract!.methods.getNumber(deployerWallet.getCompleteAddress()).simulate();
const viewTxReceipt = await contract!.methods.getNumber(deployerWallet.getCompleteAddress().address).simulate();
toast(`Number is: ${viewTxReceipt.value}`);
setWait(false);
};
Expand All @@ -25,7 +25,7 @@ export function useNumber({ contract }: { contract: Contract }) {

const value = BigInt(el.value);
const deployerWallet = await deployerEnv.getWallet();
await toast.promise(contract!.methods.setNumber(value, deployerWallet.getCompleteAddress()).send().wait(), {
await toast.promise(contract!.methods.setNumber(value, deployerWallet.getCompleteAddress().address, deployerWallet.getCompleteAddress().publicKeys.masterNullifierPublicKey.hash(), deployerWallet.getCompleteAddress().publicKeys.masterIncomingViewingPublicKey).send().wait(), {
pending: 'Setting number...',
success: `Number set to: ${value}`,
error: 'Error setting number',
Expand Down
6 changes: 3 additions & 3 deletions boxes/boxes/react/tests/node.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ describe('BoxReact Contract Tests', () => {
beforeAll(async () => {
wallet = await deployerEnv.getWallet();
const salt = Fr.random();
contract = await BoxReactContract.deploy(wallet, Fr.random(), wallet.getCompleteAddress().address)
contract = await BoxReactContract.deploy(wallet, Fr.random(), wallet.getCompleteAddress().address, wallet.getCompleteAddress().publicKeys.masterNullifierPublicKey.hash(), wallet.getCompleteAddress().publicKeys.masterIncomingViewingPublicKey)
.send({ contractAddressSalt: salt })
.deployed();

Expand All @@ -21,11 +21,11 @@ describe('BoxReact Contract Tests', () => {

test('Can set a number', async () => {
logger.info(`${await wallet.getRegisteredAccounts()}`);
await contract.methods.setNumber(numberToSet, wallet.getCompleteAddress()).send().wait();
await contract.methods.setNumber(numberToSet, wallet.getCompleteAddress().address, wallet.getCompleteAddress().publicKeys.masterNullifierPublicKey.hash(), wallet.getCompleteAddress().publicKeys.masterIncomingViewingPublicKey).send().wait();
}, 40000);

test('Can read a number', async () => {
const viewTxReceipt = await contract.methods.getNumber(wallet.getCompleteAddress()).simulate();
const viewTxReceipt = await contract.methods.getNumber(wallet.getCompleteAddress().address).simulate();
expect(numberToSet.toBigInt()).toEqual(viewTxReceipt.value);
}, 40000);
});
13 changes: 7 additions & 6 deletions boxes/boxes/vanilla/src/contracts/src/main.nr
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
contract Vanilla {
use dep::aztec::prelude::{AztecAddress, PrivateMutable, Map, NoteInterface, NoteHeader};
use dep::aztec::protocol_types::grumpkin_point::GrumpkinPoint;

use dep::value_note::value_note::{ValueNote, VALUE_NOTE_LEN};

Expand All @@ -10,17 +11,17 @@ contract Vanilla {

#[aztec(private)]
#[aztec(initializer)]
fn constructor(number: Field, owner: AztecAddress) {
fn constructor(number: Field, owner: AztecAddress, owner_npk_m_hash: Field, owner_ivpk_m: GrumpkinPoint) {
let numbers = storage.numbers;
let mut new_number = ValueNote::new(number, owner);
numbers.at(owner).initialize(&mut new_number, true);
let mut new_number = ValueNote::new(number, owner_npk_m_hash);
numbers.at(owner).initialize(&mut new_number, true, owner_ivpk_m);
}

#[aztec(private)]
fn setNumber(number: Field, owner: AztecAddress) {
fn setNumber(number: Field, owner: AztecAddress, owner_npk_m_hash: Field, owner_ivpk_m: GrumpkinPoint) {
let numbers = storage.numbers;
let mut new_number = ValueNote::new(number, owner);
numbers.at(owner).replace(&mut new_number, true);
let mut new_number = ValueNote::new(number, owner_npk_m_hash);
numbers.at(owner).replace(&mut new_number, true, owner_ivpk_m);
}

unconstrained fn getNumber(owner: AztecAddress) -> pub ValueNote {
Expand Down
6 changes: 3 additions & 3 deletions boxes/boxes/vanilla/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ const setWait = (state: boolean): void =>
document.querySelector('#deploy').addEventListener('click', async ({ target }: any) => {
setWait(true);
wallet = await account.register();
contract = await VanillaContract.deploy(wallet, Fr.random(), wallet.getCompleteAddress().address)
contract = await VanillaContract.deploy(wallet, Fr.random(), wallet.getCompleteAddress().address, wallet.getCompleteAddress().publicKeys.masterNullifierPublicKey.hash(), wallet.getCompleteAddress().publicKeys.masterIncomingViewingPublicKey)
.send({ contractAddressSalt: Fr.random() })
.deployed();
alert(`Contract deployed at ${contract.address}`);
Expand All @@ -35,8 +35,8 @@ document.querySelector('#set').addEventListener('submit', async (e: Event) => {
setWait(true);

const { value } = document.querySelector('#number') as HTMLInputElement;
const owner = wallet.getCompleteAddress().address;
await contract.methods.setNumber(parseInt(value), owner).send().wait();
const { address: owner, publicKeys } = wallet.getCompleteAddress();
await contract.methods.setNumber(parseInt(value), owner, publicKeys.masterNullifierPublicKey.hash(), publicKeys.masterIncomingViewingPublicKey).send().wait();

setWait(false);
alert('Number set!');
Expand Down

0 comments on commit c45e319

Please sign in to comment.