public function testConstructorInitializesProperties() { $handle = fopen('php://temp', 'r+'); fwrite($handle, 'data'); $stream = new Stream($handle); $this->assertTrue($stream->isReadable()); $this->assertTrue($stream->isWritable()); $this->assertTrue($stream->isSeekable()); $this->assertEquals('php://temp', $stream->getMetadata('uri')); $this->assertInternalType('array', $stream->getMetadata()); $this->assertEquals(4, $stream->getSize()); $this->assertFalse($stream->eof()); $stream->close(); }
public function testSaveToFile() { $filename = sys_get_temp_dir() . '/mock_test_' . uniqid(); $file = tmpfile(); $stream = new Stream(tmpfile()); $m = new Mock([new Response(200, [], Stream::factory('TEST FILENAME')), new Response(200, [], Stream::factory('TEST FILE')), new Response(200, [], Stream::factory('TEST STREAM'))]); $client = new Client(); $client->getEmitter()->attach($m); $client->get('/', ['save_to' => $filename]); $client->get('/', ['save_to' => $file]); $client->get('/', ['save_to' => $stream]); $this->assertFileExists($filename); $this->assertEquals('TEST FILENAME', file_get_contents($filename)); $meta = stream_get_meta_data($file); $this->assertFileExists($meta['uri']); $this->assertEquals('TEST FILE', file_get_contents($meta['uri'])); $this->assertFileExists($stream->getMetadata('uri')); $this->assertEquals('TEST STREAM', file_get_contents($stream->getMetadata('uri'))); unlink($filename); }
public function testCloseClearProperties() { $handle = fopen('php://temp', 'r+'); $stream = new Stream($handle); $stream->close(); $this->assertEmpty($stream->getMetadata()); $this->assertFalse($stream->isSeekable()); $this->assertFalse($stream->isReadable()); $this->assertFalse($stream->isWritable()); $this->assertNull($stream->getSize()); }