using CursorLang.Core.Models; namespace CursorLang.Core.Tests.Models; public sealed class LayoutChangedEventArgsTests { [Theory] [InlineData(LayoutChangeReason.UserSwitched)] [InlineData(LayoutChangeReason.ApplicationSwitched)] public void The_event_carries_the_layout_and_the_reason(LayoutChangeReason reason) { KeyboardLayout layout = KeyboardLayout.FromLocaleId(0x0419); var args = new LayoutChangedEventArgs(layout, reason); Assert.Same(layout, args.Layout); Assert.Equal(reason, args.Reason); } [Fact] public void The_event_stays_an_ordinary_dotnet_event() { var args = new LayoutChangedEventArgs(KeyboardLayout.FromLocaleId(0x0409), LayoutChangeReason.UserSwitched); Assert.IsAssignableFrom(args); } }