fix old tests
This commit is contained in:
77
src/dest.rs
77
src/dest.rs
@@ -30,36 +30,36 @@
|
||||
//! 4. A Finished PDU has been sent back to the remote side.
|
||||
//! 5. A Finished PDU ACK was received.
|
||||
use crate::{
|
||||
DummyPduProvider, GenericSendError, IndicationConfig, PduProvider, PositiveAckParams,
|
||||
lost_segments::{LostSegmentError, LostSegmentStore},
|
||||
user::TransactionFinishedParams,
|
||||
DummyPduProvider, GenericSendError, IndicationConfig, PduProvider, PositiveAckParams,
|
||||
};
|
||||
use core::{
|
||||
cell::{Cell, RefCell},
|
||||
str::{from_utf8, from_utf8_unchecked, Utf8Error},
|
||||
str::{Utf8Error, from_utf8, from_utf8_unchecked},
|
||||
};
|
||||
|
||||
use super::{
|
||||
filestore::{FilestoreError, VirtualFilestore},
|
||||
user::{CfdpUser, FileSegmentRecvdParams, MetadataReceivedParams},
|
||||
Countdown, EntityType, LocalEntityConfig, PacketTarget, PduSender, RemoteConfigStore,
|
||||
RemoteEntityConfig, State, TimerContext, TimerCreator, TransactionId, UserFaultHook,
|
||||
filestore::{FilestoreError, VirtualFilestore},
|
||||
user::{CfdpUser, FileSegmentRecvdParams, MetadataReceivedParams},
|
||||
};
|
||||
use smallvec::SmallVec;
|
||||
use spacepackets::{
|
||||
cfdp::{
|
||||
ChecksumType, ConditionCode, FaultHandlerCode, LargeFileFlag, PduType, TransactionStatus,
|
||||
TransmissionMode,
|
||||
pdu::{
|
||||
CfdpPdu, CommonPduConfig, FileDirectiveType, PduError, PduHeader,
|
||||
ack::AckPdu,
|
||||
eof::EofPdu,
|
||||
file_data::FileDataPdu,
|
||||
finished::{DeliveryCode, FileStatus, FinishedPduCreator},
|
||||
metadata::{MetadataGenericParams, MetadataPduReader},
|
||||
nak::{NakPduCreator, NakPduCreatorWithReservedSeqReqsBuf},
|
||||
CfdpPdu, CommonPduConfig, FileDirectiveType, PduError, PduHeader,
|
||||
},
|
||||
tlv::{msg_to_user::MsgToUserTlv, EntityIdTlv, GenericTlv, ReadableTlv, TlvType},
|
||||
ChecksumType, ConditionCode, FaultHandlerCode, LargeFileFlag, PduType, TransactionStatus,
|
||||
TransmissionMode,
|
||||
tlv::{EntityIdTlv, GenericTlv, ReadableTlv, TlvType, msg_to_user::MsgToUserTlv},
|
||||
},
|
||||
util::{UnsignedByteField, UnsignedEnum},
|
||||
};
|
||||
@@ -392,14 +392,14 @@ impl<PduSenderInstance: PduSender, UserFaultHookInstance: UserFaultHook>
|
||||
}
|
||||
|
||||
impl<
|
||||
PduSenderInstance: PduSender,
|
||||
UserFaultHookInstance: UserFaultHook,
|
||||
VirtualFilestoreInstance: VirtualFilestore,
|
||||
RemoteConfigStoreInstance: RemoteConfigStore,
|
||||
TimerCreatorInstance: TimerCreator<Countdown = CountdownInstance>,
|
||||
CountdownInstance: Countdown,
|
||||
LostSegmentTracker: LostSegmentStore,
|
||||
>
|
||||
PduSenderInstance: PduSender,
|
||||
UserFaultHookInstance: UserFaultHook,
|
||||
VirtualFilestoreInstance: VirtualFilestore,
|
||||
RemoteConfigStoreInstance: RemoteConfigStore,
|
||||
TimerCreatorInstance: TimerCreator<Countdown = CountdownInstance>,
|
||||
CountdownInstance: Countdown,
|
||||
LostSegmentTracker: LostSegmentStore,
|
||||
>
|
||||
DestinationHandler<
|
||||
PduSenderInstance,
|
||||
UserFaultHookInstance,
|
||||
@@ -1807,21 +1807,21 @@ mod tests {
|
||||
use rand::Rng;
|
||||
use spacepackets::{
|
||||
cfdp::{
|
||||
lv::Lv,
|
||||
pdu::{finished::FinishedPduReader, metadata::MetadataPduCreator, WritablePduPacket},
|
||||
ChecksumType, TransmissionMode,
|
||||
lv::Lv,
|
||||
pdu::{WritablePduPacket, finished::FinishedPduReader, metadata::MetadataPduCreator},
|
||||
},
|
||||
util::{UnsignedByteFieldU8},
|
||||
util::UnsignedByteFieldU8,
|
||||
};
|
||||
|
||||
use crate::{
|
||||
CRC_32, FaultHandler, IndicationConfig, PduRawWithInfo, RemoteConfigStoreStd,
|
||||
filestore::NativeFilestore,
|
||||
lost_segments::LostSegmentsList,
|
||||
tests::{
|
||||
basic_remote_cfg_table, SentPdu, TestCfdpSender, TestCfdpUser, TestCheckTimer,
|
||||
TestCheckTimerCreator, TestFaultHandler, TimerExpiryControl, LOCAL_ID, REMOTE_ID,
|
||||
LOCAL_ID, REMOTE_ID, SentPdu, TestCfdpSender, TestCfdpUser, TestCheckTimer,
|
||||
TestCheckTimerCreator, TestFaultHandler, TimerExpiryControl, basic_remote_cfg_table,
|
||||
},
|
||||
FaultHandler, IndicationConfig, PduRawWithInfo, RemoteConfigStoreStd, CRC_32,
|
||||
};
|
||||
|
||||
use super::*;
|
||||
@@ -1844,7 +1844,6 @@ mod tests {
|
||||
check_dest_file: bool,
|
||||
check_handler_idle_at_drop: bool,
|
||||
closure_requested: bool,
|
||||
//pdu_header: PduHeader,
|
||||
pdu_conf: CommonPduConfig,
|
||||
expected_full_data: Vec<u8>,
|
||||
expected_file_size: u64,
|
||||
@@ -1877,7 +1876,12 @@ mod tests {
|
||||
check_dest_file,
|
||||
check_handler_idle_at_drop: true,
|
||||
expected_file_size: 0,
|
||||
pdu_conf: CommonPduConfig::default(),
|
||||
pdu_conf: CommonPduConfig::new_with_byte_fields(
|
||||
LOCAL_ID,
|
||||
REMOTE_ID,
|
||||
UnsignedByteFieldU8::new(0),
|
||||
)
|
||||
.unwrap(),
|
||||
expected_full_data: Vec::new(),
|
||||
buf: [0; 512],
|
||||
};
|
||||
@@ -1932,6 +1936,7 @@ mod tests {
|
||||
transmission_mode: TransmissionMode,
|
||||
) -> Result<TransactionId, DestError> {
|
||||
self.expected_file_size = file_size;
|
||||
self.pdu_conf.trans_mode = transmission_mode;
|
||||
assert_eq!(user.transaction_indication_call_count, 0);
|
||||
assert_eq!(user.metadata_recv_queue.len(), 0);
|
||||
let pdu_header = PduHeader::new_no_file_data(self.pdu_conf, 0);
|
||||
@@ -2133,12 +2138,14 @@ mod tests {
|
||||
let dest_handler =
|
||||
default_dest_handler(fault_handler, test_sender, &TimerExpiryControl::default());
|
||||
assert!(dest_handler.transmission_mode().is_none());
|
||||
assert!(dest_handler
|
||||
.local_cfg
|
||||
.fault_handler
|
||||
.user_hook
|
||||
.borrow()
|
||||
.all_queues_empty());
|
||||
assert!(
|
||||
dest_handler
|
||||
.local_cfg
|
||||
.fault_handler
|
||||
.user_hook
|
||||
.borrow()
|
||||
.all_queues_empty()
|
||||
);
|
||||
assert!(dest_handler.pdu_sender.queue_empty());
|
||||
assert_eq!(dest_handler.state(), State::Idle);
|
||||
assert_eq!(dest_handler.step(), TransactionStep::Idle);
|
||||
@@ -2193,7 +2200,7 @@ mod tests {
|
||||
|
||||
let mut tb = DestHandlerTestbench::new_with_fixed_paths(fault_handler, false);
|
||||
let mut test_user = tb.test_user_from_cached_paths(file_size);
|
||||
tb.generic_transfer_init(&mut test_user, 0, TransmissionMode::Unacknowledged)
|
||||
tb.generic_transfer_init(&mut test_user, file_size, TransmissionMode::Unacknowledged)
|
||||
.expect("transfer init failed");
|
||||
tb.state_check(State::Busy, TransactionStep::ReceivingFileDataPdus);
|
||||
tb.generic_file_data_insert(&mut test_user, 0, file_data)
|
||||
@@ -2215,7 +2222,7 @@ mod tests {
|
||||
|
||||
let mut tb = DestHandlerTestbench::new_with_fixed_paths(fault_handler, false);
|
||||
let mut test_user = tb.test_user_from_cached_paths(file_size);
|
||||
tb.generic_transfer_init(&mut test_user, 0, TransmissionMode::Unacknowledged)
|
||||
tb.generic_transfer_init(&mut test_user, file_size, TransmissionMode::Unacknowledged)
|
||||
.expect("transfer init failed");
|
||||
tb.state_check(State::Busy, TransactionStep::ReceivingFileDataPdus);
|
||||
tb.generic_file_data_insert(&mut test_user, 0, &random_data[0..segment_len])
|
||||
@@ -2244,7 +2251,7 @@ mod tests {
|
||||
let mut tb = DestHandlerTestbench::new_with_fixed_paths(fault_handler, false);
|
||||
let mut test_user = tb.test_user_from_cached_paths(file_size);
|
||||
let transaction_id = tb
|
||||
.generic_transfer_init(&mut test_user, 0, TransmissionMode::Unacknowledged)
|
||||
.generic_transfer_init(&mut test_user, file_size, TransmissionMode::Unacknowledged)
|
||||
.expect("transfer init failed");
|
||||
|
||||
tb.state_check(State::Busy, TransactionStep::ReceivingFileDataPdus);
|
||||
@@ -2288,7 +2295,7 @@ mod tests {
|
||||
let mut random_data = [0u8; 512];
|
||||
rng.fill(&mut random_data);
|
||||
let file_size = random_data.len() as u64;
|
||||
let segment_len = 256;
|
||||
let segment_len: usize = 256;
|
||||
let check_checksum_failure =
|
||||
|testbench: &mut DestHandlerTestbench, transaction_id: TransactionId| {
|
||||
let mut fault_hook = testbench.handler.local_cfg.user_fault_hook().borrow_mut();
|
||||
@@ -2305,7 +2312,7 @@ mod tests {
|
||||
let mut testbench = DestHandlerTestbench::new_with_fixed_paths(fault_handler, false);
|
||||
let mut test_user = testbench.test_user_from_cached_paths(file_size);
|
||||
let transaction_id = testbench
|
||||
.generic_transfer_init(&mut test_user, 0, TransmissionMode::Unacknowledged)
|
||||
.generic_transfer_init(&mut test_user, file_size, TransmissionMode::Unacknowledged)
|
||||
.expect("transfer init failed");
|
||||
|
||||
testbench.state_check(State::Busy, TransactionStep::ReceivingFileDataPdus);
|
||||
|
||||
Reference in New Issue
Block a user