Пример #1
0
 /**
  * @test
  */
 public function should_ignore_keys_when_walking_an_associative_array()
 {
     // given
     $variations = [];
     $array = new ArrayPermuter(['a' => 1, 'b' => 2]);
     // when
     $array->walk(function ($variation) use(&$variations) {
         $variations[] = $variation;
     });
     // then
     $this->assertEquals([[1, 2], [2, 1]], $variations);
 }
Пример #2
0
 /**
  * @test
  */
 public function should_be_able_to_solve_an_example_of_a_vietnamese_snake()
 {
     // given
     $array = new ArrayPermuter(range(1, 9));
     $answers = 0;
     // when
     $array->walk(function ($n) use(&$answers) {
         $answer = $n[0] + 13 * $n[1] / $n[2] + $n[3] + 12 * $n[4] - $n[5] - 11 + $n[6] * $n[7] / $n[8] - 10;
         if ($answer == 66) {
             $answers++;
         }
     });
     // then
     $this->assertEquals(128, $answers);
 }