kafka_wire_protocol/schema/api_versions_request/
v0.rs1use std::io::{Read, Result, Write};
4
5use serde::{Deserialize, Serialize};
6#[cfg(test)] use proptest_derive::Arbitrary;
7
8use crate::markers::{ApiMessage, Request};
9use crate::readable_writable::{Readable, Writable};
10
11#[derive(Serialize, Deserialize, PartialEq, Debug, Clone)]
13#[cfg_attr(test, derive(Arbitrary))]
14pub struct ApiVersionsRequest {
15}
16
17impl ApiMessage for ApiVersionsRequest {
18 fn api_key(&self) -> i16 {
19 18
20 }
21
22 fn version(&self) -> i16 {
23 0
24 }
25}
26
27impl Request for ApiVersionsRequest { }
28
29impl Default for ApiVersionsRequest {
30 fn default() -> Self {
31 ApiVersionsRequest {
32 }
33 }
34}
35
36impl ApiVersionsRequest {
37 pub fn new() -> Self {
38 Self {
39 }
40 }
41}
42
43#[cfg(test)]
44mod tests_api_versions_request_new_and_default {
45 use super::*;
46
47 #[test]
48 fn test() {
49 let d = ApiVersionsRequest::new(
50 );
51 assert_eq!(d, ApiVersionsRequest::default());
52 }
53}
54
55impl Readable for ApiVersionsRequest {
56 fn read(#[allow(unused)] input: &mut impl Read) -> Result<Self> {
57 Ok(ApiVersionsRequest {
58
59 })
60 }
61}
62
63impl Writable for ApiVersionsRequest {
64 fn write(&self, #[allow(unused)] output: &mut impl Write) -> Result<()> {
65 Ok(())
66 }
67}
68
69#[cfg(test)]
70mod tests {
71 use super::*;
72 use proptest::prelude::*;
73
74 #[test]
75 fn test_java_default() {
76 crate::test_utils::test_java_default::<ApiVersionsRequest>("ApiVersionsRequest", 0);
77 }
78
79 proptest! {
80 #[test]
81 fn test_serde(data: ApiVersionsRequest) {
82 crate::test_utils::test_serde(&data)?;
83 }
84 }
85
86 proptest! {
87 #[test]
88 fn test_java_arbitrary(data: ApiVersionsRequest) {
89 crate::test_utils::test_java_arbitrary(&data, "ApiVersionsRequest", 0);
90 }
91 }
92}