fetched mlz version
- before some chamges in the gerrit pipline Change-Id: I33eb2d75f83345a7039d0fb709e66defefb1c3e0
This commit is contained in:
@ -21,9 +21,10 @@
|
||||
# *****************************************************************************
|
||||
|
||||
|
||||
from secop.rwhandler import ReadHandler, WriteHandler, \
|
||||
from frappy.rwhandler import ReadHandler, WriteHandler, \
|
||||
CommonReadHandler, CommonWriteHandler, nopoll
|
||||
from secop.core import Module, Parameter, FloatRange, Done
|
||||
from frappy.core import Module, Parameter, FloatRange
|
||||
from frappy.lib import generalConfig
|
||||
|
||||
|
||||
class DispatcherStub:
|
||||
@ -31,9 +32,9 @@ class DispatcherStub:
|
||||
# initial value from the timestamp. However, in the test below
|
||||
# the second update happens after the updates dict is cleared
|
||||
# -> we have to inhibit the 'omit unchanged update' feature
|
||||
omit_unchanged_within = 0
|
||||
|
||||
def __init__(self, updates):
|
||||
generalConfig.testinit(omit_unchanged_within=0)
|
||||
self.updates = updates
|
||||
|
||||
def announce_update(self, modulename, pname, pobj):
|
||||
@ -62,6 +63,7 @@ class ServerStub:
|
||||
class ModuleTest(Module):
|
||||
def __init__(self, updates=None, **opts):
|
||||
opts['description'] = ''
|
||||
opts = {p: {'value': val} for p, val in opts.items()}
|
||||
super().__init__('mod', logger, opts, ServerStub(updates or {}))
|
||||
|
||||
|
||||
@ -83,10 +85,9 @@ def test_handler():
|
||||
data.append(pname)
|
||||
return value
|
||||
|
||||
assert Mod.read_a.poll is True
|
||||
assert Mod.read_b.poll is True
|
||||
|
||||
m = Mod()
|
||||
assert m.read_a.poll is True
|
||||
assert m.read_b.poll is True
|
||||
|
||||
data.append(1.2)
|
||||
assert m.read_a() == 1.2
|
||||
@ -104,11 +105,11 @@ def test_handler():
|
||||
assert m.b == 7
|
||||
assert data.pop() == 'b'
|
||||
|
||||
data.append(Done)
|
||||
data.append(m.b)
|
||||
assert m.read_b() == 7
|
||||
assert data.pop() == 'b'
|
||||
|
||||
assert data == []
|
||||
assert not data
|
||||
|
||||
|
||||
def test_common_handler():
|
||||
@ -129,15 +130,16 @@ def test_common_handler():
|
||||
self.b = values['b']
|
||||
data.append('write_hdl')
|
||||
|
||||
assert set([Mod.read_a.poll, Mod.read_b.poll]) == {True, False}
|
||||
|
||||
m = Mod(a=1, b=2)
|
||||
assert set([m.read_a.poll, m.read_b.poll]) == {True, False}
|
||||
|
||||
assert m.writeDict == {'a': 1, 'b': 2}
|
||||
m.write_a(3)
|
||||
assert m.a == 3
|
||||
assert m.b == 2
|
||||
assert data.pop() == 'write_hdl'
|
||||
assert m.writeDict == {}
|
||||
assert not m.writeDict
|
||||
|
||||
m.write_b(4)
|
||||
assert m.a == 3
|
||||
@ -159,7 +161,7 @@ def test_common_handler():
|
||||
assert m.b == 2.2
|
||||
assert data.pop() == 'read_hdl'
|
||||
|
||||
assert data == []
|
||||
assert not data
|
||||
|
||||
|
||||
def test_nopoll():
|
||||
@ -171,8 +173,10 @@ def test_nopoll():
|
||||
def read_hdl(self):
|
||||
pass
|
||||
|
||||
assert Mod1.read_a.poll is True
|
||||
assert Mod1.read_b.poll is True
|
||||
m = Mod1()
|
||||
print(m, m.read_a)
|
||||
assert m.read_a.poll is True
|
||||
assert m.read_b.poll is True
|
||||
|
||||
class Mod2(ModuleTest):
|
||||
a = Parameter('', FloatRange(), readonly=False)
|
||||
@ -182,8 +186,9 @@ def test_nopoll():
|
||||
def read_hdl(self):
|
||||
pass
|
||||
|
||||
assert Mod2.read_a.poll is True
|
||||
assert Mod2.read_b.poll is False
|
||||
m = Mod2()
|
||||
assert m.read_a.poll is True
|
||||
assert m.read_b.poll is False
|
||||
|
||||
class Mod3(ModuleTest):
|
||||
a = Parameter('', FloatRange(), readonly=False)
|
||||
@ -194,8 +199,9 @@ def test_nopoll():
|
||||
def read_hdl(self):
|
||||
pass
|
||||
|
||||
assert Mod3.read_a.poll is False
|
||||
assert Mod3.read_b.poll is False
|
||||
m = Mod3()
|
||||
assert m.read_a.poll is False
|
||||
assert m.read_b.poll is False
|
||||
|
||||
class Mod4(ModuleTest):
|
||||
a = Parameter('', FloatRange(), readonly=False)
|
||||
@ -206,8 +212,9 @@ def test_nopoll():
|
||||
def read_hdl(self):
|
||||
pass
|
||||
|
||||
assert Mod4.read_a.poll is False
|
||||
assert Mod4.read_b.poll is False
|
||||
m = Mod4()
|
||||
assert m.read_a.poll is False
|
||||
assert m.read_b.poll is False
|
||||
|
||||
class Mod5(ModuleTest):
|
||||
a = Parameter('', FloatRange(), readonly=False)
|
||||
@ -218,8 +225,9 @@ def test_nopoll():
|
||||
def read_hdl(self):
|
||||
pass
|
||||
|
||||
assert Mod5.read_a.poll is False
|
||||
assert Mod5.read_b.poll is False
|
||||
m = Mod5()
|
||||
assert m.read_a.poll is False
|
||||
assert m.read_b.poll is False
|
||||
|
||||
class Mod6(ModuleTest):
|
||||
a = Parameter('', FloatRange(), readonly=False)
|
||||
@ -230,5 +238,6 @@ def test_nopoll():
|
||||
def read_hdl(self):
|
||||
pass
|
||||
|
||||
assert Mod6.read_a.poll is False
|
||||
assert Mod6.read_b.poll is False
|
||||
m = Mod6()
|
||||
assert m.read_a.poll is False
|
||||
assert m.read_b.poll is False
|
||||
|
Reference in New Issue
Block a user