Пример #1
0
        internal static void Run(Rectangle clientArea, IEnumerable <Rectangle> rectangles, Positioner.Parms pos, IEnumerable <Rectangle> expected, string label)
        {
            var rc = Positioner.DoPosition(pos, clientArea, rectangles).CheapToArray();

            expected = expected.CheapToArray();
            Assert.AreEqual(expected.Count(), rc.Length, $"{label}: Results length");
            var results = expected.EquiZip(rc, (e, r) => new { expected = e, results = r })
                          .Select((r, i) => new { i, r.expected, r.results, success = r.expected.Equals(r.results) })
                          .ToArray();

            Assert.IsTrue(results.All(r => r.success), results.Select(r => $"{Environment.NewLine}{r.expected} {(r.success ? "==" : "<>")} {r.results}").ToDelimitedString(","), $"{label}: equality");
        }
Пример #2
0
 public static Positioner.Parms WithRowsCols(this Positioner.Parms model, int rows, int cols)
 {
     return(new Positioner.Parms {
         Cols = cols, Rows = rows, HShape = model.HShape, VShape = model.VShape, Spacing = model.Spacing, Margin = model.Margin
     });
 }