public void ShouldWinAfterPlayingAllMoves() { var allMoves = AllAcrossMoves.SelectMany(x => AllDownMoves.Select(y => (x, y))); var battleshipGame = new StandardBattleshipGameBuilder() .WithShip(ShipType.Battleship) .WithShip(ShipType.Battleship) .WithShip(ShipType.Destroyer) .WithShip(ShipType.Destroyer) .Build(); foreach (var move in allMoves) { battleshipGame.Fire(move); } Assert.True(battleshipGame.IsComplete); }