|
|
@@ -178,8 +178,11 @@ pub fn truncate(amount: u64, decimals: u16, token_decimals: u16) -> Result<u64>
|
|
|
|
|
|
#[allow(unused_imports)]
|
|
|
mod tests {
|
|
|
+ use num_bigint::ToBigUint;
|
|
|
+
|
|
|
use super::{decode_base10, encode_base10, truncate};
|
|
|
|
|
|
+
|
|
|
#[test]
|
|
|
fn test_decode_base10() {
|
|
|
assert_eq!(124, decode_base10("12.33", 1, false).unwrap());
|
|
|
@@ -191,11 +194,17 @@ mod tests {
|
|
|
|
|
|
#[test]
|
|
|
fn test_encode_base10() {
|
|
|
- assert_eq!("23.4321111", &encode_base10(234321111, 7));
|
|
|
- assert_eq!("23432111.1", &encode_base10(234321111, 1));
|
|
|
- assert_eq!("234321.1", &encode_base10(2343211, 1));
|
|
|
- assert_eq!("2343211", &encode_base10(2343211, 0));
|
|
|
- assert_eq!("0.00002343", &encode_base10(2343, 8));
|
|
|
+ assert_eq!(
|
|
|
+ "23.4321111",
|
|
|
+ &encode_base10((234321111 as u64).to_biguint().unwrap(), 7)
|
|
|
+ );
|
|
|
+ assert_eq!(
|
|
|
+ "23432111.1",
|
|
|
+ &encode_base10((234321111 as u64).to_biguint().unwrap(), 1)
|
|
|
+ );
|
|
|
+ assert_eq!("234321.1", &encode_base10((2343211 as u64).to_biguint().unwrap(), 1));
|
|
|
+ assert_eq!("2343211", &encode_base10((2343211 as u64).to_biguint().unwrap(), 0));
|
|
|
+ assert_eq!("0.00002343", &encode_base10((2343 as u64).to_biguint().unwrap(), 8));
|
|
|
}
|
|
|
|
|
|
#[test]
|