summaryrefslogtreecommitdiff
path: root/crocoite/test_browser.py
diff options
context:
space:
mode:
Diffstat (limited to 'crocoite/test_browser.py')
-rw-r--r--crocoite/test_browser.py25
1 files changed, 24 insertions, 1 deletions
diff --git a/crocoite/test_browser.py b/crocoite/test_browser.py
index 8adf0cd..06492b1 100644
--- a/crocoite/test_browser.py
+++ b/crocoite/test_browser.py
@@ -24,7 +24,7 @@ from operator import itemgetter
from aiohttp import web
from http.server import BaseHTTPRequestHandler
-from .browser import Item, SiteLoader
+from .browser import Item, SiteLoader, VarChangeEvent
from .logger import Logger, Consumer
from .devtools import Crashed, Process
@@ -266,3 +266,26 @@ async def test_invalidurl (loader):
assert it.failed
break
+@pytest.mark.asyncio
+async def test_varchangeevent ():
+ e = VarChangeEvent (True)
+ assert e.get () == True
+
+ # no change at all
+ w = asyncio.ensure_future (e.wait ())
+ finished, pending = await asyncio.wait ([w], timeout=0.1)
+ assert not finished and pending
+
+ # no change
+ e.set (True)
+ finished, pending = await asyncio.wait ([w], timeout=0.1)
+ assert not finished and pending
+
+ # changed
+ e.set (False)
+ await asyncio.sleep (0.1) # XXX: is there a yield() ?
+ assert w.done ()
+ ret = w.result ()
+ assert ret == False
+ assert e.get () == ret
+