pub use wp_solana_amm_math::{
decrease_liquidity_quote, decrease_liquidity_quote_a, decrease_liquidity_quote_b,
get_initializable_tick_index, get_tick_array_start_index, get_tick_index_in_array,
increase_liquidity_quote, increase_liquidity_quote_a, increase_liquidity_quote_b,
order_tick_indexes, tick_count, DecreaseLiquidityQuote, IncreaseLiquidityQuote, TickRange,
TransferFee, RAYDIUM_TICK_ARRAY_SIZE, WHIRLPOOL_TICK_ARRAY_SIZE,
};
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_order_tick_indexes() {
let range = order_tick_indexes(100, -100);
assert_eq!(range.tick_lower_index, -100);
assert_eq!(range.tick_upper_index, 100);
let range = order_tick_indexes(-100, 100);
assert_eq!(range.tick_lower_index, -100);
assert_eq!(range.tick_upper_index, 100);
}
#[test]
fn test_get_initializable_tick_index() {
assert_eq!(get_initializable_tick_index(5, 64, None), 0);
assert_eq!(get_initializable_tick_index(33, 64, None), 64);
assert_eq!(get_initializable_tick_index(33, 64, Some(false)), 0);
assert_eq!(get_initializable_tick_index(33, 64, Some(true)), 64);
assert_eq!(get_initializable_tick_index(-33, 64, Some(false)), -64);
assert_eq!(get_initializable_tick_index(-33, 64, Some(true)), 0);
assert_eq!(get_initializable_tick_index(128, 64, Some(true)), 128);
}
}