mirror of
https://github.com/serai-dex/serai.git
synced 2025-12-08 20:29:23 +00:00
Support extracting timestamps from blocks
This commit is contained in:
31
substrate/client/tests/time.rs
Normal file
31
substrate/client/tests/time.rs
Normal file
@@ -0,0 +1,31 @@
|
||||
use std::time::{Duration, SystemTime};
|
||||
|
||||
use tokio::time::sleep;
|
||||
|
||||
use serai_client::Serai;
|
||||
|
||||
mod common;
|
||||
use common::serai;
|
||||
|
||||
serai_test!(
|
||||
async fn time() {
|
||||
let serai = serai().await;
|
||||
|
||||
let mut number = serai.get_latest_block().await.unwrap().number();
|
||||
let mut done = 0;
|
||||
while done < 3 {
|
||||
// Wait for the next block
|
||||
let block = serai.get_latest_block().await.unwrap();
|
||||
if block.number() == number {
|
||||
sleep(Duration::from_secs(1)).await;
|
||||
continue;
|
||||
}
|
||||
number = block.number();
|
||||
|
||||
// Make sure the time we extract from the block is within 5 seconds of now
|
||||
let now = SystemTime::now().duration_since(SystemTime::UNIX_EPOCH).unwrap().as_secs();
|
||||
assert!(now.saturating_sub(block.time().unwrap()) < 5);
|
||||
done += 1;
|
||||
}
|
||||
}
|
||||
);
|
||||
Reference in New Issue
Block a user