using PolyTrader.Modules.CopyTrading.Logic; using Xunit; namespace PolyTrader.Tests { /// Sicherheitsnetz für die PnL-Zeilenfärbung (Slice 3): Schwellen -10/0/10. public class TradeRowColoringTests { [Theory] [InlineData(-0.01, "loss")] [InlineData(-25.0, "loss")] [InlineData(0.0, "small")] // Break-even = hellgrün (kein Verlust) [InlineData(5.0, "small")] [InlineData(10.0, "small")] // genau 10 % noch hellgrün [InlineData(10.01, "big")] [InlineData(80.0, "big")] public void Color_matches_threshold(double pct, string expected) { var c = TradeRowColoring.ForPnlPercent((decimal)pct); var want = expected switch { "loss" => TradeRowColoring.Loss, "big" => TradeRowColoring.BigWin, _ => TradeRowColoring.SmallWin }; Assert.Equal(want, c); } } }