Initial commit of LLM speed test app

This commit is contained in:
2026-09-06 11:45:52 +08:00
commit 5544b5f9f9
38 changed files with 8587 additions and 0 deletions
View File
+76
View File
@@ -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