#!/usr/bin/env python3
import sys
import os
from pathlib import Path
# 添加当前目录到 Python 路径
sys.path.append('.')
# 设置 MCP 模式
os.environ['MCP_MODE'] = '1'
print("Testing config restoration...")
# 首先创建一个备份文件来测试恢复
config_dir = Path.home() / '.remote-terminal'
config_file = config_dir / 'config.yaml'
backup_file = config_dir / 'config.yaml.backup'
print(f"Config directory: {config_dir}")
print(f"Config file exists: {config_file.exists()}")
print(f"Backup file exists: {backup_file.exists()}")
# 如果没有备份文件,创建一个
if not backup_file.exists() and config_dir.exists():
config_dir.mkdir(exist_ok=True)
backup_content = """# Remote Terminal MCP Configuration
# Generated by test script
servers:
test-server:
type: script_based
host: test.example.com
port: 22
username: testuser
description: Test server configuration
session:
name: test-server_dev
specs:
connection:
type: ssh
timeout: 30
environment_setup:
shell: bash
working_directory: /home/testuser
global_settings:
default_timeout: 30
auto_recovery: true
log_level: INFO
security_settings:
strict_host_key_checking: false
connection_timeout: 30
"""
with open(backup_file, 'w', encoding='utf-8') as f:
f.write(backup_content)
print("Created test backup file")
# 现在测试 EnhancedConfigManager
try:
from config_manager.main import EnhancedConfigManager
print("Initializing EnhancedConfigManager in MCP mode...")
manager = EnhancedConfigManager()
print("Manager initialized successfully")
# 检查配置文件是否被恢复
print(f"After initialization - Config file exists: {config_file.exists()}")
if config_file.exists():
print("✅ Configuration file was restored!")
with open(config_file, 'r', encoding='utf-8') as f:
content = f.read()
print(f"Config file size: {len(content)} characters")
else:
print("❌ Configuration file was not restored")
except Exception as e:
print(f"Error: {e}")
import traceback
traceback.print_exc()
print("Test completed")