Example #1
0
 /**
  * @param array $sudoku
  */
 private function initBoxes(array $sudoku)
 {
     for ($i = 0; $i < 9; $i = $i + 3) {
         for ($j = 0; $j < 9; $j = $j + 3) {
             $extractedBox = $this->arrayHelper->extract($sudoku, $i, $j, 3, 3);
             $this->boxes[] = $this->boxFactory->build($extractedBox);
         }
     }
 }
Example #2
0
 /**
  * @return array
  */
 public function getAs1dArray()
 {
     return $this->arrayHelper->convertTo1d($this->box);
 }
 /**
  * @param array $extractedColumn
  *
  * @return SudokuColumn
  */
 public function build(array $extractedColumn)
 {
     $this->dimensionValidator->validate($extractedColumn, 9, 1);
     $row = $this->arrayHelper->convertTo1d($extractedColumn);
     return new $this->class($row);
 }
Example #4
0
 public function testConvertColumnTo1d()
 {
     $expected = array(1, 2, 3);
     $converted = $this->helper->convertTo1d($this->getMatrix(3, 1));
     $this->assertEquals($expected, $converted);
 }