/**
  * @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.');
     }
 }