private SudokuPussel SkapaEttPusselMedSingel_I_Kolumn()
            {
                SudokuPussel pussel = new SudokuPussel(new Sudoku.Struct.Storlek(3, 3));

                pussel.PlaceraSiffra(1, 4, 7);
                pussel.PlaceraSiffra(8, 3, 7);
                pussel.PlaceraSiffra(5, 5, 4);
                pussel.PlaceraSiffra(3, 5, 5);
                return(pussel);
            }
            private SudokuPussel SkapaEttPusselMedSingel_I_Box()
            {
                SudokuPussel pussel = new SudokuPussel(new Sudoku.Struct.Storlek(3, 3));

                pussel.PlaceraSiffra(0, 0, 1);
                pussel.PlaceraSiffra(7, 1, 1);
                pussel.PlaceraSiffra(5, 2, 4);
                pussel.PlaceraSiffra(3, 2, 5);
                return(pussel);
            }
            private SudokuPussel SkapaEttPusselMedSingel_I_Rad()
            {
                SudokuPussel pussel = new SudokuPussel(new Sudoku.Struct.Storlek(3, 3));

                pussel.PlaceraSiffra(0, 0, 3);
                pussel.PlaceraSiffra(1, 3, 3);
                pussel.PlaceraSiffra(2, 7, 4);
                pussel.PlaceraSiffra(2, 8, 5);
                return(pussel);
            }
            public void Det_Finns_Ingen_Singel_I_Rad()
            {
                //Setup
                SudokuPussel pussel = new SudokuPussel(new Sudoku.Struct.Storlek(3, 3));
                bool         svar;

                //Utför
                pussel.PlaceraSiffra(0, 0, 3);
                pussel.PlaceraSiffra(1, 3, 3);
                pussel.PlaceraSiffra(2, 7, 4);
                svar = SudokuLösare.FinnsDetSingelIRad(pussel);

                //Kontroll
                Assert.AreEqual(false, svar);
            }
        public void PlaceraSiffra_KontrollSiffraPlacerasRätt()
        {
            //Setup
            int          rad     = 2;
            int          kolumn  = 2;
            int          siffra  = 5;
            SudokuPussel pussel  = new SudokuPussel(new Sudoku.Struct.Storlek(3, 3));
            bool         korrekt = false;

            //Utför
            pussel.PlaceraSiffra(rad, kolumn, siffra);
            foreach (SudokuRuta ruta in pussel.SpelPlan)
            {
                if (ruta.Rad == rad && ruta.Kolumn == kolumn && ruta.Siffra == siffra)
                {
                    korrekt = true;
                }
                if ((ruta.Rad != rad || ruta.Kolumn != kolumn) && ruta.Siffra != 0)
                {
                    korrekt = false;
                    break;
                }
            }

            //Kontroll
            Assert.AreEqual(true, korrekt);
        }
        public void PlaceraSiffra_PlaceraSiffraIFylldBox()
        {
            //Setup
            int          rad    = 2;
            int          kolumn = 2;
            int          siffra = 5;
            SudokuPussel pussel = new SudokuPussel(new Sudoku.Struct.Storlek(3, 3));
            bool         returvärde;

            //Utför
            returvärde = pussel.PlaceraSiffra(rad, kolumn, siffra);
            returvärde = pussel.PlaceraSiffra(rad, kolumn, siffra);

            //Kontroll
            Assert.AreEqual(false, returvärde);
        }
        private SudokuPussel SkapaEttPusselOchPlaceraEnSiffra(int rad, int kolumn, int siffra)
        {
            SudokuPussel pussel = new SudokuPussel(new Sudoku.Struct.Storlek(3, 3));

            pussel.PlaceraSiffra(rad, kolumn, siffra);
            return(pussel);
        }
            private SudokuPussel SkapaEttPusselMedSingelKandidat()
            {
                SudokuPussel pussel = new SudokuPussel(new Sudoku.Struct.Storlek(3, 3));

                pussel.PlaceraSiffra(0, 0, 1);
                pussel.PlaceraSiffra(0, 1, 2);
                pussel.PlaceraSiffra(0, 2, 3);
                pussel.PlaceraSiffra(0, 4, 5);
                pussel.PlaceraSiffra(0, 5, 6);
                pussel.PlaceraSiffra(0, 6, 7);
                pussel.PlaceraSiffra(0, 7, 8);
                pussel.PlaceraSiffra(1, 8, 9);
                return(pussel);
            }
        private SudokuPussel SkapaEttFelaktigtSudoku()
        {
            SudokuPussel             sudoku       = new SudokuPussel(new Storlek(3, 3));
            List <SudokuSökResultat> iFylladrutor = new List <SudokuSökResultat>();

            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 0, Kolumn = 4, Siffra = 8
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 1, Kolumn = 3, Siffra = 1
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 1, Kolumn = 8, Siffra = 9
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 2, Kolumn = 1, Siffra = 1
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 2, Kolumn = 8, Siffra = 3
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 3, Kolumn = 1, Siffra = 6
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 3, Kolumn = 3, Siffra = 2
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 3, Kolumn = 5, Siffra = 2
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 4, Kolumn = 0, Siffra = 3
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 4, Kolumn = 2, Siffra = 9
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 4, Kolumn = 4, Siffra = 5
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 4, Kolumn = 7, Siffra = 6
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 4, Kolumn = 8, Siffra = 7
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 5, Kolumn = 1, Siffra = 5
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 5, Kolumn = 6, Siffra = 2
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 5, Kolumn = 8, Siffra = 4
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 6, Kolumn = 1, Siffra = 3
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 6, Kolumn = 2, Siffra = 6
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 6, Kolumn = 5, Siffra = 5
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 6, Kolumn = 7, Siffra = 9
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 6, Kolumn = 8, Siffra = 8
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 7, Kolumn = 1, Siffra = 9
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 7, Kolumn = 4, Siffra = 3
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 7, Kolumn = 8, Siffra = 5
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 8, Kolumn = 0, Siffra = 7
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 8, Kolumn = 4, Siffra = 9
            });
            iFylladrutor.Add(new SudokuSökResultat()
            {
                Rad = 8, Kolumn = 7, Siffra = 1
            });
            sudoku.PlaceraSiffra(iFylladrutor);
            return(sudoku);
        }