Parcourir la source

consensus/state.rs: fixed calc_sigmas_test

aggstam il y a 3 ans
Parent
commit
816f0adb5c
1 fichiers modifiés avec 30 ajouts et 5 suppressions
  1. 30 5
      src/consensus/state.rs

+ 30 - 5
src/consensus/state.rs

@@ -907,11 +907,34 @@ impl From<ForkInfo> for Fork {
 
 #[cfg(test)]
 mod tests {
+    use crate::{
+        consensus::{
+            state::{Blockchain, ConsensusState},
+            utils::fbig2base,
+            Float10, TESTNET_BOOTSTRAP_TIMESTAMP, TESTNET_GENESIS_HASH_BYTES,
+            TESTNET_GENESIS_TIMESTAMP, TESTNET_INITIAL_DISTRIBUTION,
+        },
+        wallet::WalletDb,
+        Result,
+    };
+
+    #[async_std::test]
+    async fn calc_sigmas_test() -> Result<()> {
+        // Generate dummy state
+        let wallet = WalletDb::new("sqlite::memory:", "foo").await?;
+        let sled_db = sled::Config::new().temporary(true).open()?;
+        let blockchain =
+            Blockchain::new(&sled_db, *TESTNET_GENESIS_TIMESTAMP, *TESTNET_GENESIS_HASH_BYTES)?;
+        let state = ConsensusState::new(
+            wallet,
+            blockchain,
+            *TESTNET_BOOTSTRAP_TIMESTAMP,
+            *TESTNET_GENESIS_TIMESTAMP,
+            *TESTNET_GENESIS_HASH_BYTES,
+            *TESTNET_INITIAL_DISTRIBUTION,
+            true,
+        )?;
 
-    use crate::consensus::{state::ConsensusState, utils::fbig2base, Float10};
-
-    #[test]
-    fn calc_sigmas_test() {
         let precision_diff = Float10::try_from(
             "10000000000000000000000000000000000000000000000000000000000000000000000000",
         )
@@ -919,7 +942,7 @@ mod tests {
         let precision_diff_base = fbig2base(precision_diff);
         let f = Float10::try_from("0.01").unwrap();
         let total_stake = Float10::try_from("100").unwrap();
-        let (sigma1, sigma2) = ConsensusState::calc_sigmas(f, total_stake);
+        let (sigma1, sigma2) = state.calc_sigmas(f, total_stake);
         let sigma1_rhs = Float10::try_from(
             "2909373465034095801035568917399197865646520818579502832252119592405565440",
         )
@@ -944,5 +967,7 @@ mod tests {
         //https://github.com/ertosns/lotterysim/blob/master/pallas_unittests.csv
         assert!(sigma1_delta < precision_diff_base);
         assert!(sigma2_delta < precision_diff_base);
+
+        Ok(())
     }
 }