Refactor watchers
[pti/o2.git] / tests / unit / test_watcher.py
index 76f5d78..b0aded4 100644 (file)
@@ -21,12 +21,13 @@ from o2ims.service.client.base_client import BaseClient
 from o2ims.domain import ocloud\r
 from o2ims import config\r
 import uuid\r
-from o2ims.service.watcher.base import BaseWatcher, OcloudWatcher\r
+from o2ims.service.watcher.base import BaseWatcher, WatcherTree\r
 from o2ims.domain import stx_object as ocloudModel\r
 from o2ims.adapter.ocloud_repository import OcloudRepository\r
 from o2ims.domain.stx_repo import StxObjectRepository\r
 from o2ims.service.watcher import worker\r
 from o2ims.service.unit_of_work import AbstractUnitOfWork\r
+from o2ims.service.watcher.ocloud_watcher import OcloudWatcher\r
 \r
 \r
 class FakeOcloudClient(BaseClient):\r
@@ -132,7 +133,7 @@ def test_watchers_worker():
     class FakeOCloudWatcher(BaseWatcher):\r
         def __init__(self, client: BaseClient,\r
                      repo: OcloudRepository) -> None:\r
-            super().__init__(client)\r
+            super().__init__(client, None)\r
             self.fakeOcloudWatcherCounter = 0\r
             self._client = client\r
             self._repo = repo\r
@@ -140,11 +141,13 @@ def test_watchers_worker():
         def _targetname(self):\r
             return "fakeocloudwatcher"\r
 \r
-        def _probe(self):\r
+        def _probe(self, parent: object=None):\r
+            # import pdb; pdb.set_trace()\r
             self.fakeOcloudWatcherCounter += 1\r
             # hacking to stop the blocking sched task\r
             if self.fakeOcloudWatcherCounter > 2:\r
                 testedworker.stop()\r
+            return []\r
 \r
 \r
     # fakeRepo = FakeOcloudRepo()\r
@@ -153,8 +156,10 @@ def test_watchers_worker():
     fakeClient = FakeOcloudClient()\r
     fakewatcher = FakeOCloudWatcher(fakeClient, fakeuow)\r
 \r
+    root = WatcherTree(fakewatcher)\r
+\r
     testedworker.set_interval(1)\r
-    testedworker.add_watcher(fakewatcher)\r
+    testedworker.add_watcher(root)\r
     assert fakewatcher.fakeOcloudWatcherCounter == 0\r
 \r
     count1 = fakewatcher.fakeOcloudWatcherCounter\r