def METHOD_NAME():
    """Test all value errors."""
    signal = pf.signals.impulse(10)
    # signal and sampling rate are both None
    with pytest.raises(ValueError, match="Either signal or sampling_rate"):
        pfilt.low_shelve_cascade(None, 1e3, sampling_rate=None)
    # signal is of wrong type
    with pytest.raises(ValueError, match="signal must be a pyfar Signal"):
        pfilt.low_shelve_cascade(1, 1e3, sampling_rate=None)
    # frequency_type has wrong value
    with pytest.raises(ValueError, match="frequency_type is 'mid'"):
        pfilt.low_shelve_cascade(signal, 1e3, 'mid', 10, -5)
    # lower characteristic frequency is 0 Hz
    with pytest.raises(ValueError, match="The lower characteristic frequency"):
        pfilt.low_shelve_cascade(signal, 0, 'lower', 10, None, 2)
    # lower characteristic frequency exceeds Nyquist
    with pytest.raises(ValueError, match="The lower characteristic frequency"):
        pfilt.low_shelve_cascade(signal, 40e3, 'lower', 10, None, 2)
    # UPPER characteristic frequency exceeds Nyquist
    with pytest.raises(ValueError, match="The upper characteristic frequency"):
        pfilt.low_shelve_cascade(signal, 40e3, 'upper', 10, None, 2)