Skip to content

Commit 8fdd637

Browse files
[ISSUE ##1330]🧪Add unit test for MessageModel
1 parent 6284f3e commit 8fdd637

File tree

1 file changed

+54
-0
lines changed

1 file changed

+54
-0
lines changed

rocketmq-remoting/src/protocol/heartbeat/message_model.rs

+54
Original file line numberDiff line numberDiff line change
@@ -89,3 +89,57 @@ impl Display for MessageModel {
8989
write!(f, "{}", self.get_mode_cn())
9090
}
9191
}
92+
93+
#[cfg(test)]
94+
mod tests {
95+
use serde_json;
96+
97+
use super::*;
98+
99+
#[test]
100+
fn serialize_message_model_broadcasting() {
101+
let model = MessageModel::Broadcasting;
102+
let serialized = serde_json::to_string(&model).unwrap();
103+
assert_eq!(serialized, "\"BROADCASTING\"");
104+
}
105+
106+
#[test]
107+
fn serialize_message_model_clustering() {
108+
let model = MessageModel::Clustering;
109+
let serialized = serde_json::to_string(&model).unwrap();
110+
assert_eq!(serialized, "\"CLUSTERING\"");
111+
}
112+
113+
#[test]
114+
fn deserialize_message_model_broadcasting() {
115+
let json = "\"BROADCASTING\"";
116+
let deserialized: MessageModel = serde_json::from_str(json).unwrap();
117+
assert_eq!(deserialized, MessageModel::Broadcasting);
118+
}
119+
120+
#[test]
121+
fn deserialize_message_model_clustering() {
122+
let json = "\"CLUSTERING\"";
123+
let deserialized: MessageModel = serde_json::from_str(json).unwrap();
124+
assert_eq!(deserialized, MessageModel::Clustering);
125+
}
126+
127+
#[test]
128+
fn deserialize_message_model_invalid() {
129+
let json = "\"INVALID\"";
130+
let deserialized: Result<MessageModel, _> = serde_json::from_str(json);
131+
assert!(deserialized.is_err());
132+
}
133+
134+
#[test]
135+
fn display_message_model_broadcasting() {
136+
let model = MessageModel::Broadcasting;
137+
assert_eq!(model.to_string(), "BROADCASTING");
138+
}
139+
140+
#[test]
141+
fn display_message_model_clustering() {
142+
let model = MessageModel::Clustering;
143+
assert_eq!(model.to_string(), "CLUSTERING");
144+
}
145+
}

0 commit comments

Comments
 (0)