def test_pre_flight_ops(self, mock_tiller, mock_lint, mock_git): '''Test pre-flight checks and operations''' armada = Armada('') armada.tiller = mock_tiller armada.documents = yaml.safe_load_all(self.test_yaml) armada.config = Manifest(armada.documents).get_manifest() CHART_SOURCES = [('git://github.com/dummy/armada', 'chart_1'), ('/tmp/dummy/armada', 'chart_2')] # mock methods called by pre_flight_ops() mock_tiller.tiller_status.return_value = True mock_lint.valid_manifest.return_value = True mock_git.git_clone.return_value = CHART_SOURCES[0][0] armada.pre_flight_ops() mock_git.git_clone.assert_called_once_with(CHART_SOURCES[0][0], 'master') for group in armada.config.get('armada').get('charts'): for counter, chart in enumerate(group.get('chart_group')): self.assertEqual( chart.get('chart').get('source_dir')[0], CHART_SOURCES[counter][0]) self.assertEqual( chart.get('chart').get('source_dir')[1], CHART_SOURCES[counter][1])
def test_post_flight_ops(self, mock_tiller, mock_lint, mock_git): '''Test post-flight operations''' armada = Armada('') armada.tiller = mock_tiller armada.config = yaml.load(self.test_yaml) CHART_SOURCES = [('git://github.com/dummy/armada', 'chart_1'), ('/tmp/dummy/armada', 'chart_2')] # mock methods called by pre_flight_ops() mock_tiller.tiller_status.return_value = True mock_lint.valid_manifest.return_value = True mock_git.git_clone.return_value = CHART_SOURCES[0][0] armada.pre_flight_ops() armada.post_flight_ops() for group in yaml.load(self.test_yaml).get('armada').get('charts'): for counter, chart in enumerate(group.get('chart_group')): if chart.get('chart').get('source').get('type') == 'git': mock_git.source_cleanup \ .assert_called_with(CHART_SOURCES[counter][0])