delegation-program-sdk

Crates.iodelegation-program-sdk
lib.rsdelegation-program-sdk
version0.1.3
sourcesrc
created_at2024-05-25 15:49:51.247638
updated_at2024-06-27 16:58:02.726981
descriptionDelegation Program SDK
homepagehttps://www.magicblock.gg/
repositoryhttps://github.com/magicblock-labs/delegation-program
max_upload_size
id1252040
size270,540
Gabriele Picco (GabrielePicco)

documentation

https://docs.magicblock.gg/

README

Delegation program

Delegation module for https://arxiv.org/pdf/2311.02650.pdf

Program

  • Consts – Program constants.

  • Entrypoint – The program entrypoint.

  • Errors – Custom program errors.

  • Idl – Interface for clients, explorers, and programs.

  • Instruction – Declared instructions and arguments.

  • Loaders – Validation logic for loading Solana accounts.

Instructions

State

Tests

To run the test suite, use the Solana toolchain:

cargo test-sbf

For line coverage, use llvm-cov:

cargo llvm-cov --test test_commit_state

(llvm-cov currently does not work with instructions with CPIs e.g.: delegate, undelegate)

Integration Tests

The integration tests are located in the tests/integration directory. The tests consist of a Bolt/Anchor program that uses the delegation program to delegate, commit, and undelegate accounts. This can be also used a reference for how to interact with the program.

To run the integration test, use Bolt or Anchor:

cd tests/integration && bolt test

or:

cd tests/integration && anchor test
Commit count: 0

cargo fmt