Browse Source

Replace printf with DEBUG_ macros in test_config_debug.c and test_debug_categories.c

nodeinfo-routing-update
Evgeny 8 months ago
parent
commit
4c12bace8e
  1. 28
      tests/test_config_debug.c
  2. 52
      tests/test_debug_categories.c

28
tests/test_config_debug.c

@ -9,34 +9,34 @@
#include "../src/config_parser.h" #include "../src/config_parser.h"
int main() { int main() {
printf("=== Тест загрузки debug настроек из конфигурационного файла ===\n"); DEBUG_ERROR(DEBUG_CATEGORY_CONFIG, "=== Тест загрузки debug настроек из конфигурационного файла ===");
// Инициализация отладки по умолчанию // Инициализация отладки по умолчанию
debug_config_init(); debug_config_init();
debug_set_level(DEBUG_LEVEL_ERROR); // Начальный уровень debug_set_level(DEBUG_LEVEL_ERROR); // Начальный уровень
printf("\n1. До загрузки конфигурации:\n"); DEBUG_ERROR(DEBUG_CATEGORY_CONFIG, "1. До загрузки конфигурации:");
DEBUG_ERROR(DEBUG_CATEGORY_CONFIG, "ERROR сообщение до загрузки конфигурации"); DEBUG_ERROR(DEBUG_CATEGORY_CONFIG, "ERROR сообщение до загрузки конфигурации");
DEBUG_INFO(DEBUG_CATEGORY_CONFIG, "INFO сообщение до загрузки конфигурации (не должно выводиться)"); DEBUG_INFO(DEBUG_CATEGORY_CONFIG, "INFO сообщение до загрузки конфигурации (не должно выводиться)");
// Загрузка конфигурации из файла // Загрузка конфигурации из файла
printf("\n2. Загрузка конфигурации из файла: test_config_with_debug.conf\n"); DEBUG_ERROR(DEBUG_CATEGORY_CONFIG, "2. Загрузка конфигурации из файла: test_config_with_debug.conf");
struct utun_config *config = parse_config("test_config_with_debug.conf"); struct utun_config *config = parse_config("test_config_with_debug.conf");
if (!config) { if (!config) {
printf("❌ Ошибка загрузки конфигурации\n"); DEBUG_ERROR(DEBUG_CATEGORY_CONFIG, "❌ Ошибка загрузки конфигурации");
return 1; return 1;
} }
printf("✅ Конфигурация загружена успешно\n"); DEBUG_ERROR(DEBUG_CATEGORY_CONFIG, "✅ Конфигурация загружена успешно");
printf(" Log file: %s\n", config->global.log_file[0] ? config->global.log_file : "(none)"); DEBUG_ERROR(DEBUG_CATEGORY_CONFIG, " Log file: %s", config->global.log_file[0] ? config->global.log_file : "(none)");
printf(" Debug level: %s\n", config->global.debug_level[0] ? config->global.debug_level : "(none)"); DEBUG_ERROR(DEBUG_CATEGORY_CONFIG, " Debug level: %s", config->global.debug_level[0] ? config->global.debug_level : "(none)");
printf(" Debug categories: 0x%X\n", config->global.debug_categories); DEBUG_ERROR(DEBUG_CATEGORY_CONFIG, " Debug categories: 0x%X", config->global.debug_categories);
printf(" Enable timestamp: %d\n", config->global.enable_timestamp); DEBUG_ERROR(DEBUG_CATEGORY_CONFIG, " Enable timestamp: %d", config->global.enable_timestamp);
printf(" Enable colors: %d\n", config->global.enable_colors); DEBUG_ERROR(DEBUG_CATEGORY_CONFIG, " Enable colors: %d", config->global.enable_colors);
// Тестирование новых настроек // Тестирование новых настроек
printf("\n4. Тестирование после применения настроек:\n"); DEBUG_ERROR(DEBUG_CATEGORY_CONFIG, "4. Тестирование после применения настроек:");
DEBUG_ERROR(DEBUG_CATEGORY_ETCP, "ERROR от ETCP (должен выводиться)"); DEBUG_ERROR(DEBUG_CATEGORY_ETCP, "ERROR от ETCP (должен выводиться)");
DEBUG_INFO(DEBUG_CATEGORY_ETCP, "INFO от ETCP (должен выводиться - уровень debug)"); DEBUG_INFO(DEBUG_CATEGORY_ETCP, "INFO от ETCP (должен выводиться - уровень debug)");
DEBUG_DEBUG(DEBUG_CATEGORY_ETCP, "DEBUG от ETCP (должен выводиться - уровень debug)"); DEBUG_DEBUG(DEBUG_CATEGORY_ETCP, "DEBUG от ETCP (должен выводиться - уровень debug)");
@ -46,14 +46,14 @@ int main() {
DEBUG_INFO(DEBUG_CATEGORY_CRYPTO, "INFO от CRYPTO (НЕ должен выводиться - категория не включена)"); DEBUG_INFO(DEBUG_CATEGORY_CRYPTO, "INFO от CRYPTO (НЕ должен выводиться - категория не включена)");
// Проверка работы с файлом // Проверка работы с файлом
printf("\n5. Проверка вывода в файл:\n"); DEBUG_ERROR(DEBUG_CATEGORY_CONFIG, "5. Проверка вывода в файл:");
DEBUG_INFO(DEBUG_CATEGORY_CONFIG, "Это сообщение должно быть записано в файл: /tmp/utun_debug.log"); DEBUG_INFO(DEBUG_CATEGORY_CONFIG, "Это сообщение должно быть записано в файл: /tmp/utun_debug.log");
// Освобождение ресурсов // Освобождение ресурсов
free_config(config); free_config(config);
printf("\n=== Тест завершен ===\n"); DEBUG_ERROR(DEBUG_CATEGORY_CONFIG, "=== Тест завершен ===");
printf("Проверьте файл /tmp/utun_debug.log для записанных сообщений\n"); DEBUG_ERROR(DEBUG_CATEGORY_CONFIG, "Проверьте файл /tmp/utun_debug.log для записанных сообщений");
return 0; return 0;
} }

52
tests/test_debug_categories.c

@ -8,15 +8,18 @@
#include "../lib/debug_config.h" #include "../lib/debug_config.h"
int main(int argc, char *argv[]) { int main(int argc, char *argv[]) {
printf("=== Тест настройки категорий из аргументов ===\n"); DEBUG_INFO(DEBUG_CATEGORY_ALL, "=== Тест настройки категорий из аргументов ===");
printf("Запуск с аргументами: "); char buf[1024];
for (int i = 0; i < argc; i++) { int pos = snprintf(buf, sizeof(buf), "Запуск с аргументами: ");
printf("%s ", argv[i]); for (int i = 0; i < argc && pos < (int)sizeof(buf) - 1; i++) {
pos += snprintf(buf + pos, sizeof(buf) - pos, "%s ", argv[i]);
} }
printf("\n\n"); DEBUG_INFO(DEBUG_CATEGORY_ALL, "%s", buf);
// Инициализация отладки // Инициализация отладки
debug_config_init(); debug_config_init();
debug_set_level(DEBUG_LEVEL_INFO);
debug_set_categories(DEBUG_CATEGORY_ALL);
// Анализ аргументов командной строки // Анализ аргументов командной строки
int debug_categories = 0; int debug_categories = 0;
@ -47,41 +50,41 @@ int main(int argc, char *argv[]) {
if (strcmp(argv[i], "--debug-etcp") == 0) { if (strcmp(argv[i], "--debug-etcp") == 0) {
debug_enable_category(DEBUG_CATEGORY_ETCP); debug_enable_category(DEBUG_CATEGORY_ETCP);
debug_categories |= DEBUG_CATEGORY_ETCP; debug_categories |= DEBUG_CATEGORY_ETCP;
printf("✅ Включена категория ETCP\n"); DEBUG_INFO(DEBUG_CATEGORY_ETCP, "✅ Включена категория ETCP");
} else if (strcmp(argv[i], "--debug-queue") == 0) { } else if (strcmp(argv[i], "--debug-queue") == 0) {
debug_enable_category(DEBUG_CATEGORY_LL_QUEUE); debug_enable_category(DEBUG_CATEGORY_LL_QUEUE);
debug_categories |= DEBUG_CATEGORY_LL_QUEUE; debug_categories |= DEBUG_CATEGORY_LL_QUEUE;
printf("✅ Включена категория LL_QUEUE\n"); DEBUG_INFO(DEBUG_CATEGORY_LL_QUEUE, "✅ Включена категория LL_QUEUE");
} else if (strcmp(argv[i], "--debug-memory") == 0) { } else if (strcmp(argv[i], "--debug-memory") == 0) {
debug_enable_category(DEBUG_CATEGORY_MEMORY); debug_enable_category(DEBUG_CATEGORY_MEMORY);
debug_categories |= DEBUG_CATEGORY_MEMORY; debug_categories |= DEBUG_CATEGORY_MEMORY;
printf("✅ Включена категория MEMORY\n"); DEBUG_INFO(DEBUG_CATEGORY_MEMORY, "✅ Включена категория MEMORY");
} else if (strcmp(argv[i], "--debug-all") == 0) { } else if (strcmp(argv[i], "--debug-all") == 0) {
debug_set_categories(DEBUG_CATEGORY_ALL); debug_set_categories(DEBUG_CATEGORY_ALL);
debug_categories = DEBUG_CATEGORY_ALL; debug_categories = DEBUG_CATEGORY_ALL;
printf("✅ Включены все категории\n"); DEBUG_INFO(DEBUG_CATEGORY_ALL, "✅ Включены все категории");
break; // Все категории уже включены break; // Все категории уже включены
} else if (strcmp(argv[i], "--debug-none") == 0) { } else if (strcmp(argv[i], "--debug-none") == 0) {
debug_set_categories(DEBUG_CATEGORY_NONE); debug_set_categories(DEBUG_CATEGORY_NONE);
debug_categories = DEBUG_CATEGORY_NONE; debug_categories = DEBUG_CATEGORY_NONE;
printf("✅ Выключены все категории\n"); DEBUG_INFO(DEBUG_CATEGORY_ALL, "✅ Выключены все категории");
break; // Все категории уже выключены break; // Все категории уже выключены
} else if (strcmp(argv[i], "--level") == 0 && i+1 < argc) { } else if (strcmp(argv[i], "--level") == 0 && i+1 < argc) {
i++; i++;
if (strcmp(argv[i], "error") == 0) { if (strcmp(argv[i], "error") == 0) {
debug_set_level(DEBUG_LEVEL_ERROR); debug_set_level(DEBUG_LEVEL_ERROR);
printf("✅ Установлен уровень ERROR\n"); DEBUG_INFO(DEBUG_CATEGORY_ALL, "✅ Установлен уровень ERROR");
} else if (strcmp(argv[i], "info") == 0) { } else if (strcmp(argv[i], "info") == 0) {
debug_set_level(DEBUG_LEVEL_INFO); debug_set_level(DEBUG_LEVEL_INFO);
printf("✅ Установлен уровень INFO\n"); DEBUG_INFO(DEBUG_CATEGORY_ALL, "✅ Установлен уровень INFO");
} else if (strcmp(argv[i], "debug") == 0) { } else if (strcmp(argv[i], "debug") == 0) {
debug_set_level(DEBUG_LEVEL_DEBUG); debug_set_level(DEBUG_LEVEL_DEBUG);
printf("✅ Установлен уровень DEBUG\n"); DEBUG_INFO(DEBUG_CATEGORY_ALL, "✅ Установлен уровень DEBUG");
} }
} }
} }
printf("\n=== Тестовые сообщения ===\n"); DEBUG_INFO(DEBUG_CATEGORY_ALL, "=== Тестовые сообщения ===");
// Сообщения от разных категорий // Сообщения от разных категорий
DEBUG_INFO(DEBUG_CATEGORY_ETCP, "Сообщение от ETCP категории"); DEBUG_INFO(DEBUG_CATEGORY_ETCP, "Сообщение от ETCP категории");
@ -90,17 +93,18 @@ int main(int argc, char *argv[]) {
DEBUG_INFO(DEBUG_CATEGORY_CONNECTION, "Сообщение от CONNECTION категории"); DEBUG_INFO(DEBUG_CATEGORY_CONNECTION, "Сообщение от CONNECTION категории");
DEBUG_INFO(DEBUG_CATEGORY_CRYPTO, "Сообщение от CRYPTO категории"); DEBUG_INFO(DEBUG_CATEGORY_CRYPTO, "Сообщение от CRYPTO категории");
printf("\n=== Информация о текущих настройках ===\n"); DEBUG_INFO(DEBUG_CATEGORY_ALL, "=== Информация о текущих настройках ===");
printf("Активные категории: "); char cat_buf[256];
if (debug_categories & DEBUG_CATEGORY_ETCP) printf("ETCP "); int cat_pos = snprintf(cat_buf, sizeof(cat_buf), "Активные категории: ");
if (debug_categories & DEBUG_CATEGORY_LL_QUEUE) printf("LL_QUEUE "); if (debug_categories & DEBUG_CATEGORY_ETCP) cat_pos += snprintf(cat_buf + cat_pos, sizeof(cat_buf) - cat_pos, "ETCP ");
if (debug_categories & DEBUG_CATEGORY_MEMORY) printf("MEMORY "); if (debug_categories & DEBUG_CATEGORY_LL_QUEUE) cat_pos += snprintf(cat_buf + cat_pos, sizeof(cat_buf) - cat_pos, "LL_QUEUE ");
if (debug_categories & DEBUG_CATEGORY_CONNECTION) printf("CONNECTION "); if (debug_categories & DEBUG_CATEGORY_MEMORY) cat_pos += snprintf(cat_buf + cat_pos, sizeof(cat_buf) - cat_pos, "MEMORY ");
if (debug_categories & DEBUG_CATEGORY_CRYPTO) printf("CRYPTO "); if (debug_categories & DEBUG_CATEGORY_CONNECTION) cat_pos += snprintf(cat_buf + cat_pos, sizeof(cat_buf) - cat_pos, "CONNECTION ");
if (debug_categories == DEBUG_CATEGORY_ALL) printf("ALL "); if (debug_categories & DEBUG_CATEGORY_CRYPTO) cat_pos += snprintf(cat_buf + cat_pos, sizeof(cat_buf) - cat_pos, "CRYPTO ");
if (debug_categories == DEBUG_CATEGORY_NONE) printf("NONE "); if (debug_categories == DEBUG_CATEGORY_ALL) cat_pos += snprintf(cat_buf + cat_pos, sizeof(cat_buf) - cat_pos, "ALL ");
printf("\n"); if (debug_categories == DEBUG_CATEGORY_NONE) cat_pos += snprintf(cat_buf + cat_pos, sizeof(cat_buf) - cat_pos, "NONE ");
DEBUG_INFO(DEBUG_CATEGORY_ALL, "%s", cat_buf);
return 0; return 0;
} }
Loading…
Cancel
Save