Skip to content

Commit

Permalink
Refactor test
Browse files Browse the repository at this point in the history
  • Loading branch information
xorz57 committed Feb 16, 2024
1 parent 9a963f2 commit b24b524
Showing 1 changed file with 46 additions and 66 deletions.
112 changes: 46 additions & 66 deletions src/packets/packet_car_status_data.rs
Original file line number Diff line number Diff line change
Expand Up @@ -147,8 +147,7 @@ mod tests {

#[test]
fn test_car_status_data_serialization_deserialization() {
// Create some sample car status data
let original_car_status_data: CarStatusData = CarStatusData {
let original_data: CarStatusData = CarStatusData {
traction_control: 1u8,
anti_lock_brakes: 2u8,
fuel_mix: 3u8,
Expand Down Expand Up @@ -176,79 +175,60 @@ mod tests {
network_paused: 0u8,
};

// Serialize the data
let serialized_data: Vec<u8> = original_car_status_data.serialize().unwrap();

// Deserialize the serialized data
let deserialized_car_status_data: CarStatusData =
let serialized_data: Vec<u8> = original_data.serialize().unwrap();
let deserialized_data: CarStatusData =
CarStatusData::unserialize(&serialized_data).unwrap();

// Check if the deserialized data matches the original data
assert_eq!(original_car_status_data, deserialized_car_status_data);
assert_eq!(original_data, deserialized_data);
}

#[test]
fn test_packet_car_status_data_serialization_deserialization() {
// Create some sample packet car status data
let mut original_packet_car_status_data: PacketCarStatusData =
PacketCarStatusData::default();
original_packet_car_status_data.header.packet_format = 2021u16;
original_packet_car_status_data.header.game_year = 21u8;
original_packet_car_status_data.header.game_major_version = 1u8;
original_packet_car_status_data.header.game_minor_version = 3u8;
original_packet_car_status_data.header.packet_version = 1u8;
original_packet_car_status_data.header.packet_id = 0u8;
original_packet_car_status_data.header.session_uid = 123456789u64;
original_packet_car_status_data.header.session_time = 123.456f32;
original_packet_car_status_data.header.frame_identifier = 1000u32;
original_packet_car_status_data
.header
.overall_frame_identifier = 5000u32;
original_packet_car_status_data.header.player_car_index = 1u8;
original_packet_car_status_data
.header
.secondary_player_car_index = 255u8;

// Populate car status data array with some sample data
for car_data in original_packet_car_status_data.car_status_data.iter_mut() {
car_data.traction_control = 1u8;
car_data.anti_lock_brakes = 2u8;
car_data.fuel_mix = 3u8;
car_data.front_brake_bias = 4u8;
car_data.pit_limiter_status = 5u8;
car_data.fuel_in_tank = 0.1f32;
car_data.fuel_capacity = 0.2f32;
car_data.fuel_remaining_laps = 0.3f32;
car_data.max_rpm = 1000u16;
car_data.idle_rpm = 500u16;
car_data.max_gears = 7u8;
car_data.drs_allowed = 1u8;
car_data.drs_activation_distance = 50u16;
car_data.actual_tyre_compound = 1u8;
car_data.visual_tyre_compound = 2u8;
car_data.tyres_age_laps = 10u8;
car_data.vehicle_fia_flags = -1i8;
car_data.engine_power_ice = 300.0f32;
car_data.engine_power_mguk = 200.0f32;
car_data.ers_store_energy = 150.0f32;
car_data.ers_deploy_mode = 1u8;
car_data.ers_harvested_this_lap_mguk = 100.0f32;
car_data.ers_harvested_this_lap_mguh = 50.0f32;
car_data.ers_deployed_this_lap = 75.0f32;
car_data.network_paused = 0u8;
let mut original_packet: PacketCarStatusData = PacketCarStatusData::default();
original_packet.header.packet_format = 2021u16;
original_packet.header.game_year = 21u8;
original_packet.header.game_major_version = 1u8;
original_packet.header.game_minor_version = 3u8;
original_packet.header.packet_version = 1u8;
original_packet.header.packet_id = 0u8;
original_packet.header.session_uid = 123456789u64;
original_packet.header.session_time = 123.456f32;
original_packet.header.frame_identifier = 1000u32;
original_packet.header.overall_frame_identifier = 5000u32;
original_packet.header.player_car_index = 1u8;
original_packet.header.secondary_player_car_index = 255u8;
for data in original_packet.car_status_data.iter_mut() {
data.traction_control = 1u8;
data.anti_lock_brakes = 2u8;
data.fuel_mix = 3u8;
data.front_brake_bias = 4u8;
data.pit_limiter_status = 5u8;
data.fuel_in_tank = 0.1f32;
data.fuel_capacity = 0.2f32;
data.fuel_remaining_laps = 0.3f32;
data.max_rpm = 1000u16;
data.idle_rpm = 500u16;
data.max_gears = 7u8;
data.drs_allowed = 1u8;
data.drs_activation_distance = 50u16;
data.actual_tyre_compound = 1u8;
data.visual_tyre_compound = 2u8;
data.tyres_age_laps = 10u8;
data.vehicle_fia_flags = -1i8;
data.engine_power_ice = 300.0f32;
data.engine_power_mguk = 200.0f32;
data.ers_store_energy = 150.0f32;
data.ers_deploy_mode = 1u8;
data.ers_harvested_this_lap_mguk = 100.0f32;
data.ers_harvested_this_lap_mguh = 50.0f32;
data.ers_deployed_this_lap = 75.0f32;
data.network_paused = 0u8;
}

// Serialize the data
let serialized_data: Vec<u8> = original_packet_car_status_data.serialize().unwrap();

// Deserialize the serialized data
let deserialized_packet_car_status_data: PacketCarStatusData =
let serialized_data: Vec<u8> = original_packet.serialize().unwrap();
let deserialized_packet: PacketCarStatusData =
PacketCarStatusData::unserialize(&serialized_data).unwrap();

// Check if the deserialized data matches the original data
assert_eq!(
original_packet_car_status_data,
deserialized_packet_car_status_data
);
assert_eq!(original_packet, deserialized_packet);
}
}

0 comments on commit b24b524

Please sign in to comment.