added tests
This commit is contained in:
parent
882a515caa
commit
9e7b8a6b28
|
@ -0,0 +1,64 @@
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
import unittest
|
||||||
|
import time
|
||||||
|
from media.saas.thread import InstanceThread, InstanceInheritingThread
|
||||||
|
|
||||||
|
# ugly but necessary for 2.7
|
||||||
|
signal = False
|
||||||
|
signal2 = False
|
||||||
|
|
||||||
|
class TestInstanceThread(unittest.TestCase):
|
||||||
|
def test_user_inject(self):
|
||||||
|
global signal
|
||||||
|
signal = False
|
||||||
|
u = "rudi"
|
||||||
|
class T(InstanceThread):
|
||||||
|
def run(me):
|
||||||
|
global signal
|
||||||
|
super(T, me).run()
|
||||||
|
signal = True
|
||||||
|
self.assertEquals(u, me.user())
|
||||||
|
t = T(u, name="test_user_inject")
|
||||||
|
t.daemon = True
|
||||||
|
t.start()
|
||||||
|
time.sleep(0.2)
|
||||||
|
self.assertTrue(signal)
|
||||||
|
|
||||||
|
def test_inheriting_thread(utest):
|
||||||
|
global signal2
|
||||||
|
u = "testing..."
|
||||||
|
|
||||||
|
class TT(InstanceInheritingThread):
|
||||||
|
def run(self):
|
||||||
|
global signal2
|
||||||
|
utest.assertEquals(self.user(), u)
|
||||||
|
signal2 = True
|
||||||
|
|
||||||
|
class T(InstanceThread):
|
||||||
|
def run(self):
|
||||||
|
super(T, self).run()
|
||||||
|
child_thread = TT(name="child thread")
|
||||||
|
child_thread.daemon = True
|
||||||
|
child_thread.start()
|
||||||
|
|
||||||
|
parent_thread = T(u, name="Parent instance thread")
|
||||||
|
parent_thread.daemon = True
|
||||||
|
parent_thread.start()
|
||||||
|
|
||||||
|
time.sleep(0.2)
|
||||||
|
utest.assertTrue(signal2)
|
||||||
|
|
||||||
|
def test_different_user(utest):
|
||||||
|
u1, u2 = "ru", "di"
|
||||||
|
class T(InstanceThread):
|
||||||
|
def run(self):
|
||||||
|
super(T, self).run()
|
||||||
|
|
||||||
|
for u in [u1, u2]:
|
||||||
|
t = T(u)
|
||||||
|
t.daemon = True
|
||||||
|
t.start()
|
||||||
|
utest.assertEquals(t.user(), u)
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__': unittest.main()
|
Loading…
Reference in New Issue