use std::fmt;
#[derive(Debug, Clone, PartialEq, Eq, Default)]
pub enum OrderingPolicy {
None,
Connection,
Publisher,
#[default]
Topic,
Key,
Causal,
}
impl fmt::Display for OrderingPolicy {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
f.write_str(match self {
OrderingPolicy::None => "none",
OrderingPolicy::Connection => "connection",
OrderingPolicy::Publisher => "publisher",
OrderingPolicy::Topic => "topic",
OrderingPolicy::Key => "key",
OrderingPolicy::Causal => "causal",
})
}
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn default_is_topic() {
assert_eq!(OrderingPolicy::default(), OrderingPolicy::Topic);
}
}