def test_with_named_ranges(self): auto = AutoRange([1e-6, 1e-3, 1.], ['1 uV', '1 mV', '1 V'], scale=1., buffer_len=3) assert auto.range(.9e-6) == '1 uV' # mean is .9e-6 assert auto.range(-.9e-6) == '1 uV' # mean of magnitude is still .9e-6 assert auto.range( -1.2e-6) == '1 mV' # mean is 1e-6; sens should switch.
def test_with_named_ranges(self): auto = AutoRange([1e-6, 1e-3, 1.], ['1 uV', '1 mV', '1 V'], scale=1., buffer_len=3) assert auto.range(.9e-6) == '1 uV' # mean is .9e-6 assert auto.range(-.9e-6) == '1 uV' # mean of magnitude is still .9e-6 assert auto.range(-1.2e-6) == '1 mV' # mean is 1e-6; sens should switch.
def test_with_out_of_range_value(self): auto = AutoRange([1e-6, 1e-3, 1.], scale=1.) assert auto.range(1.1) == 1.
def test_with_numeric_range_and_negative_values(self): auto = AutoRange([1e-6, 1e-3, 1.], scale=1., buffer_len=3) assert auto.range(.9e-6) == 1e-6 # mean is .9e-6 assert auto.range(-.9e-6) == 1e-6 # mean of magnitude is still .9e-6 assert auto.range(-1.2e-6) == 1e-3 # mean is 1e-6; sens should switch.
def test_with_numeric_range(self): auto = AutoRange([1e-6, 1e-3, 1.], scale=1., buffer_len=3) assert auto.range(.9e-6) == 1e-6 # mean is .9e-6 assert auto.range(.9e-6) == 1e-6 # mean is .9e-6 assert auto.range(1.2e-6) == 1e-3 # mean is 1e-6; sens should switch.
def test_with_unequal_length_of_ranges_and_names(self): with pytest.raises(ValueError): AutoRange([1e-6, 1e-3, 1], names=['1 mV', '1 V'])