complexAssert = new ComplexAssert(); } protected function tearDown(): void { $this->complexAssert = null; } /** * @dataProvider providerIMPRODUCT * * @param mixed $expectedResult */ public function testIMPRODUCT($expectedResult, ...$args): void { $result = Engineering::IMPRODUCT(...$args); self::assertTrue( $this->complexAssert->assertComplexEquals($expectedResult, $result, self::COMPLEX_PRECISION), $this->complexAssert->getErrorMessage() ); } public function providerIMPRODUCT() { return require 'tests/data/Calculation/Engineering/IMPRODUCT.php'; } }