Skip to content

Commit be4c998

Browse files
committed
[ISSUE #1360]🧪Add unit test for DeleteTopicRequestHeader
1 parent cb9684e commit be4c998

File tree

1 file changed

+84
-0
lines changed

1 file changed

+84
-0
lines changed

rocketmq-remoting/src/protocol/header/delete_topic_request_header.rs

+84
Original file line numberDiff line numberDiff line change
@@ -64,3 +64,87 @@ impl FromMap for DeleteTopicRequestHeader {
6464
})
6565
}
6666
}
67+
68+
#[cfg(test)]
69+
mod tests {
70+
use std::collections::HashMap;
71+
72+
use super::*;
73+
74+
#[test]
75+
fn delete_topic_request_header_to_map() {
76+
let header = DeleteTopicRequestHeader {
77+
topic: CheetahString::from("test_topic"),
78+
topic_request_header: None,
79+
};
80+
81+
let map = header.to_map().unwrap();
82+
assert_eq!(
83+
map.get(&CheetahString::from_static_str(
84+
DeleteTopicRequestHeader::TOPIC
85+
))
86+
.unwrap(),
87+
&CheetahString::from("test_topic")
88+
);
89+
}
90+
91+
#[test]
92+
fn delete_topic_request_header_to_map_with_topic_request_header() {
93+
let topic_request_header = TopicRequestHeader {
94+
// Initialize fields as needed
95+
rpc_request_header: None,
96+
lo: None,
97+
};
98+
let header = DeleteTopicRequestHeader {
99+
topic: CheetahString::from("test_topic"),
100+
topic_request_header: Some(topic_request_header),
101+
};
102+
103+
let map = header.to_map().unwrap();
104+
assert_eq!(
105+
map.get(&CheetahString::from_static_str(
106+
DeleteTopicRequestHeader::TOPIC
107+
))
108+
.unwrap(),
109+
&CheetahString::from("test_topic")
110+
);
111+
// Add assertions for fields from topic_request_header
112+
}
113+
114+
#[test]
115+
fn delete_topic_request_header_from_map() {
116+
let mut map = HashMap::new();
117+
map.insert(
118+
CheetahString::from_static_str(DeleteTopicRequestHeader::TOPIC),
119+
CheetahString::from("test_topic"),
120+
);
121+
122+
let header = <DeleteTopicRequestHeader as FromMap>::from(&map).unwrap();
123+
assert_eq!(header.topic, CheetahString::from("test_topic"));
124+
assert!(!header.topic_request_header.is_none());
125+
}
126+
127+
#[test]
128+
fn delete_topic_request_header_from_map_with_topic_request_header() {
129+
let mut map = HashMap::new();
130+
map.insert(
131+
CheetahString::from_static_str(DeleteTopicRequestHeader::TOPIC),
132+
CheetahString::from("test_topic"),
133+
);
134+
// Add entries for fields from topic_request_header
135+
136+
let header = <DeleteTopicRequestHeader as FromMap>::from(&map).unwrap();
137+
assert_eq!(header.topic, CheetahString::from("test_topic"));
138+
assert!(header.topic_request_header.is_some());
139+
// Add assertions for fields from topic_request_header
140+
}
141+
142+
#[test]
143+
fn delete_topic_request_header_from_map_missing_topic() {
144+
let map = HashMap::new();
145+
146+
let header = <DeleteTopicRequestHeader as FromMap>::from(&map).unwrap();
147+
assert_eq!(header.topic, CheetahString::default());
148+
assert!(!header.topic_request_header.is_none());
149+
}
150+
}

0 commit comments

Comments
 (0)