Skip to content

Commit 60168ef

Browse files
osherdperanco74
authored andcommitted
fix unit-tests after changing the code
1 parent e2f8b2d commit 60168ef

File tree

4 files changed

+30
-27
lines changed

4 files changed

+30
-27
lines changed

skipper/git.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ def get_hash(short=False):
1616
if uncommitted_changes():
1717
logging.warning("*** Uncommitted changes present - Build container version might be outdated ***")
1818

19-
return subprocess.check_output(git_command).decode().strip()
19+
return subprocess.check_output(git_command).strip()
2020

2121

2222
def uncommitted_changes():

skipper/utils.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
import logging
55
import os
66
import subprocess
7-
import shutil
7+
from shutil import which
88
from six.moves import http_client
99
import requests
1010
from requests_bearer import HttpBearerAuth
@@ -151,7 +151,7 @@ def dockerfile_to_image(dockerfile):
151151

152152
def is_tool(name):
153153
"""Check whether `name` is on PATH and marked as executable."""
154-
return shutil.which(name) is not None
154+
return which(name) is not None
155155

156156

157157
def get_runtime_command():
@@ -173,7 +173,7 @@ def get_extra_file(filename):
173173
def run_container_command(args):
174174
cmd = [get_runtime_command()]
175175
cmd.extend(args)
176-
return str(subprocess.check_output(cmd).decode().strip())
176+
return str(subprocess.check_output(cmd).strip())
177177

178178

179179
def create_path_and_add_data(full_path, data, is_file):

tests/test_cli.py

Lines changed: 25 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,9 @@
55
import click
66
import six
77
from click import testing
8+
from shutil import which
9+
from requests import HTTPError
10+
811
from skipper import cli
912
from skipper import config, utils
1013

@@ -295,7 +298,7 @@ def test_build_existing_image_with_context(self, skipper_runner_run_mock):
295298
return_value={
296299
'image1': '/home/user/work/project/Dockerfile.image1',
297300
'image2': '/home/user/work/project/Dockerfile.image2'}))
298-
@mock.patch('__builtin__.open', mock.MagicMock(create=True))
301+
@mock.patch('builtins.open', mock.MagicMock(create=True))
299302
@mock.patch('os.path.exists', mock.MagicMock(autospec=True, return_value=True))
300303
@mock.patch('yaml.safe_load', mock.MagicMock(autospec=True, return_value=SKIPPER_CONF_WITH_CONTEXT))
301304
@mock.patch('skipper.git.get_hash', mock.MagicMock(autospec=True, return_value='1234567'))
@@ -317,7 +320,7 @@ def test_build_with_context_from_config_file(self, skipper_runner_run_mock):
317320
]
318321
skipper_runner_run_mock.assert_called_once_with(expected_command)
319322

320-
@mock.patch('__builtin__.open', mock.MagicMock(create=True))
323+
@mock.patch('builtins.open', mock.MagicMock(create=True))
321324
@mock.patch('os.path.exists', mock.MagicMock(autospec=True, return_value=True))
322325
@mock.patch('yaml.safe_load', mock.MagicMock(autospec=True, return_value=SKIPPER_CONF_WITH_CONTEXT_NO_TAG))
323326
@mock.patch('skipper.git.get_hash', mock.MagicMock(autospec=True, return_value='1234567'))
@@ -461,7 +464,7 @@ def test_build_all_images(self, skipper_runner_run_mock):
461464
return_value={
462465
'image1': '/home/user/work/project/Dockerfile.image1',
463466
'image2': '/home/user/work/project/Dockerfile.image2'}))
464-
@mock.patch('__builtin__.open', mock.MagicMock(create=True))
467+
@mock.patch('builtins.open', mock.MagicMock(create=True))
465468
@mock.patch('os.path.exists', mock.MagicMock(autospec=True, return_value=True))
466469
@mock.patch('yaml.safe_load', mock.MagicMock(autospec=True, return_value=SKIPPER_CONF))
467470
@mock.patch('skipper.git.get_hash', mock.MagicMock(autospec=True, return_value='1234567'))
@@ -482,7 +485,7 @@ def test_build_with_defaults_from_config_file(self, skipper_runner_run_mock):
482485
]
483486
skipper_runner_run_mock.assert_called_once_with(expected_command)
484487

