Source code for spack.test.cmd.repo

# Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
import os.path

import pytest

import spack.main

repo = spack.main.SpackCommand("repo")


[docs]def test_help_option(): # Test 'spack repo --help' to check basic import works # and the command exits successfully with pytest.raises(SystemExit): repo("--help") assert repo.returncode in (None, 0)
[docs]def test_create_add_list_remove(mutable_config, tmpdir): # Create a new repository and check that the expected # files are there repo("create", str(tmpdir), "mockrepo") assert os.path.exists(os.path.join(str(tmpdir), "repo.yaml")) # Add the new repository and check it appears in the list output repo("add", "--scope=site", str(tmpdir)) output = repo("list", "--scope=site", output=str) assert "mockrepo" in output # Then remove it and check it's not there repo("remove", "--scope=site", str(tmpdir)) output = repo("list", "--scope=site", output=str) assert "mockrepo" not in output