def test_avg_upper_threshold_is_included(): c = Calc() res = c.avg([2, 5, 12, 98], ut=98) assert res == 29.25
def test_avg_removes_upper_outliers(): c = Calc() res = c.avg([2, 5, 12, 98], ut=90) assert res == pytest.approx(6.333333)
def test_avg_removes_lower_outliers(): c = Calc() res = c.avg([2, 5, 12, 98], lt=10) assert res == pytest.approx(55)
def test_avg_manages_zero_value_upper_outlier(): c = Calc() res = c.avg([-1, 0, 1], ut=0) assert res == -0.5
def test_avg_correct_average(): c = Calc() res = c.avg([2, 5, 12, 98]) assert res == 29.25
def test_avg_manages_empty_list_after_outlier_removal(): c = Calc() res = c.avg([12, 98], lt=15, ut=90) assert res == 0
def test_avg_manages_zero_value_lower_outlier(): c = Calc() res = c.avg([-1, 0, 1], lt=0) assert res == 0.5
def test_avg_lower_threshold_is_included(): c = Calc() res = c.avg([2, 5, 12, 98], lt=2) assert res == 29.25
def test_avg_empty_list(): c = Calc() res = c.avg([]) assert res == 0
def test_avg_correct_average(): c = Calc() res = c.avg([2, 3, 4]) assert res == 3
def test_avg_removes_upper_outliers(): c = Calc() res = c.avg([2, 5, 12, 98], ut=90) assert res == c.avg([2, 5, 12])
def test_avg_upper_threshold(): c = Calc() res = c.avg([2, 5, 12, 98], ut=90) assert res == c.avg([2, 5, 12])
def test_avg_work(): c = Calc() res = c.avg([2, 5, 12, 98]) assert res == 29.25
def test_avg_removal_of_empty_list(): c = Calc() res = c.avg([], lt=2, ut=4) assert res == 0
def test_avg_empty_after_outlier_removal(): c = Calc() res = c.avg([1, 2, 5], lt=3, ut=4) assert res == 0
def test_avg_lower_threshold(): c = Calc() res = c.avg([2, 5, 12, 98], lt=3) assert res == c.avg([5, 12, 98])