485-
@mock.patch('__builtin__.open', mock.MagicMock(create=True))
488+
@mock.patch('builtins.open', mock.MagicMock(create=True))
486489
@mock.patch('os.path.abspath',
487490
mock.MagicMock(autospec=True, return_value='/home/user/work/project/app1/Dockerfile'))
488491
@mock.patch('os.path.exists', mock.MagicMock(autospec=True, return_value=True))
@@ -677,7 +680,7 @@ def test_push_to_namespace(self, skipper_runner_run_mock, requests_get_mock):
677680
]
678681
skipper_runner_run_mock.assert_has_calls(expected_commands)
679682

680-
@mock.patch('__builtin__.open', mock.MagicMock(create=True))
683+
@mock.patch('builtins.open', mock.MagicMock(create=True))
681684
@mock.patch('os.path.exists', mock.MagicMock(autospec=True, return_value=True))
682685
@mock.patch('yaml.safe_load', mock.MagicMock(autospec=True, return_value=SKIPPER_CONF))
683686
@mock.patch('skipper.git.get_hash', mock.MagicMock(autospec=True, return_value='1234567'))
@@ -1039,7 +1042,7 @@ def test_rmi_remote(self, requests_get_mock, requests_delete_mock, requests_bear
10391042
@mock.patch('requests.get', autospec=True)
10401043
def test_rmi_remote_fail(self, requests_get_mock, requests_delete_mock, requests_bearer_auth_mock):
10411044
requests_get_mock.side_effect = [mock.Mock(headers={'Docker-Content-Digest': 'digest'})]
1042-
requests_delete_mock.side_effect = [mock.Mock(ok=False)]
1045+
requests_delete_mock.side_effect = HTTPError()
10431046
result = self._invoke_cli(
10441047
global_params=self.global_params,
10451048
subcmd='rmi',
@@ -1130,7 +1133,7 @@ def test_run_with_non_existing_build_container(self, requests_get_mock):
11301133
)
11311134
self.assertIsInstance(ret.exception, click.exceptions.ClickException)
11321135

1133-
@mock.patch('__builtin__.open', mock.MagicMock(create=True))
1136+
@mock.patch('builtins.open', mock.MagicMock(create=True))
11341137
@mock.patch('os.path.exists', mock.MagicMock(autospec=True, return_value=True))
11351138
@mock.patch('yaml.safe_load', mock.MagicMock(autospec=True, return_value=SKIPPER_CONF))
11361139
@mock.patch('subprocess.check_output', mock.MagicMock(autospec=True, return_value='1234567\n'))
@@ -1150,7 +1153,7 @@ def test_run_with_defaults_from_config_file(self, skipper_runner_run_mock):
11501153
workdir=None, workspace=None, use_cache=False,
11511154
env_file=())
11521155

1153-
@mock.patch('__builtin__.open', mock.MagicMock(create=True))
1156+
@mock.patch('builtins.open', mock.MagicMock(create=True))
11541157
@mock.patch('os.path.exists', mock.MagicMock(autospec=True, return_value=True))
11551158
@mock.patch('yaml.safe_load', mock.MagicMock(autospec=True, return_value=SKIPPER_CONF_WITH_ENV))
11561159
@mock.patch('subprocess.check_output', mock.MagicMock(autospec=True, return_value='1234567\n'))
@@ -1172,7 +1175,7 @@ def test_run_with_defaults_and_env_from_config_file(self, skipper_runner_run_moc
11721175
workdir=None, workspace=None, use_cache=False,
11731176
env_file=())
11741177

