diff options
author | Aleksey Lim <alsroot@sugarlabs.org> | 2014-02-04 12:19:15 (GMT) |
---|---|---|
committer | Aleksey Lim <alsroot@sugarlabs.org> | 2014-02-18 21:20:34 (GMT) |
commit | 6447b7951a66021f288f5b2b0c8cc301257d36ee (patch) | |
tree | 2c7d269a0dba29a6466996889a1c9980971a0e06 /tests/units/toolkit/coroutine.py | |
parent | b68085299cee6e5488e8301042cde13d040494ca (diff) |
Polish design
The major points:
* minimize number of resource types
* use aggregated properties instead of resources
* separate blob storage from resources db
Diffstat (limited to 'tests/units/toolkit/coroutine.py')
-rwxr-xr-x | tests/units/toolkit/coroutine.py | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/tests/units/toolkit/coroutine.py b/tests/units/toolkit/coroutine.py new file mode 100755 index 0000000..95738d0 --- /dev/null +++ b/tests/units/toolkit/coroutine.py @@ -0,0 +1,31 @@ +#!/usr/bin/env python +# sugar-lint: disable + +from __init__ import tests + +from sugar_network.toolkit.coroutine import Spooler, spawn, sleep + + +class CoroutineTest(tests.Test): + + def test_Spooler_ContinuousFeeding(self): + spooler = Spooler() + events = [] + + def consumer(num): + while True: + events[num].append(spooler.wait()) + + for i in range(10): + events.append([]) + spawn(consumer, i) + sleep(.1) + + for i in range(10): + spooler.notify_all(i) + sleep(.1) + self.assertEqual([range(10)] * 10, events) + + +if __name__ == '__main__': + tests.main() |