using System.Text.Json; using XFESystem.Desktop; namespace XFESystem.Browser.Tests; public sealed class MonacoNavigationProofTests { [Fact] public void ReadOnlyNavigationProofTracksActualClickedCaretAndControlEndWithoutSource() { var browser=new BrowserService();Assert.Equal("{}",browser.ReadEditorNavigationProof()); browser.ResizeViewport(796,404);browser.Navigate("about:Monaco"); long now=0;for(int index=0;index<12;index++){browser.Layout(new(796,404));browser.AdvanceTime(now+=17);} string original=browser.ReadEditorText()!; browser.Pointer(new("mousedown",160,70,Buttons:1));browser.Pointer(new("mouseup",160,70)); using(var clicked=JsonDocument.Parse(browser.ReadEditorNavigationProof())) { Assert.Equal("ActualMonacoNavigation",clicked.RootElement.GetProperty("Kind").GetString()); Assert.Equal(3,clicked.RootElement.GetProperty("Position").GetProperty("lineNumber").GetInt32()); Assert.True(clicked.RootElement.GetProperty("Position").GetProperty("column").GetInt32()