| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 | <?phpdeclare(strict_types=1);use PHPUnit\Framework\TestCase;require_once __DIR__ . "/aretheythesame.php";class Check {  /**   * @var string   */  public $name;  /**   * @var array   */  public $one;  /**   * @var array   */  public $two;  /**   * @var bool   */  public $expected;  public function __construct(string $name, array $a, $b, bool $expected) {    $this->one = $a;    $this->two = $b;    $this->expected = $expected;    $this->name = $name;  }}class TestCompCase extends TestCase {  function testComp() {    $checks = [      new Check(        "Good",        [121, 144, 19, 161, 19, 144, 19, 11],        [121, 14641, 20736, 361, 25921, 361, 20736, 361],        true      ),      new Check(        "132 is not 11^2",        [121, 144, 19, 161, 19, 144, 19, 11],        [132, 14641, 20736, 361, 25921, 361, 20736, 361],        false      ),      new Check(        "36100 is not the square of any member of a",        [121, 144, 19, 161, 19, 144, 19, 11],        [121, 14641, 20736, 36100, 25921, 361, 20736, 361],        false      ),      new Check(        "Bad pair",        [4, 4],        [1, 31],        false      ),      new Check(        "Empty and null",        [],        NULL,        false      )    ];    /** @var \Check $check */    foreach ($checks as $check) {      $actual = comp($check->one, $check->two);    }    $this->assertEquals($check->expected, $actual, $check->name);  }}
 |