/** * Test population of each request type * * @dataProvider provideRequestTypes * * @param string $requestType */ public function testRequestHydration($requestType) { $requestReflection = new ReflectionClass(AbstractRequest::ns() . "\\{$requestType}"); if ($requestReflection->isAbstract()) { return; } $client = $this->getMockClient(); $request = $client::request($requestType); $this->assertInstanceOf(AbstractRequest::ns() . "\\{$requestType}", $request); $hydrator = $request->getHydrator(); $data = $hydrator->extract($request); foreach ($data as &$value) { $value = ' '; } $request = $hydrator->hydrate($data, $request); $idempotentData = $hydrator->extract($request); $this->assertEquals($data, $idempotentData); }
public static function request($type) { $requestClass = AbstractRequest::ns() . "\\{$type}"; return new $requestClass(); }