Forge
csharpdeeb25a2
1using CascadeIDE.Services.ChordNotation;
2using Xunit;
3
4namespace CascadeIDE.Tests;
5
6public sealed class ChordNotationRendererTests
7{
8 [Fact]
9 public void Windows_sequence_matches_KeyGesture_style()
10 {
11 Assert.True(KeyGestureChordSyntax.TryParseToNormalized("Ctrl+K s p", out var seq, out _));
12 var text = ChordNotationRenderer.Windows.Render(seq);
13 Assert.Equal("Ctrl+K S P", text);
14 }
15
16 [Fact]
17 public void Mac_symbols_sequence_uses_glyphs()
18 {
19 Assert.True(KeyGestureChordSyntax.TryParseToNormalized("Ctrl+Shift+P", out var seq, out _));
20 var text = ChordNotationRenderer.MacSymbols.Render(seq);
21 Assert.Equal("\u2303\u21E7P", text); // ⌃⇧P
22 }
23
24 [Fact]
25 public void FormatChord_windows_Meta()
26 {
27 var t = ChordNotationRenderer.FormatChord(ChordModifierKeys.Meta | ChordModifierKeys.Control, "K", ChordNotationRenderFlavor.Windows);
28 Assert.Equal("Ctrl+Win+K", t);
29 }
30
31 [Fact]
32 public void FormatChord_mac_Meta_is_Command_glyph()
33 {
34 var t = ChordNotationRenderer.FormatChord(ChordModifierKeys.Meta, "K", ChordNotationRenderFlavor.MacSymbols);
35 Assert.Equal("\u2318K", t); // ⌘K
36 }
37}
38
View only · write via MCP/CIDE