/** * @param int $controlByte * * @dataProvider providerControlByte * * @return void */ public function testControlByteException($controlByte) { $stream = fopen('php://temp', 'r+b'); fwrite($stream, chr($controlByte)); rewind($stream); $trans = new T\Stream($stream); try { Communicator::decodeLength($trans); } catch (NotSupportedException $e) { $this->assertEquals(NotSupportedException::CODE_CONTROL_BYTE, $e->getCode(), 'Improper exception code.'); $this->assertEquals($controlByte, $e->getValue(), 'Improper exception value.'); } }