Improve plotting

This commit is contained in:
2024-03-31 23:08:19 +02:00
parent 8cad89d649
commit 30e775d8a2
122 changed files with 4640 additions and 1149 deletions
+71
View File
@@ -0,0 +1,71 @@
// Copyright (2019-2024) Paul Scherrer Institute
#include <catch2/catch.hpp>
#include "../receiver/LossyFilter.h"
TEST_CASE("LossyFilterDisabled","[LossyFilter]") {
LossyFilter filter(false, 0.0);
DataMessage message{
.number = 123,
.indexing_result = 0
};
filter.ApplyFilter(message);
REQUIRE(message.number == 123);
REQUIRE(message.indexing_result == 0);
filter.ApplyFilter(message);
REQUIRE(message.number == 123);
REQUIRE(message.indexing_result == 0);
filter.ApplyFilter(message);
REQUIRE(message.number == 123);
REQUIRE(message.indexing_result == 0);
}
TEST_CASE("LossyFilterEnable","[LossyFilter]") {
LossyFilter filter(true, 0.0);
DataMessage message_1{
.number = 123,
.indexing_result = 1
};
DataMessage message_2{
.number = 124,
.indexing_result = 0
};
filter.ApplyFilter(message_1);
REQUIRE(message_1.number == 0);
filter.ApplyFilter(message_2);
REQUIRE(message_2.number == -1);
filter.ApplyFilter(message_1);
REQUIRE(message_1.number == 1);
filter.ApplyFilter(message_1);
REQUIRE(message_1.number == 2);
}
TEST_CASE("LossyFilterEnable_Prob","[LossyFilter]") {
LossyFilter filter(true, 0.5);
int64_t accepted = 0;
int64_t count = 0;
for (int i = 0; i < 1000000; i++) {
DataMessage message{
.number = 124,
.indexing_result = 0
};
filter.ApplyFilter(message);
count++;
if (message.number < 0)
accepted++;
}
double frac = static_cast<double>(accepted) / static_cast<double>(count);
REQUIRE(frac < 0.51);
REQUIRE(frac > 0.49);
}