def test_get_project_config(self): mock_repo1 = Mock(spec_set=Repository) type(mock_repo1).full_name = 'myuser/foo' mock_repo1.get_file_contents.return_value = True type(mock_repo1).clone_url = 'cloneurl' type(mock_repo1).ssh_url = 'sshurl' self.cls.github.get_repo.return_value = mock_repo1 res = self.cls.get_project_config('me/myrepo') assert res == ('cloneurl', 'sshurl') assert self.cls.github.mock_calls == [ call.get_repo('me/myrepo'), call.get_repo().get_file_contents('.rebuildbot.sh', ref='master') ] assert mock_repo1.mock_calls == [ call.get_file_contents('.rebuildbot.sh', ref='master') ]
def test_get_project_config_404(self): def se_404(fname, ref='master'): raise UnknownObjectException(404, 'some data') mock_repo1 = Mock(spec_set=Repository) type(mock_repo1).full_name = 'myuser/foo' mock_repo1.get_file_contents.side_effect = se_404 self.cls.github.get_repo.return_value = mock_repo1 res = self.cls.get_project_config('me/myrepo') assert res == (None, None) assert self.cls.github.mock_calls == [ call.get_repo('me/myrepo'), call.get_repo().get_file_contents('.rebuildbot.sh', ref='master') ] assert mock_repo1.mock_calls == [ call.get_file_contents('.rebuildbot.sh', ref='master') ]