Esempio n. 1
0
 public function testThatAdditionalArgumentsCanBeExtractedAsSpaceSeparatedString()
 {
     $svnNumber = new SvnNumber(array("svn-number.php", "status", "-x", "--ignore-whitespace"), $this->getBashCommandMock());
     $this->assertSame("-x --ignore-whitespace", $svnNumber->getAdditionalArgsStr());
 }
Esempio n. 2
0
     } else {
         exit($status->getOutput(null));
     }
 }
 if (in_array($svnNumber->getAction(), array("commit-staged", "stage", "stage-all", "unstage", "unstage-all"))) {
     switch ($svnNumber->getAction()) {
         case "commit-staged":
             $stagedFilePaths = $staging->getStagedFilePaths();
             $status = new Status($svnNumber, $staging);
             $commitingFilePaths = array();
             foreach ($status->getLines() as $line) {
                 if (in_array($line->getFilePath(), $stagedFilePaths)) {
                     $commitingFilePaths[] = escapeshellarg($line->getFilePath());
                 }
             }
             $svnNumber->exec(sprintf("svn commit %s %s", implode(" ", $commitingFilePaths), $svnNumber->getAdditionalArgsStr()));
             $staging->clear()->save();
             $status = new Status($svnNumber, $staging);
             exit(printStatus($status, true));
         case "stage":
             if ($svnNumber->hasRequestedNumbers()) {
                 $status = new Status($svnNumber, $staging);
                 $lines = array_intersect_key($status->getLines(), array_flip($svnNumber->getRequestedNumbers()));
                 foreach ($lines as $line) {
                     echo "Staged file: " . $line->getFilePath() . PHP_EOL;
                     $staging->addLine($line);
                 }
                 $staging->save();
                 exit(printStatus($status, true));
             } else {
                 throw new \InvalidArgumentException("Command 'svn-number stage #' requires at least one number");