Files
codex/codex-rs/app-server/src/external_agent_migration/processor_tests.rs
T
charlesgong-openai 7d1218a997 Add external agent memory migration (#33444)
## What changed

- Add a feature-gated `MEMORY` migration item to the app-server protocol and TUI.
- Discover project memory Markdown files, preserve their project scope, and copy selected projects into the Codex memory extension workspace.
- Detect changed, renamed, and removed source projects, report per-project import failures, and enqueue memory consolidation after workspace changes.

## Testing

- Cover memory discovery, selection, synchronization, scope validation, feature gating, protocol results, and TUI rendering.

GitOrigin-RevId: 9b17b2e9a639a064dba8aaffbec6345ae419018e
2026-07-15 22:49:52 +00:00

41 lines
1.4 KiB
Rust

use super::*;
fn migration_item(
item_type: ExternalAgentConfigMigrationItemType,
) -> ExternalAgentConfigMigrationItem {
ExternalAgentConfigMigrationItem {
item_type,
description: String::new(),
cwd: None,
details: None,
}
}
#[test]
fn migration_items_that_update_runtime_sources_trigger_refresh() {
assert!(migration_items_need_runtime_refresh(&[migration_item(
ExternalAgentConfigMigrationItemType::Config,
)]));
assert!(migration_items_need_runtime_refresh(&[migration_item(
ExternalAgentConfigMigrationItemType::Skills,
)]));
assert!(migration_items_need_runtime_refresh(&[migration_item(
ExternalAgentConfigMigrationItemType::McpServerConfig,
)]));
assert!(migration_items_need_runtime_refresh(&[migration_item(
ExternalAgentConfigMigrationItemType::Hooks,
)]));
assert!(migration_items_need_runtime_refresh(&[migration_item(
ExternalAgentConfigMigrationItemType::Commands,
)]));
assert!(migration_items_need_runtime_refresh(&[migration_item(
ExternalAgentConfigMigrationItemType::Plugins,
)]));
assert!(!migration_items_need_runtime_refresh(&[migration_item(
ExternalAgentConfigMigrationItemType::Memory,
)]));
assert!(!migration_items_need_runtime_refresh(&[migration_item(
ExternalAgentConfigMigrationItemType::Sessions,
)]));
}