#[derive(Debug, Clone, Copy, PartialEq, Eq, Default)]
#[non_exhaustive]
pub enum AeronStatus {
Connected,
#[default]
Disconnected,
BackPressured,
Closed,
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn given_no_explicit_value_when_default_aeron_status_called_then_returns_disconnected() {
assert_eq!(AeronStatus::default(), AeronStatus::Disconnected);
}
#[test]
fn given_aeron_status_when_matched_then_each_variant_distinguishable() {
let label = match AeronStatus::Connected {
AeronStatus::Connected => "connected",
AeronStatus::Disconnected => "disconnected",
AeronStatus::BackPressured => "back-pressured",
AeronStatus::Closed => "closed",
};
assert_eq!(label, "connected");
}
}