File size: 1,625 Bytes
a402b9b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
import pytest

from sglang.srt.debug_utils.comparator.preset import PRESETS, expand_preset
from sglang.test.ci.ci_register import register_cpu_ci

register_cpu_ci(est_time=5, suite="default", nightly=True)


class TestExpandPreset:
    """Test preset expansion logic."""

    def test_explicit_preset(self):
        """--preset sglang_megatron expands into its argv."""
        argv = [
            "--baseline-path",
            "/a",
            "--preset",
            "sglang_megatron",
            "--diff-threshold",
            "0.01",
        ]
        result = expand_preset(argv, presets=PRESETS)
        assert "--preset" not in result
        assert "--grouping-skip-keys" in result
        assert "concat_steps" in result
        assert "--baseline-path" in result
        assert "--diff-threshold" in result

    def test_default_preset_applied(self):
        """No --preset and no --grouping-skip-keys triggers default preset."""
        argv = ["--baseline-path", "/a"]
        result = expand_preset(argv, presets=PRESETS)
        assert "--grouping-skip-keys" in result

    def test_explicit_skip_keys_prevents_default(self):
        """Explicit --grouping-skip-keys prevents default preset injection."""
        argv = ["--grouping-skip-keys", "rank", "--baseline-path", "/a"]
        result = expand_preset(argv, presets=PRESETS)
        assert result == argv

    def test_unknown_preset_raises(self):
        """Unknown preset name raises ValueError."""
        with pytest.raises(ValueError, match="Unknown value for --preset"):
            expand_preset(["--preset", "nonexistent"], presets=PRESETS)