Example #1
0
def test__on_voltage_change(voltage, sensor_controller):
    config.sensor_voltage_range = data.ValueRange(min_=1, max_=10, tolerance=1)
    config.sensor_concentration_range = data.ValueRange(min_=10,
                                                        max_=100,
                                                        tolerance=10)
    sensor_controller._on_state_change = mock.Mock()
    sensor_controller._on_voltage_change(1, voltage)

    sensor_controller._on_state_change.assert_called()
Example #2
0
def test_value_range_ok(values):
    vr = data.ValueRange(min_=values[0], max_=values[1],
                             abs_min=values[2], abs_max=values[3],
                             tolerance=values[4])

    assert not values[2] or vr.abs_min == max(values[0], values[2])
    assert not values[3] or vr.abs_max == min(values[1], values[3])
Example #3
0
File: config.py Project: mr-pf/co2
# config.py

from common import data

# General
debug = False
no_tinkerforge_retry_attempts = 10

# CO2 Controller
concentration_absolute_scale = False
concentration_range = data.ValueRange(min_=0, max_=600, tolerance=5,
                                      abs_min=0, step=5, unit='ppm')
concentration_not_in_range_timeout = 1200           # s
concentration_unstable_timeout = 600               # s
concentration_unstable_recheck_interval = 1        # s
concentration_react_time = 60                      # s

# Air flow
airflow_flow_range = data.ValueRange(min_=0, max_=10, tolerance=0.2,
                                     step=0.1, unit='l/min')
airflow_voltage_range = data.ValueRange(min_=991, max_=4970, tolerance=200,
                                        unit='mV')
# CO2 flow
co2flow_flow_range = data.ValueRange(min_=0, max_=0.006, tolerance=0.00012,
                                     step=0.0001, unit='l/min')
co2flow_wait_for_error_time = 0.2           # s
co2flow_setpoint_range = data.ValueRange(min_=0, max_=32000, tolerance=640)
co2flow_state_check_interval: float = 2     # s

# Sensor
sensor_sampling_period: float = 60          # s
Example #4
0
def test_value_range_convert_from_range_trim(values):
    vr_1 = data.ValueRange(min_=2, max_=10, tolerance=2, abs_min=1, abs_max=11)
    vr_2 = data.ValueRange(min_=20, max_=100, tolerance=10)
    assert values[1] == vr_1.convert_from_range(values[0], vr_2, trim=True)
Example #5
0
def test_value_range_convert_from_range(value):
    vr_1 = data.ValueRange(min_=2, max_=10, tolerance=2)
    vr_2 = data.ValueRange(min_=20, max_=100, tolerance=10)
    assert value / 10 == vr_1.convert_from_range(value, vr_2)
Example #6
0
def test_value_range_in_tolerance_limits(values):
    vr = data.ValueRange(min_=0, max_=10, tolerance=1)
    assert vr.in_tolerance_limits(values[0], values[1]) == values[2]
Example #7
0
def test_value_range_in_range_false(value):
    vr = data.ValueRange(min_=0, max_=10, tolerance=2, abs_min=-1, abs_max=11)
    assert not vr.in_range(value)
Example #8
0
def test_value_range_init_error(values):
    with pytest.raises(AssertionError):
        vr = data.ValueRange(min_=values[0], max_=values[1],
                             abs_min=values[2], abs_max=values[3],
                             tolerance=values[4])