[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