2022-04-06 23:59:46 -04:00
|
|
|
/*
|
2023-06-27 23:29:02 -04:00
|
|
|
* SPDX-FileCopyrightText: 2015-2023 Espressif Systems (Shanghai) CO LTD
|
2022-04-06 23:59:46 -04:00
|
|
|
*
|
|
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
|
|
*/
|
|
|
|
|
|
|
|
#include "unity.h"
|
|
|
|
#include "unity_test_runner.h"
|
2023-06-27 23:29:02 -04:00
|
|
|
#include "unity_test_utils.h"
|
2022-04-06 23:59:46 -04:00
|
|
|
#include "esp_heap_caps.h"
|
|
|
|
|
|
|
|
// Some resources are lazy allocated in RMT driver, so we reserved this threadhold when checking memory leak
|
|
|
|
// A better way to check a potential memory leak is running a same case by twice, for the second time, the memory usage delta should be zero
|
2023-06-27 23:29:02 -04:00
|
|
|
#define TEST_MEMORY_LEAK_THRESHOLD (400)
|
2022-04-06 23:59:46 -04:00
|
|
|
|
|
|
|
void setUp(void)
|
|
|
|
{
|
2023-06-27 23:29:02 -04:00
|
|
|
unity_utils_record_free_mem();
|
2022-04-06 23:59:46 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
void tearDown(void)
|
|
|
|
{
|
2023-06-27 23:29:02 -04:00
|
|
|
esp_reent_cleanup(); //clean up some of the newlib's lazy allocations
|
|
|
|
unity_utils_evaluate_leaks_direct(TEST_MEMORY_LEAK_THRESHOLD);
|
2022-04-06 23:59:46 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
void app_main(void)
|
|
|
|
{
|
|
|
|
// ____ __ __ _____ _____ _
|
|
|
|
// | _ \| \/ |_ _| |_ _|__ ___| |_
|
|
|
|
// | |_) | |\/| | | | | |/ _ \/ __| __|
|
|
|
|
// | _ <| | | | | | | | __/\__ \ |_
|
|
|
|
// |_| \_\_| |_| |_| |_|\___||___/\__|
|
|
|
|
printf(" ____ __ __ _____ _____ _\r\n");
|
|
|
|
printf("| _ \\| \\/ |_ _| |_ _|__ ___| |_\r\n");
|
|
|
|
printf("| |_) | |\\/| | | | | |/ _ \\/ __| __|\r\n");
|
|
|
|
printf("| _ <| | | | | | | | __/\\__ \\ |_\r\n");
|
|
|
|
printf("|_| \\_\\_| |_| |_| |_|\\___||___/\\__|\r\n");
|
|
|
|
unity_run_menu();
|
|
|
|
}
|