From 28a968e2c972eb22b83e7e49eb2ae04d2803469d Mon Sep 17 00:00:00 2001 From: Laila Date: Sun, 16 Nov 2025 21:22:56 +0100 Subject: [PATCH] test_clearSeriesFreesMemory --- .../imageInputTests.c | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/info2praktikum-neuronalesnetz/imageInputTests.c b/info2praktikum-neuronalesnetz/imageInputTests.c index ffe6266..7132d72 100644 --- a/info2praktikum-neuronalesnetz/imageInputTests.c +++ b/info2praktikum-neuronalesnetz/imageInputTests.c @@ -173,6 +173,37 @@ void test_openImageFileIncorrectTag(void) remove(path); } +void test_clearSeriesFreesMemory(void) +{ + // Dummy-Series erstellen + GrayScaleImageSeries *series = (GrayScaleImageSeries*)malloc(sizeof(GrayScaleImageSeries)); + series->count = 2; + + // Labels allokieren + series->labels = (unsigned char*)malloc(series->count * sizeof(unsigned char)); + for (unsigned int i = 0; i < series->count; i++) { + series->labels[i] = (unsigned char)(i + 1); + } + + // Images allokieren + series->images = (GrayScaleImage*)malloc(series->count * sizeof(GrayScaleImage)); + for (unsigned int i = 0; i < series->count; i++) { + series->images[i].width = 4; + series->images[i].height = 4; + series->images[i].buffer = (GrayScalePixelType*)malloc(series->images[i].width * series->images[i].height); + + for (unsigned int j = 0; j < series->images[i].width * series->images[i].height; j++){ + series->images[i].buffer[j] = 0; + } + } + + // clearSeries aufrufen + clearSeries(series); + + // Test + TEST_PASS(); +} + void setUp(void) { // Falls notwendig, kann hier Vorbereitungsarbeit gemacht werden } @@ -194,6 +225,7 @@ int main() RUN_TEST(test_readImagesFailsOnWrongFileTag); RUN_TEST(test_openImageFileIncorrectTag); RUN_TEST(test_readImagesFailsOnIncompleteHeader); + RUN_TEST(test_clearSeriesFreesMemory); return UNITY_END(); } \ No newline at end of file