public function testCorrectOutput() { $result = array(new ShellResult(0, 'master' . PHP_EOL . 'gh-pages' . PHP_EOL, '')); $mockExecutor = new MockCommandExecutor(new MockCommandBuilder($result, '/usr/bin/git')); $meta = new Meta($mockExecutor); $actualBranchList = $meta->getAllBranches(); $this->assertEquals(array(new Branch('master'), new Branch('gh-pages')), $actualBranchList); }
public function testCorrectArguments() { $results = array(new ShellResult(0, file_get_contents(realpath(__DIR__ . '/data/git_log_latest')), '')); $mockExecutor = new MockCommandExecutor(new MockCommandBuilder($results, '/usr/bin/git')); $meta = new Meta($mockExecutor); $revision = $meta->getLatestRevision(); $this->assertEquals(array(array('log', '-n', '1')), $mockExecutor->getArguments()); $this->assertEquals(new RevisionLog('7603010b472d32c4df233244b3c0c0632c728a1d', 'ptlis <*****@*****.**>', new \DateTime('30-11-2014 18:14:24+0000'), 'Fix: Docblock type hints.'), $revision); }
public function testCorrectArgumentsAndOutput() { $results = array(new ShellResult(0, file_get_contents(realpath(__DIR__ . '/data/git_log')), '')); $mockExecutor = new MockCommandExecutor(new MockCommandBuilder($results, '/usr/bin/git')); $meta = new Meta($mockExecutor); $revisionList = $meta->getAllRevisionLogs(); $this->assertEquals(array(array('log', '--format=fuller')), $mockExecutor->getArguments()); $this->assertEquals(array(new RevisionLog('7603010b472d32c4df233244b3c0c0632c728a1d', 'ptlis <*****@*****.**>', new \DateTime('30-11-2014 18:14:24+0000'), 'Fix: Docblock type hints.'), new RevisionLog('3201fb7119a132cc65b368447310c3a64e0b0916', 'ptlis <*****@*****.**>', new \DateTime('30-11-2014 18:10:24+0000'), 'Fix: Several code-style & documentation issues.')), $revisionList); }
public function testCorrectOutput() { $result = array(new ShellResult(0, 'master' . PHP_EOL, '')); $mockExecutor = new MockCommandExecutor(new MockCommandBuilder($result, '/usr/bin/git')); $meta = new Meta($mockExecutor); $actualBranch = $meta->getCurrentBranch(); $this->assertEquals(new Branch('master'), $actualBranch); $this->assertEquals('master', $actualBranch->getName()); $this->assertEquals('master', $actualBranch); }
public function testCorrectOutput() { $builder = new MockCommandBuilder(); $builder = $builder->setCommand('/usr/bin/git')->addMockResult(0, 'v0.9.0' . PHP_EOL . 'v0.9.1' . PHP_EOL, '')->addMockResult(0, '1838fa95822c8008be03dbd8c4e2c14370018cf1' . PHP_EOL, '')->addMockResult(0, 'commit 1838fa95822c8008be03dbd8c4e2c14370018cf1' . PHP_EOL . 'Author: ptlis <*****@*****.**>' . PHP_EOL . 'AuthorDate: Fri Jul 25 18:55:15 2015 +0100' . PHP_EOL . 'Commit: ptlis <*****@*****.**>' . PHP_EOL . 'AuthorDate: Fri Jul 25 18:55:15 2015 +0100' . PHP_EOL . '' . PHP_EOL . ' Rework the thingy' . PHP_EOL, '')->addMockResult(0, '7f202db7c7f1302d8ced7fa6fb5307320e016a3f' . PHP_EOL, '')->addMockResult(0, 'commit 7f202db7c7f1302d8ced7fa6fb5307320e016a3f' . PHP_EOL . 'Author: ptlis <*****@*****.**>' . PHP_EOL . 'AuthorDate: Fri Jul 31 12:28:03 2015 +0100' . PHP_EOL . 'Commit: ptlis <*****@*****.**>' . PHP_EOL . 'CommitDate: Fri Jul 31 12:28:03 2015 +0100' . PHP_EOL . '' . PHP_EOL . ' Update the FooWidget to 3.1415' . PHP_EOL, ''); $mockExecutor = new MockCommandExecutor($builder); $meta = new Meta($mockExecutor); $actualTagList = $meta->getAllTags(); $this->assertEquals(array(new Tag('v0.9.0', new RevisionLog('1838fa95822c8008be03dbd8c4e2c14370018cf1', 'ptlis <*****@*****.**>', new \DateTime('Fri Jul 25 18:55:15 2015 +0100'), 'Rework the thingy')), new Tag('v0.9.1', new RevisionLog('7f202db7c7f1302d8ced7fa6fb5307320e016a3f', 'ptlis <*****@*****.**>', new \DateTime('Fri Jul 31 12:28:03 2015 +0100'), 'Update the FooWidget to 3.1415'))), $actualTagList); $this->assertInstanceOf('\\ptlis\\Vcs\\Shared\\RevisionLog', $actualTagList[0]->getRevisionLog()); $this->assertEquals('v0.9.0', $actualTagList[0]->getName()); }
public function testCorrectArguments() { $builder = new MockCommandBuilder(); $builder = $builder->setCommand('/usr/bin/git')->addMockResult(0, file_get_contents(__DIR__ . '/data/git_diff'), ''); $mockExecutor = new MockCommandExecutor($builder); $meta = new Meta($mockExecutor); $revision = $meta->getRevision(new RevisionLog('c6dae50913150a272bfe241bb7fb47935eba4bee', 'ptlis', new \DateTime('Sat, 14 Feb 2015 18:43:51 +0000'), 'Fix: Use stand-alone command package for executing shell commands.')); $this->assertEquals(array(array('format-patch', '-1', '--stdout', 'c6dae50913150a272bfe241bb7fb47935eba4bee')), $mockExecutor->getArguments()); $this->assertInstanceOf('\\ptlis\\Vcs\\Shared\\Revision', $revision); $this->assertInstanceOf('\\ptlis\\Vcs\\Shared\\RevisionLog', $revision->getLog()); $this->assertInstanceOf('\\ptlis\\DiffParser\\Changeset', $revision->getChangeset()); }
public function testCorrectArgumentsAndOutput() { $results = array(new ShellResult(0, file_get_contents(realpath(__DIR__ . '/data/git_log')), '')); $mockExecutor = new MockCommandExecutor(new MockCommandBuilder($results, '/usr/bin/git')); $meta = new Meta($mockExecutor); $actualRevision = $meta->getRevisionLog('7603010b472d32c4df233244b3c0c0632c728a1d'); $this->assertEquals(array(array('log', '--format=fuller', '-1', '7603010b472d32c4df233244b3c0c0632c728a1d')), $mockExecutor->getArguments()); $this->assertEquals(new RevisionLog('7603010b472d32c4df233244b3c0c0632c728a1d', 'ptlis <*****@*****.**>', new \DateTime('30-11-2014 18:14:24+0000'), 'Fix: Docblock type hints.'), $actualRevision); // Check getters $this->assertEquals('7603010b472d32c4df233244b3c0c0632c728a1d', $actualRevision->getIdentifier()); $this->assertEquals(new \DateTime('30-11-2014 18:14:24+0000'), $actualRevision->getCreated()); $this->assertEquals('ptlis <*****@*****.**>', $actualRevision->getAuthor()); $this->assertEquals('Fix: Docblock type hints.', $actualRevision->getMessage()); }