azalea_protocol/packets/game/
c_command_suggestions.rs1use azalea_brigadier::suggestion::Suggestions;
2use azalea_buf::AzBuf;
3use azalea_protocol_macros::ClientboundGamePacket;
4
5#[derive(Clone, Debug, AzBuf, ClientboundGamePacket)]
6pub struct ClientboundCommandSuggestions {
7 #[var]
8 pub id: u32,
9 pub suggestions: Suggestions,
10}
11
12#[cfg(test)]
13mod tests {
14 use std::io::Cursor;
15
16 use azalea_brigadier::{context::StringRange, suggestion::Suggestion};
17 use azalea_buf::{AzaleaRead, AzaleaWrite};
18
19 use super::*;
20
21 #[test]
22 fn test_suggestions() {
23 let suggestions = Suggestions::new(
24 StringRange::new(0, 5),
25 vec![Suggestion::new_with_tooltip(
26 StringRange::new(1, 4),
27 "foo",
28 "bar".to_string(),
29 )],
30 );
31 let mut buf = Vec::new();
32 suggestions.azalea_write(&mut buf).unwrap();
33 let mut cursor = Cursor::new(&buf[..]);
34 let suggestions = Suggestions::azalea_read(&mut cursor).unwrap();
35 assert_eq!(suggestions, suggestions);
36 }
37}