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