def test_discovery(repository_dir): with repository_dir.as_cwd(): check_call(['snactor', 'discover']) # Ensure snactor discover --json returns valid json output = check_output(['snactor', 'discover', '--json']).decode('utf-8') data = json.loads(output) assert 'actors' in data assert 'base_dir' in data and repository_dir.samefile(data['base_dir']) assert 'models' in data assert 'repository' in data assert 'tags' in data assert 'topics' in data with type(repository_dir)(path=repository_dir.dirname).as_cwd(): with pytest.raises(CalledProcessError): check_call(['snactor', 'discover'])
def test_find_repository_basedir(repository_dir): nested = repository_dir.mkdir('a').mkdir('b').mkdir('c') assert repository_dir.samefile(find_repository_basedir(nested.strpath)) assert repository_dir.samefile(find_repository_basedir(repository_dir.strpath)) assert find_repository_basedir('.') is None