diff --git a/src/ObservableTaskTableSlotStatusUpdateIteratorTest.php b/src/ObservableTaskTableSlotStatusUpdateIteratorTest.php
index 8720907f649b81acf12bc2b9d0bdaaed575b26df..cbbabe07f3ff28c682fa7c76708759f0ad74feb6 100644
--- a/src/ObservableTaskTableSlotStatusUpdateIteratorTest.php
+++ b/src/ObservableTaskTableSlotStatusUpdateIteratorTest.php
@@ -12,65 +12,63 @@ use Swoole\Event;
 /**
  * @internal
  */
-// #[CoversClass(ObservableTaskTableSlotStatusUpdateIterator::class)]
-// final class ObservableTaskTableSlotStatusUpdateIteratorTest extends TestCase
-// {
-//     private ?ObservableTaskConfiguration $observableTaskConfiguration = null;
-//     private ?ObservableTaskTable $observableTaskTable = null;
-
-//     protected function setUp(): void
-//     {
-//         $this->observableTaskConfiguration = new ObservableTaskConfiguration(
-//             maxTasks: 4,
-//             serializedStatusSize: 32768,
-//         );
-
-//         $this->observableTaskTable = new ObservableTaskTable(
-//             observableTaskConfiguration: $this->observableTaskConfiguration,
-//             serializer: new Vanilla(),
-//         );
-//     }
-
-//     protected function tearDown(): void
-//     {
-//         Event::wait();
-//     }
-
-//     public function test_channel_is_observed(): void
-//     {
-//         SwooleCoroutineHelper::mustRun(function () {
-//             $observableTask = new ObservableTask(static function () {
-//                 yield new ObservableTaskStatusUpdate(
-//                     ObservableTaskStatus::Running,
-//                     'test1',
-//                 );
-
-//                 yield new ObservableTaskStatusUpdate(
-//                     ObservableTaskStatus::Finished,
-//                     'test2',
-//                 );
-//             });
-
-//             SwooleCoroutineHelper::mustGo(function () {
-//                 self::assertNotNull($this->observableTaskTable);
-
-//                 $iterator = new ObservableTaskTableSlotStatusUpdateIterator($this->observableTaskTable);
-
-//                 foreach ($iterator as $statusUpdate) {
-//                     self::assertInstanceOf(ObservableTaskSlotStatusUpdate::class, $statusUpdate);
-//                     self::assertEquals('0', $statusUpdate->slotId);
-
-//                     if (ObservableTaskStatus::Finished === $statusUpdate->observableTaskStatusUpdate->status) {
-//                         self::assertEquals('test2', $statusUpdate->observableTaskStatusUpdate->data);
-
-//                         break;
-//                     }
-
-//                     self::assertEquals('test1', $statusUpdate->observableTaskStatusUpdate->data);
-//                 }
-//             });
-
-//             $this->observableTaskTable?->observe($observableTask);
-//         });
-//     }
-// }
+#[CoversClass(ObservableTaskTableSlotStatusUpdateIterator::class)]
+final class ObservableTaskTableSlotStatusUpdateIteratorTest extends TestCase
+{
+    private ?ObservableTaskConfiguration $observableTaskConfiguration = null;
+    private ?ObservableTaskTable $observableTaskTable = null;
+
+    protected function setUp(): void
+    {
+        $this->observableTaskConfiguration = new ObservableTaskConfiguration(
+            maxTasks: 4,
+            serializedStatusSize: 32768,
+        );
+
+        $this->observableTaskTable = new ObservableTaskTable(
+            observableTaskConfiguration: $this->observableTaskConfiguration,
+            serializer: new Vanilla(),
+        );
+    }
+
+    protected function tearDown(): void
+    {
+        Event::wait();
+    }
+
+    public function test_channel_is_observed(): void
+    {
+        $observableTask = new ObservableTask(static function () {
+            yield new ObservableTaskStatusUpdate(
+                ObservableTaskStatus::Running,
+                'test1',
+            );
+
+            yield new ObservableTaskStatusUpdate(
+                ObservableTaskStatus::Finished,
+                'test2',
+            );
+        });
+
+        SwooleCoroutineHelper::mustGo(function () {
+            self::assertNotNull($this->observableTaskTable);
+
+            $iterator = new ObservableTaskTableSlotStatusUpdateIterator($this->observableTaskTable);
+
+            foreach ($iterator as $statusUpdate) {
+                self::assertInstanceOf(ObservableTaskSlotStatusUpdate::class, $statusUpdate);
+                self::assertEquals('0', $statusUpdate->slotId);
+
+                if (ObservableTaskStatus::Finished === $statusUpdate->observableTaskStatusUpdate->status) {
+                    self::assertEquals('test2', $statusUpdate->observableTaskStatusUpdate->data);
+
+                    break;
+                }
+
+                self::assertEquals('test1', $statusUpdate->observableTaskStatusUpdate->data);
+            }
+        });
+
+        $this->observableTaskTable?->observe($observableTask);
+    }
+}
diff --git a/src/ObservableTaskTableTest.php b/src/ObservableTaskTableTest.php
index f93de8f0c12cd9fc72e7da238e30a292f252a833..118339c3a2644890447abb62591609f1d89d4c1e 100644
--- a/src/ObservableTaskTableTest.php
+++ b/src/ObservableTaskTableTest.php
@@ -39,51 +39,49 @@ final class ObservableTaskTableTest extends TestCase
         Event::wait();
     }
 
