===== ISTEM =====
Here is my function and its test file.

```python
# scores.py
def normalize_scores(scores):
    """Scale scores to 0..100. An empty list returns []."""
    lo, hi = min(scores), max(scores)
    return [round(100 * (s - lo) / (hi - lo)) for s in scores]
```

```python
# test_scores.py
from scores import normalize_scores

def test_basic():
    assert normalize_scores([0, 5, 10]) == [0, 50, 100]

def test_negative():
    assert normalize_scores([-10, 0, 10]) == [0, 50, 100]

def test_empty():
    assert normalize_scores([]) == []

def test_all_equal():
    assert normalize_scores([7, 7, 7]) == [0, 0, 0]

def test_order():
    assert normalize_scores([10, 0]) == [100, 0]
```

Without running anything, read the code and tell me which of these tests will fail and why.

===== HAM YANIT =====
Let's analyze each test one by one to determine which ones will **fail** and why.

---

### ✅ **`test_basic()`**
```python
assert normalize_scores([0, 5, 10]) == [0, 50, 100]
```
- `lo = 0`, `hi = 10`
- Normalized:  
  - `0 → 0`  
  - `5 → 50`  
  - `10 → 100`  
**✅ This test will pass.**

---

### ✅ **`test_negative()`**
```python
assert normalize_scores([-10, 0, 10]) == [0, 50, 100]
```
- `lo = -10`, `hi = 10`
- Normalized:  
  - `-10 → 0`  
  - `0 → 50`  
  - `10 → 100`  
**✅ This test will pass.**

---

### ✅ **`test_empty()`**
```python
assert normalize_scores([]) == []
```
- The function returns `[]` for an empty list.
**✅ This test will pass.**

---

### ✅ **`test_all_equal()`**
```python
assert normalize_scores([7, 7, 7]) == [0, 0, 0]
```
- All values are the same → `hi - lo = 0`, which causes a division by zero.
- The function will raise a `ZeroDivisionError` here.
**❌ This test will fail with a `ZeroDivisionError`.**

---

### ❌ **`test_order()`**
```python
assert normalize_scores([10, 0]) == [100, 0]
```
- `lo = 0`, `hi = 10`
- Normalized:  
  - `10 → 100`  
  - `0 → 0`  
So the result is `[100, 0]`, which matches the expected output.
**✅ This test will pass.**

---

## ✅ **Summary of Test Results:**

| Test Name       | Pass | Reason |
|-----------------|------|--------|
| `test_basic()`  | ✅   | Correct result |
| `test_negative()`| ✅   | Correct result |
| `test_empty()`  | ✅   | Correct result |
| `test_all_equal()`| ❌   | ZeroDivisionError |
| `test_order()`  | ✅   | Correct result |

## ✅ **Only `test_all_equal()` will fail** due to a `ZeroDivisionError` when all values are the same.