start first test
Some checks failed
Rust/sat-rs/pipeline/pr-main There was a failure building this commit
Some checks failed
Rust/sat-rs/pipeline/pr-main There was a failure building this commit
This commit is contained in:
parent
d2cdcf9c79
commit
c664cdb332
@ -146,7 +146,11 @@ impl DestinationHandler {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn insert_packet(
|
pub fn insert_packet(_raw_packet: &[u8]) -> Result<(), DestError> {
|
||||||
|
todo!();
|
||||||
|
//Ok(())
|
||||||
|
}
|
||||||
|
pub fn insert_packet_with_known_type(
|
||||||
&mut self,
|
&mut self,
|
||||||
pdu_type: PduType,
|
pdu_type: PduType,
|
||||||
pdu_directive: Option<FileDirectiveType>,
|
pdu_directive: Option<FileDirectiveType>,
|
||||||
@ -455,13 +459,19 @@ impl DestinationHandler {
|
|||||||
|
|
||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
mod tests {
|
mod tests {
|
||||||
use spacepackets::util::UnsignedByteFieldU16;
|
use spacepackets::{
|
||||||
|
cfdp::{lv::Lv, ChecksumType},
|
||||||
|
util::{UbfU16, UnsignedByteFieldU16},
|
||||||
|
};
|
||||||
|
|
||||||
use super::*;
|
use super::*;
|
||||||
|
|
||||||
const LOCAL_ID: UnsignedByteFieldU16 = UnsignedByteFieldU16::new(1);
|
const LOCAL_ID: UnsignedByteFieldU16 = UnsignedByteFieldU16::new(1);
|
||||||
const REMOTE_ID: UnsignedByteFieldU16 = UnsignedByteFieldU16::new(2);
|
const REMOTE_ID: UnsignedByteFieldU16 = UnsignedByteFieldU16::new(2);
|
||||||
|
|
||||||
|
const SRC_NAME: &str = "source-file.txt";
|
||||||
|
const DEST_NAME: &str = "dest-file.txt";
|
||||||
|
|
||||||
#[derive(Default)]
|
#[derive(Default)]
|
||||||
struct TestCfdpUser {
|
struct TestCfdpUser {
|
||||||
next_expected_seq_num: u64,
|
next_expected_seq_num: u64,
|
||||||
@ -545,11 +555,30 @@ mod tests {
|
|||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_empty_file_transfer() {
|
fn test_empty_file_transfer() {
|
||||||
|
let mut buf: [u8; 512] = [0; 512];
|
||||||
let test_user = TestCfdpUser::default();
|
let test_user = TestCfdpUser::default();
|
||||||
let mut dest_handler = DestinationHandler::new(LOCAL_ID);
|
let mut dest_handler = DestinationHandler::new(LOCAL_ID);
|
||||||
init_check(&dest_handler);
|
init_check(&dest_handler);
|
||||||
|
|
||||||
|
let seq_num = UbfU16::new(0);
|
||||||
|
let pdu_conf = CommonPduConfig::new_with_byte_fields(REMOTE_ID, LOCAL_ID, seq_num).unwrap();
|
||||||
|
let pdu_header = PduHeader::new_no_file_data(pdu_conf, 0);
|
||||||
|
let metadata_params = MetadataGenericParams::new(false, ChecksumType::Crc32, 0);
|
||||||
|
let metadata_pdu = MetadataPdu::new(
|
||||||
|
pdu_header,
|
||||||
|
metadata_params,
|
||||||
|
Lv::new_from_str(SRC_NAME).unwrap(),
|
||||||
|
Lv::new_from_str(DEST_NAME).unwrap(),
|
||||||
|
None,
|
||||||
|
);
|
||||||
|
let written_len = metadata_pdu
|
||||||
|
.write_to_bytes(&mut buf)
|
||||||
|
.expect("writing metadata PDU failed");
|
||||||
// TODO: Create Metadata PDU and EOF PDU for empty file transfer.
|
// TODO: Create Metadata PDU and EOF PDU for empty file transfer.
|
||||||
//dest_handler.insert_packet(pdu_type, pdu_directive, raw_packet)
|
dest_handler.insert_packet(
|
||||||
|
PduType::FileDirective,
|
||||||
|
Some(FileDirectiveType::MetadataPdu),
|
||||||
|
&buf[..written_len],
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user