public function testApiHandleMessage_PropagatesMessage_WhenReceivedEstablishedConnection()
{
$mssg = new NetworkMessage('Message');
$conn = $this->getMock(NetworkConnectionInterface::class, [], [], '', false);
$upgraded = $this->getMock(NetworkConnectionInterface::class, [], [], '', false);
$version = $this->getMock(Version::class, [], [], '', false);
$version->expects($this->once())->method('wsMessage')->with($upgraded, $mssg);
$conn->WebSocket = new StdClass();
$conn->WebSocket->closing = false;
$conn->WebSocket->established = true;
$conn->WebSocket->version = $version;
$aware = $this->createAware();
$component = $this->createComponent();
$server = $this->createServer($aware, $component, ['attemptUpgrade']);
$server->expects($this->never())->method('attemptUpgrade');
$storage = $this->getProtectedProperty($server, 'connCollection');
$storage->attach($conn, $upgraded);
$server->handleMessage($conn, $mssg);
}