static void Main(string[] args) { List <Tile> inputTiles = new List <Tile>(); Console.WriteLine("Welcome to Rummikub Solver. Input tiles."); while (true) { string input = Console.ReadLine(); if (input == "solve") { break; } else { try { inputTiles.Add(new Tile(input)); } catch (System.ArgumentException) { Console.WriteLine("Could not recognize tile. Try again"); } } } Console.WriteLine("Solving..."); try{ Solution solution = RummikubSolver.Solve(inputTiles); Console.WriteLine("Solved:"); Console.WriteLine(solution.ToString()); } catch (UnsolveableException) { Console.WriteLine("No solution found"); } Console.WriteLine("Goodbye!"); }
public void TestCross() { Solution result = RummikubSolver.Solve(new List <Tile>() { tileY4, tileY5, tileY6, tileG6, tileR6, tileB6 }); Assert.That(result.Solved(), Is.True); }
public void TestColorSolverWith4() { Solution result = RummikubSolver.Solve(new List <Tile>() { tileY3, tileY4, tileY5, tileY6 }); Assert.That(result.Solved(), Is.True); }
public void TestNumberSolverWith4() { Solution result = RummikubSolver.Solve(new List <Tile>() { tileY6, tileG6, tileR6, tileB6 }); Assert.That(result.Solved(), Is.True); }