public function testPushPopPerformance($delay)
{
exec('sysctl kernel.msgmnb 2> /dev/null', $output);
if (!$output) {
$this->markTestSkipped('Unable to determine the maximum size of the System V queue.');
}
$maxSizeInBytes = (int) str_replace('kernel.msgmnb = ', '', $output[0]);
$queueSize = static::getPerformanceQueueSize();
$itemLength = static::getPerformanceItemLength();
if ($itemLength * $queueSize > $maxSizeInBytes) {
$this->markTestSkipped(sprintf('The System V queue size is too small (%d bytes) to run this test. ' . 'Try to decrease the "PHIVE_PERF_QUEUE_SIZE" environment variable to %d.', $maxSizeInBytes, floor($maxSizeInBytes / $itemLength)));
}
self::baseTestPushPopPerformance($delay);
}