-    // public function test_channel_is_observed(): void
-    // {
-    //     SwooleCoroutineHelper::mustRun(function () {
-    //         $channel = new Channel();
-    //         $wg = new WaitGroup();
+    public function test_channel_is_observed(): void
+    {
+        $channel = new Channel();
+        $wg = new WaitGroup();
 
-    //         $this->observableTaskTable?->observableChannels->add($channel);
+        $this->observableTaskTable?->observableChannels->add($channel);
 
-    //         $observableTask = new ObservableTask(static function () {
-    //             yield new ObservableTaskStatusUpdate(
-    //                 ObservableTaskStatus::Running,
-    //                 'test1',
-    //             );
+        $observableTask = new ObservableTask(static function () {
+            yield new ObservableTaskStatusUpdate(
+                ObservableTaskStatus::Running,
+                'test1',
+            );
 
-    //             yield new ObservableTaskStatusUpdate(
-    //                 ObservableTaskStatus::Finished,
-    //                 'test2',
-    //             );
-    //         });
+            yield new ObservableTaskStatusUpdate(
+                ObservableTaskStatus::Finished,
+                'test2',
+            );
+        });
 
-    //         $wg->add();
+        $wg->add();
 
-    //         SwooleCoroutineHelper::mustGo(static function () use ($channel, $wg) {
-    //             Coroutine::defer(static function () use ($wg) {
-    //                 $wg->done();
-    //             });
+        SwooleCoroutineHelper::mustGo(static function () use ($channel, $wg) {
+            Coroutine::defer(static function () use ($wg) {
+                $wg->done();
+            });
 
-    //             $status1 = $channel->pop();
+            $status1 = $channel->pop();
 
-    //             self::assertInstanceOf(ObservableTaskSlotStatusUpdate::class, $status1);
-    //             self::assertSame(ObservableTaskStatus::Running, $status1->observableTaskStatusUpdate->status);
+            self::assertInstanceOf(ObservableTaskSlotStatusUpdate::class, $status1);
+            self::assertSame(ObservableTaskStatus::Running, $status1->observableTaskStatusUpdate->status);
 
-    //             $status2 = $channel->pop();
+            $status2 = $channel->pop();
 
-    //             self::assertInstanceOf(ObservableTaskSlotStatusUpdate::class, $status2);
-    //             self::assertSame(ObservableTaskStatus::Finished, $status2->observableTaskStatusUpdate->status);
-    //         });
+            self::assertInstanceOf(ObservableTaskSlotStatusUpdate::class, $status2);
+            self::assertSame(ObservableTaskStatus::Finished, $status2->observableTaskStatusUpdate->status);
+        });
 
-    //         $this->observableTaskTable?->observe($observableTask);
+        $this->observableTaskTable?->observe($observableTask);
 
-    //         $wg->wait();
+        $wg->wait();
 
-    //         $this->observableTaskTable?->observableChannels->remove($channel);
-    //     });
-    // }
+        $this->observableTaskTable?->observableChannels->remove($channel);
+    }
 
     public function test_task_is_observed(): void
     {
diff --git a/src/SwooleTimeoutTest.php b/src/SwooleTimeoutTest.php
index 20552722c459b1248b31cc3fe99c2675b9e2d8f6..f3fdd91458ea1d04fa05d425411ce855abe9eea8 100644
--- a/src/SwooleTimeoutTest.php
+++ b/src/SwooleTimeoutTest.php
@@ -11,45 +11,41 @@ use Swoole\Event;
 /**
  * @internal
  */
-// #[CoversClass(SwooleTimeout::class)]
-// #[CoversClass(SwooleTimeoutScheduled::class)]
-// #[CoversClass(SwooleTimeoutScheduler::class)]
-// final class SwooleTimeoutTest extends TestCase
-// {
-//     protected function tearDown(): void
-//     {
-//         Event::wait();
-//     }
-
-//     public function test_code_executes_after_timeout(): void
-//     {
-//         SwooleCoroutineHelper::mustRun(static function () {
-//             $before = microtime(true);
-
-//             $timeout = new SwooleTimeout(static function () use ($before) {
-//                 $after = microtime(true);
-
-//                 self::assertGreaterThan(0.03, $after - $before);
-//                 self::assertLessThan(0.035, $after - $before);
-//             });
-
-//             $timeout->setTimeout(0.03);
-//         });
-//     }
-
-//     public function test_task_is_rescheduled(): void
-//     {
-//         SwooleCoroutineHelper::mustRun(static function () {
-//             $before = microtime(true);
-
-//             $timeout = new SwooleTimeout(static function () use ($before) {
-//                 $after = microtime(true);
-
-//                 self::assertGreaterThan(0.03, $after - $before);
-//                 self::assertLessThan(0.035, $after - $before);
-//             });
-
-//             $timeout->setTimeout(0.02)->reschedule(0.03);
-//         });
-//     }
-// }
+#[CoversClass(SwooleTimeout::class)]
+#[CoversClass(SwooleTimeoutScheduled::class)]
+#[CoversClass(SwooleTimeoutScheduler::class)]
+final class SwooleTimeoutTest extends TestCase
+{
+    protected function tearDown(): void
+    {
+        Event::wait();
+    }
+
+    public function test_code_executes_after_timeout(): void
+    {
+        $before = microtime(true);
+
+        $timeout = new SwooleTimeout(static function () use ($before) {
+            $after = microtime(true);
+
+            self::assertGreaterThan(0.03, $after - $before);
+            self::assertLessThan(0.035, $after - $before);
+        });
+
+        $timeout->setTimeout(0.03);
+    }
+
+    public function test_task_is_rescheduled(): void
+    {
+        $before = microtime(true);
+
+        $timeout = new SwooleTimeout(static function () use ($before) {
+            $after = microtime(true);
+
+            self::assertGreaterThan(0.03, $after - $before);
+            self::assertLessThan(0.035, $after - $before);
+        });
+
+        $timeout->setTimeout(0.02)->reschedule(0.03);
+    }
+}