public void StatusBar_Contructor_Default() { var sb = new StatusBar(); Assert.Empty(sb.Items); Assert.False(sb.CanFocus); Assert.Equal(Colors.Menu, sb.ColorScheme); Assert.Equal(0, sb.X); Assert.Equal(Dim.Fill(), sb.Width); Assert.Equal(1, sb.Height); Assert.Equal(0, sb.Y); var driver = new FakeDriver(); Application.Init(driver, new FakeMainLoop(() => FakeConsole.ReadKey(true))); sb = new StatusBar(); driver.SetCursorVisibility(CursorVisibility.Default); driver.GetCursorVisibility(out CursorVisibility cv); Assert.Equal(CursorVisibility.Default, cv); Assert.True(FakeConsole.CursorVisible); Application.Iteration += () => { Assert.Equal(24, sb.Y); driver.SetWindowSize(driver.Cols, 15); Assert.Equal(14, sb.Y); sb.OnEnter(null); driver.GetCursorVisibility(out cv); Assert.Equal(CursorVisibility.Invisible, cv); Assert.False(FakeConsole.CursorVisible); Application.RequestStop(); }; Application.Top.Add(sb); Application.Run(); Application.Shutdown(); }