public function testArchiveCreatesATarGz()
 {
     $this->GivenThereIsARepositorySetUp();
     $project = new MockProject();
     $project->setReturnValue('getUnixName', 'zorblub');
     $repo = new MockGitRepository();
     $repo->setReturnValue('getPath', 'gitolite-admin-ref');
     $repo->setReturnValue('getName', 'gitolite-admin-ref');
     $repo->setReturnValue('getDeletionDate', '2012-01-26');
     $repo->setReturnValue('getProject', $project);
     $backend = new GitBackendTestVersion();
     $backend->setGitRootPath($this->_tmpDir);
     $backend->setGitBackupDir($this->backupDir);
     $backend->archive($repo);
     $this->ThenCleanTheWorkspace();
 }
 protected function getFlatTree($strategy)
 {
     //go find the variable $repositories
     include dirname(__FILE__) . '/_fixtures/flat_tree_of_repositories.php';
     $gitolite_backend = new MockGit_Backend_Gitolite();
     foreach ($repositories as $row) {
         $r = new MockGitRepository();
         $r->setReturnValue('getId', $row['repository_id']);
         $r->setReturnValue('getDescription', $row['repository_description']);
         $r->setReturnValue('userCanRead', true);
         if ($row['repository_backend_type'] == 'gitolite') {
             $r->setReturnValue('getBackend', $gitolite_backend);
         }
         $strategy->setReturnValue('getRepository', $r, array($row));
     }
     return $repositories;
 }
 private function GivenARepository($id)
 {
     $repo = new MockGitRepository();
     $repo->setReturnValue('getId', $id);
     $repo->setReturnValue('userCanRead', true);
     $this->backend->setReturnValue('isNameValid', true);
     stub($repo)->getBackend()->returns($this->backend);
     return $repo;
 }
 public function testRemoveMailByRepository()
 {
     $prm = new PostReceiveMailManagerTestRemoveRepository();
     $dao = new MockGit_PostReceiveMailDao();
     $prm->dao = $dao;
     $repo = new MockGitRepository($this);
     $backend = new MockGitBackend();
     $repo->SetReturnValue('getBackend', $backend);
     $prm->dao->setReturnValue('removeNotification', True);
     $repo->expectOnce('loadNotifiedMails');
     $backend->expectOnce('changeRepositoryMailingList');
     $prm->removeMailByRepository($repo, "*****@*****.**");
 }
 public function testClonePermsCrossProjectFork()
 {
     $old_repo_id = 110;
     $old_project = new MockProject();
     $old_project->setReturnValue('getId', 1);
     $new_repo_id = 220;
     $new_project = new MockProject();
     $new_project->setReturnValue('getId', 2);
     $old = new MockGitRepository();
     $old->setReturnValue('getId', $old_repo_id);
     $old->setReturnValue('getProject', $old_project);
     $new = new MockGitRepository();
     $new->setReturnValue('getId', $new_repo_id);
     $new->setReturnValue('getProject', $new_project);
     $backend = $this->_GivenABackendGitolite();
     $permissionsManager = $backend->getPermissionsManager();
     $permissionsManager->expectOnce('duplicateWithoutStatic', array($old_repo_id, $new_repo_id, Git::allPermissionTypes()));
     $backend->clonePermissions($old, $new);
 }
Exemple #6
0
 function testConfirmPrivate()
 {
     $gitAction = new GitActionsTestVersion();
     $gitAction->setReturnValue('getText', 'set_private_warn');
     $git = new MockGit($this);
     $gitAction->setReturnValue('getController', $git);
     $gitRepository = new MockGitRepository($this);
     $gitRepository->setReturnValue('getAccess', 'public');
     $gitRepository->setReturnValue('getNonMemberMails', array('*****@*****.**'));
     $gitAction->setReturnValue('getGitRepository', $gitRepository);
     $git->expectNever('addError');
     $git->expectOnce('addWarn', array('set_private_warn'));
     $gitRepository->expectOnce('getNonMemberMails');
     $gitRepository->expectOnce('setDescription');
     $gitRepository->expectOnce('save');
     $gitAction->expectNever('save');
     $gitAction->expectCallCount('addData', 3);
     $this->assertTrue($gitAction->confirmPrivate(1, 1, 'private', 'desc'));
 }
Exemple #7
0
 private function GivenARepository($id)
 {
     $repo = new MockGitRepository();
     $repo->setReturnValue('getId', $id);
     $repo->setReturnValue('userCanRead', true);
     $repo->setReturnValue('isNameValid', true);
     return $repo;
 }