blob: f21e0ec5168ede3653c4fa527a44f09bd441a614 [file] [log] [blame]
import unittest
from unittest.mock import MagicMock
from steps import git_metadata
class TestGitMetadata(unittest.TestCase):
def setUp(self):
self.step = git_metadata.GitMetadata()
self.step.repos = " [('repo0', 'branch0', 'dir0'), \
('repo1', 'branch1', ''), \
('repo2', '', 'dir1'), \
('repo3', '', 'dir1'), \
('repo4', '', 'dir1')]"
self.step.git_clone_with_branch = MagicMock()
self.step.git_clone = MagicMock()
self.step.run_script()
def test_git_clone_with_branch(self):
"""Tests git_clone_with_branch method is called with the right arguments"""
self.step.git_clone_with_branch.assert_any_call("repo0", "branch0", "dir0")
self.step.git_clone_with_branch.assert_called_with("repo1", "branch1", "")
def test_git_clone(self):
"""Tests git_clone method is called with the right arguments"""
self.step.git_clone.assert_any_call("repo2", "dir1")
self.step.git_clone.assert_any_call("repo3", "dir1")
self.step.git_clone.assert_called_with("repo4", "dir1")
def test_git_clone_with_branch_order(self):
"""Tests that git_clone_with_branch method calls are in the right order"""
actual_calls = self.step.git_clone_with_branch.call_args_list
expected_calls = [(("repo0", "branch0", "dir0"),),
(("repo1", "branch1", ""),)]
self.assertEqual(actual_calls, expected_calls)
def test_git_clone_order(self):
"""Tests the order in which git_clone method are called"""
actual_calls = self.step.git_clone.call_args_list
expected_calls = [(("repo2", "dir1"),),
(("repo3", "dir1"),),
(("repo4", "dir1"),)]
self.assertEqual(actual_calls, expected_calls)