Asserts that a string is a valid JSON string.
public static assertJson ( string $actualJson, string $message = '' ) | ||
$actualJson | string | |
$message | string |
private function assertEqualJsons($expected, $actual, $error_message = '') { PHPUnit::assertJson($expected, $error_message); PHPUnit::assertJson($actual, $error_message); $expected = json_decode($expected); $actual = json_decode($actual); PHPUnit::assertEquals($expected, $actual, $error_message); }
public function toBeJson() { if ($this->negate) { a::assertThat($this->actual, a::logicalAnd(a::isType('string'), a::logicalNot(a::isJson()))); } else { a::assertJson($this->actual); } }
public function isJson() { Assert::assertJson($this->actual, $this->description); return $this; }
/** * Expect that a string is a valid JSON string. * * @param string $message * * @return Expect */ public function toBeJson($message = '') { Assert::assertJson($this->value, $message); return $this; }
public static function assertJsonStringEqualsJsonString($expectedJson, $actualJson, $message = '') { Assertions::assertJson($expectedJson, $message); Assertions::assertJson($actualJson, $message); $expected = json_decode($expectedJson); $actual = json_decode($actualJson); Assertions::assertThat($actual, new ConstraintIsSimilar($expected), $message); }
/** * @return \stdClass[] */ public function fetchExpenseListsForMyAccount() { $this->client->request('GET', '/expense_list/'); $response = $this->client->getResponse(); PHPUnit_Framework_Assert::assertEquals(Response::HTTP_OK, $response->getStatusCode()); PHPUnit_Framework_Assert::assertJson($response->getContent()); $responseData = json_decode($response->getContent()); PHPUnit_Framework_Assert::assertInternalType('array', $responseData); return $responseData; }
/** * @Then the response should be json/JSON * @Then the response is json/JSON */ public function theResponseIsJson() { Assert::assertThat(static::$response->headers->get('Content-Type'), Assert::logicalOr(Assert::stringStartsWith('application/json'), Assert::stringStartsWith('text/javascript'))); Assert::assertJson($this->getResponseContent()); }
public function testJsonDataResponse() { $path = '/test/path'; $headers = array('h1' => 'a', 'h2' => 'b'); $parameters = array('p1' => 'c', 'p2' => 'd'); $method = AbstractClient::METHOD_GET; $responseData = array('status' => 'ok', 'data' => 123, 'message' => 'This is a test'); $responseContent = json_encode($responseData); $mockAdapter = new MockAdapter(); // Adds mock basic OK response $mockAdapter->addResponseBy(Response::STATUS_OK, '', $responseContent); // Add mock adapter $this->_client->setAdapter($mockAdapter); // Send request $data = $this->_client->get($path, $parameters, $headers); // Gets response object $response = $this->_client->getResponse(); // Content is being returned correctly \PHPUnit_Framework_Assert::assertJson($response->getRawContent()); \PHPUnit_Framework_Assert::assertJsonStringEqualsJsonString($responseContent, $response->getRawContent()); // Content is being parsed correctly (json) \PHPUnit_Framework_Assert::assertInternalType(\PHPUnit_Framework_Constraint_IsType::TYPE_OBJECT, $data); // Check data parsed foreach ($responseData as $key => $value) { \PHPUnit_Framework_Assert::assertObjectHasAttribute($key, $data); \PHPUnit_Framework_Assert::assertEquals($value, $data->{$key}); } \PHPUnit_Framework_Assert::assertTrue($response->isOK()); }