Refactor test to use mock

pull/500/head
James Bourbeau 2018-12-13 16:40:39 -06:00
rodzic a55a3f6d30
commit 2448730b75
2 zmienionych plików z 9 dodań i 5 usunięć

Wyświetl plik

@ -744,8 +744,6 @@ class Repo2Docker(Application):
else: else:
picked_buildpack = self.default_buildpack() picked_buildpack = self.default_buildpack()
self._picked_buildpack = picked_buildpack
picked_buildpack.appendix = self.appendix picked_buildpack.appendix = self.appendix
picked_buildpack.labels['repo2docker.version'] = self.version picked_buildpack.labels['repo2docker.version'] = self.version
picked_buildpack.labels['repo2docker.repo'] = self.repo picked_buildpack.labels['repo2docker.repo'] = self.repo

Wyświetl plik

@ -2,6 +2,7 @@
Test if labels are supplied correctly to the container Test if labels are supplied correctly to the container
""" """
import time import time
from unittest.mock import Mock
from repo2docker.app import Repo2Docker from repo2docker.app import Repo2Docker
from repo2docker.buildpacks import BuildPack from repo2docker.buildpacks import BuildPack
from repo2docker import __version__ from repo2docker import __version__
@ -19,21 +20,26 @@ def test_buildpack_labels_rendered():
@pytest.mark.parametrize('ref', ['some-branch', None]) @pytest.mark.parametrize('ref', ['some-branch', None])
def test_labels(ref, tmpdir): def test_labels(ref, tmpdir):
app = Repo2Docker()
repo = str(tmpdir) repo = str(tmpdir)
if ref is not None: if ref is not None:
argv = ['--ref', ref, repo] argv = ['--ref', ref, repo]
else: else:
argv = [repo] argv = [repo]
app = Repo2Docker()
# Add mock BuildPack to app
mock_buildpack = Mock()
mock_buildpack.return_value.labels = {}
app.buildpacks = [mock_buildpack]
app.initialize(argv) app.initialize(argv)
app.build = False app.build = False
app.run = False app.run = False
app.start() app.start()
labels = app._picked_buildpack.labels
expected_labels = { expected_labels = {
'repo2docker.ref': ref, 'repo2docker.ref': ref,
'repo2docker.repo': repo, 'repo2docker.repo': repo,
'repo2docker.version': __version__, 'repo2docker.version': __version__,
} }
assert labels == expected_labels assert mock_buildpack().labels == expected_labels