Forge
csharpdeeb25a2
1using CascadeIDE.Features.WorkspaceNavigation.Application;
2using Xunit;
3
4namespace CascadeIDE.Tests;
5
6public sealed class CorrespondenceLayersProjectionTests
7{
8 [Fact]
9 public void BuildLayersBadge_orders_L0_through_L4()
10 {
11 var signals = new CorrespondenceLayerSignals(
12 SemanticCanonL0: true,
13 FeatureRegistryL1p: true,
14 AdrPathMapL1: true,
15 CodeIntentGraphL2: true,
16 ChangeIntentL3: false,
17 DiscourseCodeL4: false);
18
19 var badge = CorrespondenceLayersProjection.BuildLayersBadge(signals);
20
21 Assert.StartsWith("Correspondence:", badge, StringComparison.Ordinal);
22 Assert.Contains("L0", badge, StringComparison.Ordinal);
23 Assert.Contains("L1′", badge, StringComparison.Ordinal);
24 Assert.Contains("L1", badge, StringComparison.Ordinal);
25 Assert.Contains("L2", badge, StringComparison.Ordinal);
26 Assert.DoesNotContain("L3", badge, StringComparison.Ordinal);
27 Assert.DoesNotContain("L4", badge, StringComparison.Ordinal);
28 }
29
30 [Fact]
31 public void CorrespondenceKindsCatalog_loads_embedded_layers()
32 {
33 var doc = CorrespondenceKindsCatalog.Load();
34
35 Assert.Equal(1, doc.SchemaVersion);
36 Assert.Equal(6, doc.Layers.Count);
37 Assert.Contains(doc.Layers, l => l.Id == "L0");
38 Assert.Contains(doc.Layers, l => l.Id == "L4");
39 Assert.True(CorrespondenceKindsCatalog.TryGetLayer("L1p", out var l1p));
40 Assert.Equal("L1′", l1p.Label);
41 }
42}
43
View only · write via MCP/CIDE