mean and median crash on an empty list
Done- Plan (done)
- Code (done)
- Test (done)
- Review (done)
- Finish (done)
Cost
$0.0028
Tests
Passed
Iterations
1
Re-plans
0
LLM calls
10
Prompt read from cache
79%
Usage by agent
- Cache read
- Cache write
- Input
- Output
View as table
| Agent | Cost | Cache read | Cache write | Input | Output |
|---|---|---|---|---|---|
| planner | $0.0006 | 5,625 | 843 | 8 | 846 |
| coder | $0.0007 | 8,567 | 1,863 | 8 | 843 |
| tester | $0.0010 | 9,644 | 2,544 | 8 | 1,233 |
| reviewer | $0.0004 | 1,727 | 1,702 | 4 | 396 |
Timeline
-
planner iteration 1 Finished 3 calls · 7,322 tokens · $0.0006 · 6.0s
Loading…
-
coder iteration 1 Finished 3 calls · 11.3K tokens · $0.0007 · 5.3s
Loading…
-
tester iteration 1 Finished 3 calls · 13.4K tokens · $0.0010 · 10.6s
Loading…
-
verify iteration 1 Passed 0.6s
....... [100%] 7 passed in 0.02s
-
reviewer iteration 1 Finished 1 calls · 3,829 tokens · $0.0004 · 3.5s
Loading…
Final diff
diff --git a/stats.py b/stats.py index 1367357..0aa8739 100644 --- a/stats.py +++ b/stats.py @@ -1,8 +1,12 @@ def mean(values: list[float]) -> float: + if not values: + return 0.0 return sum(values) / len(values) def median(values: list[float]) -> float: + if not values: + return 0.0 ordered = sorted(values) middle = len(ordered) // 2 if len(ordered) % 2: diff --git a/test_stats.py b/test_stats.py index 7b17903..b953ae2 100644 --- a/test_stats.py +++ b/test_stats.py @@ -3,8 +3,40 @@ from stats import mean, median def test_mean(): assert mean([1, 2, 3]) == 2 + assert mean([]) == 0.0 def test_median(): assert median([3, 1, 2]) == 2 assert median([1, 2, 3, 4]) == 2.5 + assert median([]) == 0.0 + + +def test_mean_empty_returns_float(): + result = mean([]) + assert isinstance(result, float) + assert result == 0.0 + + +def test_median_empty_returns_float(): + result = median([]) + assert isinstance(result, float) + assert result == 0.0 + + +def test_mean_single_and_negative_values_unchanged(): + assert mean([5]) == 5 + assert mean([-1, 1]) == 0 + assert mean([1.5, 2.5]) == 2.0 + + +def test_median_single_and_unsorted_unchanged(): + assert median([7]) == 7 + assert median([4, -2, 10, 0, 3]) == 3 + assert median([10, 2, 8, 4]) == 6 + + +def test_median_does_not_mutate_input(): + values = [3, 1, 2] + median(values) + assert values == [3, 1, 2]