From fc9401f04a3aca5abb22f87ebc210de8afe11d32 Mon Sep 17 00:00:00 2001
From: marvin-borner@live.com
Date: Tue, 10 Apr 2018 21:50:16 +0200
Subject: Initial Commit

---
 .../react/event-loop/tests/ExtLibeventLoopTest.php | 58 ++++++++++++++++++++++
 1 file changed, 58 insertions(+)
 create mode 100644 assets/php/vendor/react/event-loop/tests/ExtLibeventLoopTest.php

(limited to 'assets/php/vendor/react/event-loop/tests/ExtLibeventLoopTest.php')

diff --git a/assets/php/vendor/react/event-loop/tests/ExtLibeventLoopTest.php b/assets/php/vendor/react/event-loop/tests/ExtLibeventLoopTest.php
new file mode 100644
index 0000000..8497065
--- /dev/null
+++ b/assets/php/vendor/react/event-loop/tests/ExtLibeventLoopTest.php
@@ -0,0 +1,58 @@
+<?php
+
+namespace React\Tests\EventLoop;
+
+use React\EventLoop\ExtLibeventLoop;
+
+class ExtLibeventLoopTest extends AbstractLoopTest
+{
+    private $fifoPath;
+
+    public function createLoop()
+    {
+        if ('Linux' === PHP_OS && !extension_loaded('posix')) {
+            $this->markTestSkipped('libevent tests skipped on linux due to linux epoll issues.');
+        }
+
+        if (!function_exists('event_base_new')) {
+            $this->markTestSkipped('libevent tests skipped because ext-libevent is not installed.');
+        }
+
+        return new ExtLibeventLoop();
+    }
+
+    public function tearDown()
+    {
+        if (file_exists($this->fifoPath)) {
+            unlink($this->fifoPath);
+        }
+    }
+
+    public function createStream()
+    {
+        if ('Linux' !== PHP_OS) {
+            return parent::createStream();
+        }
+
+        $this->fifoPath = tempnam(sys_get_temp_dir(), 'react-');
+
+        unlink($this->fifoPath);
+
+        // Use a FIFO on linux to get around lack of support for disk-based file
+        // descriptors when using the EPOLL back-end.
+        posix_mkfifo($this->fifoPath, 0600);
+
+        $stream = fopen($this->fifoPath, 'r+');
+
+        return $stream;
+    }
+
+    public function writeToStream($stream, $content)
+    {
+        if ('Linux' !== PHP_OS) {
+            return parent::writeToStream($stream, $content);
+        }
+
+        fwrite($stream, $content);
+    }
+}
-- 
cgit v1.2.3