File size: 1,398 Bytes
fcca8c8
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
"""pytest tests for axolotl CLI fetch command."""

from unittest.mock import patch

from axolotl.cli.main import fetch


def test_fetch_cli_examples(cli_runner):
    """Test fetch command with examples directory"""
    with patch("axolotl.cli.main.fetch_from_github") as mock_fetch:
        result = cli_runner.invoke(fetch, ["examples"])

        assert result.exit_code == 0
        mock_fetch.assert_called_once_with("examples/", None)


def test_fetch_cli_deepspeed(cli_runner):
    """Test fetch command with deepspeed_configs directory"""
    with patch("axolotl.cli.main.fetch_from_github") as mock_fetch:
        result = cli_runner.invoke(fetch, ["deepspeed_configs"])

        assert result.exit_code == 0
        mock_fetch.assert_called_once_with("deepspeed_configs/", None)


def test_fetch_cli_with_dest(cli_runner, tmp_path):
    """Test fetch command with custom destination"""
    with patch("axolotl.cli.main.fetch_from_github") as mock_fetch:
        custom_dir = tmp_path / "tmp_examples"
        result = cli_runner.invoke(fetch, ["examples", "--dest", str(custom_dir)])

        assert result.exit_code == 0
        mock_fetch.assert_called_once_with("examples/", str(custom_dir))


def test_fetch_cli_invalid_directory(cli_runner):
    """Test fetch command with invalid directory choice"""
    result = cli_runner.invoke(fetch, ["invalid"])
    assert result.exit_code != 0