69 lines
No EOL
1.7 KiB
Python
69 lines
No EOL
1.7 KiB
Python
import sys
|
|
import os
|
|
from pathlib import Path
|
|
from ddadevops import *
|
|
|
|
# getting the name of the directory
|
|
# where the this file is present.
|
|
current = os.path.dirname(os.path.realpath(__file__))
|
|
|
|
# Getting the parent directory name
|
|
# where the current directory is present.
|
|
parent = os.path.dirname(current)
|
|
|
|
# adding the parent directory to
|
|
# the sys.path.
|
|
sys.path.append(parent)
|
|
|
|
# now we can import the module in the parent
|
|
# directory.
|
|
|
|
from pybuilder.core import task, init, Project
|
|
from version import *
|
|
from release_mixin import ReleaseMixin, create_release_mixin_config
|
|
|
|
MAIN_BRANCH = 'main'
|
|
STAGE = 'test'
|
|
PROJECT_ROOT_PATH = '.'
|
|
MODULE = 'test'
|
|
BUILD_DIR_NAME = "build_dir"
|
|
|
|
class MyBuild(ReleaseMixin):
|
|
pass
|
|
|
|
def initialize(project, CONFIG_FILE):
|
|
project.build_depends_on('ddadevops>=3.1.2')
|
|
config = create_release_mixin_config(CONFIG_FILE, MAIN_BRANCH)
|
|
config.update({'stage': STAGE,
|
|
'module': MODULE,
|
|
'project_root_path': PROJECT_ROOT_PATH,
|
|
'build_dir_name': BUILD_DIR_NAME})
|
|
build = MyBuild(project, config)
|
|
return build
|
|
|
|
def test_release_mixin(tmp_path):
|
|
|
|
#init
|
|
with open(f'test/resources/config.json', 'r') as json_file:
|
|
contents = json_file.read()
|
|
|
|
CONFIG_FILE = tmp_path / "config.json"
|
|
CONFIG_FILE.write_text(contents)
|
|
|
|
base_dir = "."
|
|
project = Project(base_dir)
|
|
|
|
# init
|
|
build = initialize(project, CONFIG_FILE)
|
|
build.commit_string = "MAJOR bla"
|
|
build.init()
|
|
release_version = build.release_version
|
|
|
|
# test
|
|
assert "124.0.0" in release_version.get_version_string()
|
|
|
|
# init
|
|
bump_version = build.bump_version
|
|
|
|
# test
|
|
assert "124.0.1-SNAPSHOT" in bump_version.get_version_string() |