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