clean up a few tests
This commit is contained in:
@ -7,7 +7,7 @@
|
||||
|
||||
TEST_CASE("ACK PDU", "[AckPdu]") {
|
||||
using namespace cfdp;
|
||||
ReturnValue_t result = HasReturnvaluesIF::RETURN_OK;
|
||||
ReturnValue_t result;
|
||||
std::array<uint8_t, 256> buf = {};
|
||||
uint8_t* bufptr = buf.data();
|
||||
size_t maxsz = buf.size();
|
||||
@ -15,7 +15,7 @@ TEST_CASE("ACK PDU", "[AckPdu]") {
|
||||
auto seqNum = TransactionSeqNum(WidthInBytes::TWO_BYTES, 15);
|
||||
auto sourceId = EntityId(WidthInBytes::TWO_BYTES, 1);
|
||||
auto destId = EntityId(WidthInBytes::TWO_BYTES, 2);
|
||||
auto pduConf = PduConfig(TransmissionModes::ACKNOWLEDGED, seqNum, sourceId, destId);
|
||||
auto pduConf = PduConfig(sourceId, destId, TransmissionModes::ACKNOWLEDGED, seqNum);
|
||||
AckInfo ackInfo(FileDirectives::EOF_DIRECTIVE, ConditionCode::NO_ERROR,
|
||||
AckTransactionStatus::ACTIVE);
|
||||
auto ackSerializer = AckPduSerializer(ackInfo, pduConf);
|
||||
@ -23,10 +23,10 @@ TEST_CASE("ACK PDU", "[AckPdu]") {
|
||||
REQUIRE(result == HasReturnvaluesIF::RETURN_OK);
|
||||
|
||||
SECTION("Serialize") {
|
||||
REQUIRE(buf.data()[sz - 3] == cfdp::FileDirectives::ACK);
|
||||
REQUIRE((buf.data()[sz - 2] >> 4) == FileDirectives::EOF_DIRECTIVE);
|
||||
REQUIRE((buf.data()[sz - 2] & 0x0f) == 0);
|
||||
REQUIRE(buf.data()[sz - 1] == AckTransactionStatus::ACTIVE);
|
||||
REQUIRE(buf[sz - 3] == cfdp::FileDirectives::ACK);
|
||||
REQUIRE((buf[sz - 2] >> 4) == FileDirectives::EOF_DIRECTIVE);
|
||||
REQUIRE((buf[sz - 2] & 0x0f) == 0);
|
||||
REQUIRE(buf[sz - 1] == AckTransactionStatus::ACTIVE);
|
||||
ackInfo.setAckedDirective(FileDirectives::FINISH);
|
||||
ackInfo.setAckedConditionCode(ConditionCode::FILESTORE_REJECTION);
|
||||
ackInfo.setTransactionStatus(AckTransactionStatus::TERMINATED);
|
||||
@ -35,11 +35,11 @@ TEST_CASE("ACK PDU", "[AckPdu]") {
|
||||
sz = 0;
|
||||
result = ackSerializer2.serialize(&bufptr, &sz, maxsz, SerializeIF::Endianness::NETWORK);
|
||||
REQUIRE(result == HasReturnvaluesIF::RETURN_OK);
|
||||
REQUIRE(buf.data()[sz - 3] == cfdp::FileDirectives::ACK);
|
||||
REQUIRE((buf.data()[sz - 2] >> 4) == FileDirectives::FINISH);
|
||||
REQUIRE((buf.data()[sz - 2] & 0x0f) == 0b0001);
|
||||
REQUIRE((buf.data()[sz - 1] >> 4) == ConditionCode::FILESTORE_REJECTION);
|
||||
REQUIRE((buf.data()[sz - 1] & 0b11) == AckTransactionStatus::TERMINATED);
|
||||
REQUIRE(buf[sz - 3] == cfdp::FileDirectives::ACK);
|
||||
REQUIRE((buf[sz - 2] >> 4) == FileDirectives::FINISH);
|
||||
REQUIRE((buf[sz - 2] & 0x0f) == 0b0001);
|
||||
REQUIRE((buf[sz - 1] >> 4) == ConditionCode::FILESTORE_REJECTION);
|
||||
REQUIRE((buf[sz - 1] & 0b11) == AckTransactionStatus::TERMINATED);
|
||||
|
||||
bufptr = buf.data();
|
||||
sz = 0;
|
||||
@ -56,14 +56,14 @@ TEST_CASE("ACK PDU", "[AckPdu]") {
|
||||
}
|
||||
|
||||
SECTION("Deserialize") {
|
||||
AckInfo ackInfo;
|
||||
auto reader = AckPduDeserializer(buf.data(), sz, ackInfo);
|
||||
AckInfo ackInfo2;
|
||||
auto reader = AckPduDeserializer(buf.data(), sz, ackInfo2);
|
||||
result = reader.parseData();
|
||||
REQUIRE(result == HasReturnvaluesIF::RETURN_OK);
|
||||
REQUIRE(ackInfo.getAckedDirective() == FileDirectives::EOF_DIRECTIVE);
|
||||
REQUIRE(ackInfo.getAckedConditionCode() == ConditionCode::NO_ERROR);
|
||||
REQUIRE(ackInfo.getDirectiveSubtypeCode() == 0);
|
||||
REQUIRE(ackInfo.getTransactionStatus() == AckTransactionStatus::ACTIVE);
|
||||
REQUIRE(ackInfo2.getAckedDirective() == FileDirectives::EOF_DIRECTIVE);
|
||||
REQUIRE(ackInfo2.getAckedConditionCode() == ConditionCode::NO_ERROR);
|
||||
REQUIRE(ackInfo2.getDirectiveSubtypeCode() == 0);
|
||||
REQUIRE(ackInfo2.getTransactionStatus() == AckTransactionStatus::ACTIVE);
|
||||
|
||||
AckInfo newInfo = AckInfo(FileDirectives::FINISH, ConditionCode::FILESTORE_REJECTION,
|
||||
AckTransactionStatus::TERMINATED);
|
||||
@ -73,13 +73,13 @@ TEST_CASE("ACK PDU", "[AckPdu]") {
|
||||
result = ackSerializer2.serialize(&bufptr, &sz, maxsz, SerializeIF::Endianness::NETWORK);
|
||||
REQUIRE(result == HasReturnvaluesIF::RETURN_OK);
|
||||
|
||||
auto reader2 = AckPduDeserializer(buf.data(), sz, ackInfo);
|
||||
auto reader2 = AckPduDeserializer(buf.data(), sz, ackInfo2);
|
||||
result = reader2.parseData();
|
||||
REQUIRE(result == HasReturnvaluesIF::RETURN_OK);
|
||||
REQUIRE(ackInfo.getAckedDirective() == FileDirectives::FINISH);
|
||||
REQUIRE(ackInfo.getAckedConditionCode() == ConditionCode::FILESTORE_REJECTION);
|
||||
REQUIRE(ackInfo.getDirectiveSubtypeCode() == 0b0001);
|
||||
REQUIRE(ackInfo.getTransactionStatus() == AckTransactionStatus::TERMINATED);
|
||||
REQUIRE(ackInfo2.getAckedDirective() == FileDirectives::FINISH);
|
||||
REQUIRE(ackInfo2.getAckedConditionCode() == ConditionCode::FILESTORE_REJECTION);
|
||||
REQUIRE(ackInfo2.getDirectiveSubtypeCode() == 0b0001);
|
||||
REQUIRE(ackInfo2.getTransactionStatus() == AckTransactionStatus::TERMINATED);
|
||||
|
||||
uint8_t prevVal = buf[sz - 2];
|
||||
buf[sz - 2] = FileDirectives::INVALID_DIRECTIVE << 4;
|
||||
@ -93,7 +93,7 @@ TEST_CASE("ACK PDU", "[AckPdu]") {
|
||||
result = reader2.parseData();
|
||||
REQUIRE(result == cfdp::INVALID_DIRECTIVE_FIELDS);
|
||||
buf[sz - 3] = cfdp::FileDirectives::ACK;
|
||||
auto maxSizeTooSmall = AckPduDeserializer(buf.data(), sz - 2, ackInfo);
|
||||
auto maxSizeTooSmall = AckPduDeserializer(buf.data(), sz - 2, ackInfo2);
|
||||
result = maxSizeTooSmall.parseData();
|
||||
REQUIRE(result == SerializeIF::STREAM_TOO_SHORT);
|
||||
}
|
||||
|
Reference in New Issue
Block a user