pub struct MockClock { /* private fields */ }Expand description
Mock clock for testing with controllable time.
The mock clock starts at a fixed or specified time and only advances
when explicitly told to via advance().
Implementations§
Source§impl MockClock
impl MockClock
Sourcepub fn fixed(iso_time: &str) -> Self
pub fn fixed(iso_time: &str) -> Self
Create a mock clock fixed at the specified ISO 8601 time.
§Example
use xerv_core::testing::{MockClock, ClockProvider};
let clock = MockClock::fixed("2024-01-15T10:30:00Z");
assert!(clock.system_time_millis() > 0);Sourcepub fn current_nanos(&self) -> u64
pub fn current_nanos(&self) -> u64
Get the current monotonic time in nanoseconds.
Trait Implementations§
Source§impl ClockProvider for MockClock
impl ClockProvider for MockClock
Source§fn system_time_millis(&self) -> u64
fn system_time_millis(&self) -> u64
Get the current system time as milliseconds since UNIX epoch.
Source§fn sleep(
&self,
duration: Duration,
) -> Pin<Box<dyn Future<Output = ()> + Send + '_>>
fn sleep( &self, duration: Duration, ) -> Pin<Box<dyn Future<Output = ()> + Send + '_>>
Sleep for the specified duration. Read more
Auto Trait Implementations§
impl !Freeze for MockClock
impl !RefUnwindSafe for MockClock
impl Send for MockClock
impl Sync for MockClock
impl Unpin for MockClock
impl UnwindSafe for MockClock
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.