1175-
@mock.patch('__builtin__.open', mock.MagicMock(create=True))
1178+
@mock.patch('builtins.open', mock.MagicMock(create=True))
11761179
@mock.patch('os.path.exists',
11771180
mock.MagicMock(autospec=True, return_value=True))
11781181
@mock.patch('yaml.safe_load', mock.MagicMock(
@@ -1203,7 +1206,7 @@ def test_run_with_defaults_and_env_from_env_file(
12031206
use_cache=False,
12041207
env_file=(ENV_FILE_PATH,))
12051208

1206-
@mock.patch('__builtin__.open', mock.MagicMock(create=True))
1209+
@mock.patch('builtins.open', mock.MagicMock(create=True))
12071210
@mock.patch('os.path.exists',
12081211
mock.MagicMock(autospec=True, return_value=True))
12091212
@mock.patch('yaml.safe_load', mock.MagicMock(
@@ -1234,7 +1237,7 @@ def test_run_with_defaults_and_env_from_multiple_env_file(
12341237
use_cache=False,
12351238
env_file=tuple(ENV_FILES))
12361239

1237-
@mock.patch('__builtin__.open', mock.MagicMock(create=True))
1240+
@mock.patch('builtins.open', mock.MagicMock(create=True))
12381241
@mock.patch('os.path.exists', mock.MagicMock(autospec=True, return_value=True))
12391242
@mock.patch('yaml.safe_load', mock.MagicMock(autospec=True, return_value=SKIPPER_CONF_WITH_ENV))
12401243
@mock.patch('subprocess.check_output', mock.MagicMock(autospec=True, return_value='1234567\n'))
@@ -1256,7 +1259,7 @@ def test_run_with_env_overriding_config_file(self, skipper_runner_run_mock):
12561259
workdir=None, workspace=None, use_cache=False,
12571260
env_file=())
12581261

1259-
@mock.patch('__builtin__.open', mock.MagicMock(create=True))
1262+
@mock.patch('builtins.open', mock.MagicMock(create=True))
12601263
@mock.patch('os.path.exists', mock.MagicMock(autospec=True, return_value=True))
12611264
@mock.patch('os.environ', {})
12621265
@mock.patch('yaml.safe_load', mock.MagicMock(autospec=True, return_value=SKIPPER_CONF_WITH_ENV_LIST))
@@ -1279,7 +1282,7 @@ def test_run_with_env_list(self, skipper_runner_run_mock):
12791282
workdir=None, workspace=None, use_cache=False,
12801283
env_file=())
12811284

1282-
@mock.patch('__builtin__.open', mock.MagicMock(create=True))
1285+
@mock.patch('builtins.open', mock.MagicMock(create=True))
12831286
@mock.patch('os.path.exists', mock.MagicMock(autospec=True, return_value=True))
12841287
@mock.patch('os.environ', {'key2': 'value2'})
12851288
@mock.patch('yaml.safe_load', mock.MagicMock(autospec=True, return_value=SKIPPER_CONF_WITH_ENV_LIST))
@@ -1302,7 +1305,7 @@ def test_run_with_env_list_get_from_env(self, skipper_runner_run_mock):
13021305
workdir=None, workspace=None, use_cache=False,
13031306
env_file=())
13041307

1305-
@mock.patch('__builtin__.open', mock.MagicMock(create=True))
1308+
@mock.patch('builtins.open', mock.MagicMock(create=True))
13061309
@mock.patch('os.path.exists', mock.MagicMock(autospec=True, return_value=True))
13071310
@mock.patch('yaml.safe_load', mock.MagicMock(autospec=True, return_value=SKIPPER_CONF_WITH_ENV_WRONG_TYPE))
13081311
@mock.patch('subprocess.check_output', mock.MagicMock(autospec=True, return_value='1234567\n'))
@@ -1582,7 +1585,7 @@ def test_run_with_publish_out_of_range_port(self):
15821585
self.assertEqual("Invalid port number: port 121111111 is out of range", result.exception.message)
15831586
self.assertEqual(-1, result.exit_code)
15841587

1585-
@mock.patch('__builtin__.open', mock.MagicMock(create=True))
1588+
@mock.patch('builtins.open', mock.MagicMock(create=True))
15861589
@mock.patch('os.path.exists', mock.MagicMock(autospec=True, return_value=True))
15871590
@mock.patch('yaml.safe_load', mock.MagicMock(autospec=True, return_value=SKIPPER_CONF_WITH_VOLUMES))
15881591
@mock.patch('subprocess.check_output', mock.MagicMock(autospec=True, return_value='1234567\n'))
@@ -1601,7 +1604,7 @@ def test_run_with_defaults_from_config_file_including_volumes(self, skipper_runn
16011604
volumes=['volume1', 'volume2'], workspace=None,
16021605
workdir=None, use_cache=False, env_file=())
16031606

1604-
@mock.patch('__builtin__.open', mock.MagicMock(create=True))
1607+
@mock.patch('builtins.open', mock.MagicMock(create=True))
16051608
@mock.patch('os.path.exists', mock.MagicMock(autospec=True, return_value=True))
16061609
@mock.patch('yaml.safe_load', mock.MagicMock(autospec=True, return_value=SKIPPER_CONF_WITH_SHELL_INTERPOLATION))
16071610
@mock.patch('subprocess.check_output', mock.MagicMock(autospec=True, return_value='1234567\n'))
@@ -1617,7 +1620,7 @@ def test_run_with_defaults_from_config_file_including_interpolated_volumes(self,
16171620
expected_fqdn_image = 'skipper-conf-build-container-image:skipper-conf-build-container-tag'
16181621
skipper_runner_run_mock.assert_called_once_with(command, fqdn_image=expected_fqdn_image, environment=['KEY=10'],
16191622
interactive=False, name=None, net=None, publish=(),
1620-
volumes=['/bin/cat:/cat'], workspace=None,
1623+
volumes=[f'{which("cat")}:/cat'], workspace=None,
16211624
workdir=None, use_cache=False, env_file=())
16221625

16231626
@mock.patch('yaml.safe_load', mock.MagicMock(autospec=True, return_value=SKIPPER_CONF_WITH_INVALID_SHELL_INTERPOLATION))
@@ -1632,7 +1635,7 @@ def test_run_with_defaults_from_config_file_including_invalid_interploated_volum
16321635
subcmd_params=run_params
16331636
)
16341637

1635-
@mock.patch('__builtin__.open', mock.MagicMock(create=True))
1638+
@mock.patch('builtins.open', mock.MagicMock(create=True))
16361639
@mock.patch('os.path.exists', mock.MagicMock(autospec=True, return_value=True))
16371640
@mock.patch('yaml.safe_load', mock.MagicMock(autospec=True, return_value=SKIPPER_CONF_WITH_WORKDIR))
16381641
@mock.patch('subprocess.check_output', mock.MagicMock(autospec=True, return_value='1234567\n'))
@@ -1652,7 +1655,7 @@ def test_run_with_defaults_from_config_file_including_workdir(self, skipper_runn
16521655
workdir='test-workdir', workspace=None, use_cache=False,
16531656
env_file=())
16541657

1655-
@mock.patch('__builtin__.open', mock.MagicMock(create=True))
1658+
@mock.patch('builtins.open', mock.MagicMock(create=True))
16561659
@mock.patch('os.path.exists', mock.MagicMock(autospec=True, return_value=True))
16571660
@mock.patch('yaml.safe_load', mock.MagicMock(autospec=True, return_value=SKIPPER_CONF_WITH_WORKSPACE))
16581661
@mock.patch('subprocess.check_output', mock.MagicMock(autospec=True, return_value='1234567\n'))
@@ -1672,7 +1675,7 @@ def test_run_with_defaults_from_config_file_including_workspace(self, skipper_ru
16721675
workdir=None, workspace="/test/workspace", use_cache=False,
16731676
env_file=())
16741677

1675-
@mock.patch('__builtin__.open', mock.MagicMock(create=True))
1678+
@mock.patch('builtins.open', mock.MagicMock(create=True))
16761679
@mock.patch('os.path.exists', mock.MagicMock(autospec=True, return_value=True))
16771680
@mock.patch('yaml.safe_load', mock.MagicMock(autospec=True, return_value=SKIPPER_CONF_WITH_GIT_REV))
16781681
@mock.patch('subprocess.check_output', mock.MagicMock(autospec=True, return_value='1234567\n'))
@@ -1693,7 +1696,7 @@ def test_run_with_config_including_git_revision_with_uncommitted_changes(self, s
16931696
workdir=None, use_cache=False, workspace=None,
16941697
env_file=())
16951698

1696-
@mock.patch('__builtin__.open', mock.MagicMock(create=True))
1699+
@mock.patch('builtins.open', mock.MagicMock(create=True))
16971700
@mock.patch('os.path.exists', mock.MagicMock(autospec=True, return_value=True))
16981701
@mock.patch('yaml.safe_load', mock.MagicMock(autospec=True, return_value=SKIPPER_CONF_WITH_GIT_REV))
16991702
@mock.patch('subprocess.check_output', mock.MagicMock(autospec=True, return_value='1234567\n'))
@@ -1769,7 +1772,7 @@ def test_make_with_additional_make_params(self, skipper_runner_run_mock):
17691772
workdir=None, workspace=None, use_cache=False,
17701773
env_file=())
17711774

1772-
@mock.patch('__builtin__.open', mock.MagicMock(create=True))
1775+
@mock.patch('builtins.open', mock.MagicMock(create=True))
17731776
@mock.patch('os.path.exists', mock.MagicMock(autospec=True, return_value=True))
17741777
@mock.patch('yaml.safe_load', mock.MagicMock(autospec=True, return_value=SKIPPER_CONF))
17751778
@mock.patch('subprocess.check_output', mock.MagicMock(autospec=True, return_value='1234567\n'))

tests/test_utils.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
class TestUtils(unittest.TestCase):
1010

11-
@mock.patch('skipper.utils.find_executable', autospec=False)
11+
@mock.patch('skipper.utils.which', autospec=False)
1212
def test_get_runtime_command(self, find_executable_mock):
1313
utils.CONTAINER_RUNTIME_COMMAND = None
1414
find_executable_mock.side_effect = "done"

0 commit comments

Comments
 (0)