2023-02-20 15:45:36 +00:00
|
|
|
import sys
|
|
|
|
import os
|
2023-03-09 12:17:20 +00:00
|
|
|
import test_helper as th
|
2023-02-20 15:45:36 +00:00
|
|
|
|
|
|
|
# getting the name of the directory
|
|
|
|
# where the this file is present.
|
|
|
|
current = os.path.dirname(os.path.realpath(__file__))
|
2023-02-24 09:46:43 +00:00
|
|
|
|
2023-02-20 15:45:36 +00:00
|
|
|
# Getting the parent directory name
|
|
|
|
# where the current directory is present.
|
|
|
|
parent = os.path.dirname(current)
|
2023-02-24 09:46:43 +00:00
|
|
|
|
2023-02-20 15:45:36 +00:00
|
|
|
# adding the parent directory to
|
|
|
|
# the sys.path.
|
|
|
|
sys.path.append(parent)
|
2023-02-24 09:46:43 +00:00
|
|
|
|
2023-02-20 15:45:36 +00:00
|
|
|
# now we can import the module in the parent
|
|
|
|
# directory.
|
|
|
|
|
2023-03-09 12:17:20 +00:00
|
|
|
from domain import ReleaseType
|
2023-02-24 10:02:11 +00:00
|
|
|
from infrastructure import ReleaseTypeRepository, VersionRepository, ReleaseRepository
|
2023-03-09 12:17:20 +00:00
|
|
|
from mock_infrastructure_api import MockGitApi
|
2023-02-24 09:46:43 +00:00
|
|
|
|
|
|
|
|
2023-03-09 12:17:20 +00:00
|
|
|
def test_version_repository(tmp_path):
|
2023-02-21 09:17:16 +00:00
|
|
|
# init
|
2023-03-09 12:17:20 +00:00
|
|
|
th.copy_files(th.TEST_FILE_PATH, tmp_path)
|
|
|
|
sut = VersionRepository(th.TEST_FILE_PATH)
|
|
|
|
version = sut.get_version()
|
2023-02-21 09:17:16 +00:00
|
|
|
|
2023-03-09 12:17:20 +00:00
|
|
|
#test
|
|
|
|
assert version is not None
|
2023-02-24 09:31:04 +00:00
|
|
|
|
2023-02-24 09:46:43 +00:00
|
|
|
|
2023-02-24 09:31:04 +00:00
|
|
|
def test_release_repository(tmp_path):
|
2023-03-09 12:17:20 +00:00
|
|
|
# init
|
|
|
|
th.copy_files( th.TEST_FILE_PATH, tmp_path)
|
|
|
|
version_repo = VersionRepository(th.TEST_FILE_PATH)
|
|
|
|
release_type_repo = ReleaseTypeRepository(MockGitApi('MINOR test'))
|
2023-02-24 09:31:04 +00:00
|
|
|
|
|
|
|
# test
|
2023-03-09 12:17:20 +00:00
|
|
|
sut = ReleaseRepository(version_repo, release_type_repo, 'main')
|
2023-02-24 10:39:38 +00:00
|
|
|
release = sut.get_release()
|
|
|
|
|
|
|
|
assert release is not None
|
2023-02-24 10:02:11 +00:00
|
|
|
|
|
|
|
|
|
|
|
def test_release_type_repository():
|
2023-03-09 12:17:20 +00:00
|
|
|
sut = ReleaseTypeRepository(MockGitApi('MINOR test'))
|
2023-02-24 10:02:11 +00:00
|
|
|
release_type = sut.get_release_type()
|
2023-02-24 10:39:38 +00:00
|
|
|
assert release_type is ReleaseType.MINOR
|
2023-02-24 09:31:04 +00:00
|
|
|
|
2023-03-09 12:17:20 +00:00
|
|
|
sut = ReleaseTypeRepository(MockGitApi('MINOR bla'))
|
2023-02-24 10:39:38 +00:00
|
|
|
release_type = sut.get_release_type()
|
2023-02-24 10:02:11 +00:00
|
|
|
assert release_type is ReleaseType.MINOR
|
2023-02-24 10:39:38 +00:00
|
|
|
|
2023-03-09 12:17:20 +00:00
|
|
|
sut = ReleaseTypeRepository(MockGitApi('Major bla'))
|
2023-02-24 10:39:38 +00:00
|
|
|
release_type = sut.get_release_type()
|
|
|
|
assert release_type == ReleaseType.MAJOR
|
|
|
|
|
2023-03-09 12:17:20 +00:00
|
|
|
sut = ReleaseTypeRepository(MockGitApi('PATCH bla'))
|
2023-02-24 10:39:38 +00:00
|
|
|
release_type = sut.get_release_type()
|
|
|
|
assert release_type == ReleaseType.PATCH
|
|
|
|
|
2023-03-09 12:17:20 +00:00
|
|
|
sut = ReleaseTypeRepository(MockGitApi('SNAPSHOT bla'))
|
2023-02-24 10:39:38 +00:00
|
|
|
release_type = sut.get_release_type()
|
|
|
|
assert release_type == ReleaseType.SNAPSHOT
|
|
|
|
|
2023-03-09 12:17:20 +00:00
|
|
|
sut = ReleaseTypeRepository(MockGitApi('bla'))
|
2023-02-24 10:39:38 +00:00
|
|
|
release_type = sut.get_release_type()
|
|
|
|
assert release_type == None
|