summaryrefslogtreecommitdiffstats
path: root/lab_control/test/frequency_response_measurement_test.py
diff options
context:
space:
mode:
Diffstat (limited to 'lab_control/test/frequency_response_measurement_test.py')
-rw-r--r--lab_control/test/frequency_response_measurement_test.py25
1 files changed, 18 insertions, 7 deletions
diff --git a/lab_control/test/frequency_response_measurement_test.py b/lab_control/test/frequency_response_measurement_test.py
index caea62a..5a73b3e 100644
--- a/lab_control/test/frequency_response_measurement_test.py
+++ b/lab_control/test/frequency_response_measurement_test.py
@@ -11,6 +11,13 @@ def mockLab():
def uut(mockLab):
return FrequencyResponseMeasurement()
+def test_frequencyResponseDefaults(uut):
+ assert uut.minFrequency == 20e0
+ assert uut.maxFrequency == 16e3
+ assert uut.steps == 50
+ assert uut.functionGeneratorChannel == 1
+ assert uut.oscilloscopeChannel == 1
+
def test_frequencyResponseRamp(mockLab, uut):
uut.minFrequency = 100.0
uut.maxFrequency = 200.0
@@ -18,18 +25,22 @@ def test_frequencyResponseRamp(mockLab, uut):
uut.functionGeneratorChannel = 1
uut.oscilloscopeChannel = 1
- # Expect a ramp response from 0 to 2 V
- minAmplitude = 0.0
- maxAmplitude = 2.0
+ # Expect a ramp response from 0.5 to 1.5 * input amplitude
+ inputAmplitude = 1.0
+ minScale = 0.5
+ maxScale = 1.5
- def amplitudeFunction(f: float) -> float:
+ def testFunction(f: float) -> float:
assert f >= uut.minFrequency and f <= uut.maxFrequency
frequencyPu = (f - uut.minFrequency) / (uut.maxFrequency - uut.minFrequency)
- return minAmplitude + maxAmplitude * frequencyPu
+ return minScale + maxScale * frequencyPu
mockLab.connectChannels(uut.functionGeneratorChannel, uut.oscilloscopeChannel)
- mockLab.setAmplitudeFunction(uut.oscilloscopeChannel, amplitudeFunction)
- expectedData = [(f, amplitudeFunction(f)) for f in [100.0, 110.0, 120.0, 130.0, 140.0, 150.0, 160.0, 170.0, 180.0, 190.0, 200.0]]
+ mockLab.setTestFunction(uut.oscilloscopeChannel, testFunction)
+ mockLab.setAmplitude(uut.functionGeneratorChannel, inputAmplitude)
+ mockLab.setOn(uut.functionGeneratorChannel)
+
+ expectedData = [(f, testFunction(f) * inputAmplitude) for f in [100.0, 110.0, 120.0, 130.0, 140.0, 150.0, 160.0, 170.0, 180.0, 190.0, 200.0]]
assert not uut.measurementDone
assert uut.data == None