diff --git a/src/ObservableTaskTableSlotStatusUpdateIteratorTest.php b/src/ObservableTaskTableSlotStatusUpdateIteratorTest.php
index d094f412be2ceb91c180d5f0e84d74588b685dd2..cbbabe07f3ff28c682fa7c76708759f0ad74feb6 100644
--- a/src/ObservableTaskTableSlotStatusUpdateIteratorTest.php
+++ b/src/ObservableTaskTableSlotStatusUpdateIteratorTest.php
@@ -12,63 +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
-//     {
-//         $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 ce2c564d92914072c52a3b98846ffeb0d7615e99..118339c3a2644890447abb62591609f1d89d4c1e 100644
--- a/src/ObservableTaskTableTest.php
+++ b/src/ObservableTaskTableTest.php
@@ -15,93 +15,93 @@ use Swoole\Event;
 /**
  * @internal
  */
-// #[CoversClass(ObservableTaskTable::class)]
-// final class ObservableTaskTableTest extends TestCase
-// {
-//     private ?ObservableTaskConfiguration $observableTaskConfiguration = null;
-//     private ?ObservableTaskTable $observableTaskTable = null;
+#[CoversClass(ObservableTaskTable::class)]
+final class ObservableTaskTableTest extends TestCase
+{
+    private ?ObservableTaskConfiguration $observableTaskConfiguration = null;
+    private ?ObservableTaskTable $observableTaskTable = null;
 
-//     protected function setUp(): void
-//     {
-//         $this->observableTaskConfiguration = new ObservableTaskConfiguration(
-//             maxTasks: 4,
-//             serializedStatusSize: 32768,
-//         );
+    protected function setUp(): void
+    {
+        $this->observableTaskConfiguration = new ObservableTaskConfiguration(
+            maxTasks: 4,
+            serializedStatusSize: 32768,
+        );
 
-//         $this->observableTaskTable = new ObservableTaskTable(
-//             observableTaskConfiguration: $this->observableTaskConfiguration,
-//             serializer: new Vanilla(),
-//         );
-//     }
+        $this->observableTaskTable = new ObservableTaskTable(
+            observableTaskConfiguration: $this->observableTaskConfiguration,
+            serializer: new Vanilla(),
+        );
+    }
 
-//     protected function tearDown(): void
-//     {
-//         Event::wait();
-//     }
+    protected function tearDown(): void
+    {
+        Event::wait();
+    }
 
-//     public function test_channel_is_observed(): void
-//     {
-//         $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
-//     {
-//         $observableTask = new ObservableTask(static function () {
-//             yield new ObservableTaskStatusUpdate(
-//                 ObservableTaskStatus::Running,
-//                 'test',
-//             );
-//         });
+    public function test_task_is_observed(): void
+    {
+        $observableTask = new ObservableTask(static function () {
+            yield new ObservableTaskStatusUpdate(
+                ObservableTaskStatus::Running,
+                'test',
+            );
+        });
 
-//         self::assertNull($this->observableTaskTable?->getStatus('0'));
+        self::assertNull($this->observableTaskTable?->getStatus('0'));
 
-//         $slotId = $this->observableTaskTable?->observe($observableTask);
+        $slotId = $this->observableTaskTable?->observe($observableTask);
 
-//         self::assertSame('0', $slotId);
+        self::assertSame('0', $slotId);
 
-//         $status = $this->observableTaskTable?->getStatus($slotId);
+        $status = $this->observableTaskTable?->getStatus($slotId);
 
-//         self::assertInstanceOf(ObservableTaskStatusUpdate::class, $status);
-//         self::assertSame(ObservableTaskStatus::Running, $status->status);
-//         self::assertSame('test', $status->data);
-//     }
-// }
+        self::assertInstanceOf(ObservableTaskStatusUpdate::class, $status);
+        self::assertSame(ObservableTaskStatus::Running, $status->status);
+        self::assertSame('test', $status->data);
+    }
+}