crabka-protocol 0.2.0

Apache Kafka wire-protocol codec (4.3.0), with typed RecordBatch and zero-copy borrowed decode
Documentation
// AUTO-GENERATED by crabka-protocol-codegen against a9ce3221537b8653448750697915607dc7936cf3. Do not edit.
// Clippy lints that fire on generated code patterns are suppressed here so
// that regenerating the file does not require manual allow annotations.
#![allow(
    clippy::absurd_extreme_comparisons,
    clippy::cast_possible_truncation,
    clippy::cast_possible_wrap,
    clippy::cast_sign_loss,
    clippy::default_trait_access,
    clippy::must_use_candidate,
    clippy::new_without_default,
    clippy::nonminimal_bool,
    clippy::too_many_lines,
    clippy::unnecessary_wraps,
    clippy::unreadable_literal,
    unused_mut,
    unused_variables
)]

include!(concat!(
    env!("CARGO_MANIFEST_DIR"),
    "/generated/AssignReplicasToDirsResponse.owned.rs"
));

#[cfg(test)]
mod tests {
    use super::*;
    use crate::{Decode, Encode};
    use assert2::assert;
    use bytes::BytesMut;

    fn roundtrip(msg: &AssignReplicasToDirsResponse, v: i16) {
        let mut buf = BytesMut::new();
        msg.encode(&mut buf, v).unwrap();
        assert!(msg.encoded_len(v) == buf.len());
        let bytes = buf.freeze();
        let mut cur = &bytes[..];
        let decoded = AssignReplicasToDirsResponse::decode(&mut cur, v).unwrap();
        assert!(cur.is_empty());
        let mut reencoded = BytesMut::new();
        decoded.encode(&mut reencoded, v).unwrap();
        assert!(&reencoded[..] == &bytes[..]);
        // Exercise the JVM-oracle default-JSON builder for this version.
        let _ = default_json(v);
    }

    #[test]
    fn default_roundtrips_all_versions() {
        for v in MIN_VERSION..=MAX_VERSION {
            roundtrip(&AssignReplicasToDirsResponse::default(), v);
        }
    }

    #[test]
    fn populated_roundtrips_all_versions() {
        for v in MIN_VERSION..=MAX_VERSION {
            roundtrip(&AssignReplicasToDirsResponse::populated(v), v);
        }
    }
}