Finished with tests for server bound login packets
This commit is contained in:
parent
f1a817d447
commit
1fca9c3666
@ -186,7 +186,7 @@ impl<R: Read> PacketRead for R {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn read_byte_array(&mut self) -> Result<Vec<u8>, DecodeError> {
|
fn read_byte_array(&mut self) -> Result<Vec<u8>, DecodeError> {
|
||||||
let length = self.read_var_u32()?;
|
let length = self.read_var_i32()?;
|
||||||
|
|
||||||
let mut buf = vec![0; length as usize];
|
let mut buf = vec![0; length as usize];
|
||||||
self.read_exact(&mut buf)?;
|
self.read_exact(&mut buf)?;
|
||||||
@ -238,7 +238,7 @@ impl<W: Write> PacketWrite for W {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn write_byte_array(&mut self, value: &[u8]) -> Result<(), EncodeError> {
|
fn write_byte_array(&mut self, value: &[u8]) -> Result<(), EncodeError> {
|
||||||
self.write_var_u32(value.len() as u32)?;
|
self.write_var_i32(value.len() as i32)?;
|
||||||
self.write_all(value)?;
|
self.write_all(value)?;
|
||||||
|
|
||||||
Ok(())
|
Ok(())
|
||||||
|
@ -395,8 +395,8 @@ impl PacketParser for LoginPluginRequest {
|
|||||||
|
|
||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
mod tests {
|
mod tests {
|
||||||
use crate::login::LoginPluginResponse;
|
|
||||||
use crate::login::LoginStart;
|
use crate::login::LoginStart;
|
||||||
|
use crate::login::{EncryptionResponse, LoginPluginResponse};
|
||||||
use crate::PacketParser;
|
use crate::PacketParser;
|
||||||
use std::io::Cursor;
|
use std::io::Cursor;
|
||||||
|
|
||||||
@ -424,6 +424,35 @@ mod tests {
|
|||||||
assert_eq!(login_start.name, String::from("Username"));
|
assert_eq!(login_start.name, String::from("Username"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_encryption_response_encode() {
|
||||||
|
let encryption_response = EncryptionResponse {
|
||||||
|
shared_secret: vec![1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
|
||||||
|
verify_token: vec![1, 2, 3, 4],
|
||||||
|
};
|
||||||
|
|
||||||
|
let mut vec = Vec::new();
|
||||||
|
encryption_response.encode(&mut vec).unwrap();
|
||||||
|
|
||||||
|
assert_eq!(
|
||||||
|
vec,
|
||||||
|
include_bytes!("../test/packet/login/encryption_response.dat").to_vec()
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_encryption_response_decode() {
|
||||||
|
let mut cursor =
|
||||||
|
Cursor::new(include_bytes!("../test/packet/login/encryption_response.dat").to_vec());
|
||||||
|
let encryption_response = EncryptionResponse::decode(&mut cursor).unwrap();
|
||||||
|
|
||||||
|
assert_eq!(
|
||||||
|
encryption_response.shared_secret,
|
||||||
|
vec![1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
|
||||||
|
);
|
||||||
|
assert_eq!(encryption_response.verify_token, vec![1, 2, 3, 4]);
|
||||||
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_login_plugin_response_encode() {
|
fn test_login_plugin_response_encode() {
|
||||||
let login_plugin_response = LoginPluginResponse {
|
let login_plugin_response = LoginPluginResponse {
|
||||||
|
3
protocol/test/packet/login/encryption_response.dat
Normal file
3
protocol/test/packet/login/encryption_response.dat
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user