continue fixing tests

This commit is contained in:
2024-11-07 13:18:47 +01:00
parent 8ef93705eb
commit 639b210666
14 changed files with 90 additions and 67 deletions

View File

@ -67,6 +67,9 @@ ReturnValue_t PeriodicHelper::performHkOperation() {
// Periodic packets shall only be generated from datasets
continue;
}
if (not setSpec.periodicCollectionEnabled) {
continue;
}
performPeriodicHkGeneration(setSpec, now);
break;
}
@ -141,20 +144,24 @@ ReturnValue_t PeriodicHelper::generateHousekeepingPacket(const dp::sid_t sid,
}
auto& setSpec = optSetSpec.value().get();
uint8_t* dataPtr = nullptr;
const size_t maxSize = setSpec.size;
const size_t maxSize = setSpec.size + dp::structure_id_t::SIZE;
ReturnValue_t result = ipcStore->getFreeElement(&storeId, maxSize, &dataPtr);
if (result != returnvalue::OK) {
return result;
}
result = owner->serializeHkDataset(sid, dataPtr, maxSize);
size_t serSize = 0;
result = SerializeAdapter::serialize(&sid.objectId, &dataPtr, &serSize, maxSize,
SerializeIF::Endianness::NETWORK);
if (result != returnvalue::OK) {
return result;
}
HousekeepingPacketDownlink hkPacket(sid, dataPtr, maxSize);
size_t serializedSize = 0;
result = hkPacket.serialize(&dataPtr, &serializedSize, maxSize, SerializeIF::Endianness::NETWORK);
if (result != returnvalue::OK or serializedSize == 0) {
result = SerializeAdapter::serialize(&sid.ownerSetId, &dataPtr, &serSize, maxSize,
SerializeIF::Endianness::NETWORK);
if (result != returnvalue::OK) {
return result;
}
result = owner->serializeHkDataset(sid, dataPtr, maxSize - 8);
if (result != returnvalue::OK) {
return result;
}
@ -182,13 +189,6 @@ ReturnValue_t PeriodicHelper::generateHousekeepingPacket(const dp::sid_t sid,
}
void PeriodicHelper::performPeriodicHkGeneration(SetSpecification& setSpec, timeval& now) {
if (not setSpec.periodicCollectionEnabled) {
return;
}
// timeval now{};
Clock::getClockMonotonic(&now);
dp::sid_t sid = setSpec.dataId.sid;
timeval diff = now - setSpec.lastGenerated;