NavisworksTransport/TestConfigManager.cs

57 lines
2.6 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System;
using NavisworksTransport.Core.Config;
namespace NavisworksTransport.Tests
{
/// <summary>
/// 配置管理器测试程序
/// 使用方法:在 MainPlugin 的 Execute 方法中临时调用 TestConfigManager.RunTests()
/// </summary>
public class TestConfigManager
{
public static void RunTests()
{
Console.WriteLine("=== 开始测试配置管理器 ===");
Console.WriteLine();
// 测试 1加载或创建默认配置
Console.WriteLine("测试 1: 加载或创建默认配置");
var config = ConfigManager.Instance.Current;
Console.WriteLine($"配置文件路径: {ConfigManager.ConfigFilePath}");
Console.WriteLine($"网格尺寸: {config.GridGeneration.CellSizeMeters} 米");
Console.WriteLine($"车辆半径: {config.GridGeneration.VehicleRadiusMeters} 米");
Console.WriteLine($"路径策略: {config.PathPlanning.DefaultPathStrategy}");
Console.WriteLine();
// 测试 2修改配置并保存
Console.WriteLine("测试 2: 修改配置并保存");
config.GridGeneration.CellSizeMeters = 0.6;
config.PathPlanning.DefaultPathStrategy = "SafetyFirst";
config.Visualization.EnableGridVisualization = true;
ConfigManager.Instance.SaveConfig(config);
Console.WriteLine("配置已保存");
Console.WriteLine();
// 测试 3重新加载配置
Console.WriteLine("测试 3: 重新加载配置");
ConfigManager.Instance.Reload();
var reloadedConfig = ConfigManager.Instance.Current;
Console.WriteLine($"重载后网格尺寸: {reloadedConfig.GridGeneration.CellSizeMeters} 米");
Console.WriteLine($"重载后路径策略: {reloadedConfig.PathPlanning.DefaultPathStrategy}");
Console.WriteLine($"重载后网格可视化: {reloadedConfig.Visualization.EnableGridVisualization}");
Console.WriteLine();
// 测试 4重置为默认配置
Console.WriteLine("测试 4: 重置为默认配置");
ConfigManager.Instance.ResetToDefault();
var defaultConfig = ConfigManager.Instance.Current;
Console.WriteLine($"重置后网格尺寸: {defaultConfig.GridGeneration.CellSizeMeters} 米");
Console.WriteLine($"重置后路径策略: {defaultConfig.PathPlanning.DefaultPathStrategy}");
Console.WriteLine();
Console.WriteLine("=== 测试完成 ===");
Console.WriteLine($"请检查配置文件: {ConfigManager.ConfigFilePath}");
}
}
}