1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- import * as anchor from "@coral-xyz/anchor";
- import { Program, getProvider } from "@coral-xyz/anchor";
- import { Keypair, SystemProgram } from "@solana/web3.js";
- import { Floats } from "../target/types/floats";
- import { assert } from "chai";
- describe("floats", () => {
- // Configure the client to use the local cluster.
- const provider = anchor.AnchorProvider.env();
- anchor.setProvider(provider);
- const program = anchor.workspace.Floats as Program<Floats>;
- it("Creates an account with float data", async () => {
- const accountKeypair = Keypair.generate();
- await program.methods
- .create(1.0, 2.0)
- .accounts({
- account: accountKeypair.publicKey,
- authority: provider.wallet.publicKey,
- systemProgram: SystemProgram.programId,
- })
- .signers([accountKeypair])
- .rpc();
- const account = await program.account.floatDataAccount.fetch(
- accountKeypair.publicKey
- );
- assert.strictEqual(account.dataF32, 1.0);
- assert.strictEqual(account.dataF64, 2.0);
- });
- it("Updates an account with float data", async () => {
- const accountKeypair = Keypair.generate();
- const authorityPublicKey = provider.wallet.publicKey;
- await program.methods
- .create(1.0, 2.0)
- .accounts({
- account: accountKeypair.publicKey,
- authority: authorityPublicKey,
- systemProgram: SystemProgram.programId,
- })
- .signers([accountKeypair])
- .rpc();
- let account = await program.account.floatDataAccount.fetch(
- accountKeypair.publicKey
- );
- await program.methods
- .update(3.0, 4.0)
- .accounts({
- account: accountKeypair.publicKey,
- authority: authorityPublicKey,
- })
- .rpc();
- account = await program.account.floatDataAccount.fetch(
- accountKeypair.publicKey
- );
- assert.strictEqual(account.dataF32, 3.0);
- assert.strictEqual(account.dataF64, 4.0);
- });
- });
|