| | | 1 | | #include "../../core/utils/logger.h" |
| | | 2 | | #include <stdio.h> |
| | | 3 | | #include <string.h> |
| | | 4 | | #include <assert.h> |
| | | 5 | | |
| | 1 | 6 | | void test_logger_all_levels() { |
| | 1 | 7 | | printf("Testing all log levels...\n"); |
| | | 8 | | // Test Initial State/Set/Get |
| | 1 | 9 | | logger_set_level(LOG_LEVEL_DEBUG); |
| | 1 | 10 | | assert(logger_get_level() == LOG_LEVEL_DEBUG); |
| | | 11 | | // Hit all logging macros |
| | 1 | 12 | | LOG_DEBUG("Test Debug"); |
| | 1 | 13 | | LOG_INFO("Test Info"); |
| | 1 | 14 | | LOG_WARN("Test Warn"); |
| | 1 | 15 | | LOG_ERROR("Test Error"); |
| | | 16 | | // Test filtering logic (Set to Error, should ignore Info/Warn) |
| | 1 | 17 | | logger_set_level(LOG_LEVEL_ERROR); |
| | 1 | 18 | | assert(logger_get_level() == LOG_LEVEL_ERROR); |
| | 1 | 19 | | LOG_INFO("HIDDEN INFO"); |
| | 1 | 20 | | LOG_WARN("HIDDEN WARN"); |
| | 1 | 21 | | LOG_ERROR("VISIBLE ERROR"); |
| | | 22 | | // Test NONE level (Ignore everything) |
| | 1 | 23 | | logger_set_level(LOG_LEVEL_NONE); |
| | 1 | 24 | | assert(logger_get_level() == LOG_LEVEL_NONE); |
| | 1 | 25 | | LOG_ERROR("HIDDEN ERROR"); |
| | 1 | 26 | | printf("[PASS] test_logger_all_levels\n"); |
| | 1 | 27 | | } |
| | | 28 | | |
| | 1 | 29 | | int main() { |
| | 1 | 30 | | printf("=== Logger Unit Tests (Full Coverage) ===\n"); |
| | 1 | 31 | | test_logger_all_levels(); |
| | 1 | 32 | | printf("\n✅ All Logger tests passed!\n"); |
| | 1 | 33 | | return 0; |
| | | 34 | | } |