public function testObjectInitialization() { $Error1 = Error::initializeByObject(new stdClass()); $this->assertEmpty($Error1->getDescription()); $this->assertEmpty($Error1->getError()); $Object2 = new stdClass(); $Object2->error_description = 'Some error description'; $Object2->error = 'some_error'; $Error2 = Error::initializeByObject($Object2); $this->assertEquals('Some error description', $Error2->getDescription()); $this->assertEquals('some_error', $Error2->getError()); }
/** * Create response instance by query string * @param string $queryString query string * @return Code|Error response instance: error or code data * @throws RuntimeException when response has a suspect string */ private static function createResponseFromQuery($queryString) { $value = parse_url($queryString, PHP_URL_QUERY); if ($value !== false) { switch (true) { case strpos($value, 'error=') === 0: return Error::initializeByString($value); case strpos($value, 'code=') === 0: return Code::initializeByString($value); } } throw new RuntimeException(sprintf('suspect data returned: %s', $queryString)); }