use std::time::Duration;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize)]
pub enum TestEventOp {
Clear,
Wait(TestEvent),
WaitN(TestEvent, usize),
WaitAll(Vec<TestEvent>),
WaitAllN(Vec<(TestEvent, usize)>),
WaitTimeout(TestEvent, Duration),
WaitNTimeout(TestEvent, usize, Duration),
WaitAllTimeout(Vec<TestEvent>, Duration),
WaitAllNTimeout(Vec<(TestEvent, usize)>, Duration),
}
#[derive(Copy, Clone, Debug, Eq, PartialEq, Serialize, Deserialize)]
pub enum TestEvent {
FundingGenerationHandled,
TxBroadcasted,
ChannelPending,
ChannelReady,
PaymentClaimable,
PaymentClaimed,
PaymentSent,
PaymentFailed,
PaymentRetried,
ChannelClosed,
SpendableOutputs,
}
impl From<TestEvent> for Vec<TestEvent> {
fn from(event: TestEvent) -> Self {
vec![event]
}
}