public void Generate_When5x5_GeneratesMazeWith25Cells() { var grid = new Grid(5, 5); SideWinder.Generate(grid); Assert.AreEqual(25, grid.Cells().Count()); }
static void Main(string[] args) { Console.OutputEncoding = System.Text.Encoding.UTF8; var grid = new Grid(10, 10); SideWinder.Generate(grid); Console.Write(grid); Console.WriteLine(); Console.ReadKey(); }
public void ToBitmap_ReturnsBitmap() { int columns = 25; int rows = 25; var grid = new Grid(rows, columns); SideWinder.Generate(grid); var bitmap = grid.ToBitmap(); Assert.IsNotNull(bitmap); }
public void ToString_ReturnsString() { int columns = 25; int rows = 25; var grid = new Grid(rows, columns); SideWinder.Generate(grid); string gridString = grid.ToString(); Assert.IsTrue(!String.IsNullOrEmpty(gridString)); Assert.IsTrue(!gridString.Contains("?")); }
private static void GenerateGrid(Algorithm algorithm, Grid grid) { switch (algorithm) { case Algorithm.BinaryTree: BinaryTree.Generate(grid); break; case Algorithm.Sidewinder: SideWinder.Generate(grid); break; } }
public void Generate_When5x5_GeneratesMazeWithAtLeastOneLink() { var grid = new Grid(5, 5); SideWinder.Generate(grid); bool hasLink = false; foreach (Cell cell in grid.Cells()) { if (cell.Links.Any()) { hasLink = true; break; } } Assert.IsTrue(hasLink); }