trident_client/
lib.rs

1//! Trident is a suite of tools and libraries for testing, auditing and developing.
2//! [Solana](https://solana.com/) / [Anchor](https://book.anchor-lang.com/chapter_1/what_is_anchor.html) programs (smart contracts).
3//!
4//! Trident could be useful for writing Rust dApps, too.
5
6mod commander;
7mod coverage;
8mod error;
9mod idl_loader;
10mod server;
11mod test_generator;
12mod test_generator_manifest;
13mod test_generator_template;
14mod utils;
15
16pub mod ___private {
17    pub use super::commander::Commander;
18    pub use super::commander::Error;
19    pub use super::idl_loader::load_idls;
20    pub use super::idl_loader::IdlError;
21    pub use super::server::DashboardServer;
22    pub use super::test_generator::TestGenerator;
23}
24
25mod constants {
26    // Tomls
27    pub(crate) const CARGO_TOML: &str = "Cargo.toml";
28    pub(crate) const TRIDENT_TOML: &str = "Trident.toml";
29
30    // Tests
31    pub(crate) const TESTS_WORKSPACE_DIRECTORY: &str = "trident-tests";
32    pub(crate) const INSTRUCTIONS_DIRECTORY: &str = "instructions";
33    pub(crate) const TRANSACTIONS_DIRECTORY: &str = "transactions";
34
35    // Fuzzing
36    pub(crate) const FUZZ_ACCOUNTS_FILE_NAME: &str = "fuzz_accounts.rs";
37    pub(crate) const TYPES_FILE_NAME: &str = "types.rs";
38    pub(crate) const FUZZ_TEST: &str = "test_fuzz.rs";
39
40    // Formatting
41    pub(crate) const SKIP: &str = "\x1b[33mSkip\x1b[0m";
42    pub(crate) const FINISH: &str = "\x1b[92mFinished\x1b[0m";
43}