Skip to content

Commit d18ed66

Browse files
authored
Merge pull request solana-labs#64 from jarry-xiao/gumball-machine
Gumball machine v0
2 parents 170fd90 + 271d9e6 commit d18ed66

File tree

1 file changed

+3
-25
lines changed

1 file changed

+3
-25
lines changed

contracts/tests/bubblegum-test.ts

Lines changed: 3 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import { buildTree, Tree } from "./merkle-tree";
1818
import {
1919
decodeMerkleRoll,
2020
getMerkleRollAccountSize,
21+
assertOnChainMerkleRollProperties,
2122
} from "../sdk/gummyroll";
2223
import NodeWallet from "@project-serum/anchor/dist/cjs/nodewallet";
2324
import {
@@ -148,31 +149,8 @@ describe("bubblegum", () => {
148149
await Bubblegum.provider.send(tx, [payer, merkleRollKeypair], {
149150
commitment: "confirmed",
150151
});
151-
const merkleRoll = await Bubblegum.provider.connection.getAccountInfo(
152-
merkleRollKeypair.publicKey
153-
);
154-
155-
let onChainMerkle = decodeMerkleRoll(merkleRoll.data);
156-
157-
// Check header bytes are set correctly
158-
assert(
159-
onChainMerkle.header.maxDepth === MAX_DEPTH,
160-
`Max depth does not match ${onChainMerkle.header.maxDepth}, expected ${MAX_DEPTH}`
161-
);
162-
assert(
163-
onChainMerkle.header.maxBufferSize === MAX_SIZE,
164-
`Max buffer size does not match ${onChainMerkle.header.maxBufferSize}, expected ${MAX_SIZE}`
165-
);
166-
167-
assert(
168-
onChainMerkle.header.authority.equals(authority),
169-
"Failed to write auth pubkey"
170-
);
171-
172-
assert(
173-
onChainMerkle.roll.changeLogs[0].root.equals(new PublicKey(tree.root)),
174-
"On chain root does not match root passed in instruction"
175-
);
152+
153+
await assertOnChainMerkleRollProperties(Bubblegum.provider.connection, MAX_DEPTH, MAX_SIZE, authority, new PublicKey(tree.root), merkleRollKeypair.publicKey);
176154

177155
return [merkleRollKeypair, tree, authority, nonce];
178156
}

0 commit comments

Comments
 (0)