Esempio n. 1
0
 /**
  * @test
  */
 public function shouldBeAbleToCloneLocally()
 {
     $repoName = "git://github.com/cpliakas/git-wrapper.git";
     $localPath = "/path/to/working/copy";
     $gitWrapper = $this->getMockBuilder('\\GitWrapper\\GitWrapper')->disableOriginalConstructor()->getMock();
     $git = $this->getMockBuilder('\\GitWrapper\\GitWorkingCopy')->disableOriginalConstructor()->getMock();
     $git->expects($this->any())->method('config')->will($this->returnValue($git));
     $package = $this->getMockBuilder('PUGX\\Bot\\Package')->disableOriginalConstructor()->getMock();
     $localPackage = new LocalPackage(null, $localPath, $package);
     $gitWrapper->expects($this->once())->method('cloneRepository')->will($this->returnValue($git));
     $package->expects($this->once())->method('getRepository')->will($this->returnValue($repoName));
     $command = new CloneLocally($gitWrapper, $this->mockEventDispatcher());
     $this->assertNotFalse($command->execute($localPackage));
 }
Esempio n. 2
0
 public function execute(Package $package, $dryRun = false)
 {
     $client = $this->getAuthenticateGitHubClient();
     $gitWrapper = $this->getGitWrapper();
     $step = new Step\ForkPackage($client, $this->dispatcher);
     $repository = $step->execute($package);
     sleep(180);
     $localPackage = new LocalPackage($repository, $this->sanitizeLocallyDir($package), $package);
     $step = new Step\CloneLocally($gitWrapper, $this->dispatcher);
     $step->execute($localPackage);
     $step = new Step\ExecuteCSFixer($this->phpCsFixerBin, 4000, $this->dispatcher);
     $step->execute($localPackage);
     if (!$dryRun) {
         $step = new Step\CommitAndPush($this->dispatcher);
         $git = $this->getGitWorking($gitWrapper, $localPackage);
         $step->execute($git, $localPackage);
         $step = new Step\MakeAPR($client, new FunnyMessageRepository(), $this->dispatcher);
         $step->execute($localPackage);
     }
     return $localPackage;
 }