/** * throws exceptions if $item is not a PHP trait that exists * * this is a wrapper around our IsDefinedTrait check * * @param mixed $item * the container to check * @param string $exception * the class to use when throwing an exception * @return void */ public static function check($item, $exception = E4xx_UnsupportedType::class) { // make sure we have a PHP class that exists if (!IsDefinedTrait::check($item)) { throw new $exception(SimpleType::from($item)); } }
/** * @covers ::__invoke * @covers ::check * @dataProvider provideScalarsToTest */ public function testReturnsFalseForEverythingElse($data, $expectedResult) { // ---------------------------------------------------------------- // setup your test $obj = new IsDefinedTrait(); // ---------------------------------------------------------------- // perform the change $actualResult1 = $obj($data); $actualResult2 = IsDefinedTrait::check($data); // ---------------------------------------------------------------- // test the results $this->assertFalse($actualResult1); $this->assertFalse($actualResult2); }