27 lines
		
	
	
		
			916 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			916 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?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'));
 | |
|     }
 | |
| }
 | 
