Files
AX-Copilot-Codex/src/AxCopilot.Tests/Views/SlashCommandCatalogTests.cs
lacvet b1fa8f692a
Some checks failed
Release Gate / gate (push) Has been cancelled
테스트 회귀망 강화: 권한 모드/슬래시 카탈로그 L4 통합 검증 추가
- PermissionModeCatalogTests 추가: 글로벌/도구 정규화, 승인 필요 정책, 한국어 표시 라벨 검증

- PermissionModePresentationCatalogTests 추가: 권한 표면 순서와 unknown fallback(Default) 검증

- SlashCommandCatalogTests 추가: dev 전용 명령 필터링과 /compact,/permissions,/mcp 핵심 명령 등록 검증

- OperationModePolicyTests 보강: deny 패턴이 allow 패턴보다 우선되는 충돌 케이스 추가

- README.md, docs/DEVELOPMENT.md에 2026-04-04 13:40(KST) 기준 이력 반영
2026-04-04 13:40:58 +09:00

32 lines
1.0 KiB
C#

using AxCopilot.Views;
using FluentAssertions;
using Xunit;
namespace AxCopilot.Tests.Views;
public class SlashCommandCatalogTests
{
[Fact]
public void MatchBuiltinCommands_ShouldFilterDevCommandsInChatTab()
{
var chatMatches = SlashCommandCatalog.MatchBuiltinCommands("/rev", isDevTab: false);
var devMatches = SlashCommandCatalog.MatchBuiltinCommands("/rev", isDevTab: true);
chatMatches.Should().BeEmpty();
devMatches.Should().ContainSingle(x => x.Cmd == "/review");
}
[Fact]
public void Catalog_ShouldContainCoreParityCommands()
{
SlashCommandCatalog.TryGetEntry("/compact", out var compactEntry).Should().BeTrue();
compactEntry.SystemPrompt.Should().Be("__COMPACT__");
SlashCommandCatalog.TryGetEntry("/permissions", out var permissionEntry).Should().BeTrue();
permissionEntry.SystemPrompt.Should().Be("__PERMISSIONS__");
SlashCommandCatalog.TryGetEntry("/mcp", out var mcpEntry).Should().BeTrue();
mcpEntry.SystemPrompt.Should().Be("__MCP__");
}
}