from src.main.python.ddadevops.domain import ReleaseType from src.main.python.ddadevops.infrastructure.release_mixin import ReleaseTypeRepository, VersionRepository, ReleaseRepository from .mock_infrastructure_api import MockGitApi, MockEnvironmentApi from .helper import Helper def test_version_repository(tmp_path): # init th = Helper() th.copy_files(th.TEST_FILE_PATH, tmp_path) sut = VersionRepository(th.TEST_FILE_PATH) version = sut.get_version() #test assert version is not None def test_release_repository(tmp_path): # init th = Helper() th.copy_files( th.TEST_FILE_PATH, tmp_path) version_repo = VersionRepository(th.TEST_FILE_PATH) release_type_repo = ReleaseTypeRepository.from_git(MockGitApi('MINOR test')) # test sut = ReleaseRepository(version_repo, release_type_repo, 'main') release = sut.get_release() assert release is not None def test_release_type_repository_git(): sut = ReleaseTypeRepository.from_git(MockGitApi('MINOR test')) release_type = sut.get_release_type() assert release_type is ReleaseType.MINOR sut = ReleaseTypeRepository.from_git(MockGitApi('MINOR bla')) release_type = sut.get_release_type() assert release_type is ReleaseType.MINOR sut = ReleaseTypeRepository.from_git(MockGitApi('Major bla')) release_type = sut.get_release_type() assert release_type == ReleaseType.MAJOR sut = ReleaseTypeRepository.from_git(MockGitApi('PATCH bla')) release_type = sut.get_release_type() assert release_type == ReleaseType.PATCH sut = ReleaseTypeRepository.from_git(MockGitApi('SNAPSHOT bla')) release_type = sut.get_release_type() assert release_type == ReleaseType.SNAPSHOT sut = ReleaseTypeRepository.from_git(MockGitApi('bla')) release_type = sut.get_release_type() assert release_type == None def test_release_type_repository_env(): sut = ReleaseTypeRepository.from_environment(MockEnvironmentApi({'DDADEVOPS_RELEASE_TYPE': 'MINOR test'})) release_type = sut.get_release_type() assert release_type is ReleaseType.MINOR sut = ReleaseTypeRepository.from_environment(MockEnvironmentApi({'DDADEVOPS_RELEASE_TYPE': 'MINOR'})) release_type = sut.get_release_type() assert release_type is ReleaseType.MINOR sut = ReleaseTypeRepository.from_environment(MockEnvironmentApi({'DDADEVOPS_RELEASE_TYPE': 'Major bla'})) release_type = sut.get_release_type() assert release_type == ReleaseType.MAJOR sut = ReleaseTypeRepository.from_environment(MockEnvironmentApi({'DDADEVOPS_RELEASE_TYPE': 'Patch bla'})) release_type = sut.get_release_type() assert release_type == ReleaseType.PATCH sut = ReleaseTypeRepository.from_environment(MockEnvironmentApi({'DDADEVOPS_RELEASE_TYPE': 'Snapshot bla'})) release_type = sut.get_release_type() assert release_type == ReleaseType.SNAPSHOT sut = ReleaseTypeRepository.from_environment(MockEnvironmentApi({'DDADEVOPS_RELEASE_TYPE': 'Random text'})) release_type = sut.get_release_type() assert release_type == None sut = ReleaseTypeRepository.from_environment(MockEnvironmentApi({'REL_TYPE': 'Not the right variable'})) release_type = sut.get_release_type() assert release_type == None