mim/tests/test_utils.py
yancong d84cf6e79c
Support mim train / test / gridsearch in OpenMMLab-2.0 (#160)
* Suport openmmlab-2.0 with the following features:

- import Config from mmengine
- remove extra options for train / test / gridsearch
- create destination directory if dose not exists in `mim donwload`
- add mmengine in `mim list`

* fix ci with the following 2 problems:
- mmcv2.x have not pre-built package for torch1.5.
- patch xxx not found after install (cause by importlib.reload).

* Update mim/commands/download.py

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>

* dev(download): remove echo line

* support openmmlab 1.0 and 2.0

* use tests/data/lenet5_mnist_2.0.py in test case

* use tests/data/lenet5_mnist_2.0.py in test case

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>
2022-09-23 19:16:40 +08:00

50 lines
1.6 KiB
Python

# Copyright (c) OpenMMLab. All rights reserved.
from click.testing import CliRunner
from mim.commands.install import cli as install
from mim.commands.uninstall import cli as uninstall
from mim.utils import get_github_url, parse_home_page
def setup_module():
runner = CliRunner()
result = runner.invoke(uninstall, ['mmcv-full', '--yes'])
assert result.exit_code == 0
result = runner.invoke(uninstall, ['mmcv', '--yes'])
assert result.exit_code == 0
result = runner.invoke(uninstall, ['mmcls', '--yes'])
assert result.exit_code == 0
def test_parse_home_page():
runner = CliRunner()
result = runner.invoke(install, ['mmcls', '--yes'])
assert result.exit_code == 0
assert parse_home_page(
'mmcls') == 'https://github.com/open-mmlab/mmclassification'
result = runner.invoke(uninstall, ['mmcls', '--yes'])
assert result.exit_code == 0
def test_get_github_url():
runner = CliRunner()
result = runner.invoke(install, ['mmcls', '--yes'])
assert result.exit_code == 0
assert get_github_url(
'mmcls') == 'https://github.com/open-mmlab/mmclassification.git'
result = runner.invoke(uninstall, ['mmcls', '--yes'])
assert result.exit_code == 0
assert get_github_url(
'mmcls') == 'https://github.com/open-mmlab/mmclassification.git'
def teardown_module():
runner = CliRunner()
result = runner.invoke(uninstall, ['mmcv-full', '--yes'])
assert result.exit_code == 0
result = runner.invoke(uninstall, ['mmcv', '--yes'])
assert result.exit_code == 0
result = runner.invoke(uninstall, ['mmcls', '--yes'])
assert result.exit_code == 0