use crate::WireError;
use crate::codec::{WireDecode, WireEncode};
use bytes::BytesMut;
#[derive(Debug, Clone, PartialEq, Eq)]
pub struct GetUsersRequest;
impl WireEncode for GetUsersRequest {
fn encoded_size(&self) -> usize {
0
}
fn encode(&self, _buf: &mut BytesMut) {}
}
impl WireDecode for GetUsersRequest {
fn decode(_buf: &[u8]) -> Result<(Self, usize), WireError> {
Ok((Self, 0))
}
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn roundtrip() {
let req = GetUsersRequest;
let bytes = req.to_bytes();
assert!(bytes.is_empty());
let (decoded, consumed) = GetUsersRequest::decode(&bytes).unwrap();
assert_eq!(consumed, 0);
assert_eq!(decoded, req);
}
}