#![warn(
clippy::all,
clippy::pedantic,
clippy::nursery,
clippy::cargo,
clippy::unwrap_used,
clippy::expect_used,
clippy::panic,
clippy::dbg_macro,
clippy::missing_const_for_fn,
clippy::needless_pass_by_value,
clippy::redundant_pub_crate
)]
#![allow(
clippy::missing_errors_doc,
clippy::must_use_candidate,
clippy::multiple_crate_versions,
clippy::missing_panics_doc
)]
#[cfg(feature = "rest")]
pub mod api;
#[cfg(feature = "rest")]
pub mod client;
#[cfg(feature = "rest")]
pub mod config;
pub mod error;
#[cfg(feature = "keystore")]
pub mod keystore;
pub mod model;
#[cfg(feature = "fix")]
pub mod fix;
#[cfg(any(feature = "agent", feature = "commands"))]
pub mod access;
#[cfg(feature = "rest")]
mod auth;
#[cfg(feature = "commands")]
pub mod commands;
#[cfg(feature = "rest")]
mod keygen;
#[cfg(feature = "rest")]
pub mod transport;
#[cfg(feature = "agent")]
pub mod agent;
#[cfg(any(feature = "agent", feature = "commands"))]
pub use access::AccessLevel;
#[cfg(feature = "agent")]
pub use agent::{AgentExecutor, AuthToken, default_socket_path, serve};
#[cfg(feature = "rest")]
pub use auth::{Ed25519Signer, RequestAuth, Signer};
#[cfg(feature = "rest")]
pub use client::{ClientBuilder, Environment, RevolutXClient};
#[cfg(feature = "rest")]
pub use config::{ClientConfig, ConfigError, client_from_env};
pub use error::{ApiError, ApiErrorKind, Error, Result};
#[cfg(feature = "rest")]
pub use keygen::{GeneratedKeyPair, generate_key_pair, public_pem_from_private_pem};
#[cfg(feature = "keystore")]
pub use keystore::{Keystore, KeystoreError};
pub use model::Page;
#[cfg(feature = "rest")]
pub use model::RawPage;
pub use model::common::{ClientOrderId, OrderId, Price, Quantity, Side, Symbol, Timestamp};
pub use rust_decimal::Decimal;
#[cfg(feature = "rest")]
pub use transport::{LocalExecutor, RawResponse, RequestExecutor, RequestSpec};
#[cfg(all(test, feature = "rest"))]
#[allow(clippy::unwrap_used, clippy::expect_used, clippy::panic)]
mod tests {
use super::*;
#[test]
fn exposes_client_builder() {
let builder = RevolutXClient::builder();
assert_eq!(builder.selected_environment(), Environment::Production);
}
#[test]
fn public_client_builds_without_credentials() {
let client = RevolutXClient::builder().build().unwrap();
assert!(!client.is_authenticated());
}
}