tito/test/unit/releaser_tests.py
Pavel Raiskup 8ce108266b tests: enable tests at RPM build time
- Some tests can not work at rpmbuild time, because we can not run
  rpmbuild in rpmbuild, and there's no .git/ directory, skip.
- Use 'titodir' below 'srcdir', to not pollute the /tmp/tito dir.
- The test_colors() test requires color-friendly TERM env.
- EL7 is EOL, do not enable tests there.
2024-11-06 11:19:55 +01:00

37 lines
1.2 KiB
Python

import unittest
from unittest import mock
from tito.compat import PY2, RawConfigParser
from tito.release import Releaser
from unit import builtins_input, titodir, skip_if_rpmbuild
class ReleaserTests(unittest.TestCase):
@mock.patch("tito.release.main.create_builder")
@mock.patch("tito.release.main.mkdtemp")
def setUp(self, mkdtemp, create_builder):
skip_if_rpmbuild()
self.config = RawConfigParser()
self.releaser_config = RawConfigParser()
self.releaser_config.add_section("test")
self.releaser_config.set('test', "releaser",
"tito.release.Releaser")
self.releaser = Releaser("titotestpkg", None, titodir,
self.config, {}, "test", self.releaser_config, False,
False, False, **{"offline": True})
@mock.patch(builtins_input)
def test_ask_yes_or_no(self, input_mock):
input_mock.side_effect = "y"
assert self.releaser._ask_yes_no()
input_mock.side_effect = "n"
assert not self.releaser._ask_yes_no()
input_mock.side_effect = ["yy", "y"]
assert self.releaser._ask_yes_no()
input_mock.side_effect = ["yy", "no"]
assert not self.releaser._ask_yes_no()