diff options
Diffstat (limited to 'server/vendor/guzzlehttp/psr7/tests')
21 files changed, 0 insertions, 4043 deletions
diff --git a/server/vendor/guzzlehttp/psr7/tests/AppendStreamTest.php b/server/vendor/guzzlehttp/psr7/tests/AppendStreamTest.php deleted file mode 100644 index 3c197dc..0000000 --- a/server/vendor/guzzlehttp/psr7/tests/AppendStreamTest.php +++ /dev/null @@ -1,186 +0,0 @@ -<?php -namespace GuzzleHttp\Tests\Psr7; - -use GuzzleHttp\Psr7\AppendStream; -use GuzzleHttp\Psr7; - -class AppendStreamTest extends \PHPUnit_Framework_TestCase -{ - /** - * @expectedException \InvalidArgumentException - * @expectedExceptionMessage Each stream must be readable - */ - public function testValidatesStreamsAreReadable() - { - $a = new AppendStream(); - $s = $this->getMockBuilder('Psr\Http\Message\StreamInterface') - ->setMethods(['isReadable']) - ->getMockForAbstractClass(); - $s->expects($this->once()) - ->method('isReadable') - ->will($this->returnValue(false)); - $a->addStream($s); - } - - /** - * @expectedException \RuntimeException - * @expectedExceptionMessage The AppendStream can only seek with SEEK_SET - */ - public function testValidatesSeekType() - { - $a = new AppendStream(); - $a->seek(100, SEEK_CUR); - } - - /** - * @expectedException \RuntimeException - * @expectedExceptionMessage Unable to seek stream 0 of the AppendStream - */ - public function testTriesToRewindOnSeek() - { - $a = new AppendStream(); - $s = $this->getMockBuilder('Psr\Http\Message\StreamInterface') - ->setMethods(['isReadable', 'rewind', 'isSeekable']) - ->getMockForAbstractClass(); - $s->expects($this->once()) - ->method('isReadable') - ->will($this->returnValue(true)); - $s->expects($this->once()) - ->method('isSeekable') - ->will($this->returnValue(true)); - $s->expects($this->once()) - ->method('rewind') - ->will($this->throwException(new \RuntimeException())); - $a->addStream($s); - $a->seek(10); - } - - public function testSeeksToPositionByReading() - { - $a = new AppendStream([ - Psr7\stream_for('foo'), - Psr7\stream_for('bar'), - Psr7\stream_for('baz'), - ]); - - $a->seek(3); - $this->assertEquals(3, $a->tell()); - $this->assertEquals('bar', $a->read(3)); - - $a->seek(6); - $this->assertEquals(6, $a->tell()); - $this->assertEquals('baz', $a->read(3)); - } - - public function testDetachesEachStream() - { - $s1 = Psr7\stream_for('foo'); - $s2 = Psr7\stream_for('bar'); - $a = new AppendStream([$s1, $s2]); - $this->assertSame('foobar', (string) $a); - $a->detach(); - $this->assertSame('', (string) $a); - $this->assertSame(0, $a->getSize()); - } - - public function testClosesEachStream() - { - $s1 = Psr7\stream_for('foo'); - $a = new AppendStream([$s1]); - $a->close(); - $this->assertSame('', (string) $a); - } - - /** - * @expectedExceptionMessage Cannot write to an AppendStream - * @expectedException \RuntimeException - */ - public function testIsNotWritable() - { - $a = new AppendStream([Psr7\stream_for('foo')]); - $this->assertFalse($a->isWritable()); - $this->assertTrue($a->isSeekable()); - $this->assertTrue($a->isReadable()); - $a->write('foo'); - } - - public function testDoesNotNeedStreams() - { - $a = new AppendStream(); - $this->assertEquals('', (string) $a); - } - - public function testCanReadFromMultipleStreams() - { - $a = new AppendStream([ - Psr7\stream_for('foo'), - Psr7\stream_for('bar'), - Psr7\stream_for('baz'), - ]); - $this->assertFalse($a->eof()); - $this->assertSame(0, $a->tell()); - $this->assertEquals('foo', $a->read(3)); - $this->assertEquals('bar', $a->read(3)); - $this->assertEquals('baz', $a->read(3)); - $this->assertSame('', $a->read(1)); - $this->assertTrue($a->eof()); - $this->assertSame(9, $a->tell()); - $this->assertEquals('foobarbaz', (string) $a); - } - - public function testCanDetermineSizeFromMultipleStreams() - { - $a = new AppendStream([ - Psr7\stream_for('foo'), - Psr7\stream_for('bar') - ]); - $this->assertEquals(6, $a->getSize()); - - $s = $this->getMockBuilder('Psr\Http\Message\StreamInterface') - ->setMethods(['isSeekable', 'isReadable']) - ->getMockForAbstractClass(); - $s->expects($this->once()) - ->method('isSeekable') - ->will($this->returnValue(null)); - $s->expects($this->once()) - ->method('isReadable') - ->will($this->returnValue(true)); - $a->addStream($s); - $this->assertNull($a->getSize()); - } - - public function testCatchesExceptionsWhenCastingToString() - { - $s = $this->getMockBuilder('Psr\Http\Message\StreamInterface') - ->setMethods(['isSeekable', 'read', 'isReadable', 'eof']) - ->getMockForAbstractClass(); - $s->expects($this->once()) - ->method('isSeekable') - ->will($this->returnValue(true)); - $s->expects($this->once()) - ->method('read') - ->will($this->throwException(new \RuntimeException('foo'))); - $s->expects($this->once()) - ->method('isReadable') - ->will($this->returnValue(true)); - $s->expects($this->any()) - ->method('eof') - ->will($this->returnValue(false)); - $a = new AppendStream([$s]); - $this->assertFalse($a->eof()); - $this->assertSame('', (string) $a); - } - - public function testCanDetach() - { - $s = new AppendStream(); - $s->detach(); - } - - public function testReturnsEmptyMetadata() - { - $s = new AppendStream(); - $this->assertEquals([], $s->getMetadata()); - $this->assertNull($s->getMetadata('foo')); - } -} diff --git a/server/vendor/guzzlehttp/psr7/tests/BufferStreamTest.php b/server/vendor/guzzlehttp/psr7/tests/BufferStreamTest.php deleted file mode 100644 index 0a635d4..0000000 --- a/server/vendor/guzzlehttp/psr7/tests/BufferStreamTest.php +++ /dev/null @@ -1,63 +0,0 @@ -<?php -namespace GuzzleHttp\Tests\Psr7; - -use GuzzleHttp\Psr7\BufferStream; - -class BufferStreamTest extends \PHPUnit_Framework_TestCase -{ - public function testHasMetadata() - { - $b = new BufferStream(10); - $this->assertTrue($b->isReadable()); - $this->assertTrue($b->isWritable()); - $this->assertFalse($b->isSeekable()); - $this->assertEquals(null, $b->getMetadata('foo')); - $this->assertEquals(10, $b->getMetadata('hwm')); - $this->assertEquals([], $b->getMetadata()); - } - - public function testRemovesReadDataFromBuffer() - { - $b = new BufferStream(); - $this->assertEquals(3, $b->write('foo')); - $this->assertEquals(3, $b->getSize()); - $this->assertFalse($b->eof()); - $this->assertEquals('foo', $b->read(10)); - $this->assertTrue($b->eof()); - $this->assertEquals('', $b->read(10)); - } - - /** - * @expectedException \RuntimeException - * @expectedExceptionMessage Cannot determine the position of a BufferStream - */ - public function testCanCastToStringOrGetContents() - { - $b = new BufferStream(); - $b->write('foo'); - $b->write('baz'); - $this->assertEquals('foo', $b->read(3)); - $b->write('bar'); - $this->assertEquals('bazbar', (string) $b); - $b->tell(); - } - - public function testDetachClearsBuffer() - { - $b = new BufferStream(); - $b->write('foo'); - $b->detach(); - $this->assertTrue($b->eof()); - $this->assertEquals(3, $b->write('abc')); - $this->assertEquals('abc', $b->read(10)); - } - - public function testExceedingHighwaterMarkReturnsFalseButStillBuffers() - { - $b = new BufferStream(5); - $this->assertEquals(3, $b->write('hi ')); - $this->assertFalse($b->write('hello')); - $this->assertEquals('hi hello', (string) $b); - $this->assertEquals(4, $b->write('test')); - } -} diff --git a/server/vendor/guzzlehttp/psr7/tests/CachingStreamTest.php b/server/vendor/guzzlehttp/psr7/tests/CachingStreamTest.php deleted file mode 100644 index 60a2636..0000000 --- a/server/vendor/guzzlehttp/psr7/tests/CachingStreamTest.php +++ /dev/null @@ -1,193 +0,0 @@ -<?php -namespace GuzzleHttp\Tests\Psr7; - -use GuzzleHttp\Psr7; -use GuzzleHttp\Psr7\CachingStream; - -/** - * @covers GuzzleHttp\Psr7\CachingStream - */ -class CachingStreamTest extends \PHPUnit_Framework_TestCase -{ - /** @var CachingStream */ - protected $body; - protected $decorated; - - public function setUp() - { - $this->decorated = Psr7\stream_for('testing'); - $this->body = new CachingStream($this->decorated); - } - - public function tearDown() - { - $this->decorated->close(); - $this->body->close(); - } - - public function testUsesRemoteSizeIfPossible() - { - $body = Psr7\stream_for('test'); - $caching = new CachingStream($body); - $this->assertEquals(4, $caching->getSize()); - } - - public function testReadsUntilCachedToByte() - { - $this->body->seek(5); - $this->assertEquals('n', $this->body->read(1)); - $this->body->seek(0); - $this->assertEquals('t', $this->body->read(1)); - } - - public function testCanSeekNearEndWithSeekEnd() - { - $baseStream = Psr7\stream_for(implode('', range('a', 'z'))); - $cached = new CachingStream($baseStream); - $cached->seek(-1, SEEK_END); - $this->assertEquals(25, $baseStream->tell()); - $this->assertEquals('z', $cached->read(1)); - $this->assertEquals(26, $cached->getSize()); - } - - public function testCanSeekToEndWithSeekEnd() - { - $baseStream = Psr7\stream_for(implode('', range('a', 'z'))); - $cached = new CachingStream($baseStream); - $cached->seek(0, SEEK_END); - $this->assertEquals(26, $baseStream->tell()); - $this->assertEquals('', $cached->read(1)); - $this->assertEquals(26, $cached->getSize()); - } - - public function testCanUseSeekEndWithUnknownSize() - { - $baseStream = Psr7\stream_for('testing'); - $decorated = Psr7\FnStream::decorate($baseStream, [ - 'getSize' => function () { return null; } - ]); - $cached = new CachingStream($decorated); - $cached->seek(-1, SEEK_END); - $this->assertEquals('g', $cached->read(1)); - } - - public function testRewindUsesSeek() - { - $a = Psr7\stream_for('foo'); - $d = $this->getMockBuilder('GuzzleHttp\Psr7\CachingStream') - ->setMethods(array('seek')) - ->setConstructorArgs(array($a)) - ->getMock(); - $d->expects($this->once()) - ->method('seek') - ->with(0) - ->will($this->returnValue(true)); - $d->seek(0); - } - - public function testCanSeekToReadBytes() - { - $this->assertEquals('te', $this->body->read(2)); - $this->body->seek(0); - $this->assertEquals('test', $this->body->read(4)); - $this->assertEquals(4, $this->body->tell()); - $this->body->seek(2); - $this->assertEquals(2, $this->body->tell()); - $this->body->seek(2, SEEK_CUR); - $this->assertEquals(4, $this->body->tell()); - $this->assertEquals('ing', $this->body->read(3)); - } - - public function testCanSeekToReadBytesWithPartialBodyReturned() - { - $stream = fopen('php://temp', 'r+'); - fwrite($stream, 'testing'); - fseek($stream, 0); - - $this->decorated = $this->getMockBuilder('\GuzzleHttp\Psr7\Stream') - ->setConstructorArgs([$stream]) - ->setMethods(['read']) - ->getMock(); - - $this->decorated->expects($this->exactly(2)) - ->method('read') - ->willReturnCallback(function($length) use ($stream){ - return fread($stream, 2); - }); - - $this->body = new CachingStream($this->decorated); - - $this->assertEquals(0, $this->body->tell()); - $this->body->seek(4, SEEK_SET); - $this->assertEquals(4, $this->body->tell()); - - $this->body->seek(0); - $this->assertEquals('test', $this->body->read(4)); - } - - public function testWritesToBufferStream() - { - $this->body->read(2); - $this->body->write('hi'); - $this->body->seek(0); - $this->assertEquals('tehiing', (string) $this->body); - } - - public function testSkipsOverwrittenBytes() - { - $decorated = Psr7\stream_for( - implode("\n", array_map(function ($n) { - return str_pad($n, 4, '0', STR_PAD_LEFT); - }, range(0, 25))) - ); - - $body = new CachingStream($decorated); - - $this->assertEquals("0000\n", Psr7\readline($body)); - $this->assertEquals("0001\n", Psr7\readline($body)); - // Write over part of the body yet to be read, so skip some bytes - $this->assertEquals(5, $body->write("TEST\n")); - $this->assertEquals(5, $this->readAttribute($body, 'skipReadBytes')); - // Read, which skips bytes, then reads - $this->assertEquals("0003\n", Psr7\readline($body)); - $this->assertEquals(0, $this->readAttribute($body, 'skipReadBytes')); - $this->assertEquals("0004\n", Psr7\readline($body)); - $this->assertEquals("0005\n", Psr7\readline($body)); - - // Overwrite part of the cached body (so don't skip any bytes) - $body->seek(5); - $this->assertEquals(5, $body->write("ABCD\n")); - $this->assertEquals(0, $this->readAttribute($body, 'skipReadBytes')); - $this->assertEquals("TEST\n", Psr7\readline($body)); - $this->assertEquals("0003\n", Psr7\readline($body)); - $this->assertEquals("0004\n", Psr7\readline($body)); - $this->assertEquals("0005\n", Psr7\readline($body)); - $this->assertEquals("0006\n", Psr7\readline($body)); - $this->assertEquals(5, $body->write("1234\n")); - $this->assertEquals(5, $this->readAttribute($body, 'skipReadBytes')); - - // Seek to 0 and ensure the overwritten bit is replaced - $body->seek(0); - $this->assertEquals("0000\nABCD\nTEST\n0003\n0004\n0005\n0006\n1234\n0008\n0009\n", $body->read(50)); - - // Ensure that casting it to a string does not include the bit that was overwritten - $this->assertContains("0000\nABCD\nTEST\n0003\n0004\n0005\n0006\n1234\n0008\n0009\n", (string) $body); - } - - public function testClosesBothStreams() - { - $s = fopen('php://temp', 'r'); - $a = Psr7\stream_for($s); - $d = new CachingStream($a); - $d->close(); - $this->assertFalse(is_resource($s)); - } - - /** - * @expectedException \InvalidArgumentException - */ - public function testEnsuresValidWhence() - { - $this->body->seek(10, -123456); - } -} diff --git a/server/vendor/guzzlehttp/psr7/tests/DroppingStreamTest.php b/server/vendor/guzzlehttp/psr7/tests/DroppingStreamTest.php deleted file mode 100644 index 915b215..0000000 --- a/server/vendor/guzzlehttp/psr7/tests/DroppingStreamTest.php +++ /dev/null @@ -1,26 +0,0 @@ -<?php -namespace GuzzleHttp\Tests\Psr7; - -use GuzzleHttp\Psr7\BufferStream; -use GuzzleHttp\Psr7\DroppingStream; - -class DroppingStreamTest extends \PHPUnit_Framework_TestCase -{ - public function testBeginsDroppingWhenSizeExceeded() - { - $stream = new BufferStream(); - $drop = new DroppingStream($stream, 5); - $this->assertEquals(3, $drop->write('hel')); - $this->assertEquals(2, $drop->write('lo')); - $this->assertEquals(5, $drop->getSize()); - $this->assertEquals('hello', $drop->read(5)); - $this->assertEquals(0, $drop->getSize()); - $drop->write('12345678910'); - $this->assertEquals(5, $stream->getSize()); - $this->assertEquals(5, $drop->getSize()); - $this->assertEquals('12345', (string) $drop); - $this->assertEquals(0, $drop->getSize()); - $drop->write('hello'); - $this->assertSame(0, $drop->write('test')); - } -} diff --git a/server/vendor/guzzlehttp/psr7/tests/FnStreamTest.php b/server/vendor/guzzlehttp/psr7/tests/FnStreamTest.php deleted file mode 100644 index 66ae90a..0000000 --- a/server/vendor/guzzlehttp/psr7/tests/FnStreamTest.php +++ /dev/null @@ -1,90 +0,0 @@ -<?php -namespace GuzzleHttp\Tests\Psr7; - -use GuzzleHttp\Psr7; -use GuzzleHttp\Psr7\FnStream; - -/** - * @covers GuzzleHttp\Psr7\FnStream - */ -class FnStreamTest extends \PHPUnit_Framework_TestCase -{ - /** - * @expectedException \BadMethodCallException - * @expectedExceptionMessage seek() is not implemented in the FnStream - */ - public function testThrowsWhenNotImplemented() - { - (new FnStream([]))->seek(1); - } - - public function testProxiesToFunction() - { - $s = new FnStream([ - 'read' => function ($len) { - $this->assertEquals(3, $len); - return 'foo'; - } - ]); - - $this->assertEquals('foo', $s->read(3)); - } - - public function testCanCloseOnDestruct() - { - $called = false; - $s = new FnStream([ - 'close' => function () use (&$called) { - $called = true; - } - ]); - unset($s); - $this->assertTrue($called); - } - - public function testDoesNotRequireClose() - { - $s = new FnStream([]); - unset($s); - } - - public function testDecoratesStream() - { - $a = Psr7\stream_for('foo'); - $b = FnStream::decorate($a, []); - $this->assertEquals(3, $b->getSize()); - $this->assertEquals($b->isWritable(), true); - $this->assertEquals($b->isReadable(), true); - $this->assertEquals($b->isSeekable(), true); - $this->assertEquals($b->read(3), 'foo'); - $this->assertEquals($b->tell(), 3); - $this->assertEquals($a->tell(), 3); - $this->assertSame('', $a->read(1)); - $this->assertEquals($b->eof(), true); - $this->assertEquals($a->eof(), true); - $b->seek(0); - $this->assertEquals('foo', (string) $b); - $b->seek(0); - $this->assertEquals('foo', $b->getContents()); - $this->assertEquals($a->getMetadata(), $b->getMetadata()); - $b->seek(0, SEEK_END); - $b->write('bar'); - $this->assertEquals('foobar', (string) $b); - $this->assertInternalType('resource', $b->detach()); - $b->close(); - } - - public function testDecoratesWithCustomizations() - { - $called = false; - $a = Psr7\stream_for('foo'); - $b = FnStream::decorate($a, [ - 'read' => function ($len) use (&$called, $a) { - $called = true; - return $a->read($len); - } - ]); - $this->assertEquals('foo', $b->read(3)); - $this->assertTrue($called); - } -} diff --git a/server/vendor/guzzlehttp/psr7/tests/FunctionsTest.php b/server/vendor/guzzlehttp/psr7/tests/FunctionsTest.php deleted file mode 100644 index 664f5e8..0000000 --- a/server/vendor/guzzlehttp/psr7/tests/FunctionsTest.php +++ /dev/null @@ -1,619 +0,0 @@ -<?php -namespace GuzzleHttp\Tests\Psr7; - -use GuzzleHttp\Psr7; -use GuzzleHttp\Psr7\FnStream; -use GuzzleHttp\Psr7\NoSeekStream; - -class FunctionsTest extends \PHPUnit_Framework_TestCase -{ - public function testCopiesToString() - { - $s = Psr7\stream_for('foobaz'); - $this->assertEquals('foobaz', Psr7\copy_to_string($s)); - $s->seek(0); - $this->assertEquals('foo', Psr7\copy_to_string($s, 3)); - $this->assertEquals('baz', Psr7\copy_to_string($s, 3)); - $this->assertEquals('', Psr7\copy_to_string($s)); - } - - public function testCopiesToStringStopsWhenReadFails() - { - $s1 = Psr7\stream_for('foobaz'); - $s1 = FnStream::decorate($s1, [ - 'read' => function () { return ''; } - ]); - $result = Psr7\copy_to_string($s1); - $this->assertEquals('', $result); - } - - public function testCopiesToStream() - { - $s1 = Psr7\stream_for('foobaz'); - $s2 = Psr7\stream_for(''); - Psr7\copy_to_stream($s1, $s2); - $this->assertEquals('foobaz', (string) $s2); - $s2 = Psr7\stream_for(''); - $s1->seek(0); - Psr7\copy_to_stream($s1, $s2, 3); - $this->assertEquals('foo', (string) $s2); - Psr7\copy_to_stream($s1, $s2, 3); - $this->assertEquals('foobaz', (string) $s2); - } - - public function testStopsCopyToStreamWhenWriteFails() - { - $s1 = Psr7\stream_for('foobaz'); - $s2 = Psr7\stream_for(''); - $s2 = FnStream::decorate($s2, ['write' => function () { return 0; }]); - Psr7\copy_to_stream($s1, $s2); - $this->assertEquals('', (string) $s2); - } - - public function testStopsCopyToSteamWhenWriteFailsWithMaxLen() - { - $s1 = Psr7\stream_for('foobaz'); - $s2 = Psr7\stream_for(''); - $s2 = FnStream::decorate($s2, ['write' => function () { return 0; }]); - Psr7\copy_to_stream($s1, $s2, 10); - $this->assertEquals('', (string) $s2); - } - - public function testStopsCopyToSteamWhenReadFailsWithMaxLen() - { - $s1 = Psr7\stream_for('foobaz'); - $s1 = FnStream::decorate($s1, ['read' => function () { return ''; }]); - $s2 = Psr7\stream_for(''); - Psr7\copy_to_stream($s1, $s2, 10); - $this->assertEquals('', (string) $s2); - } - - public function testReadsLines() - { - $s = Psr7\stream_for("foo\nbaz\nbar"); - $this->assertEquals("foo\n", Psr7\readline($s)); - $this->assertEquals("baz\n", Psr7\readline($s)); - $this->assertEquals("bar", Psr7\readline($s)); - } - - public function testReadsLinesUpToMaxLength() - { - $s = Psr7\stream_for("12345\n"); - $this->assertEquals("123", Psr7\readline($s, 4)); - $this->assertEquals("45\n", Psr7\readline($s)); - } - - public function testReadsLineUntilFalseReturnedFromRead() - { - $s = $this->getMockBuilder('GuzzleHttp\Psr7\Stream') - ->setMethods(['read', 'eof']) - ->disableOriginalConstructor() - ->getMock(); - $s->expects($this->exactly(2)) - ->method('read') - ->will($this->returnCallback(function () { - static $c = false; - if ($c) { - return false; - } - $c = true; - return 'h'; - })); - $s->expects($this->exactly(2)) - ->method('eof') - ->will($this->returnValue(false)); - $this->assertEquals("h", Psr7\readline($s)); - } - - public function testCalculatesHash() - { - $s = Psr7\stream_for('foobazbar'); - $this->assertEquals(md5('foobazbar'), Psr7\hash($s, 'md5')); - } - - /** - * @expectedException \RuntimeException - */ - public function testCalculatesHashThrowsWhenSeekFails() - { - $s = new NoSeekStream(Psr7\stream_for('foobazbar')); - $s->read(2); - Psr7\hash($s, 'md5'); - } - - public function testCalculatesHashSeeksToOriginalPosition() - { - $s = Psr7\stream_for('foobazbar'); - $s->seek(4); - $this->assertEquals(md5('foobazbar'), Psr7\hash($s, 'md5')); - $this->assertEquals(4, $s->tell()); - } - - public function testOpensFilesSuccessfully() - { - $r = Psr7\try_fopen(__FILE__, 'r'); - $this->assertInternalType('resource', $r); - fclose($r); - } - - /** - * @expectedException \RuntimeException - * @expectedExceptionMessage Unable to open /path/to/does/not/exist using mode r - */ - public function testThrowsExceptionNotWarning() - { - Psr7\try_fopen('/path/to/does/not/exist', 'r'); - } - - public function parseQueryProvider() - { - return [ - // Does not need to parse when the string is empty - ['', []], - // Can parse mult-values items - ['q=a&q=b', ['q' => ['a', 'b']]], - // Can parse multi-valued items that use numeric indices - ['q[0]=a&q[1]=b', ['q[0]' => 'a', 'q[1]' => 'b']], - // Can parse duplicates and does not include numeric indices - ['q[]=a&q[]=b', ['q[]' => ['a', 'b']]], - // Ensures that the value of "q" is an array even though one value - ['q[]=a', ['q[]' => 'a']], - // Does not modify "." to "_" like PHP's parse_str() - ['q.a=a&q.b=b', ['q.a' => 'a', 'q.b' => 'b']], - // Can decode %20 to " " - ['q%20a=a%20b', ['q a' => 'a b']], - // Can parse funky strings with no values by assigning each to null - ['q&a', ['q' => null, 'a' => null]], - // Does not strip trailing equal signs - ['data=abc=', ['data' => 'abc=']], - // Can store duplicates without affecting other values - ['foo=a&foo=b&?µ=c', ['foo' => ['a', 'b'], '?µ' => 'c']], - // Sets value to null when no "=" is present - ['foo', ['foo' => null]], - // Preserves "0" keys. - ['0', ['0' => null]], - // Sets the value to an empty string when "=" is present - ['0=', ['0' => '']], - // Preserves falsey keys - ['var=0', ['var' => '0']], - ['a[b][c]=1&a[b][c]=2', ['a[b][c]' => ['1', '2']]], - ['a[b]=c&a[d]=e', ['a[b]' => 'c', 'a[d]' => 'e']], - // Ensure it doesn't leave things behind with repeated values - // Can parse mult-values items - ['q=a&q=b&q=c', ['q' => ['a', 'b', 'c']]], - ]; - } - - /** - * @dataProvider parseQueryProvider - */ - public function testParsesQueries($input, $output) - { - $result = Psr7\parse_query($input); - $this->assertSame($output, $result); - } - - public function testDoesNotDecode() - { - $str = 'foo%20=bar'; - $data = Psr7\parse_query($str, false); - $this->assertEquals(['foo%20' => 'bar'], $data); - } - - /** - * @dataProvider parseQueryProvider - */ - public function testParsesAndBuildsQueries($input, $output) - { - $result = Psr7\parse_query($input, false); - $this->assertSame($input, Psr7\build_query($result, false)); - } - - public function testEncodesWithRfc1738() - { - $str = Psr7\build_query(['foo bar' => 'baz+'], PHP_QUERY_RFC1738); - $this->assertEquals('foo+bar=baz%2B', $str); - } - - public function testEncodesWithRfc3986() - { - $str = Psr7\build_query(['foo bar' => 'baz+'], PHP_QUERY_RFC3986); - $this->assertEquals('foo%20bar=baz%2B', $str); - } - - public function testDoesNotEncode() - { - $str = Psr7\build_query(['foo bar' => 'baz+'], false); - $this->assertEquals('foo bar=baz+', $str); - } - - public function testCanControlDecodingType() - { - $result = Psr7\parse_query('var=foo+bar', PHP_QUERY_RFC3986); - $this->assertEquals('foo+bar', $result['var']); - $result = Psr7\parse_query('var=foo+bar', PHP_QUERY_RFC1738); - $this->assertEquals('foo bar', $result['var']); - } - - public function testParsesRequestMessages() - { - $req = "GET /abc HTTP/1.0\r\nHost: foo.com\r\nFoo: Bar\r\nBaz: Bam\r\nBaz: Qux\r\n\r\nTest"; - $request = Psr7\parse_request($req); - $this->assertEquals('GET', $request->getMethod()); - $this->assertEquals('/abc', $request->getRequestTarget()); - $this->assertEquals('1.0', $request->getProtocolVersion()); - $this->assertEquals('foo.com', $request->getHeaderLine('Host')); - $this->assertEquals('Bar', $request->getHeaderLine('Foo')); - $this->assertEquals('Bam, Qux', $request->getHeaderLine('Baz')); - $this->assertEquals('Test', (string) $request->getBody()); - $this->assertEquals('http://foo.com/abc', (string) $request->getUri()); - } - - public function testParsesRequestMessagesWithHttpsScheme() - { - $req = "PUT /abc?baz=bar HTTP/1.1\r\nHost: foo.com:443\r\n\r\n"; - $request = Psr7\parse_request($req); - $this->assertEquals('PUT', $request->getMethod()); - $this->assertEquals('/abc?baz=bar', $request->getRequestTarget()); - $this->assertEquals('1.1', $request->getProtocolVersion()); - $this->assertEquals('foo.com:443', $request->getHeaderLine('Host')); - $this->assertEquals('', (string) $request->getBody()); - $this->assertEquals('https://foo.com/abc?baz=bar', (string) $request->getUri()); - } - - public function testParsesRequestMessagesWithUriWhenHostIsNotFirst() - { - $req = "PUT / HTTP/1.1\r\nFoo: Bar\r\nHost: foo.com\r\n\r\n"; - $request = Psr7\parse_request($req); - $this->assertEquals('PUT', $request->getMethod()); - $this->assertEquals('/', $request->getRequestTarget()); - $this->assertEquals('http://foo.com/', (string) $request->getUri()); - } - - public function testParsesRequestMessagesWithFullUri() - { - $req = "GET https://www.google.com:443/search?q=foobar HTTP/1.1\r\nHost: www.google.com\r\n\r\n"; - $request = Psr7\parse_request($req); - $this->assertEquals('GET', $request->getMethod()); - $this->assertEquals('https://www.google.com:443/search?q=foobar', $request->getRequestTarget()); - $this->assertEquals('1.1', $request->getProtocolVersion()); - $this->assertEquals('www.google.com', $request->getHeaderLine('Host')); - $this->assertEquals('', (string) $request->getBody()); - $this->assertEquals('https://www.google.com/search?q=foobar', (string) $request->getUri()); - } - - public function testParsesRequestMessagesWithCustomMethod() - { - $req = "GET_DATA / HTTP/1.1\r\nFoo: Bar\r\nHost: foo.com\r\n\r\n"; - $request = Psr7\parse_request($req); - $this->assertEquals('GET_DATA', $request->getMethod()); - } - - /** - * @expectedException \InvalidArgumentException - */ - public function testValidatesRequestMessages() - { - Psr7\parse_request("HTTP/1.1 200 OK\r\n\r\n"); - } - - public function testParsesResponseMessages() - { - $res = "HTTP/1.0 200 OK\r\nFoo: Bar\r\nBaz: Bam\r\nBaz: Qux\r\n\r\nTest"; - $response = Psr7\parse_response($res); - $this->assertEquals(200, $response->getStatusCode()); - $this->assertEquals('OK', $response->getReasonPhrase()); - $this->assertEquals('1.0', $response->getProtocolVersion()); - $this->assertEquals('Bar', $response->getHeaderLine('Foo')); - $this->assertEquals('Bam, Qux', $response->getHeaderLine('Baz')); - $this->assertEquals('Test', (string) $response->getBody()); - } - - /** - * @expectedException \InvalidArgumentException - */ - public function testValidatesResponseMessages() - { - Psr7\parse_response("GET / HTTP/1.1\r\n\r\n"); - } - - public function testDetermineMimetype() - { - $this->assertNull(Psr7\mimetype_from_extension('not-a-real-extension')); - $this->assertEquals( - 'application/json', - Psr7\mimetype_from_extension('json') - ); - $this->assertEquals( - 'image/jpeg', - Psr7\mimetype_from_filename('/tmp/images/IMG034821.JPEG') - ); - } - - public function testCreatesUriForValue() - { - $this->assertInstanceOf('GuzzleHttp\Psr7\Uri', Psr7\uri_for('/foo')); - $this->assertInstanceOf( - 'GuzzleHttp\Psr7\Uri', - Psr7\uri_for(new Psr7\Uri('/foo')) - ); - } - - /** - * @expectedException \InvalidArgumentException - */ - public function testValidatesUri() - { - Psr7\uri_for([]); - } - - public function testKeepsPositionOfResource() - { - $h = fopen(__FILE__, 'r'); - fseek($h, 10); - $stream = Psr7\stream_for($h); - $this->assertEquals(10, $stream->tell()); - $stream->close(); - } - - public function testCreatesWithFactory() - { - $stream = Psr7\stream_for('foo'); - $this->assertInstanceOf('GuzzleHttp\Psr7\Stream', $stream); - $this->assertEquals('foo', $stream->getContents()); - $stream->close(); - } - - public function testFactoryCreatesFromEmptyString() - { - $s = Psr7\stream_for(); - $this->assertInstanceOf('GuzzleHttp\Psr7\Stream', $s); - } - - public function testFactoryCreatesFromNull() - { - $s = Psr7\stream_for(null); - $this->assertInstanceOf('GuzzleHttp\Psr7\Stream', $s); - } - - public function testFactoryCreatesFromResource() - { - $r = fopen(__FILE__, 'r'); - $s = Psr7\stream_for($r); - $this->assertInstanceOf('GuzzleHttp\Psr7\Stream', $s); - $this->assertSame(file_get_contents(__FILE__), (string) $s); - } - - public function testFactoryCreatesFromObjectWithToString() - { - $r = new HasToString(); - $s = Psr7\stream_for($r); - $this->assertInstanceOf('GuzzleHttp\Psr7\Stream', $s); - $this->assertEquals('foo', (string) $s); - } - - public function testCreatePassesThrough() - { - $s = Psr7\stream_for('foo'); - $this->assertSame($s, Psr7\stream_for($s)); - } - - /** - * @expectedException \InvalidArgumentException - */ - public function testThrowsExceptionForUnknown() - { - Psr7\stream_for(new \stdClass()); - } - - public function testReturnsCustomMetadata() - { - $s = Psr7\stream_for('foo', ['metadata' => ['hwm' => 3]]); - $this->assertEquals(3, $s->getMetadata('hwm')); - $this->assertArrayHasKey('hwm', $s->getMetadata()); - } - - public function testCanSetSize() - { - $s = Psr7\stream_for('', ['size' => 10]); - $this->assertEquals(10, $s->getSize()); - } - - public function testCanCreateIteratorBasedStream() - { - $a = new \ArrayIterator(['foo', 'bar', '123']); - $p = Psr7\stream_for($a); - $this->assertInstanceOf('GuzzleHttp\Psr7\PumpStream', $p); - $this->assertEquals('foo', $p->read(3)); - $this->assertFalse($p->eof()); - $this->assertEquals('b', $p->read(1)); - $this->assertEquals('a', $p->read(1)); - $this->assertEquals('r12', $p->read(3)); - $this->assertFalse($p->eof()); - $this->assertEquals('3', $p->getContents()); - $this->assertTrue($p->eof()); - $this->assertEquals(9, $p->tell()); - } - - public function testConvertsRequestsToStrings() - { - $request = new Psr7\Request('PUT', 'http://foo.com/hi?123', [ - 'Baz' => 'bar', - 'Qux' => 'ipsum' - ], 'hello', '1.0'); - $this->assertEquals( - "PUT /hi?123 HTTP/1.0\r\nHost: foo.com\r\nBaz: bar\r\nQux: ipsum\r\n\r\nhello", - Psr7\str($request) - ); - } - - public function testConvertsResponsesToStrings() - { - $response = new Psr7\Response(200, [ - 'Baz' => 'bar', - 'Qux' => 'ipsum' - ], 'hello', '1.0', 'FOO'); - $this->assertEquals( - "HTTP/1.0 200 FOO\r\nBaz: bar\r\nQux: ipsum\r\n\r\nhello", - Psr7\str($response) - ); - } - - public function parseParamsProvider() - { - $res1 = array( - array( - '<http:/.../front.jpeg>', - 'rel' => 'front', - 'type' => 'image/jpeg', - ), - array( - '<http://.../back.jpeg>', - 'rel' => 'back', - 'type' => 'image/jpeg', - ), - ); - return array( - array( - '<http:/.../front.jpeg>; rel="front"; type="image/jpeg", <http://.../back.jpeg>; rel=back; type="image/jpeg"', - $res1 - ), - array( - '<http:/.../front.jpeg>; rel="front"; type="image/jpeg",<http://.../back.jpeg>; rel=back; type="image/jpeg"', - $res1 - ), - array( - 'foo="baz"; bar=123, boo, test="123", foobar="foo;bar"', - array( - array('foo' => 'baz', 'bar' => '123'), - array('boo'), - array('test' => '123'), - array('foobar' => 'foo;bar') - ) - ), - array( - '<http://.../side.jpeg?test=1>; rel="side"; type="image/jpeg",<http://.../side.jpeg?test=2>; rel=side; type="image/jpeg"', - array( - array('<http://.../side.jpeg?test=1>', 'rel' => 'side', 'type' => 'image/jpeg'), - array('<http://.../side.jpeg?test=2>', 'rel' => 'side', 'type' => 'image/jpeg') - ) - ), - array( - '', - array() - ) - ); - } - /** - * @dataProvider parseParamsProvider - */ - public function testParseParams($header, $result) - { - $this->assertEquals($result, Psr7\parse_header($header)); - } - - public function testParsesArrayHeaders() - { - $header = ['a, b', 'c', 'd, e']; - $this->assertEquals(['a', 'b', 'c', 'd', 'e'], Psr7\normalize_header($header)); - } - - public function testRewindsBody() - { - $body = Psr7\stream_for('abc'); - $res = new Psr7\Response(200, [], $body); - Psr7\rewind_body($res); - $this->assertEquals(0, $body->tell()); - $body->rewind(1); - Psr7\rewind_body($res); - $this->assertEquals(0, $body->tell()); - } - - /** - * @expectedException \RuntimeException - */ - public function testThrowsWhenBodyCannotBeRewound() - { - $body = Psr7\stream_for('abc'); - $body->read(1); - $body = FnStream::decorate($body, [ - 'rewind' => function () { throw new \RuntimeException('a'); } - ]); - $res = new Psr7\Response(200, [], $body); - Psr7\rewind_body($res); - } - - public function testCanModifyRequestWithUri() - { - $r1 = new Psr7\Request('GET', 'http://foo.com'); - $r2 = Psr7\modify_request($r1, [ - 'uri' => new Psr7\Uri('http://www.foo.com') - ]); - $this->assertEquals('http://www.foo.com', (string) $r2->getUri()); - $this->assertEquals('www.foo.com', (string) $r2->getHeaderLine('host')); - } - - public function testCanModifyRequestWithUriAndPort() - { - $r1 = new Psr7\Request('GET', 'http://foo.com:8000'); - $r2 = Psr7\modify_request($r1, [ - 'uri' => new Psr7\Uri('http://www.foo.com:8000') - ]); - $this->assertEquals('http://www.foo.com:8000', (string) $r2->getUri()); - $this->assertEquals('www.foo.com:8000', (string) $r2->getHeaderLine('host')); - } - - public function testCanModifyRequestWithCaseInsensitiveHeader() - { - $r1 = new Psr7\Request('GET', 'http://foo.com', ['User-Agent' => 'foo']); - $r2 = Psr7\modify_request($r1, ['set_headers' => ['User-agent' => 'bar']]); - $this->assertEquals('bar', $r2->getHeaderLine('User-Agent')); - $this->assertEquals('bar', $r2->getHeaderLine('User-agent')); - } - - public function testReturnsAsIsWhenNoChanges() - { - $r1 = new Psr7\Request('GET', 'http://foo.com'); - $r2 = Psr7\modify_request($r1, []); - $this->assertTrue($r2 instanceof Psr7\Request); - - $r1 = new Psr7\ServerRequest('GET', 'http://foo.com'); - $r2 = Psr7\modify_request($r1, []); - $this->assertTrue($r2 instanceof \Psr\Http\Message\ServerRequestInterface); - } - - public function testReturnsUriAsIsWhenNoChanges() - { - $r1 = new Psr7\Request('GET', 'http://foo.com'); - $r2 = Psr7\modify_request($r1, ['set_headers' => ['foo' => 'bar']]); - $this->assertNotSame($r1, $r2); - $this->assertEquals('bar', $r2->getHeaderLine('foo')); - } - - public function testRemovesHeadersFromMessage() - { - $r1 = new Psr7\Request('GET', 'http://foo.com', ['foo' => 'bar']); - $r2 = Psr7\modify_request($r1, ['remove_headers' => ['foo']]); - $this->assertNotSame($r1, $r2); - $this->assertFalse($r2->hasHeader('foo')); - } - - public function testAddsQueryToUri() - { - $r1 = new Psr7\Request('GET', 'http://foo.com'); - $r2 = Psr7\modify_request($r1, ['query' => 'foo=bar']); - $this->assertNotSame($r1, $r2); - $this->assertEquals('foo=bar', $r2->getUri()->getQuery()); - } - - public function testModifyRequestKeepInstanceOfRequest() - { - $r1 = new Psr7\Request('GET', 'http://foo.com'); - $r2 = Psr7\modify_request($r1, ['remove_headers' => ['non-existent']]); - $this->assertTrue($r2 instanceof Psr7\Request); - - $r1 = new Psr7\ServerRequest('GET', 'http://foo.com'); - $r2 = Psr7\modify_request($r1, ['remove_headers' => ['non-existent']]); - $this->assertTrue($r2 instanceof \Psr\Http\Message\ServerRequestInterface); - } -} diff --git a/server/vendor/guzzlehttp/psr7/tests/InflateStreamTest.php b/server/vendor/guzzlehttp/psr7/tests/InflateStreamTest.php deleted file mode 100644 index 0e4b586..0000000 --- a/server/vendor/guzzlehttp/psr7/tests/InflateStreamTest.php +++ /dev/null @@ -1,39 +0,0 @@ -<?php -namespace GuzzleHttp\Tests\Psr7; - -use GuzzleHttp\Psr7; -use GuzzleHttp\Psr7\InflateStream; - -class InflateStreamtest extends \PHPUnit_Framework_TestCase -{ - public function testInflatesStreams() - { - $content = gzencode('test'); - $a = Psr7\stream_for($content); - $b = new InflateStream($a); - $this->assertEquals('test', (string) $b); - } - - public function testInflatesStreamsWithFilename() - { - $content = $this->getGzipStringWithFilename('test'); - $a = Psr7\stream_for($content); - $b = new InflateStream($a); - $this->assertEquals('test', (string) $b); - } - - private function getGzipStringWithFilename($original_string) - { - $gzipped = bin2hex(gzencode($original_string)); - - $header = substr($gzipped, 0, 20); - // set FNAME flag - $header[6]=0; - $header[7]=8; - // make a dummy filename - $filename = "64756d6d7900"; - $rest = substr($gzipped, 20); - - return hex2bin($header . $filename . $rest); - } -} diff --git a/server/vendor/guzzlehttp/psr7/tests/LazyOpenStreamTest.php b/server/vendor/guzzlehttp/psr7/tests/LazyOpenStreamTest.php deleted file mode 100644 index fdef142..0000000 --- a/server/vendor/guzzlehttp/psr7/tests/LazyOpenStreamTest.php +++ /dev/null @@ -1,64 +0,0 @@ -<?php -namespace GuzzleHttp\Tests\Psr7; - -use GuzzleHttp\Psr7\LazyOpenStream; - -class LazyOpenStreamTest extends \PHPUnit_Framework_TestCase -{ - private $fname; - - public function setup() - { - $this->fname = tempnam('/tmp', 'tfile'); - - if (file_exists($this->fname)) { - unlink($this->fname); - } - } - - public function tearDown() - { - if (file_exists($this->fname)) { - unlink($this->fname); - } - } - - public function testOpensLazily() - { - $l = new LazyOpenStream($this->fname, 'w+'); - $l->write('foo'); - $this->assertInternalType('array', $l->getMetadata()); - $this->assertFileExists($this->fname); - $this->assertEquals('foo', file_get_contents($this->fname)); - $this->assertEquals('foo', (string) $l); - } - - public function testProxiesToFile() - { - file_put_contents($this->fname, 'foo'); - $l = new LazyOpenStream($this->fname, 'r'); - $this->assertEquals('foo', $l->read(4)); - $this->assertTrue($l->eof()); - $this->assertEquals(3, $l->tell()); - $this->assertTrue($l->isReadable()); - $this->assertTrue($l->isSeekable()); - $this->assertFalse($l->isWritable()); - $l->seek(1); - $this->assertEquals('oo', $l->getContents()); - $this->assertEquals('foo', (string) $l); - $this->assertEquals(3, $l->getSize()); - $this->assertInternalType('array', $l->getMetadata()); - $l->close(); - } - - public function testDetachesUnderlyingStream() - { - file_put_contents($this->fname, 'foo'); - $l = new LazyOpenStream($this->fname, 'r'); - $r = $l->detach(); - $this->assertInternalType('resource', $r); - fseek($r, 0); - $this->assertEquals('foo', stream_get_contents($r)); - fclose($r); - } -} diff --git a/server/vendor/guzzlehttp/psr7/tests/LimitStreamTest.php b/server/vendor/guzzlehttp/psr7/tests/LimitStreamTest.php deleted file mode 100644 index 2198b7a..0000000 --- a/server/vendor/guzzlehttp/psr7/tests/LimitStreamTest.php +++ /dev/null @@ -1,166 +0,0 @@ -<?php -namespace GuzzleHttp\Tests\Psr7; - -use GuzzleHttp\Psr7; -use GuzzleHttp\Psr7\FnStream; -use GuzzleHttp\Psr7\Stream; -use GuzzleHttp\Psr7\LimitStream; -use GuzzleHttp\Psr7\NoSeekStream; - -/** - * @covers GuzzleHttp\Psr7\LimitStream - */ -class LimitStreamTest extends \PHPUnit_Framework_TestCase -{ - /** @var LimitStream */ - protected $body; - - /** @var Stream */ - protected $decorated; - - public function setUp() - { - $this->decorated = Psr7\stream_for(fopen(__FILE__, 'r')); - $this->body = new LimitStream($this->decorated, 10, 3); - } - - public function testReturnsSubset() - { - $body = new LimitStream(Psr7\stream_for('foo'), -1, 1); - $this->assertEquals('oo', (string) $body); - $this->assertTrue($body->eof()); - $body->seek(0); - $this->assertFalse($body->eof()); - $this->assertEquals('oo', $body->read(100)); - $this->assertSame('', $body->read(1)); - $this->assertTrue($body->eof()); - } - - public function testReturnsSubsetWhenCastToString() - { - $body = Psr7\stream_for('foo_baz_bar'); - $limited = new LimitStream($body, 3, 4); - $this->assertEquals('baz', (string) $limited); - } - - /** - * @expectedException \RuntimeException - * @expectedExceptionMessage Unable to seek to stream position 10 with whence 0 - */ - public function testEnsuresPositionCanBeekSeekedTo() - { - new LimitStream(Psr7\stream_for(''), 0, 10); - } - - public function testReturnsSubsetOfEmptyBodyWhenCastToString() - { - $body = Psr7\stream_for('01234567891234'); - $limited = new LimitStream($body, 0, 10); - $this->assertEquals('', (string) $limited); - } - - public function testReturnsSpecificSubsetOBodyWhenCastToString() - { - $body = Psr7\stream_for('0123456789abcdef'); - $limited = new LimitStream($body, 3, 10); - $this->assertEquals('abc', (string) $limited); - } - - public function testSeeksWhenConstructed() - { - $this->assertEquals(0, $this->body->tell()); - $this->assertEquals(3, $this->decorated->tell()); - } - - public function testAllowsBoundedSeek() - { - $this->body->seek(100); - $this->assertEquals(10, $this->body->tell()); - $this->assertEquals(13, $this->decorated->tell()); - $this->body->seek(0); - $this->assertEquals(0, $this->body->tell()); - $this->assertEquals(3, $this->decorated->tell()); - try { - $this->body->seek(-10); - $this->fail(); - } catch (\RuntimeException $e) {} - $this->assertEquals(0, $this->body->tell()); - $this->assertEquals(3, $this->decorated->tell()); - $this->body->seek(5); - $this->assertEquals(5, $this->body->tell()); - $this->assertEquals(8, $this->decorated->tell()); - // Fail - try { - $this->body->seek(1000, SEEK_END); - $this->fail(); - } catch (\RuntimeException $e) {} - } - - public function testReadsOnlySubsetOfData() - { - $data = $this->body->read(100); - $this->assertEquals(10, strlen($data)); - $this->assertSame('', $this->body->read(1000)); - - $this->body->setOffset(10); - $newData = $this->body->read(100); - $this->assertEquals(10, strlen($newData)); - $this->assertNotSame($data, $newData); - } - - /** - * @expectedException \RuntimeException - * @expectedExceptionMessage Could not seek to stream offset 2 - */ - public function testThrowsWhenCurrentGreaterThanOffsetSeek() - { - $a = Psr7\stream_for('foo_bar'); - $b = new NoSeekStream($a); - $c = new LimitStream($b); - $a->getContents(); - $c->setOffset(2); - } - - public function testCanGetContentsWithoutSeeking() - { - $a = Psr7\stream_for('foo_bar'); - $b = new NoSeekStream($a); - $c = new LimitStream($b); - $this->assertEquals('foo_bar', $c->getContents()); - } - - public function testClaimsConsumedWhenReadLimitIsReached() - { - $this->assertFalse($this->body->eof()); - $this->body->read(1000); - $this->assertTrue($this->body->eof()); - } - - public function testContentLengthIsBounded() - { - $this->assertEquals(10, $this->body->getSize()); - } - - public function testGetContentsIsBasedOnSubset() - { - $body = new LimitStream(Psr7\stream_for('foobazbar'), 3, 3); - $this->assertEquals('baz', $body->getContents()); - } - - public function testReturnsNullIfSizeCannotBeDetermined() - { - $a = new FnStream([ - 'getSize' => function () { return null; }, - 'tell' => function () { return 0; }, - ]); - $b = new LimitStream($a); - $this->assertNull($b->getSize()); - } - - public function testLengthLessOffsetWhenNoLimitSize() - { - $a = Psr7\stream_for('foo_bar'); - $b = new LimitStream($a, -1, 4); - $this->assertEquals(3, $b->getSize()); - } -} diff --git a/server/vendor/guzzlehttp/psr7/tests/MultipartStreamTest.php b/server/vendor/guzzlehttp/psr7/tests/MultipartStreamTest.php deleted file mode 100644 index a509261..0000000 --- a/server/vendor/guzzlehttp/psr7/tests/MultipartStreamTest.php +++ /dev/null @@ -1,242 +0,0 @@ -<?php -namespace GuzzleHttp\Tests; - -use GuzzleHttp\Psr7; -use GuzzleHttp\Psr7\MultipartStream; - -class MultipartStreamTest extends \PHPUnit_Framework_TestCase -{ - public function testCreatesDefaultBoundary() - { - $b = new MultipartStream(); - $this->assertNotEmpty($b->getBoundary()); - } - - public function testCanProvideBoundary() - { - $b = new MultipartStream([], 'foo'); - $this->assertEquals('foo', $b->getBoundary()); - } - - public function testIsNotWritable() - { - $b = new MultipartStream(); - $this->assertFalse($b->isWritable()); - } - - public function testCanCreateEmptyStream() - { - $b = new MultipartStream(); - $boundary = $b->getBoundary(); - $this->assertSame("--{$boundary}--\r\n", $b->getContents()); - $this->assertSame(strlen($boundary) + 6, $b->getSize()); - } - - /** - * @expectedException \InvalidArgumentException - */ - public function testValidatesFilesArrayElement() - { - new MultipartStream([['foo' => 'bar']]); - } - - /** - * @expectedException \InvalidArgumentException - */ - public function testEnsuresFileHasName() - { - new MultipartStream([['contents' => 'bar']]); - } - - public function testSerializesFields() - { - $b = new MultipartStream([ - [ - 'name' => 'foo', - 'contents' => 'bar' - ], - [ - 'name' => 'baz', - 'contents' => 'bam' - ] - ], 'boundary'); - $this->assertEquals( - "--boundary\r\nContent-Disposition: form-data; name=\"foo\"\r\nContent-Length: 3\r\n\r\n" - . "bar\r\n--boundary\r\nContent-Disposition: form-data; name=\"baz\"\r\nContent-Length: 3" - . "\r\n\r\nbam\r\n--boundary--\r\n", (string) $b); - } - - public function testSerializesNonStringFields() - { - $b = new MultipartStream([ - [ - 'name' => 'int', - 'contents' => (int) 1 - ], - [ - 'name' => 'bool', - 'contents' => (boolean) false - ], - [ - 'name' => 'bool2', - 'contents' => (boolean) true - ], - [ - 'name' => 'float', - 'contents' => (float) 1.1 - ] - ], 'boundary'); - $this->assertEquals( - "--boundary\r\nContent-Disposition: form-data; name=\"int\"\r\nContent-Length: 1\r\n\r\n" - . "1\r\n--boundary\r\nContent-Disposition: form-data; name=\"bool\"\r\n\r\n\r\n--boundary" - . "\r\nContent-Disposition: form-data; name=\"bool2\"\r\nContent-Length: 1\r\n\r\n" - . "1\r\n--boundary\r\nContent-Disposition: form-data; name=\"float\"\r\nContent-Length: 3" - . "\r\n\r\n1.1\r\n--boundary--\r\n", (string) $b); - } - - public function testSerializesFiles() - { - $f1 = Psr7\FnStream::decorate(Psr7\stream_for('foo'), [ - 'getMetadata' => function () { - return '/foo/bar.txt'; - } - ]); - - $f2 = Psr7\FnStream::decorate(Psr7\stream_for('baz'), [ - 'getMetadata' => function () { - return '/foo/baz.jpg'; - } - ]); - - $f3 = Psr7\FnStream::decorate(Psr7\stream_for('bar'), [ - 'getMetadata' => function () { - return '/foo/bar.gif'; - } - ]); - - $b = new MultipartStream([ - [ - 'name' => 'foo', - 'contents' => $f1 - ], - [ - 'name' => 'qux', - 'contents' => $f2 - ], - [ - 'name' => 'qux', - 'contents' => $f3 - ], - ], 'boundary'); - - $expected = <<<EOT ---boundary -Content-Disposition: form-data; name="foo"; filename="bar.txt" -Content-Length: 3 -Content-Type: text/plain - -foo ---boundary -Content-Disposition: form-data; name="qux"; filename="baz.jpg" -Content-Length: 3 -Content-Type: image/jpeg - -baz ---boundary -Content-Disposition: form-data; name="qux"; filename="bar.gif" -Content-Length: 3 -Content-Type: image/gif - -bar ---boundary-- - -EOT; - - $this->assertEquals($expected, str_replace("\r", '', $b)); - } - - public function testSerializesFilesWithCustomHeaders() - { - $f1 = Psr7\FnStream::decorate(Psr7\stream_for('foo'), [ - 'getMetadata' => function () { - return '/foo/bar.txt'; - } - ]); - - $b = new MultipartStream([ - [ - 'name' => 'foo', - 'contents' => $f1, - 'headers' => [ - 'x-foo' => 'bar', - 'content-disposition' => 'custom' - ] - ] - ], 'boundary'); - - $expected = <<<EOT ---boundary -x-foo: bar -content-disposition: custom -Content-Length: 3 -Content-Type: text/plain - -foo ---boundary-- - -EOT; - - $this->assertEquals($expected, str_replace("\r", '', $b)); - } - - public function testSerializesFilesWithCustomHeadersAndMultipleValues() - { - $f1 = Psr7\FnStream::decorate(Psr7\stream_for('foo'), [ - 'getMetadata' => function () { - return '/foo/bar.txt'; - } - ]); - - $f2 = Psr7\FnStream::decorate(Psr7\stream_for('baz'), [ - 'getMetadata' => function () { - return '/foo/baz.jpg'; - } - ]); - - $b = new MultipartStream([ - [ - 'name' => 'foo', - 'contents' => $f1, - 'headers' => [ - 'x-foo' => 'bar', - 'content-disposition' => 'custom' - ] - ], - [ - 'name' => 'foo', - 'contents' => $f2, - 'headers' => ['cOntenT-Type' => 'custom'], - ] - ], 'boundary'); - - $expected = <<<EOT ---boundary -x-foo: bar -content-disposition: custom -Content-Length: 3 -Content-Type: text/plain - -foo ---boundary -cOntenT-Type: custom -Content-Disposition: form-data; name="foo"; filename="baz.jpg" -Content-Length: 3 - -baz ---boundary-- - -EOT; - - $this->assertEquals($expected, str_replace("\r", '', $b)); - } -} diff --git a/server/vendor/guzzlehttp/psr7/tests/NoSeekStreamTest.php b/server/vendor/guzzlehttp/psr7/tests/NoSeekStreamTest.php deleted file mode 100644 index a309317..0000000 --- a/server/vendor/guzzlehttp/psr7/tests/NoSeekStreamTest.php +++ /dev/null @@ -1,40 +0,0 @@ -<?php -namespace GuzzleHttp\Tests\Psr7; - -use GuzzleHttp\Psr7; -use GuzzleHttp\Psr7\NoSeekStream; - -/** - * @covers GuzzleHttp\Psr7\NoSeekStream - * @covers GuzzleHttp\Psr7\StreamDecoratorTrait - */ -class NoSeekStreamTest extends \PHPUnit_Framework_TestCase -{ - /** - * @expectedException \RuntimeException - * @expectedExceptionMessage Cannot seek a NoSeekStream - */ - public function testCannotSeek() - { - $s = $this->getMockBuilder('Psr\Http\Message\StreamInterface') - ->setMethods(['isSeekable', 'seek']) - ->getMockForAbstractClass(); - $s->expects($this->never())->method('seek'); - $s->expects($this->never())->method('isSeekable'); - $wrapped = new NoSeekStream($s); - $this->assertFalse($wrapped->isSeekable()); - $wrapped->seek(2); - } - - /** - * @expectedException \RuntimeException - * @expectedExceptionMessage Cannot write to a non-writable stream - */ - public function testHandlesClose() - { - $s = Psr7\stream_for('foo'); - $wrapped = new NoSeekStream($s); - $wrapped->close(); - $wrapped->write('foo'); - } -} diff --git a/server/vendor/guzzlehttp/psr7/tests/PumpStreamTest.php b/server/vendor/guzzlehttp/psr7/tests/PumpStreamTest.php deleted file mode 100644 index 7358bb6..0000000 --- a/server/vendor/guzzlehttp/psr7/tests/PumpStreamTest.php +++ /dev/null @@ -1,72 +0,0 @@ -<?php -namespace GuzzleHttp\Tests\Psr7; - -use GuzzleHttp\Psr7\LimitStream; -use GuzzleHttp\Psr7\PumpStream; -use GuzzleHttp\Psr7; - -class PumpStreamTest extends \PHPUnit_Framework_TestCase -{ - public function testHasMetadataAndSize() - { - $p = new PumpStream(function () {}, [ - 'metadata' => ['foo' => 'bar'], - 'size' => 100 - ]); - - $this->assertEquals('bar', $p->getMetadata('foo')); - $this->assertEquals(['foo' => 'bar'], $p->getMetadata()); - $this->assertEquals(100, $p->getSize()); - } - - public function testCanReadFromCallable() - { - $p = Psr7\stream_for(function ($size) { - return 'a'; - }); - $this->assertEquals('a', $p->read(1)); - $this->assertEquals(1, $p->tell()); - $this->assertEquals('aaaaa', $p->read(5)); - $this->assertEquals(6, $p->tell()); - } - - public function testStoresExcessDataInBuffer() - { - $called = []; - $p = Psr7\stream_for(function ($size) use (&$called) { - $called[] = $size; - return 'abcdef'; - }); - $this->assertEquals('a', $p->read(1)); - $this->assertEquals('b', $p->read(1)); - $this->assertEquals('cdef', $p->read(4)); - $this->assertEquals('abcdefabc', $p->read(9)); - $this->assertEquals([1, 9, 3], $called); - } - - public function testInifiniteStreamWrappedInLimitStream() - { - $p = Psr7\stream_for(function () { return 'a'; }); - $s = new LimitStream($p, 5); - $this->assertEquals('aaaaa', (string) $s); - } - - public function testDescribesCapabilities() - { - $p = Psr7\stream_for(function () {}); - $this->assertTrue($p->isReadable()); - $this->assertFalse($p->isSeekable()); - $this->assertFalse($p->isWritable()); - $this->assertNull($p->getSize()); - $this->assertEquals('', $p->getContents()); - $this->assertEquals('', (string) $p); - $p->close(); - $this->assertEquals('', $p->read(10)); - $this->assertTrue($p->eof()); - - try { - $this->assertFalse($p->write('aa')); - $this->fail(); - } catch (\RuntimeException $e) {} - } -} diff --git a/server/vendor/guzzlehttp/psr7/tests/RequestTest.php b/server/vendor/guzzlehttp/psr7/tests/RequestTest.php deleted file mode 100644 index c555043..0000000 --- a/server/vendor/guzzlehttp/psr7/tests/RequestTest.php +++ /dev/null @@ -1,195 +0,0 @@ -<?php -namespace GuzzleHttp\Tests\Psr7; - -use GuzzleHttp\Psr7; -use GuzzleHttp\Psr7\Request; -use GuzzleHttp\Psr7\Uri; - -/** - * @covers GuzzleHttp\Psr7\Request - */ -class RequestTest extends \PHPUnit_Framework_TestCase -{ - public function testRequestUriMayBeString() - { - $r = new Request('GET', '/'); - $this->assertEquals('/', (string) $r->getUri()); - } - - public function testRequestUriMayBeUri() - { - $uri = new Uri('/'); - $r = new Request('GET', $uri); - $this->assertSame($uri, $r->getUri()); - } - - /** - * @expectedException \InvalidArgumentException - */ - public function testValidateRequestUri() - { - new Request('GET', '///'); - } - - public function testCanConstructWithBody() - { - $r = new Request('GET', '/', [], 'baz'); - $this->assertInstanceOf('Psr\Http\Message\StreamInterface', $r->getBody()); - $this->assertEquals('baz', (string) $r->getBody()); - } - - public function testNullBody() - { - $r = new Request('GET', '/', [], null); - $this->assertInstanceOf('Psr\Http\Message\StreamInterface', $r->getBody()); - $this->assertSame('', (string) $r->getBody()); - } - - public function testFalseyBody() - { - $r = new Request('GET', '/', [], '0'); - $this->assertInstanceOf('Psr\Http\Message\StreamInterface', $r->getBody()); - $this->assertSame('0', (string) $r->getBody()); - } - - public function testConstructorDoesNotReadStreamBody() - { - $streamIsRead = false; - $body = Psr7\FnStream::decorate(Psr7\stream_for(''), [ - '__toString' => function () use (&$streamIsRead) { - $streamIsRead = true; - return ''; - } - ]); - - $r = new Request('GET', '/', [], $body); - $this->assertFalse($streamIsRead); - $this->assertSame($body, $r->getBody()); - } - - public function testCapitalizesMethod() - { - $r = new Request('get', '/'); - $this->assertEquals('GET', $r->getMethod()); - } - - public function testCapitalizesWithMethod() - { - $r = new Request('GET', '/'); - $this->assertEquals('PUT', $r->withMethod('put')->getMethod()); - } - - public function testWithUri() - { - $r1 = new Request('GET', '/'); - $u1 = $r1->getUri(); - $u2 = new Uri('http://www.example.com'); - $r2 = $r1->withUri($u2); - $this->assertNotSame($r1, $r2); - $this->assertSame($u2, $r2->getUri()); - $this->assertSame($u1, $r1->getUri()); - } - - public function testSameInstanceWhenSameUri() - { - $r1 = new Request('GET', 'http://foo.com'); - $r2 = $r1->withUri($r1->getUri()); - $this->assertSame($r1, $r2); - } - - public function testWithRequestTarget() - { - $r1 = new Request('GET', '/'); - $r2 = $r1->withRequestTarget('*'); - $this->assertEquals('*', $r2->getRequestTarget()); - $this->assertEquals('/', $r1->getRequestTarget()); - } - - /** - * @expectedException \InvalidArgumentException - */ - public function testRequestTargetDoesNotAllowSpaces() - { - $r1 = new Request('GET', '/'); - $r1->withRequestTarget('/foo bar'); - } - - public function testRequestTargetDefaultsToSlash() - { - $r1 = new Request('GET', ''); - $this->assertEquals('/', $r1->getRequestTarget()); - $r2 = new Request('GET', '*'); - $this->assertEquals('*', $r2->getRequestTarget()); - $r3 = new Request('GET', 'http://foo.com/bar baz/'); - $this->assertEquals('/bar%20baz/', $r3->getRequestTarget()); - } - - public function testBuildsRequestTarget() - { - $r1 = new Request('GET', 'http://foo.com/baz?bar=bam'); - $this->assertEquals('/baz?bar=bam', $r1->getRequestTarget()); - } - - public function testBuildsRequestTargetWithFalseyQuery() - { - $r1 = new Request('GET', 'http://foo.com/baz?0'); - $this->assertEquals('/baz?0', $r1->getRequestTarget()); - } - - public function testHostIsAddedFirst() - { - $r = new Request('GET', 'http://foo.com/baz?bar=bam', ['Foo' => 'Bar']); - $this->assertEquals([ - 'Host' => ['foo.com'], - 'Foo' => ['Bar'] - ], $r->getHeaders()); - } - - public function testCanGetHeaderAsCsv() - { - $r = new Request('GET', 'http://foo.com/baz?bar=bam', [ - 'Foo' => ['a', 'b', 'c'] - ]); - $this->assertEquals('a, b, c', $r->getHeaderLine('Foo')); - $this->assertEquals('', $r->getHeaderLine('Bar')); - } - - public function testHostIsNotOverwrittenWhenPreservingHost() - { - $r = new Request('GET', 'http://foo.com/baz?bar=bam', ['Host' => 'a.com']); - $this->assertEquals(['Host' => ['a.com']], $r->getHeaders()); - $r2 = $r->withUri(new Uri('http://www.foo.com/bar'), true); - $this->assertEquals('a.com', $r2->getHeaderLine('Host')); - } - - public function testOverridesHostWithUri() - { - $r = new Request('GET', 'http://foo.com/baz?bar=bam'); - $this->assertEquals(['Host' => ['foo.com']], $r->getHeaders()); - $r2 = $r->withUri(new Uri('http://www.baz.com/bar')); - $this->assertEquals('www.baz.com', $r2->getHeaderLine('Host')); - } - - public function testAggregatesHeaders() - { - $r = new Request('GET', '', [ - 'ZOO' => 'zoobar', - 'zoo' => ['foobar', 'zoobar'] - ]); - $this->assertEquals(['ZOO' => ['zoobar', 'foobar', 'zoobar']], $r->getHeaders()); - $this->assertEquals('zoobar, foobar, zoobar', $r->getHeaderLine('zoo')); - } - - public function testAddsPortToHeader() - { - $r = new Request('GET', 'http://foo.com:8124/bar'); - $this->assertEquals('foo.com:8124', $r->getHeaderLine('host')); - } - - public function testAddsPortToHeaderAndReplacePreviousPort() - { - $r = new Request('GET', 'http://foo.com:8124/bar'); - $r = $r->withUri(new Uri('http://foo.com:8125/bar')); - $this->assertEquals('foo.com:8125', $r->getHeaderLine('host')); - } -} diff --git a/server/vendor/guzzlehttp/psr7/tests/ResponseTest.php b/server/vendor/guzzlehttp/psr7/tests/ResponseTest.php deleted file mode 100644 index ae01fe1..0000000 --- a/server/vendor/guzzlehttp/psr7/tests/ResponseTest.php +++ /dev/null @@ -1,252 +0,0 @@ -<?php -namespace GuzzleHttp\Tests\Psr7; - -use GuzzleHttp\Psr7; -use GuzzleHttp\Psr7\Response; - -/** - * @covers GuzzleHttp\Psr7\MessageTrait - * @covers GuzzleHttp\Psr7\Response - */ -class ResponseTest extends \PHPUnit_Framework_TestCase -{ - public function testDefaultConstructor() - { - $r = new Response(); - $this->assertSame(200, $r->getStatusCode()); - $this->assertSame('1.1', $r->getProtocolVersion()); - $this->assertSame('OK', $r->getReasonPhrase()); - $this->assertSame([], $r->getHeaders()); - $this->assertInstanceOf('Psr\Http\Message\StreamInterface', $r->getBody()); - $this->assertSame('', (string) $r->getBody()); - } - - public function testCanConstructWithStatusCode() - { - $r = new Response(404); - $this->assertSame(404, $r->getStatusCode()); - $this->assertSame('Not Found', $r->getReasonPhrase()); - } - - public function testConstructorDoesNotReadStreamBody() - { - $streamIsRead = false; - $body = Psr7\FnStream::decorate(Psr7\stream_for(''), [ - '__toString' => function () use (&$streamIsRead) { - $streamIsRead = true; - return ''; - } - ]); - - $r = new Response(200, [], $body); - $this->assertFalse($streamIsRead); - $this->assertSame($body, $r->getBody()); - } - - public function testStatusCanBeNumericString() - { - $r = new Response('404'); - $r2 = $r->withStatus('201'); - $this->assertSame(404, $r->getStatusCode()); - $this->assertSame('Not Found', $r->getReasonPhrase()); - $this->assertSame(201, $r2->getStatusCode()); - $this->assertSame('Created', $r2->getReasonPhrase()); - } - - public function testCanConstructWithHeaders() - { - $r = new Response(200, ['Foo' => 'Bar']); - $this->assertSame(['Foo' => ['Bar']], $r->getHeaders()); - $this->assertSame('Bar', $r->getHeaderLine('Foo')); - $this->assertSame(['Bar'], $r->getHeader('Foo')); - } - - public function testCanConstructWithHeadersAsArray() - { - $r = new Response(200, [ - 'Foo' => ['baz', 'bar'] - ]); - $this->assertSame(['Foo' => ['baz', 'bar']], $r->getHeaders()); - $this->assertSame('baz, bar', $r->getHeaderLine('Foo')); - $this->assertSame(['baz', 'bar'], $r->getHeader('Foo')); - } - - public function testCanConstructWithBody() - { - $r = new Response(200, [], 'baz'); - $this->assertInstanceOf('Psr\Http\Message\StreamInterface', $r->getBody()); - $this->assertSame('baz', (string) $r->getBody()); - } - - public function testNullBody() - { - $r = new Response(200, [], null); - $this->assertInstanceOf('Psr\Http\Message\StreamInterface', $r->getBody()); - $this->assertSame('', (string) $r->getBody()); - } - - public function testFalseyBody() - { - $r = new Response(200, [], '0'); - $this->assertInstanceOf('Psr\Http\Message\StreamInterface', $r->getBody()); - $this->assertSame('0', (string) $r->getBody()); - } - - public function testCanConstructWithReason() - { - $r = new Response(200, [], null, '1.1', 'bar'); - $this->assertSame('bar', $r->getReasonPhrase()); - - $r = new Response(200, [], null, '1.1', '0'); - $this->assertSame('0', $r->getReasonPhrase(), 'Falsey reason works'); - } - - public function testCanConstructWithProtocolVersion() - { - $r = new Response(200, [], null, '1000'); - $this->assertSame('1000', $r->getProtocolVersion()); - } - - public function testWithStatusCodeAndNoReason() - { - $r = (new Response())->withStatus(201); - $this->assertSame(201, $r->getStatusCode()); - $this->assertSame('Created', $r->getReasonPhrase()); - } - - public function testWithStatusCodeAndReason() - { - $r = (new Response())->withStatus(201, 'Foo'); - $this->assertSame(201, $r->getStatusCode()); - $this->assertSame('Foo', $r->getReasonPhrase()); - - $r = (new Response())->withStatus(201, '0'); - $this->assertSame(201, $r->getStatusCode()); - $this->assertSame('0', $r->getReasonPhrase(), 'Falsey reason works'); - } - - public function testWithProtocolVersion() - { - $r = (new Response())->withProtocolVersion('1000'); - $this->assertSame('1000', $r->getProtocolVersion()); - } - - public function testSameInstanceWhenSameProtocol() - { - $r = new Response(); - $this->assertSame($r, $r->withProtocolVersion('1.1')); - } - - public function testWithBody() - { - $b = Psr7\stream_for('0'); - $r = (new Response())->withBody($b); - $this->assertInstanceOf('Psr\Http\Message\StreamInterface', $r->getBody()); - $this->assertSame('0', (string) $r->getBody()); - } - - public function testSameInstanceWhenSameBody() - { - $r = new Response(); - $b = $r->getBody(); - $this->assertSame($r, $r->withBody($b)); - } - - public function testWithHeader() - { - $r = new Response(200, ['Foo' => 'Bar']); - $r2 = $r->withHeader('baZ', 'Bam'); - $this->assertSame(['Foo' => ['Bar']], $r->getHeaders()); - $this->assertSame(['Foo' => ['Bar'], 'baZ' => ['Bam']], $r2->getHeaders()); - $this->assertSame('Bam', $r2->getHeaderLine('baz')); - $this->assertSame(['Bam'], $r2->getHeader('baz')); - } - - public function testWithHeaderAsArray() - { - $r = new Response(200, ['Foo' => 'Bar']); - $r2 = $r->withHeader('baZ', ['Bam', 'Bar']); - $this->assertSame(['Foo' => ['Bar']], $r->getHeaders()); - $this->assertSame(['Foo' => ['Bar'], 'baZ' => ['Bam', 'Bar']], $r2->getHeaders()); - $this->assertSame('Bam, Bar', $r2->getHeaderLine('baz')); - $this->assertSame(['Bam', 'Bar'], $r2->getHeader('baz')); - } - - public function testWithHeaderReplacesDifferentCase() - { - $r = new Response(200, ['Foo' => 'Bar']); - $r2 = $r->withHeader('foO', 'Bam'); - $this->assertSame(['Foo' => ['Bar']], $r->getHeaders()); - $this->assertSame(['foO' => ['Bam']], $r2->getHeaders()); - $this->assertSame('Bam', $r2->getHeaderLine('foo')); - $this->assertSame(['Bam'], $r2->getHeader('foo')); - } - - public function testWithAddedHeader() - { - $r = new Response(200, ['Foo' => 'Bar']); - $r2 = $r->withAddedHeader('foO', 'Baz'); - $this->assertSame(['Foo' => ['Bar']], $r->getHeaders()); - $this->assertSame(['Foo' => ['Bar', 'Baz']], $r2->getHeaders()); - $this->assertSame('Bar, Baz', $r2->getHeaderLine('foo')); - $this->assertSame(['Bar', 'Baz'], $r2->getHeader('foo')); - } - - public function testWithAddedHeaderAsArray() - { - $r = new Response(200, ['Foo' => 'Bar']); - $r2 = $r->withAddedHeader('foO', ['Baz', 'Bam']); - $this->assertSame(['Foo' => ['Bar']], $r->getHeaders()); - $this->assertSame(['Foo' => ['Bar', 'Baz', 'Bam']], $r2->getHeaders()); - $this->assertSame('Bar, Baz, Bam', $r2->getHeaderLine('foo')); - $this->assertSame(['Bar', 'Baz', 'Bam'], $r2->getHeader('foo')); - } - - public function testWithAddedHeaderThatDoesNotExist() - { - $r = new Response(200, ['Foo' => 'Bar']); - $r2 = $r->withAddedHeader('nEw', 'Baz'); - $this->assertSame(['Foo' => ['Bar']], $r->getHeaders()); - $this->assertSame(['Foo' => ['Bar'], 'nEw' => ['Baz']], $r2->getHeaders()); - $this->assertSame('Baz', $r2->getHeaderLine('new')); - $this->assertSame(['Baz'], $r2->getHeader('new')); - } - - public function testWithoutHeaderThatExists() - { - $r = new Response(200, ['Foo' => 'Bar', 'Baz' => 'Bam']); - $r2 = $r->withoutHeader('foO'); - $this->assertTrue($r->hasHeader('foo')); - $this->assertSame(['Foo' => ['Bar'], 'Baz' => ['Bam']], $r->getHeaders()); - $this->assertFalse($r2->hasHeader('foo')); - $this->assertSame(['Baz' => ['Bam']], $r2->getHeaders()); - } - - public function testWithoutHeaderThatDoesNotExist() - { - $r = new Response(200, ['Baz' => 'Bam']); - $r2 = $r->withoutHeader('foO'); - $this->assertSame($r, $r2); - $this->assertFalse($r2->hasHeader('foo')); - $this->assertSame(['Baz' => ['Bam']], $r2->getHeaders()); - } - - public function testSameInstanceWhenRemovingMissingHeader() - { - $r = new Response(); - $this->assertSame($r, $r->withoutHeader('foo')); - } - - public function testHeaderValuesAreTrimmed() - { - $r1 = new Response(200, ['OWS' => " \t \tFoo\t \t "]); - $r2 = (new Response())->withHeader('OWS', " \t \tFoo\t \t "); - $r3 = (new Response())->withAddedHeader('OWS', " \t \tFoo\t \t ");; - - foreach ([$r1, $r2, $r3] as $r) { - $this->assertSame(['OWS' => ['Foo']], $r->getHeaders()); - $this->assertSame('Foo', $r->getHeaderLine('OWS')); - $this->assertSame(['Foo'], $r->getHeader('OWS')); - } - } -} diff --git a/server/vendor/guzzlehttp/psr7/tests/ServerRequestTest.php b/server/vendor/guzzlehttp/psr7/tests/ServerRequestTest.php deleted file mode 100644 index f1727d0..0000000 --- a/server/vendor/guzzlehttp/psr7/tests/ServerRequestTest.php +++ /dev/null @@ -1,532 +0,0 @@ -<?php -namespace GuzzleHttp\Tests\Psr7; - -use GuzzleHttp\Psr7\ServerRequest; -use GuzzleHttp\Psr7\UploadedFile; -use GuzzleHttp\Psr7\Uri; - -/** - * @covers GuzzleHttp\Psr7\ServerRequest - */ -class ServerRequestTest extends \PHPUnit_Framework_TestCase -{ - public function dataNormalizeFiles() - { - return [ - 'Single file' => [ - [ - 'file' => [ - 'name' => 'MyFile.txt', - 'type' => 'text/plain', - 'tmp_name' => '/tmp/php/php1h4j1o', - 'error' => '0', - 'size' => '123' - ] - ], - [ - 'file' => new UploadedFile( - '/tmp/php/php1h4j1o', - 123, - UPLOAD_ERR_OK, - 'MyFile.txt', - 'text/plain' - ) - ] - ], - 'Empty file' => [ - [ - 'image_file' => [ - 'name' => '', - 'type' => '', - 'tmp_name' => '', - 'error' => '4', - 'size' => '0' - ] - ], - [ - 'image_file' => new UploadedFile( - '', - 0, - UPLOAD_ERR_NO_FILE, - '', - '' - ) - ] - ], - 'Already Converted' => [ - [ - 'file' => new UploadedFile( - '/tmp/php/php1h4j1o', - 123, - UPLOAD_ERR_OK, - 'MyFile.txt', - 'text/plain' - ) - ], - [ - 'file' => new UploadedFile( - '/tmp/php/php1h4j1o', - 123, - UPLOAD_ERR_OK, - 'MyFile.txt', - 'text/plain' - ) - ] - ], - 'Already Converted array' => [ - [ - 'file' => [ - new UploadedFile( - '/tmp/php/php1h4j1o', - 123, - UPLOAD_ERR_OK, - 'MyFile.txt', - 'text/plain' - ), - new UploadedFile( - '', - 0, - UPLOAD_ERR_NO_FILE, - '', - '' - ) - ], - ], - [ - 'file' => [ - new UploadedFile( - '/tmp/php/php1h4j1o', - 123, - UPLOAD_ERR_OK, - 'MyFile.txt', - 'text/plain' - ), - new UploadedFile( - '', - 0, - UPLOAD_ERR_NO_FILE, - '', - '' - ) - ], - ] - ], - 'Multiple files' => [ - [ - 'text_file' => [ - 'name' => 'MyFile.txt', - 'type' => 'text/plain', - 'tmp_name' => '/tmp/php/php1h4j1o', - 'error' => '0', - 'size' => '123' - ], - 'image_file' => [ - 'name' => '', - 'type' => '', - 'tmp_name' => '', - 'error' => '4', - 'size' => '0' - ] - ], - [ - 'text_file' => new UploadedFile( - '/tmp/php/php1h4j1o', - 123, - UPLOAD_ERR_OK, - 'MyFile.txt', - 'text/plain' - ), - 'image_file' => new UploadedFile( - '', - 0, - UPLOAD_ERR_NO_FILE, - '', - '' - ) - ] - ], - 'Nested files' => [ - [ - 'file' => [ - 'name' => [ - 0 => 'MyFile.txt', - 1 => 'Image.png', - ], - 'type' => [ - 0 => 'text/plain', - 1 => 'image/png', - ], - 'tmp_name' => [ - 0 => '/tmp/php/hp9hskjhf', - 1 => '/tmp/php/php1h4j1o', - ], - 'error' => [ - 0 => '0', - 1 => '0', - ], - 'size' => [ - 0 => '123', - 1 => '7349', - ], - ], - 'nested' => [ - 'name' => [ - 'other' => 'Flag.txt', - 'test' => [ - 0 => 'Stuff.txt', - 1 => '', - ], - ], - 'type' => [ - 'other' => 'text/plain', - 'test' => [ - 0 => 'text/plain', - 1 => '', - ], - ], - 'tmp_name' => [ - 'other' => '/tmp/php/hp9hskjhf', - 'test' => [ - 0 => '/tmp/php/asifu2gp3', - 1 => '', - ], - ], - 'error' => [ - 'other' => '0', - 'test' => [ - 0 => '0', - 1 => '4', - ], - ], - 'size' => [ - 'other' => '421', - 'test' => [ - 0 => '32', - 1 => '0', - ] - ] - ], - ], - [ - 'file' => [ - 0 => new UploadedFile( - '/tmp/php/hp9hskjhf', - 123, - UPLOAD_ERR_OK, - 'MyFile.txt', - 'text/plain' - ), - 1 => new UploadedFile( - '/tmp/php/php1h4j1o', - 7349, - UPLOAD_ERR_OK, - 'Image.png', - 'image/png' - ), - ], - 'nested' => [ - 'other' => new UploadedFile( - '/tmp/php/hp9hskjhf', - 421, - UPLOAD_ERR_OK, - 'Flag.txt', - 'text/plain' - ), - 'test' => [ - 0 => new UploadedFile( - '/tmp/php/asifu2gp3', - 32, - UPLOAD_ERR_OK, - 'Stuff.txt', - 'text/plain' - ), - 1 => new UploadedFile( - '', - 0, - UPLOAD_ERR_NO_FILE, - '', - '' - ), - ] - ] - ] - ] - ]; - } - - /** - * @dataProvider dataNormalizeFiles - */ - public function testNormalizeFiles($files, $expected) - { - $result = ServerRequest::normalizeFiles($files); - - $this->assertEquals($expected, $result); - } - - public function testNormalizeFilesRaisesException() - { - $this->setExpectedException('InvalidArgumentException', 'Invalid value in files specification'); - - ServerRequest::normalizeFiles(['test' => 'something']); - } - - public function dataGetUriFromGlobals() - { - $server = [ - 'PHP_SELF' => '/blog/article.php', - 'GATEWAY_INTERFACE' => 'CGI/1.1', - 'SERVER_ADDR' => 'Server IP: 217.112.82.20', - 'SERVER_NAME' => 'www.blakesimpson.co.uk', - 'SERVER_SOFTWARE' => 'Apache/2.2.15 (Win32) JRun/4.0 PHP/5.2.13', - 'SERVER_PROTOCOL' => 'HTTP/1.0', - 'REQUEST_METHOD' => 'POST', - 'REQUEST_TIME' => 'Request start time: 1280149029', - 'QUERY_STRING' => 'id=10&user=foo', - 'DOCUMENT_ROOT' => '/path/to/your/server/root/', - 'HTTP_ACCEPT' => 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', - 'HTTP_ACCEPT_CHARSET' => 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', - 'HTTP_ACCEPT_ENCODING' => 'gzip,deflate', - 'HTTP_ACCEPT_LANGUAGE' => 'en-gb,en;q=0.5', - 'HTTP_CONNECTION' => 'keep-alive', - 'HTTP_HOST' => 'www.blakesimpson.co.uk', - 'HTTP_REFERER' => 'http://previous.url.com', - 'HTTP_USER_AGENT' => 'Mozilla/5.0 (Windows; U; Windows NT 6.0; en-GB; rv:1.9.2.6) Gecko/20100625 Firefox/3.6.6 ( .NET CLR 3.5.30729)', - 'HTTPS' => '1', - 'REMOTE_ADDR' => '193.60.168.69', - 'REMOTE_HOST' => 'Client server\'s host name', - 'REMOTE_PORT' => '5390', - 'SCRIPT_FILENAME' => '/path/to/this/script.php', - 'SERVER_ADMIN' => 'webmaster@blakesimpson.co.uk', - 'SERVER_PORT' => '80', - 'SERVER_SIGNATURE' => 'Version signature: 5.123', - 'SCRIPT_NAME' => '/blog/article.php', - 'REQUEST_URI' => '/blog/article.php?id=10&user=foo', - ]; - - return [ - 'Normal request' => [ - 'http://www.blakesimpson.co.uk/blog/article.php?id=10&user=foo', - $server, - ], - 'Secure request' => [ - 'https://www.blakesimpson.co.uk/blog/article.php?id=10&user=foo', - array_merge($server, ['HTTPS' => 'on', 'SERVER_PORT' => '443']), - ], - 'HTTP_HOST missing' => [ - 'http://www.blakesimpson.co.uk/blog/article.php?id=10&user=foo', - array_merge($server, ['HTTP_HOST' => null]), - ], - 'No query String' => [ - 'http://www.blakesimpson.co.uk/blog/article.php', - array_merge($server, ['REQUEST_URI' => '/blog/article.php', 'QUERY_STRING' => '']), - ], - 'Different port' => [ - 'http://www.blakesimpson.co.uk:8324/blog/article.php?id=10&user=foo', - array_merge($server, ['SERVER_PORT' => '8324']), - ], - 'Empty server variable' => [ - '', - [], - ], - ]; - } - - /** - * @dataProvider dataGetUriFromGlobals - */ - public function testGetUriFromGlobals($expected, $serverParams) - { - $_SERVER = $serverParams; - - $this->assertEquals(new Uri($expected), ServerRequest::getUriFromGlobals()); - } - - public function testFromGlobals() - { - $_SERVER = [ - 'PHP_SELF' => '/blog/article.php', - 'GATEWAY_INTERFACE' => 'CGI/1.1', - 'SERVER_ADDR' => 'Server IP: 217.112.82.20', - 'SERVER_NAME' => 'www.blakesimpson.co.uk', - 'SERVER_SOFTWARE' => 'Apache/2.2.15 (Win32) JRun/4.0 PHP/5.2.13', - 'SERVER_PROTOCOL' => 'HTTP/1.0', - 'REQUEST_METHOD' => 'POST', - 'REQUEST_TIME' => 'Request start time: 1280149029', - 'QUERY_STRING' => 'id=10&user=foo', - 'DOCUMENT_ROOT' => '/path/to/your/server/root/', - 'HTTP_ACCEPT' => 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', - 'HTTP_ACCEPT_CHARSET' => 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', - 'HTTP_ACCEPT_ENCODING' => 'gzip,deflate', - 'HTTP_ACCEPT_LANGUAGE' => 'en-gb,en;q=0.5', - 'HTTP_CONNECTION' => 'keep-alive', - 'HTTP_HOST' => 'www.blakesimpson.co.uk', - 'HTTP_REFERER' => 'http://previous.url.com', - 'HTTP_USER_AGENT' => 'Mozilla/5.0 (Windows; U; Windows NT 6.0; en-GB; rv:1.9.2.6) Gecko/20100625 Firefox/3.6.6 ( .NET CLR 3.5.30729)', - 'HTTPS' => '1', - 'REMOTE_ADDR' => '193.60.168.69', - 'REMOTE_HOST' => 'Client server\'s host name', - 'REMOTE_PORT' => '5390', - 'SCRIPT_FILENAME' => '/path/to/this/script.php', - 'SERVER_ADMIN' => 'webmaster@blakesimpson.co.uk', - 'SERVER_PORT' => '80', - 'SERVER_SIGNATURE' => 'Version signature: 5.123', - 'SCRIPT_NAME' => '/blog/article.php', - 'REQUEST_URI' => '/blog/article.php?id=10&user=foo', - ]; - - $_COOKIE = [ - 'logged-in' => 'yes!' - ]; - - $_POST = [ - 'name' => 'Pesho', - 'email' => 'pesho@example.com', - ]; - - $_GET = [ - 'id' => 10, - 'user' => 'foo', - ]; - - $_FILES = [ - 'file' => [ - 'name' => 'MyFile.txt', - 'type' => 'text/plain', - 'tmp_name' => '/tmp/php/php1h4j1o', - 'error' => UPLOAD_ERR_OK, - 'size' => 123, - ] - ]; - - $server = ServerRequest::fromGlobals(); - - $this->assertEquals('POST', $server->getMethod()); - $this->assertEquals(['Host' => ['www.blakesimpson.co.uk']], $server->getHeaders()); - $this->assertEquals('', (string) $server->getBody()); - $this->assertEquals('1.0', $server->getProtocolVersion()); - $this->assertEquals($_COOKIE, $server->getCookieParams()); - $this->assertEquals($_POST, $server->getParsedBody()); - $this->assertEquals($_GET, $server->getQueryParams()); - - $this->assertEquals( - new Uri('http://www.blakesimpson.co.uk/blog/article.php?id=10&user=foo'), - $server->getUri() - ); - - $expectedFiles = [ - 'file' => new UploadedFile( - '/tmp/php/php1h4j1o', - 123, - UPLOAD_ERR_OK, - 'MyFile.txt', - 'text/plain' - ), - ]; - - $this->assertEquals($expectedFiles, $server->getUploadedFiles()); - } - - public function testUploadedFiles() - { - $request1 = new ServerRequest('GET', '/'); - - $files = [ - 'file' => new UploadedFile('test', 123, UPLOAD_ERR_OK) - ]; - - $request2 = $request1->withUploadedFiles($files); - - $this->assertNotSame($request2, $request1); - $this->assertSame([], $request1->getUploadedFiles()); - $this->assertSame($files, $request2->getUploadedFiles()); - } - - public function testServerParams() - { - $params = ['name' => 'value']; - - $request = new ServerRequest('GET', '/', [], null, '1.1', $params); - $this->assertSame($params, $request->getServerParams()); - } - - public function testCookieParams() - { - $request1 = new ServerRequest('GET', '/'); - - $params = ['name' => 'value']; - - $request2 = $request1->withCookieParams($params); - - $this->assertNotSame($request2, $request1); - $this->assertEmpty($request1->getCookieParams()); - $this->assertSame($params, $request2->getCookieParams()); - } - - public function testQueryParams() - { - $request1 = new ServerRequest('GET', '/'); - - $params = ['name' => 'value']; - - $request2 = $request1->withQueryParams($params); - - $this->assertNotSame($request2, $request1); - $this->assertEmpty($request1->getQueryParams()); - $this->assertSame($params, $request2->getQueryParams()); - } - - public function testParsedBody() - { - $request1 = new ServerRequest('GET', '/'); - - $params = ['name' => 'value']; - - $request2 = $request1->withParsedBody($params); - - $this->assertNotSame($request2, $request1); - $this->assertEmpty($request1->getParsedBody()); - $this->assertSame($params, $request2->getParsedBody()); - } - - public function testAttributes() - { - $request1 = new ServerRequest('GET', '/'); - - $request2 = $request1->withAttribute('name', 'value'); - $request3 = $request2->withAttribute('other', 'otherValue'); - $request4 = $request3->withoutAttribute('other'); - $request5 = $request3->withoutAttribute('unknown'); - - $this->assertNotSame($request2, $request1); - $this->assertNotSame($request3, $request2); - $this->assertNotSame($request4, $request3); - $this->assertNotSame($request5, $request4); - - $this->assertEmpty($request1->getAttributes()); - $this->assertEmpty($request1->getAttribute('name')); - $this->assertEquals( - 'something', - $request1->getAttribute('name', 'something'), - 'Should return the default value' - ); - - $this->assertEquals('value', $request2->getAttribute('name')); - $this->assertEquals(['name' => 'value'], $request2->getAttributes()); - $this->assertEquals(['name' => 'value', 'other' => 'otherValue'], $request3->getAttributes()); - $this->assertEquals(['name' => 'value'], $request4->getAttributes()); - } - - public function testNullAttribute() - { - $request = (new ServerRequest('GET', '/'))->withAttribute('name', null); - - $this->assertSame(['name' => null], $request->getAttributes()); - $this->assertNull($request->getAttribute('name', 'different-default')); - - $requestWithoutAttribute = $request->withoutAttribute('name'); - - $this->assertSame([], $requestWithoutAttribute->getAttributes()); - $this->assertSame('different-default', $requestWithoutAttribute->getAttribute('name', 'different-default')); - } -} diff --git a/server/vendor/guzzlehttp/psr7/tests/StreamDecoratorTraitTest.php b/server/vendor/guzzlehttp/psr7/tests/StreamDecoratorTraitTest.php deleted file mode 100644 index 682079e..0000000 --- a/server/vendor/guzzlehttp/psr7/tests/StreamDecoratorTraitTest.php +++ /dev/null @@ -1,137 +0,0 @@ -<?php -namespace GuzzleHttp\Tests\Psr7; - -use Psr\Http\Message\StreamInterface; -use GuzzleHttp\Psr7; -use GuzzleHttp\Psr7\StreamDecoratorTrait; - -class Str implements StreamInterface -{ - use StreamDecoratorTrait; -} - -/** - * @covers GuzzleHttp\Psr7\StreamDecoratorTrait - */ -class StreamDecoratorTraitTest extends \PHPUnit_Framework_TestCase -{ - private $a; - private $b; - private $c; - - public function setUp() - { - $this->c = fopen('php://temp', 'r+'); - fwrite($this->c, 'foo'); - fseek($this->c, 0); - $this->a = Psr7\stream_for($this->c); - $this->b = new Str($this->a); - } - - public function testCatchesExceptionsWhenCastingToString() - { - $s = $this->getMockBuilder('Psr\Http\Message\StreamInterface') - ->setMethods(['read']) - ->getMockForAbstractClass(); - $s->expects($this->once()) - ->method('read') - ->will($this->throwException(new \Exception('foo'))); - $msg = ''; - set_error_handler(function ($errNo, $str) use (&$msg) { $msg = $str; }); - echo new Str($s); - restore_error_handler(); - $this->assertContains('foo', $msg); - } - - public function testToString() - { - $this->assertEquals('foo', (string) $this->b); - } - - public function testHasSize() - { - $this->assertEquals(3, $this->b->getSize()); - } - - public function testReads() - { - $this->assertEquals('foo', $this->b->read(10)); - } - - public function testCheckMethods() - { - $this->assertEquals($this->a->isReadable(), $this->b->isReadable()); - $this->assertEquals($this->a->isWritable(), $this->b->isWritable()); - $this->assertEquals($this->a->isSeekable(), $this->b->isSeekable()); - } - - public function testSeeksAndTells() - { - $this->b->seek(1); - $this->assertEquals(1, $this->a->tell()); - $this->assertEquals(1, $this->b->tell()); - $this->b->seek(0); - $this->assertEquals(0, $this->a->tell()); - $this->assertEquals(0, $this->b->tell()); - $this->b->seek(0, SEEK_END); - $this->assertEquals(3, $this->a->tell()); - $this->assertEquals(3, $this->b->tell()); - } - - public function testGetsContents() - { - $this->assertEquals('foo', $this->b->getContents()); - $this->assertEquals('', $this->b->getContents()); - $this->b->seek(1); - $this->assertEquals('oo', $this->b->getContents(1)); - } - - public function testCloses() - { - $this->b->close(); - $this->assertFalse(is_resource($this->c)); - } - - public function testDetaches() - { - $this->b->detach(); - $this->assertFalse($this->b->isReadable()); - } - - public function testWrapsMetadata() - { - $this->assertSame($this->b->getMetadata(), $this->a->getMetadata()); - $this->assertSame($this->b->getMetadata('uri'), $this->a->getMetadata('uri')); - } - - public function testWrapsWrites() - { - $this->b->seek(0, SEEK_END); - $this->b->write('foo'); - $this->assertEquals('foofoo', (string) $this->a); - } - - /** - * @expectedException \UnexpectedValueException - */ - public function testThrowsWithInvalidGetter() - { - $this->b->foo; - } - - /** - * @expectedException \BadMethodCallException - */ - public function testThrowsWhenGetterNotImplemented() - { - $s = new BadStream(); - $s->stream; - } -} - -class BadStream -{ - use StreamDecoratorTrait; - - public function __construct() {} -} diff --git a/server/vendor/guzzlehttp/psr7/tests/StreamTest.php b/server/vendor/guzzlehttp/psr7/tests/StreamTest.php deleted file mode 100644 index 4fe92cc..0000000 --- a/server/vendor/guzzlehttp/psr7/tests/StreamTest.php +++ /dev/null @@ -1,161 +0,0 @@ -<?php -namespace GuzzleHttp\Tests\Psr7; - -use GuzzleHttp\Psr7\NoSeekStream; -use GuzzleHttp\Psr7\Stream; - -/** - * @covers GuzzleHttp\Psr7\Stream - */ -class StreamTest extends \PHPUnit_Framework_TestCase -{ - /** - * @expectedException \InvalidArgumentException - */ - public function testConstructorThrowsExceptionOnInvalidArgument() - { - new Stream(true); - } - - 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 testStreamClosesHandleOnDestruct() - { - $handle = fopen('php://temp', 'r'); - $stream = new Stream($handle); - unset($stream); - $this->assertFalse(is_resource($handle)); - } - - public function testConvertsToString() - { - $handle = fopen('php://temp', 'w+'); - fwrite($handle, 'data'); - $stream = new Stream($handle); - $this->assertEquals('data', (string) $stream); - $this->assertEquals('data', (string) $stream); - $stream->close(); - } - - public function testGetsContents() - { - $handle = fopen('php://temp', 'w+'); - fwrite($handle, 'data'); - $stream = new Stream($handle); - $this->assertEquals('', $stream->getContents()); - $stream->seek(0); - $this->assertEquals('data', $stream->getContents()); - $this->assertEquals('', $stream->getContents()); - } - - public function testChecksEof() - { - $handle = fopen('php://temp', 'w+'); - fwrite($handle, 'data'); - $stream = new Stream($handle); - $this->assertFalse($stream->eof()); - $stream->read(4); - $this->assertTrue($stream->eof()); - $stream->close(); - } - - public function testGetSize() - { - $size = filesize(__FILE__); - $handle = fopen(__FILE__, 'r'); - $stream = new Stream($handle); - $this->assertEquals($size, $stream->getSize()); - // Load from cache - $this->assertEquals($size, $stream->getSize()); - $stream->close(); - } - - public function testEnsuresSizeIsConsistent() - { - $h = fopen('php://temp', 'w+'); - $this->assertEquals(3, fwrite($h, 'foo')); - $stream = new Stream($h); - $this->assertEquals(3, $stream->getSize()); - $this->assertEquals(4, $stream->write('test')); - $this->assertEquals(7, $stream->getSize()); - $this->assertEquals(7, $stream->getSize()); - $stream->close(); - } - - public function testProvidesStreamPosition() - { - $handle = fopen('php://temp', 'w+'); - $stream = new Stream($handle); - $this->assertEquals(0, $stream->tell()); - $stream->write('foo'); - $this->assertEquals(3, $stream->tell()); - $stream->seek(1); - $this->assertEquals(1, $stream->tell()); - $this->assertSame(ftell($handle), $stream->tell()); - $stream->close(); - } - - public function testCanDetachStream() - { - $r = fopen('php://temp', 'w+'); - $stream = new Stream($r); - $stream->write('foo'); - $this->assertTrue($stream->isReadable()); - $this->assertSame($r, $stream->detach()); - $stream->detach(); - - $this->assertFalse($stream->isReadable()); - $this->assertFalse($stream->isWritable()); - $this->assertFalse($stream->isSeekable()); - - $throws = function (callable $fn) use ($stream) { - try { - $fn($stream); - $this->fail(); - } catch (\Exception $e) {} - }; - - $throws(function ($stream) { $stream->read(10); }); - $throws(function ($stream) { $stream->write('bar'); }); - $throws(function ($stream) { $stream->seek(10); }); - $throws(function ($stream) { $stream->tell(); }); - $throws(function ($stream) { $stream->eof(); }); - $throws(function ($stream) { $stream->getSize(); }); - $throws(function ($stream) { $stream->getContents(); }); - $this->assertSame('', (string) $stream); - $stream->close(); - } - - public function testCloseClearProperties() - { - $handle = fopen('php://temp', 'r+'); - $stream = new Stream($handle); - $stream->close(); - - $this->assertFalse($stream->isSeekable()); - $this->assertFalse($stream->isReadable()); - $this->assertFalse($stream->isWritable()); - $this->assertNull($stream->getSize()); - $this->assertEmpty($stream->getMetadata()); - } - - public function testDoesNotThrowInToString() - { - $s = \GuzzleHttp\Psr7\stream_for('foo'); - $s = new NoSeekStream($s); - $this->assertEquals('foo', (string) $s); - } -} diff --git a/server/vendor/guzzlehttp/psr7/tests/StreamWrapperTest.php b/server/vendor/guzzlehttp/psr7/tests/StreamWrapperTest.php deleted file mode 100644 index 7183aae..0000000 --- a/server/vendor/guzzlehttp/psr7/tests/StreamWrapperTest.php +++ /dev/null @@ -1,102 +0,0 @@ -<?php -namespace GuzzleHttp\Tests\Psr7; - -use GuzzleHttp\Psr7\StreamWrapper; -use GuzzleHttp\Psr7; - -/** - * @covers GuzzleHttp\Psr7\StreamWrapper - */ -class StreamWrapperTest extends \PHPUnit_Framework_TestCase -{ - public function testResource() - { - $stream = Psr7\stream_for('foo'); - $handle = StreamWrapper::getResource($stream); - $this->assertSame('foo', fread($handle, 3)); - $this->assertSame(3, ftell($handle)); - $this->assertSame(3, fwrite($handle, 'bar')); - $this->assertSame(0, fseek($handle, 0)); - $this->assertSame('foobar', fread($handle, 6)); - $this->assertSame('', fread($handle, 1)); - $this->assertTrue(feof($handle)); - - $stBlksize = defined('PHP_WINDOWS_VERSION_BUILD') ? -1 : 0; - - // This fails on HHVM for some reason - if (!defined('HHVM_VERSION')) { - $this->assertEquals([ - 'dev' => 0, - 'ino' => 0, - 'mode' => 33206, - 'nlink' => 0, - 'uid' => 0, - 'gid' => 0, - 'rdev' => 0, - 'size' => 6, - 'atime' => 0, - 'mtime' => 0, - 'ctime' => 0, - 'blksize' => $stBlksize, - 'blocks' => $stBlksize, - 0 => 0, - 1 => 0, - 2 => 33206, - 3 => 0, - 4 => 0, - 5 => 0, - 6 => 0, - 7 => 6, - 8 => 0, - 9 => 0, - 10 => 0, - 11 => $stBlksize, - 12 => $stBlksize, - ], fstat($handle)); - } - - $this->assertTrue(fclose($handle)); - $this->assertSame('foobar', (string) $stream); - } - - /** - * @expectedException \InvalidArgumentException - */ - public function testValidatesStream() - { - $stream = $this->getMockBuilder('Psr\Http\Message\StreamInterface') - ->setMethods(['isReadable', 'isWritable']) - ->getMockForAbstractClass(); - $stream->expects($this->once()) - ->method('isReadable') - ->will($this->returnValue(false)); - $stream->expects($this->once()) - ->method('isWritable') - ->will($this->returnValue(false)); - StreamWrapper::getResource($stream); - } - - /** - * @expectedException \PHPUnit_Framework_Error_Warning - */ - public function testReturnsFalseWhenStreamDoesNotExist() - { - fopen('guzzle://foo', 'r'); - } - - public function testCanOpenReadonlyStream() - { - $stream = $this->getMockBuilder('Psr\Http\Message\StreamInterface') - ->setMethods(['isReadable', 'isWritable']) - ->getMockForAbstractClass(); - $stream->expects($this->once()) - ->method('isReadable') - ->will($this->returnValue(false)); - $stream->expects($this->once()) - ->method('isWritable') - ->will($this->returnValue(true)); - $r = StreamWrapper::getResource($stream); - $this->assertInternalType('resource', $r); - fclose($r); - } -} diff --git a/server/vendor/guzzlehttp/psr7/tests/UploadedFileTest.php b/server/vendor/guzzlehttp/psr7/tests/UploadedFileTest.php deleted file mode 100644 index 809f7ab..0000000 --- a/server/vendor/guzzlehttp/psr7/tests/UploadedFileTest.php +++ /dev/null @@ -1,280 +0,0 @@ -<?php -namespace GuzzleHttp\Tests\Psr7; - -use ReflectionProperty; -use GuzzleHttp\Psr7\Stream; -use GuzzleHttp\Psr7\UploadedFile; - -/** - * @covers GuzzleHttp\Psr7\UploadedFile - */ -class UploadedFileTest extends \PHPUnit_Framework_TestCase -{ - protected $cleanup; - - public function setUp() - { - $this->cleanup = []; - } - - public function tearDown() - { - foreach ($this->cleanup as $file) { - if (is_scalar($file) && file_exists($file)) { - unlink($file); - } - } - } - - public function invalidStreams() - { - return [ - 'null' => [null], - 'true' => [true], - 'false' => [false], - 'int' => [1], - 'float' => [1.1], - 'array' => [['filename']], - 'object' => [(object) ['filename']], - ]; - } - - /** - * @dataProvider invalidStreams - */ - public function testRaisesExceptionOnInvalidStreamOrFile($streamOrFile) - { - $this->setExpectedException('InvalidArgumentException'); - - new UploadedFile($streamOrFile, 0, UPLOAD_ERR_OK); - } - - public function invalidSizes() - { - return [ - 'null' => [null], - 'float' => [1.1], - 'array' => [[1]], - 'object' => [(object) [1]], - ]; - } - - /** - * @dataProvider invalidSizes - */ - public function testRaisesExceptionOnInvalidSize($size) - { - $this->setExpectedException('InvalidArgumentException', 'size'); - - new UploadedFile(fopen('php://temp', 'wb+'), $size, UPLOAD_ERR_OK); - } - - public function invalidErrorStatuses() - { - return [ - 'null' => [null], - 'true' => [true], - 'false' => [false], - 'float' => [1.1], - 'string' => ['1'], - 'array' => [[1]], - 'object' => [(object) [1]], - 'negative' => [-1], - 'too-big' => [9], - ]; - } - - /** - * @dataProvider invalidErrorStatuses - */ - public function testRaisesExceptionOnInvalidErrorStatus($status) - { - $this->setExpectedException('InvalidArgumentException', 'status'); - - new UploadedFile(fopen('php://temp', 'wb+'), 0, $status); - } - - public function invalidFilenamesAndMediaTypes() - { - return [ - 'true' => [true], - 'false' => [false], - 'int' => [1], - 'float' => [1.1], - 'array' => [['string']], - 'object' => [(object) ['string']], - ]; - } - - /** - * @dataProvider invalidFilenamesAndMediaTypes - */ - public function testRaisesExceptionOnInvalidClientFilename($filename) - { - $this->setExpectedException('InvalidArgumentException', 'filename'); - - new UploadedFile(fopen('php://temp', 'wb+'), 0, UPLOAD_ERR_OK, $filename); - } - - /** - * @dataProvider invalidFilenamesAndMediaTypes - */ - public function testRaisesExceptionOnInvalidClientMediaType($mediaType) - { - $this->setExpectedException('InvalidArgumentException', 'media type'); - - new UploadedFile(fopen('php://temp', 'wb+'), 0, UPLOAD_ERR_OK, 'foobar.baz', $mediaType); - } - - public function testGetStreamReturnsOriginalStreamObject() - { - $stream = new Stream(fopen('php://temp', 'r')); - $upload = new UploadedFile($stream, 0, UPLOAD_ERR_OK); - - $this->assertSame($stream, $upload->getStream()); - } - - public function testGetStreamReturnsWrappedPhpStream() - { - $stream = fopen('php://temp', 'wb+'); - $upload = new UploadedFile($stream, 0, UPLOAD_ERR_OK); - $uploadStream = $upload->getStream()->detach(); - - $this->assertSame($stream, $uploadStream); - } - - public function testGetStreamReturnsStreamForFile() - { - $this->cleanup[] = $stream = tempnam(sys_get_temp_dir(), 'stream_file'); - $upload = new UploadedFile($stream, 0, UPLOAD_ERR_OK); - $uploadStream = $upload->getStream(); - $r = new ReflectionProperty($uploadStream, 'filename'); - $r->setAccessible(true); - - $this->assertSame($stream, $r->getValue($uploadStream)); - } - - public function testSuccessful() - { - $stream = \GuzzleHttp\Psr7\stream_for('Foo bar!'); - $upload = new UploadedFile($stream, $stream->getSize(), UPLOAD_ERR_OK, 'filename.txt', 'text/plain'); - - $this->assertEquals($stream->getSize(), $upload->getSize()); - $this->assertEquals('filename.txt', $upload->getClientFilename()); - $this->assertEquals('text/plain', $upload->getClientMediaType()); - - $this->cleanup[] = $to = tempnam(sys_get_temp_dir(), 'successful'); - $upload->moveTo($to); - $this->assertFileExists($to); - $this->assertEquals($stream->__toString(), file_get_contents($to)); - } - - public function invalidMovePaths() - { - return [ - 'null' => [null], - 'true' => [true], - 'false' => [false], - 'int' => [1], - 'float' => [1.1], - 'empty' => [''], - 'array' => [['filename']], - 'object' => [(object) ['filename']], - ]; - } - - /** - * @dataProvider invalidMovePaths - */ - public function testMoveRaisesExceptionForInvalidPath($path) - { - $stream = \GuzzleHttp\Psr7\stream_for('Foo bar!'); - $upload = new UploadedFile($stream, 0, UPLOAD_ERR_OK); - - $this->cleanup[] = $path; - - $this->setExpectedException('InvalidArgumentException', 'path'); - $upload->moveTo($path); - } - - public function testMoveCannotBeCalledMoreThanOnce() - { - $stream = \GuzzleHttp\Psr7\stream_for('Foo bar!'); - $upload = new UploadedFile($stream, 0, UPLOAD_ERR_OK); - - $this->cleanup[] = $to = tempnam(sys_get_temp_dir(), 'diac'); - $upload->moveTo($to); - $this->assertTrue(file_exists($to)); - - $this->setExpectedException('RuntimeException', 'moved'); - $upload->moveTo($to); - } - - public function testCannotRetrieveStreamAfterMove() - { - $stream = \GuzzleHttp\Psr7\stream_for('Foo bar!'); - $upload = new UploadedFile($stream, 0, UPLOAD_ERR_OK); - - $this->cleanup[] = $to = tempnam(sys_get_temp_dir(), 'diac'); - $upload->moveTo($to); - $this->assertFileExists($to); - - $this->setExpectedException('RuntimeException', 'moved'); - $upload->getStream(); - } - - public function nonOkErrorStatus() - { - return [ - 'UPLOAD_ERR_INI_SIZE' => [ UPLOAD_ERR_INI_SIZE ], - 'UPLOAD_ERR_FORM_SIZE' => [ UPLOAD_ERR_FORM_SIZE ], - 'UPLOAD_ERR_PARTIAL' => [ UPLOAD_ERR_PARTIAL ], - 'UPLOAD_ERR_NO_FILE' => [ UPLOAD_ERR_NO_FILE ], - 'UPLOAD_ERR_NO_TMP_DIR' => [ UPLOAD_ERR_NO_TMP_DIR ], - 'UPLOAD_ERR_CANT_WRITE' => [ UPLOAD_ERR_CANT_WRITE ], - 'UPLOAD_ERR_EXTENSION' => [ UPLOAD_ERR_EXTENSION ], - ]; - } - - /** - * @dataProvider nonOkErrorStatus - */ - public function testConstructorDoesNotRaiseExceptionForInvalidStreamWhenErrorStatusPresent($status) - { - $uploadedFile = new UploadedFile('not ok', 0, $status); - $this->assertSame($status, $uploadedFile->getError()); - } - - /** - * @dataProvider nonOkErrorStatus - */ - public function testMoveToRaisesExceptionWhenErrorStatusPresent($status) - { - $uploadedFile = new UploadedFile('not ok', 0, $status); - $this->setExpectedException('RuntimeException', 'upload error'); - $uploadedFile->moveTo(__DIR__ . '/' . uniqid()); - } - - /** - * @dataProvider nonOkErrorStatus - */ - public function testGetStreamRaisesExceptionWhenErrorStatusPresent($status) - { - $uploadedFile = new UploadedFile('not ok', 0, $status); - $this->setExpectedException('RuntimeException', 'upload error'); - $stream = $uploadedFile->getStream(); - } - - public function testMoveToCreatesStreamIfOnlyAFilenameWasProvided() - { - $this->cleanup[] = $from = tempnam(sys_get_temp_dir(), 'copy_from'); - $this->cleanup[] = $to = tempnam(sys_get_temp_dir(), 'copy_to'); - - copy(__FILE__, $from); - - $uploadedFile = new UploadedFile($from, 100, UPLOAD_ERR_OK, basename($from), 'text/plain'); - $uploadedFile->moveTo($to); - - $this->assertFileEquals(__FILE__, $to); - } -} diff --git a/server/vendor/guzzlehttp/psr7/tests/UriTest.php b/server/vendor/guzzlehttp/psr7/tests/UriTest.php deleted file mode 100644 index a29d9cc..0000000 --- a/server/vendor/guzzlehttp/psr7/tests/UriTest.php +++ /dev/null @@ -1,573 +0,0 @@ -<?php -namespace GuzzleHttp\Tests\Psr7; - -use GuzzleHttp\Psr7\Uri; - -/** - * @covers GuzzleHttp\Psr7\Uri - */ -class UriTest extends \PHPUnit_Framework_TestCase -{ - const RFC3986_BASE = 'http://a/b/c/d;p?q'; - - public function testParsesProvidedUri() - { - $uri = new Uri('https://user:pass@example.com:8080/path/123?q=abc#test'); - - $this->assertSame('https', $uri->getScheme()); - $this->assertSame('user:pass@example.com:8080', $uri->getAuthority()); - $this->assertSame('user:pass', $uri->getUserInfo()); - $this->assertSame('example.com', $uri->getHost()); - $this->assertSame(8080, $uri->getPort()); - $this->assertSame('/path/123', $uri->getPath()); - $this->assertSame('q=abc', $uri->getQuery()); - $this->assertSame('test', $uri->getFragment()); - $this->assertSame('https://user:pass@example.com:8080/path/123?q=abc#test', (string) $uri); - } - - public function testCanTransformAndRetrievePartsIndividually() - { - $uri = (new Uri()) - ->withScheme('https') - ->withUserInfo('user', 'pass') - ->withHost('example.com') - ->withPort(8080) - ->withPath('/path/123') - ->withQuery('q=abc') - ->withFragment('test'); - - $this->assertSame('https', $uri->getScheme()); - $this->assertSame('user:pass@example.com:8080', $uri->getAuthority()); - $this->assertSame('user:pass', $uri->getUserInfo()); - $this->assertSame('example.com', $uri->getHost()); - $this->assertSame(8080, $uri->getPort()); - $this->assertSame('/path/123', $uri->getPath()); - $this->assertSame('q=abc', $uri->getQuery()); - $this->assertSame('test', $uri->getFragment()); - $this->assertSame('https://user:pass@example.com:8080/path/123?q=abc#test', (string) $uri); - } - - /** - * @dataProvider getValidUris - */ - public function testValidUrisStayValid($input) - { - $uri = new Uri($input); - - $this->assertSame($input, (string) $uri); - } - - /** - * @dataProvider getValidUris - */ - public function testFromParts($input) - { - $uri = Uri::fromParts(parse_url($input)); - - $this->assertSame($input, (string) $uri); - } - - public function getValidUris() - { - return [ - ['urn:path-rootless'], - ['urn:path:with:colon'], - ['urn:/path-absolute'], - ['urn:/'], - // only scheme with empty path - ['urn:'], - // only path - ['/'], - ['relative/'], - ['0'], - // same document reference - [''], - // network path without scheme - ['//example.org'], - ['//example.org/'], - ['//example.org?q#h'], - // only query - ['?q'], - ['?q=abc&foo=bar'], - // only fragment - ['#fragment'], - // dot segments are not removed automatically - ['./foo/../bar'], - ]; - } - - /** - * @expectedException \InvalidArgumentException - * @expectedExceptionMessage Unable to parse URI - * @dataProvider getInvalidUris - */ - public function testInvalidUrisThrowException($invalidUri) - { - new Uri($invalidUri); - } - - public function getInvalidUris() - { - return [ - // parse_url() requires the host component which makes sense for http(s) - // but not when the scheme is not known or different. So '//' or '///' is - // currently invalid as well but should not according to RFC 3986. - ['http://'], - ['urn://host:with:colon'], // host cannot contain ":" - ]; - } - - /** - * @expectedException \InvalidArgumentException - * @expectedExceptionMessage Invalid port: 100000. Must be between 1 and 65535 - */ - public function testPortMustBeValid() - { - (new Uri())->withPort(100000); - } - - /** - * @expectedException \InvalidArgumentException - * @expectedExceptionMessage Invalid port: 0. Must be between 1 and 65535 - */ - public function testWithPortCannotBeZero() - { - (new Uri())->withPort(0); - } - - /** - * @expectedException \InvalidArgumentException - * @expectedExceptionMessage Unable to parse URI - */ - public function testParseUriPortCannotBeZero() - { - new Uri('//example.com:0'); - } - - /** - * @expectedException \InvalidArgumentException - */ - public function testSchemeMustHaveCorrectType() - { - (new Uri())->withScheme([]); - } - - /** - * @expectedException \InvalidArgumentException - */ - public function testHostMustHaveCorrectType() - { - (new Uri())->withHost([]); - } - - /** - * @expectedException \InvalidArgumentException - */ - public function testPathMustHaveCorrectType() - { - (new Uri())->withPath([]); - } - - /** - * @expectedException \InvalidArgumentException - */ - public function testQueryMustHaveCorrectType() - { - (new Uri())->withQuery([]); - } - - /** - * @expectedException \InvalidArgumentException - */ - public function testFragmentMustHaveCorrectType() - { - (new Uri())->withFragment([]); - } - - public function testCanParseFalseyUriParts() - { - $uri = new Uri('0://0:0@0/0?0#0'); - - $this->assertSame('0', $uri->getScheme()); - $this->assertSame('0:0@0', $uri->getAuthority()); - $this->assertSame('0:0', $uri->getUserInfo()); - $this->assertSame('0', $uri->getHost()); - $this->assertSame('/0', $uri->getPath()); - $this->assertSame('0', $uri->getQuery()); - $this->assertSame('0', $uri->getFragment()); - $this->assertSame('0://0:0@0/0?0#0', (string) $uri); - } - - public function testCanConstructFalseyUriParts() - { - $uri = (new Uri()) - ->withScheme('0') - ->withUserInfo('0', '0') - ->withHost('0') - ->withPath('/0') - ->withQuery('0') - ->withFragment('0'); - - $this->assertSame('0', $uri->getScheme()); - $this->assertSame('0:0@0', $uri->getAuthority()); - $this->assertSame('0:0', $uri->getUserInfo()); - $this->assertSame('0', $uri->getHost()); - $this->assertSame('/0', $uri->getPath()); - $this->assertSame('0', $uri->getQuery()); - $this->assertSame('0', $uri->getFragment()); - $this->assertSame('0://0:0@0/0?0#0', (string) $uri); - } - - /** - * @dataProvider getResolveTestCases - */ - public function testResolvesUris($base, $rel, $expected) - { - $uri = new Uri($base); - $actual = Uri::resolve($uri, $rel); - $this->assertSame($expected, (string) $actual); - } - - public function getResolveTestCases() - { - return [ - [self::RFC3986_BASE, 'g:h', 'g:h'], - [self::RFC3986_BASE, 'g', 'http://a/b/c/g'], - [self::RFC3986_BASE, './g', 'http://a/b/c/g'], - [self::RFC3986_BASE, 'g/', 'http://a/b/c/g/'], - [self::RFC3986_BASE, '/g', 'http://a/g'], - [self::RFC3986_BASE, '//g', 'http://g'], - [self::RFC3986_BASE, '?y', 'http://a/b/c/d;p?y'], - [self::RFC3986_BASE, 'g?y', 'http://a/b/c/g?y'], - [self::RFC3986_BASE, '#s', 'http://a/b/c/d;p?q#s'], - [self::RFC3986_BASE, 'g#s', 'http://a/b/c/g#s'], - [self::RFC3986_BASE, 'g?y#s', 'http://a/b/c/g?y#s'], - [self::RFC3986_BASE, ';x', 'http://a/b/c/;x'], - [self::RFC3986_BASE, 'g;x', 'http://a/b/c/g;x'], - [self::RFC3986_BASE, 'g;x?y#s', 'http://a/b/c/g;x?y#s'], - [self::RFC3986_BASE, '', self::RFC3986_BASE], - [self::RFC3986_BASE, '.', 'http://a/b/c/'], - [self::RFC3986_BASE, './', 'http://a/b/c/'], - [self::RFC3986_BASE, '..', 'http://a/b/'], - [self::RFC3986_BASE, '../', 'http://a/b/'], - [self::RFC3986_BASE, '../g', 'http://a/b/g'], - [self::RFC3986_BASE, '../..', 'http://a/'], - [self::RFC3986_BASE, '../../', 'http://a/'], - [self::RFC3986_BASE, '../../g', 'http://a/g'], - [self::RFC3986_BASE, '../../../g', 'http://a/g'], - [self::RFC3986_BASE, '../../../../g', 'http://a/g'], - [self::RFC3986_BASE, '/./g', 'http://a/g'], - [self::RFC3986_BASE, '/../g', 'http://a/g'], - [self::RFC3986_BASE, 'g.', 'http://a/b/c/g.'], - [self::RFC3986_BASE, '.g', 'http://a/b/c/.g'], - [self::RFC3986_BASE, 'g..', 'http://a/b/c/g..'], - [self::RFC3986_BASE, '..g', 'http://a/b/c/..g'], - [self::RFC3986_BASE, './../g', 'http://a/b/g'], - [self::RFC3986_BASE, 'foo////g', 'http://a/b/c/foo////g'], - [self::RFC3986_BASE, './g/.', 'http://a/b/c/g/'], - [self::RFC3986_BASE, 'g/./h', 'http://a/b/c/g/h'], - [self::RFC3986_BASE, 'g/../h', 'http://a/b/c/h'], - [self::RFC3986_BASE, 'g;x=1/./y', 'http://a/b/c/g;x=1/y'], - [self::RFC3986_BASE, 'g;x=1/../y', 'http://a/b/c/y'], - // dot-segments in the query or fragment - [self::RFC3986_BASE, 'g?y/./x', 'http://a/b/c/g?y/./x'], - [self::RFC3986_BASE, 'g?y/../x', 'http://a/b/c/g?y/../x'], - [self::RFC3986_BASE, 'g#s/./x', 'http://a/b/c/g#s/./x'], - [self::RFC3986_BASE, 'g#s/../x', 'http://a/b/c/g#s/../x'], - [self::RFC3986_BASE, 'g#s/../x', 'http://a/b/c/g#s/../x'], - [self::RFC3986_BASE, '?y#s', 'http://a/b/c/d;p?y#s'], - ['http://a/b/c/d;p?q#s', '?y', 'http://a/b/c/d;p?y'], - ['http://u@a/b/c/d;p?q', '.', 'http://u@a/b/c/'], - ['http://u:p@a/b/c/d;p?q', '.', 'http://u:p@a/b/c/'], - ['http://a/b/c/d/', 'e', 'http://a/b/c/d/e'], - ['urn:no-slash', 'e', 'urn:e'], - // falsey relative parts - [self::RFC3986_BASE, '//0', 'http://0'], - [self::RFC3986_BASE, '0', 'http://a/b/c/0'], - [self::RFC3986_BASE, '?0', 'http://a/b/c/d;p?0'], - [self::RFC3986_BASE, '#0', 'http://a/b/c/d;p?q#0'], - ]; - } - - public function testAddAndRemoveQueryValues() - { - $uri = new Uri(); - $uri = Uri::withQueryValue($uri, 'a', 'b'); - $uri = Uri::withQueryValue($uri, 'c', 'd'); - $uri = Uri::withQueryValue($uri, 'e', null); - $this->assertSame('a=b&c=d&e', $uri->getQuery()); - - $uri = Uri::withoutQueryValue($uri, 'c'); - $this->assertSame('a=b&e', $uri->getQuery()); - $uri = Uri::withoutQueryValue($uri, 'e'); - $this->assertSame('a=b', $uri->getQuery()); - $uri = Uri::withoutQueryValue($uri, 'a'); - $this->assertSame('', $uri->getQuery()); - } - - public function testWithQueryValueReplacesSameKeys() - { - $uri = new Uri(); - $uri = Uri::withQueryValue($uri, 'a', 'b'); - $uri = Uri::withQueryValue($uri, 'c', 'd'); - $uri = Uri::withQueryValue($uri, 'a', 'e'); - $this->assertSame('c=d&a=e', $uri->getQuery()); - } - - public function testWithoutQueryValueRemovesAllSameKeys() - { - $uri = (new Uri())->withQuery('a=b&c=d&a=e'); - $uri = Uri::withoutQueryValue($uri, 'a'); - $this->assertSame('c=d', $uri->getQuery()); - } - - public function testRemoveNonExistingQueryValue() - { - $uri = new Uri(); - $uri = Uri::withQueryValue($uri, 'a', 'b'); - $uri = Uri::withoutQueryValue($uri, 'c'); - $this->assertSame('a=b', $uri->getQuery()); - } - - public function testWithQueryValueHandlesEncoding() - { - $uri = new Uri(); - $uri = Uri::withQueryValue($uri, 'E=mc^2', 'ein&stein'); - $this->assertSame('E%3Dmc%5E2=ein%26stein', $uri->getQuery(), 'Decoded key/value get encoded'); - - $uri = new Uri(); - $uri = Uri::withQueryValue($uri, 'E%3Dmc%5e2', 'ein%26stein'); - $this->assertSame('E%3Dmc%5e2=ein%26stein', $uri->getQuery(), 'Encoded key/value do not get double-encoded'); - } - - public function testWithoutQueryValueHandlesEncoding() - { - // It also tests that the case of the percent-encoding does not matter, - // i.e. both lowercase "%3d" and uppercase "%5E" can be removed. - $uri = (new Uri())->withQuery('E%3dmc%5E2=einstein&foo=bar'); - $uri = Uri::withoutQueryValue($uri, 'E=mc^2'); - $this->assertSame('foo=bar', $uri->getQuery(), 'Handles key in decoded form'); - - $uri = (new Uri())->withQuery('E%3dmc%5E2=einstein&foo=bar'); - $uri = Uri::withoutQueryValue($uri, 'E%3Dmc%5e2'); - $this->assertSame('foo=bar', $uri->getQuery(), 'Handles key in encoded form'); - } - - public function testSchemeIsNormalizedToLowercase() - { - $uri = new Uri('HTTP://example.com'); - - $this->assertSame('http', $uri->getScheme()); - $this->assertSame('http://example.com', (string) $uri); - - $uri = (new Uri('//example.com'))->withScheme('HTTP'); - - $this->assertSame('http', $uri->getScheme()); - $this->assertSame('http://example.com', (string) $uri); - } - - public function testHostIsNormalizedToLowercase() - { - $uri = new Uri('//eXaMpLe.CoM'); - - $this->assertSame('example.com', $uri->getHost()); - $this->assertSame('//example.com', (string) $uri); - - $uri = (new Uri())->withHost('eXaMpLe.CoM'); - - $this->assertSame('example.com', $uri->getHost()); - $this->assertSame('//example.com', (string) $uri); - } - - public function testPortIsNullIfStandardPortForScheme() - { - // HTTPS standard port - $uri = new Uri('https://example.com:443'); - $this->assertNull($uri->getPort()); - $this->assertSame('example.com', $uri->getAuthority()); - - $uri = (new Uri('https://example.com'))->withPort(443); - $this->assertNull($uri->getPort()); - $this->assertSame('example.com', $uri->getAuthority()); - - // HTTP standard port - $uri = new Uri('http://example.com:80'); - $this->assertNull($uri->getPort()); - $this->assertSame('example.com', $uri->getAuthority()); - - $uri = (new Uri('http://example.com'))->withPort(80); - $this->assertNull($uri->getPort()); - $this->assertSame('example.com', $uri->getAuthority()); - } - - public function testPortIsReturnedIfSchemeUnknown() - { - $uri = (new Uri('//example.com'))->withPort(80); - - $this->assertSame(80, $uri->getPort()); - $this->assertSame('example.com:80', $uri->getAuthority()); - } - - public function testStandardPortIsNullIfSchemeChanges() - { - $uri = new Uri('http://example.com:443'); - $this->assertSame('http', $uri->getScheme()); - $this->assertSame(443, $uri->getPort()); - - $uri = $uri->withScheme('https'); - $this->assertNull($uri->getPort()); - } - - public function testPortPassedAsStringIsCastedToInt() - { - $uri = (new Uri('//example.com'))->withPort('8080'); - - $this->assertSame(8080, $uri->getPort(), 'Port is returned as integer'); - $this->assertSame('example.com:8080', $uri->getAuthority()); - } - - public function testPortCanBeRemoved() - { - $uri = (new Uri('http://example.com:8080'))->withPort(null); - - $this->assertNull($uri->getPort()); - $this->assertSame('http://example.com', (string) $uri); - } - - public function testAuthorityWithUserInfoButWithoutHost() - { - $uri = (new Uri())->withUserInfo('user', 'pass'); - - $this->assertSame('user:pass', $uri->getUserInfo()); - $this->assertSame('', $uri->getAuthority()); - } - - public function uriComponentsEncodingProvider() - { - $unreserved = 'a-zA-Z0-9.-_~!$&\'()*+,;=:@'; - - return [ - // Percent encode spaces - ['/pa th?q=va lue#frag ment', '/pa%20th', 'q=va%20lue', 'frag%20ment', '/pa%20th?q=va%20lue#frag%20ment'], - // Percent encode multibyte - ['/€?€#€', '/%E2%82%AC', '%E2%82%AC', '%E2%82%AC', '/%E2%82%AC?%E2%82%AC#%E2%82%AC'], - // Don't encode something that's already encoded - ['/pa%20th?q=va%20lue#frag%20ment', '/pa%20th', 'q=va%20lue', 'frag%20ment', '/pa%20th?q=va%20lue#frag%20ment'], - // Percent encode invalid percent encodings - ['/pa%2-th?q=va%2-lue#frag%2-ment', '/pa%252-th', 'q=va%252-lue', 'frag%252-ment', '/pa%252-th?q=va%252-lue#frag%252-ment'], - // Don't encode path segments - ['/pa/th//two?q=va/lue#frag/ment', '/pa/th//two', 'q=va/lue', 'frag/ment', '/pa/th//two?q=va/lue#frag/ment'], - // Don't encode unreserved chars or sub-delimiters - ["/$unreserved?$unreserved#$unreserved", "/$unreserved", $unreserved, $unreserved, "/$unreserved?$unreserved#$unreserved"], - // Encoded unreserved chars are not decoded - ['/p%61th?q=v%61lue#fr%61gment', '/p%61th', 'q=v%61lue', 'fr%61gment', '/p%61th?q=v%61lue#fr%61gment'], - ]; - } - - /** - * @dataProvider uriComponentsEncodingProvider - */ - public function testUriComponentsGetEncodedProperly($input, $path, $query, $fragment, $output) - { - $uri = new Uri($input); - $this->assertSame($path, $uri->getPath()); - $this->assertSame($query, $uri->getQuery()); - $this->assertSame($fragment, $uri->getFragment()); - $this->assertSame($output, (string) $uri); - } - - public function testWithPathEncodesProperly() - { - $uri = (new Uri())->withPath('/baz?#€/b%61r'); - // Query and fragment delimiters and multibyte chars are encoded. - $this->assertSame('/baz%3F%23%E2%82%AC/b%61r', $uri->getPath()); - $this->assertSame('/baz%3F%23%E2%82%AC/b%61r', (string) $uri); - } - - public function testWithQueryEncodesProperly() - { - $uri = (new Uri())->withQuery('?=#&€=/&b%61r'); - // A query starting with a "?" is valid and must not be magically removed. Otherwise it would be impossible to - // construct such an URI. Also the "?" and "/" does not need to be encoded in the query. - $this->assertSame('?=%23&%E2%82%AC=/&b%61r', $uri->getQuery()); - $this->assertSame('??=%23&%E2%82%AC=/&b%61r', (string) $uri); - } - - public function testWithFragmentEncodesProperly() - { - $uri = (new Uri())->withFragment('#€?/b%61r'); - // A fragment starting with a "#" is valid and must not be magically removed. Otherwise it would be impossible to - // construct such an URI. Also the "?" and "/" does not need to be encoded in the fragment. - $this->assertSame('%23%E2%82%AC?/b%61r', $uri->getFragment()); - $this->assertSame('#%23%E2%82%AC?/b%61r', (string) $uri); - } - - public function testAllowsForRelativeUri() - { - $uri = (new Uri)->withPath('foo'); - $this->assertSame('foo', $uri->getPath()); - $this->assertSame('foo', (string) $uri); - } - - public function testAddsSlashForRelativeUriStringWithHost() - { - // If the path is rootless and an authority is present, the path MUST - // be prefixed by "/". - $uri = (new Uri)->withPath('foo')->withHost('example.com'); - $this->assertSame('foo', $uri->getPath()); - // concatenating a relative path with a host doesn't work: "//example.comfoo" would be wrong - $this->assertSame('//example.com/foo', (string) $uri); - } - - public function testRemoveExtraSlashesWihoutHost() - { - // If the path is starting with more than one "/" and no authority is - // present, the starting slashes MUST be reduced to one. - $uri = (new Uri)->withPath('//foo'); - $this->assertSame('//foo', $uri->getPath()); - // URI "//foo" would be interpreted as network reference and thus change the original path to the host - $this->assertSame('/foo', (string) $uri); - } - - public function testDefaultReturnValuesOfGetters() - { - $uri = new Uri(); - - $this->assertSame('', $uri->getScheme()); - $this->assertSame('', $uri->getAuthority()); - $this->assertSame('', $uri->getUserInfo()); - $this->assertSame('', $uri->getHost()); - $this->assertNull($uri->getPort()); - $this->assertSame('', $uri->getPath()); - $this->assertSame('', $uri->getQuery()); - $this->assertSame('', $uri->getFragment()); - } - - public function testImmutability() - { - $uri = new Uri(); - - $this->assertNotSame($uri, $uri->withScheme('https')); - $this->assertNotSame($uri, $uri->withUserInfo('user', 'pass')); - $this->assertNotSame($uri, $uri->withHost('example.com')); - $this->assertNotSame($uri, $uri->withPort(8080)); - $this->assertNotSame($uri, $uri->withPath('/path/123')); - $this->assertNotSame($uri, $uri->withQuery('q=abc')); - $this->assertNotSame($uri, $uri->withFragment('test')); - } - - public function testExtendingClassesInstantiates() - { - // The non-standard port triggers a cascade of private methods which - // should not use late static binding to access private static members. - // If they do, this will fatal. - $this->assertInstanceOf( - '\GuzzleHttp\Tests\Psr7\ExtendingClassTest', - new ExtendingClassTest('http://h:9/') - ); - } -} - -class ExtendingClassTest extends \GuzzleHttp\Psr7\Uri -{ -} diff --git a/server/vendor/guzzlehttp/psr7/tests/bootstrap.php b/server/vendor/guzzlehttp/psr7/tests/bootstrap.php deleted file mode 100644 index 8601dd3..0000000 --- a/server/vendor/guzzlehttp/psr7/tests/bootstrap.php +++ /dev/null @@ -1,11 +0,0 @@ -<?php -namespace GuzzleHttp\Tests\Psr7; - -require __DIR__ . '/../vendor/autoload.php'; - -class HasToString -{ - public function __toString() { - return 'foo'; - } -} |