Skip to content

Commit 18eb056

Browse files
committed
wip: squashme: encode/decode
Signed-off-by: leongross <[email protected]>
1 parent 21101c1 commit 18eb056

File tree

6 files changed

+949
-153
lines changed

6 files changed

+949
-153
lines changed

Cargo.lock

Lines changed: 7 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,4 @@ edition = "2024"
77
[dependencies]
88
zerocopy = {version = "0.8.17", features = ["derive"]}
99
bitfield = "0.14.0"
10+
bytemuck = "1.24.0"

src/message/firmware_update/get_package_data.rs

Lines changed: 23 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -438,7 +438,7 @@ mod tests {
438438
use crate::codec::PldmCodec;
439439

440440
#[test]
441-
fn test_get_package_data_request() {
441+
fn test_get_package_data_request_codec() {
442442
let instance_id: InstanceId = 0x01;
443443
let data_transfer_handle: u32 = 0x12345678;
444444
let transfer_operation_flag = TransferOperationFlag::GetFirstPart;
@@ -454,7 +454,7 @@ mod tests {
454454
}
455455

456456
#[test]
457-
fn test_get_package_data_response() {
457+
fn test_get_package_data_response_codec() {
458458
const PORTION_LEN: usize = 10;
459459

460460
let instance_id: InstanceId = 0x01;
@@ -475,15 +475,13 @@ mod tests {
475475
- core::mem::size_of::<usize>()
476476
+ PORTION_LEN];
477477

478-
dbg!(&buffer_fitted.len());
479-
480478
resp.encode(&mut buffer_fitted).unwrap();
481479
let decoded = GetPackageDataResponse::decode(&buffer_fitted).unwrap();
482480
assert_eq!(resp, decoded);
483481
}
484482

485483
#[test]
486-
fn test_get_device_metadata_request() {
484+
fn test_get_metadata_request_codec() {
487485
let instance_id: InstanceId = 0x01;
488486
let data_transfer_handle = 0x12345678;
489487
let req = GetMetaDataRequest::new(
@@ -500,7 +498,7 @@ mod tests {
500498
}
501499

502500
#[test]
503-
fn test_get_device_metadata_response() {
501+
fn test_get_meta_data_response_codec() {
504502
let instance_id: InstanceId = 0x01;
505503
let data_transfer_handle = 0x12345678;
506504
let payload = [11u8; 20];
@@ -513,10 +511,28 @@ mod tests {
513511
&payload,
514512
);
515513

516-
let mut buffer = [0u8; 9 + 20];
514+
let mut buffer =
515+
[0u8; core::mem::size_of::<GetMetaDataResponse>() - core::mem::size_of::<&[u8]>() + 20];
517516
resp.encode(&mut buffer).unwrap();
518517

519518
let decoded = GetMetaDataResponse::decode(&mut buffer).unwrap();
520519
assert_eq!(resp, decoded);
521520
}
521+
522+
#[test]
523+
fn test_get_device_meta_data_request_codec() {
524+
let instance_id: InstanceId = 0x01;
525+
let data_transfer_handle = 0x12345678;
526+
let req = GetDeviceMetaDataRequest::new(
527+
instance_id,
528+
data_transfer_handle,
529+
TransferOperationFlag::GetFirstPart,
530+
);
531+
532+
let mut buffer = [0u8; core::mem::size_of::<GetDeviceMetaDataRequest>()];
533+
req.encode(&mut buffer).unwrap();
534+
535+
let decoded = GetDeviceMetaDataRequest::decode(&buffer).unwrap();
536+
assert_eq!(req, decoded);
537+
}
522538
}

0 commit comments

Comments
 (0)