From 2448730b757a477a51041b3039c2d3083eb30d10 Mon Sep 17 00:00:00 2001 From: James Bourbeau Date: Thu, 13 Dec 2018 16:40:39 -0600 Subject: [PATCH] Refactor test to use mock --- repo2docker/app.py | 2 -- tests/test_labels.py | 12 +++++++++--- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/repo2docker/app.py b/repo2docker/app.py index 97abc3cf..7b5d3744 100644 --- a/repo2docker/app.py +++ b/repo2docker/app.py @@ -744,8 +744,6 @@ class Repo2Docker(Application): else: picked_buildpack = self.default_buildpack() - self._picked_buildpack = picked_buildpack - picked_buildpack.appendix = self.appendix picked_buildpack.labels['repo2docker.version'] = self.version picked_buildpack.labels['repo2docker.repo'] = self.repo diff --git a/tests/test_labels.py b/tests/test_labels.py index 76b6ff42..7a704eed 100644 --- a/tests/test_labels.py +++ b/tests/test_labels.py @@ -2,6 +2,7 @@ Test if labels are supplied correctly to the container """ import time +from unittest.mock import Mock from repo2docker.app import Repo2Docker from repo2docker.buildpacks import BuildPack from repo2docker import __version__ @@ -19,21 +20,26 @@ def test_buildpack_labels_rendered(): @pytest.mark.parametrize('ref', ['some-branch', None]) def test_labels(ref, tmpdir): - app = Repo2Docker() repo = str(tmpdir) if ref is not None: argv = ['--ref', ref, repo] else: 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.build = False app.run = False app.start() - labels = app._picked_buildpack.labels expected_labels = { 'repo2docker.ref': ref, 'repo2docker.repo': repo, 'repo2docker.version': __version__, } - assert labels == expected_labels + assert mock_buildpack().labels == expected_labels