1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- <?php
- use GuzzleHttp\Psr7;
- use PHPUnit\Framework\TestCase as BaseTestCase;
- /**
- * Class TestCase
- * @SuppressWarnings(PHPMD.NumberOfChildren)
- */
- abstract class TestCase extends BaseTestCase
- {
- /**
- * Returns a PSR7 Stream for a given fixture.
- *
- * @param string $fixture The fixture to create the stream for.
- * @return Psr7\Stream
- */
- protected function getPsr7StreamForFixture($fixture): Psr7\Stream
- {
- $path = sprintf('%s/Fixtures/%s', __DIR__, $fixture);
- $this->assertFileExists($path);
- $stream = Psr7\stream_for(file_get_contents($path));
- $this->assertInstanceOf(Psr7\Stream::class, $stream);
- return $stream;
- }
- /**
- * Returns a PSR7 Response (JSON) for a given fixture.
- *
- * @param string $fixture The fixture to create the response for.
- * @param integer $statusCode A HTTP Status Code for the response.
- * @return Psr7\Response
- */
- protected function getPsr7JsonResponseForFixture($fixture, $statusCode = 200): Psr7\Response
- {
- $stream = $this->getPsr7StreamForFixture($fixture);
- $this->assertNotNull(json_decode($stream));
- $this->assertEquals(JSON_ERROR_NONE, json_last_error());
- return new Psr7\Response($statusCode, ['Content-Type' => 'application/json'], $stream);
- }
- }
|