$function, 'argumentOne' => $argumentOne, 'argumentTwo' => $argumentTwo, 'question' => $question, ]; }, range(1, 20)); $expected = [ [ 'function' => 'min', 'argumentOne' => 'two', 'argumentTwo' => 'one', 'question' => 'min(two, one)', ], [ 'function' => 'minus', 'argumentOne' => 'five', 'argumentTwo' => 'five', 'question' => 'five minus five', ], [ 'function' => 'minus', 'argumentOne' => 'four', 'argumentTwo' => 'four', 'question' => 'four minus four', ], [ 'function' => 'min', 'argumentOne' => 'nine', 'argumentTwo' => 'seven', 'question' => 'min(nine, seven)', ], [ 'function' => 'minus', 'argumentOne' => 'seven', 'argumentTwo' => 'six', 'question' => 'seven minus six', ], [ 'function' => 'max', 'argumentOne' => 'three', 'argumentTwo' => 'six', 'question' => 'max(three, six)', ], [ 'function' => 'max', 'argumentOne' => 'six', 'argumentTwo' => 'five', 'question' => 'max(six, five)', ], [ 'function' => 'max', 'argumentOne' => 'four', 'argumentTwo' => 'three', 'question' => 'max(four, three)', ], [ 'function' => 'min', 'argumentOne' => 'two', 'argumentTwo' => 'nine', 'question' => 'min(two, nine)', ], [ 'function' => 'plus', 'argumentOne' => 'eight', 'argumentTwo' => 'one', 'question' => 'eight plus one', ], [ 'function' => 'plus', 'argumentOne' => 'three', 'argumentTwo' => 'five', 'question' => 'three plus five', ], [ 'function' => 'min', 'argumentOne' => 'eight', 'argumentTwo' => 'three', 'question' => 'min(eight, three)', ], [ 'function' => 'max', 'argumentOne' => 'zero', 'argumentTwo' => 'nine', 'question' => 'max(zero, nine)', ], [ 'function' => 'min', 'argumentOne' => 'five', 'argumentTwo' => 'nine', 'question' => 'min(five, nine)', ], [ 'function' => 'minus', 'argumentOne' => 'six', 'argumentTwo' => 'four', 'question' => 'six minus four', ], [ 'function' => 'max', 'argumentOne' => 'one', 'argumentTwo' => 'one', 'question' => 'max(one, one)', ], [ 'function' => 'plus', 'argumentOne' => 'five', 'argumentTwo' => 'zero', 'question' => 'five plus zero', ], [ 'function' => 'minus', 'argumentOne' => 'nine', 'argumentTwo' => 'eight', 'question' => 'nine minus eight', ], [ 'function' => 'minus', 'argumentOne' => 'three', 'argumentTwo' => 'one', 'question' => 'three minus one', ], [ 'function' => 'min', 'argumentOne' => 'three', 'argumentTwo' => 'one', 'question' => 'min(three, one)', ], ]; self::assertSame($expected, $challenges); } }