MCPcopy Create free account
hub / github.com/Hamlib/Hamlib / do_test_callback

Method do_test_callback

bindings/python/test_rig.py:116–191  ·  view source on GitHub ↗

Callback tests

(self, rig)

Source from the content-addressed store, hash-verified

114
115
116 def do_test_callback(self, rig):
117 """Callback tests"""
118
119 # Frequency event callback
120 def freq_callback(vfo, freq, arg):
121 assert (1, 144200000.5, 1234567890) == (vfo, freq, arg)
122
123 assert rig.set_freq_callback(freq_callback, 1234567890) is None
124 assert rig.set_freq(Hamlib.RIG_VFO_CURR, 144200000.5) is None
125 # TODO assert that freq_callback() is called once
126 assert rig.set_freq_callback(None) is None
127 assert rig.set_freq(Hamlib.RIG_VFO_CURR, 144210000) is None
128 # TODO assert that freq_callback() is called once
129
130 # Mode event callback
131 def mode_callback(vfo, mode, pbwidth, arg):
132 assert (1, 32, 5000, 2345678901) == (vfo, mode, pbwidth, arg)
133
134 # FIXME should use a Hamlib.RIG_PASSBAND_* constant but they aren't available in the bindings
135 RIG_PASSBAND_NOCHANGE = -1
136 assert rig.set_mode_callback(mode_callback, 2345678901) is None
137 assert rig.set_mode(Hamlib.RIG_MODE_FM, 5000) is None
138 # TODO assert that mode_callback() is called once
139 assert rig.set_mode_callback(None) is None
140 assert rig.set_mode(Hamlib.RIG_MODE_FM, 15000) is None
141 # TODO assert that mode_callback() is called once
142
143 # VFO event callback
144 def vfo_callback(vfo, arg):
145 assert (1, 3456789012) == (vfo, arg)
146
147 assert rig.set_vfo(Hamlib.RIG_VFO_B) is None
148 assert rig.set_vfo_callback(vfo_callback, 3456789012) is None
149 assert rig.set_vfo(Hamlib.RIG_VFO_A) is None
150 # TODO assert that vfo_callback() is called once
151 assert rig.set_vfo_callback(None) is None
152 assert rig.set_vfo(Hamlib.RIG_VFO_CURR) is None
153 # TODO assert that vfo_callback() is called once
154
155 # PTT event callback
156 def ptt_callback(vfo, ptt, arg):
157 assert (Hamlib.RIG_VFO_CURR, Hamlib.RIG_PTT_ON, 4567890123) == (vfo, ptt, arg)
158
159 assert rig.set_ptt_callback(ptt_callback, 4567890123) is None
160 assert rig.set_ptt(Hamlib.RIG_VFO_CURR, Hamlib.RIG_PTT_ON) is None
161 # TODO assert that ptt_callback() is called once
162 assert rig.set_ptt_callback(None) is None
163 assert rig.set_ptt(Hamlib.RIG_VFO_CURR, Hamlib.RIG_PTT_OFF) is None
164 # TODO assert that ptt_callback() is called once
165
166 # DCD event callback
167 def dcd_callback(vfo, ptt, arg):
168 print("dcd_callback", vfo, dcd, arg)
169 assert (1, 5000, 2345678901) == (vfo, arg)
170
171 assert rig.set_dcd_callback(dcd_callback, 5678901234) is None
172 # TODO simulate dcd events in dummy.c
173 assert rig.set_dcd_callback(None) is None

Callers 1

test_with_openMethod · 0.95

Calls

no outgoing calls

Tested by

no test coverage detected