Initial commit of LLM speed test app
This commit is contained in:
@@ -0,0 +1,76 @@
|
||||
"""统计模块测试"""
|
||||
import math
|
||||
|
||||
from backend.stats import mean, std, percentile, percentiles, min_val, max_val
|
||||
|
||||
|
||||
class TestMean:
|
||||
def test_normal(self):
|
||||
assert mean([1, 2, 3, 4, 5]) == 3.0
|
||||
|
||||
def test_single(self):
|
||||
assert mean([42]) == 42.0
|
||||
|
||||
def test_empty(self):
|
||||
assert mean([]) == 0.0
|
||||
|
||||
def test_floats(self):
|
||||
assert abs(mean([1.5, 2.5, 3.5]) - 2.5) < 1e-9
|
||||
|
||||
|
||||
class TestStd:
|
||||
def test_known_std(self):
|
||||
data = [2, 4, 4, 4, 5, 5, 7, 9]
|
||||
assert abs(std(data) - 2.13809) < 1e-4
|
||||
|
||||
def test_single(self):
|
||||
assert std([42]) == 0.0
|
||||
|
||||
def test_two_values(self):
|
||||
assert std([0, 2]) == math.sqrt(2)
|
||||
|
||||
def test_empty(self):
|
||||
assert std([]) == 0.0
|
||||
|
||||
|
||||
class TestPercentile:
|
||||
def test_median(self):
|
||||
assert percentile([1, 2, 3, 4, 5], 50) == 3.0
|
||||
|
||||
def test_p0(self):
|
||||
assert percentile([1, 2, 3, 4, 5], 0) == 1.0
|
||||
|
||||
def test_p100(self):
|
||||
assert percentile([1, 2, 3, 4, 5], 100) == 5.0
|
||||
|
||||
def test_empty(self):
|
||||
assert percentile([], 50) == 0.0
|
||||
|
||||
def test_interpolation(self):
|
||||
assert percentile([1, 2], 50) == 1.5
|
||||
|
||||
|
||||
class TestPercentiles:
|
||||
def test_batch(self):
|
||||
result = percentiles([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], [25, 50, 75])
|
||||
assert result[50] == 5.5
|
||||
assert result[25] > 0
|
||||
assert result[75] > result[50]
|
||||
|
||||
def test_empty(self):
|
||||
result = percentiles([], [50])
|
||||
assert result[50] == 0.0
|
||||
|
||||
|
||||
class TestMinMax:
|
||||
def test_min(self):
|
||||
assert min_val([3, 1, 2]) == 1
|
||||
|
||||
def test_max(self):
|
||||
assert max_val([3, 1, 2]) == 3
|
||||
|
||||
def test_min_empty(self):
|
||||
assert min_val([]) == 0.0
|
||||
|
||||
def test_max_empty(self):
|
||||
assert max_val([]) == 0.0
|
||||
Reference in New Issue
Block a user