mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-21 15:12:02 +00:00
Add unit tests for git helper
This commit is contained in:
parent
b39dfc9ba6
commit
214d35df5e
68
tests/ci/git_test.py
Normal file
68
tests/ci/git_test.py
Normal file
@ -0,0 +1,68 @@
|
||||
#!/usr/bin/env python
|
||||
|
||||
from unittest.mock import patch
|
||||
import os.path as p
|
||||
import unittest
|
||||
|
||||
from git_helper import Git, Runner
|
||||
|
||||
|
||||
class TestRunner(unittest.TestCase):
|
||||
def test_init(self):
|
||||
runner = Runner()
|
||||
self.assertEqual(runner.cwd, p.realpath(p.dirname(__file__)))
|
||||
runner = Runner("/")
|
||||
self.assertEqual(runner.cwd, "/")
|
||||
|
||||
def test_run(self):
|
||||
runner = Runner()
|
||||
output = runner.run("echo 1")
|
||||
self.assertEqual(output, "1")
|
||||
|
||||
|
||||
class TestGit(unittest.TestCase):
|
||||
def setUp(self):
|
||||
"""we use dummy git object"""
|
||||
run_patcher = patch("git_helper.Runner.run", return_value="")
|
||||
self.run_mock = run_patcher.start()
|
||||
self.addCleanup(run_patcher.stop)
|
||||
update_patcher = patch("git_helper.Git.update")
|
||||
update_mock = update_patcher.start()
|
||||
self.addCleanup(update_patcher.stop)
|
||||
self.git = Git()
|
||||
update_mock.assert_called_once()
|
||||
self.run_mock.assert_called_once()
|
||||
self.git.new_branch = "NEW_BRANCH_NAME"
|
||||
self.git.new_tag = "v21.12.333.22222-stable"
|
||||
self.git.branch = "old_branch"
|
||||
self.git.sha = ""
|
||||
self.git.sha_short = ""
|
||||
self.git.latest_tag = ""
|
||||
self.git.description = ""
|
||||
self.git.commits_since_tag = 0
|
||||
|
||||
def test_tags(self):
|
||||
self.git.new_tag = "v21.12.333.22222-stable"
|
||||
self.git.latest_tag = "v21.12.333.22222-stable"
|
||||
for tag_attr in ("new_tag", "latest_tag"):
|
||||
self.assertEqual(getattr(self.git, tag_attr), "v21.12.333.22222-stable")
|
||||
setattr(self.git, tag_attr, "")
|
||||
self.assertEqual(getattr(self.git, tag_attr), "")
|
||||
for tag in (
|
||||
"v21.12.333-stable",
|
||||
"v21.12.333-prestable",
|
||||
"21.12.333.22222-stable",
|
||||
"v21.12.333.22222-production",
|
||||
):
|
||||
with self.assertRaises(Exception):
|
||||
setattr(self.git, tag_attr, tag)
|
||||
|
||||
def test_tweak(self):
|
||||
self.git.commits_since_tag = 0
|
||||
self.assertEqual(self.git.tweak, 1)
|
||||
self.git.commits_since_tag = 2
|
||||
self.assertEqual(self.git.tweak, 2)
|
||||
self.git.latest_tag = "v21.12.333.22222-testing"
|
||||
self.assertEqual(self.git.tweak, 22224)
|
||||
self.git.commits_since_tag = 0
|
||||
self.assertEqual(self.git.tweak, 22222)
|
Loading…
Reference in New Issue
Block a user