Files
Local Administrator b83134aca3 Initial commit
2025-04-18 10:32:42 +02:00

52 lines
1.6 KiB
PHP

<?php
declare(strict_types=1);
/*
* Copyright (C) 2013 Mailgun
*
* This software may be modified and distributed under the terms
* of the MIT license. See the LICENSE file for details.
*/
namespace Mailjet;
use PHPUnit\Framework\TestCase;
/**
* @runTestsInSeparateProcesses
* @preserveGlobalState disabled
*/
final class ResponseTest extends TestCase
{
public function testResponse()
{
$request = new Request(['test', 'test2'], 'GET', 'test.com', [], [], 'test', []);
$response = new Response(
$request,
new \GuzzleHttp\Psr7\Response(200, ['X-Foo' => 'Bar'], '{"Data": {"test": true}, "Count": 100, "Total": 200}')
);
$this->assertEquals(200, $response->getStatus());
$this->assertEquals(['Data' => ['test' => true], 'Count' => 100, 'Total' => 200], $response->getBody());
$this->assertEquals(['test' => true], $response->getData());
$this->assertEquals('OK', $response->getReasonPhrase());
$this->assertEquals(200, $response->getTotal());
}
public function testNullResponse()
{
$request = new Request(['test', 'test2'], 'GET', 'test.com', [], [], 'test', []);
// Response without a response interface as second parameter
$response = new Response($request, null);
$this->assertNull($response->getStatus());
$this->assertEquals([], $response->getBody());
$this->assertEquals([], $response->getData());
$this->assertNull($response->getReasonPhrase());
$this->assertNull($response->getTotal());
}
}