[ARVADOS] updated: 25708a232b618757d54d36e3fe545302cff9ca42

git at public.curoverse.com git at public.curoverse.com
Thu Oct 16 15:34:32 EDT 2014


Summary of changes:
 sdk/python/arvados/events.py        | 13 +++++++------
 sdk/python/tests/test_websockets.py | 14 ++++++++------
 2 files changed, 15 insertions(+), 12 deletions(-)

       via  25708a232b618757d54d36e3fe545302cff9ca42 (commit)
       via  0dab3a40d540b872ee689420d3fcfcebb760d15b (commit)
      from  d05825ffb039ddddfff00cf92837d0ca049ee364 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.


commit 25708a232b618757d54d36e3fe545302cff9ca42
Author: Peter Amstutz <peter.amstutz at curoverse.com>
Date:   Thu Oct 16 15:34:25 2014 -0400

    3609: Fix PollClient for case when there are no filters (get everything).

diff --git a/sdk/python/arvados/events.py b/sdk/python/arvados/events.py
index 77bc278..e6038fc 100644
--- a/sdk/python/arvados/events.py
+++ b/sdk/python/arvados/events.py
@@ -52,17 +52,18 @@ class PollClient(threading.Thread):
         if filters:
             self.filters = [filters]
         else:
-            self.filters = []
+            self.filters = [[]]
         self.on_event = on_event
         self.poll_time = poll_time
         self.stop = threading.Event()
 
     def run(self):
-        items = self.api.logs().list(limit=1, order="id desc", filters=self.filters[0]).execute()['items']
-        if len(items) > 0:
-            self.id = items[0]["id"]
-        else:
-            self.id = 0
+        self.id = 0
+        for f in self.filters:
+            items = self.api.logs().list(limit=1, order="id desc", filters=f).execute()['items']
+            if items:
+                if items[0]['id'] > self.id:
+                    self.id = items[0]['id']
 
         self.on_event({'status': 200})
 

commit 0dab3a40d540b872ee689420d3fcfcebb760d15b
Author: Peter Amstutz <peter.amstutz at curoverse.com>
Date:   Thu Oct 16 15:24:51 2014 -0400

    3609: Testing fixups.

diff --git a/sdk/python/tests/test_websockets.py b/sdk/python/tests/test_websockets.py
index 25d1d38..032ac51 100644
--- a/sdk/python/tests/test_websockets.py
+++ b/sdk/python/tests/test_websockets.py
@@ -18,6 +18,7 @@ class EventTestBase(object):
             self.fail()
 
     def runTest(self):
+        self.ws = None
         self.state = 1
         self.subscribed = threading.Event()
         self.done = threading.Event()
@@ -25,8 +26,7 @@ class EventTestBase(object):
         run_test_server.authorize_with("admin")
         api = arvados.api('v1', cache=False)
         self.ws = arvados.events.subscribe(arvados.api('v1', cache=False), [['object_uuid', 'is_a', 'arvados#human']], self.on_event, poll_fallback=2)
-        if not isinstance(self.ws, self.WS_TYPE):
-            self.fail()
+        self.assertIsInstance(self.ws, self.WS_TYPE)
         self.subscribed.wait(10)
         self.h = api.humans().create(body={}).execute()
         self.done.wait(10)
@@ -37,8 +37,9 @@ class WebsocketTest(run_test_server.TestCaseWithServers, EventTestBase):
     WS_TYPE = arvados.events.EventClient
 
     def tearDown(self):
-        self.ws.close()
-        super(run_test_server.TestCaseWithServers, self).tearDown()
+        if self.ws:
+            self.ws.close()
+        super(WebsocketTest, self).tearDown()
 
 
 class PollClientTest(run_test_server.TestCaseWithServers, EventTestBase):
@@ -46,5 +47,6 @@ class PollClientTest(run_test_server.TestCaseWithServers, EventTestBase):
     WS_TYPE = arvados.events.PollClient
 
     def tearDown(self):
-        self.ws.close()
-        super(run_test_server.TestCaseWithServers, self).tearDown()
+        if self.ws:
+            self.ws.close()
+        super(PollClientTest, self).tearDown()

-----------------------------------------------------------------------


hooks/post-receive
-- 




More information about the arvados-commits mailing list