123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 |
- #nullable enable
- using UnitTests;
- using Xunit.Abstractions;
- namespace Terminal.Gui.ViewTests;
- [Trait ("Category", "Output")]
- public class TransparentTests (ITestOutputHelper output)
- {
- [Fact]
- [SetupFakeDriver]
- public void Transparent_Text_Occludes ()
- {
- var super = new View
- {
- Id = "super",
- Width = 20,
- Height = 5,
- };
- super.DrawingContent += (sender, args) =>
- {
- var s = sender as View;
- s!.FillRect(s!.Viewport, Glyphs.Stipple);
- args.Cancel = true;
- };
- var sub = new View
- {
- X = 1,
- Y = 1,
- Width = 15,
- Height = 3,
- Id = "sub",
- Text = "Sub",
- ViewportSettings = ViewportSettings.Transparent,
- BorderStyle = LineStyle.Single
- };
- super.Add (sub);
- super.Layout ();
- super.Draw ();
- _ = DriverAssert.AssertDriverContentsWithFrameAre (
- @"
- ░░░░░░░░░░░░░░░░░░░░
- ░┌─────────────┐░░░░
- ░│Sub░░░░░░░░░░│░░░░
- ░└─────────────┘░░░░
- ░░░░░░░░░░░░░░░░░░░░", output);
- }
- [Fact]
- [SetupFakeDriver]
- public void Transparent_SubView_Occludes ()
- {
- var super = new View
- {
- Id = "super",
- Width = 20,
- Height = 5,
- };
- super.DrawingContent += (sender, args) =>
- {
- var s = sender as View;
- s!.FillRect (s!.Viewport, Glyphs.Stipple);
- args.Cancel = true;
- };
- var sub = new View
- {
- X = 1,
- Y = 1,
- Width = 15,
- Height = 3,
- Id = "sub",
- ViewportSettings = ViewportSettings.Transparent,
- BorderStyle = LineStyle.Single
- };
- var subSub = new View
- {
- X = Pos.Center(),
- Y = Pos.Center(),
- Width = Dim.Auto(),
- Height = Dim.Auto(),
- Id = "subSub",
- Text = "subSub",
- };
- sub.Add (subSub);
- super.Add (sub);
- super.Layout ();
- super.Draw ();
- _ = DriverAssert.AssertDriverContentsWithFrameAre (
- @"
- ░░░░░░░░░░░░░░░░░░░░
- ░┌─────────────┐░░░░
- ░│░░░subSub░░░░│░░░░
- ░└─────────────┘░░░░
- ░░░░░░░░░░░░░░░░░░░░", output);
- }
- }
|