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); } public function testToStringDoesNotSeek() { $s = \GuzzleHttp\Psr7\stream_for('foo'); $s->seek(1); $wrapped = new NoSeekStream($s); $this->assertEquals('oo', (string) $wrapped); $wrapped->close(); } }