mirror of
https://github.com/composer/composer
synced 2025-05-09 00:22:53 +00:00
Minor fixes and updated the rest of the code/tests to use HttpDownloader
This commit is contained in:
parent
56805ecafe
commit
713bc4de1d
51 changed files with 461 additions and 436 deletions
|
@ -16,6 +16,7 @@ use Composer\Downloader\TransportException;
|
|||
use Composer\Repository\Vcs\GitHubDriver;
|
||||
use Composer\Test\TestCase;
|
||||
use Composer\Util\Filesystem;
|
||||
use Composer\Util\Http\Response;
|
||||
use Composer\Config;
|
||||
|
||||
class GitHubDriverTest extends TestCase
|
||||
|
@ -53,8 +54,8 @@ class GitHubDriverTest extends TestCase
|
|||
->method('isInteractive')
|
||||
->will($this->returnValue(true));
|
||||
|
||||
$remoteFilesystem = $this->getMockBuilder('Composer\Util\RemoteFilesystem')
|
||||
->setConstructorArgs(array($io))
|
||||
$httpDownloader = $this->getMockBuilder('Composer\Util\HttpDownloader')
|
||||
->setConstructorArgs(array($io, $this->config))
|
||||
->getMock();
|
||||
|
||||
$process = $this->getMockBuilder('Composer\Util\ProcessExecutor')->getMock();
|
||||
|
@ -62,9 +63,9 @@ class GitHubDriverTest extends TestCase
|
|||
->method('execute')
|
||||
->will($this->returnValue(1));
|
||||
|
||||
$remoteFilesystem->expects($this->at(0))
|
||||
->method('getContents')
|
||||
->with($this->equalTo('github.com'), $this->equalTo($repoApiUrl), $this->equalTo(false))
|
||||
$httpDownloader->expects($this->at(0))
|
||||
->method('get')
|
||||
->with($this->equalTo($repoApiUrl))
|
||||
->will($this->throwException(new TransportException('HTTP/1.1 404 Not Found', 404)));
|
||||
|
||||
$io->expects($this->once())
|
||||
|
@ -76,15 +77,15 @@ class GitHubDriverTest extends TestCase
|
|||
->method('setAuthentication')
|
||||
->with($this->equalTo('github.com'), $this->matchesRegularExpression('{sometoken}'), $this->matchesRegularExpression('{x-oauth-basic}'));
|
||||
|
||||
$remoteFilesystem->expects($this->at(1))
|
||||
->method('getContents')
|
||||
->with($this->equalTo('github.com'), $this->equalTo('https://api.github.com/'), $this->equalTo(false))
|
||||
->will($this->returnValue('{}'));
|
||||
$httpDownloader->expects($this->at(1))
|
||||
->method('get')
|
||||
->with($this->equalTo($url = 'https://api.github.com/'))
|
||||
->will($this->returnValue(new Response(array('url' => $url), 200, array(), '{}')));
|
||||
|
||||
$remoteFilesystem->expects($this->at(2))
|
||||
->method('getContents')
|
||||
->with($this->equalTo('github.com'), $this->equalTo($repoApiUrl), $this->equalTo(false))
|
||||
->will($this->returnValue('{"master_branch": "test_master", "private": true, "owner": {"login": "composer"}, "name": "packagist"}'));
|
||||
$httpDownloader->expects($this->at(2))
|
||||
->method('get')
|
||||
->with($this->equalTo($url = $repoApiUrl))
|
||||
->will($this->returnValue(new Response(array('url' => $url), 200, array(), '{"master_branch": "test_master", "private": true, "owner": {"login": "composer"}, "name": "packagist"}')));
|
||||
|
||||
$configSource = $this->getMockBuilder('Composer\Config\ConfigSourceInterface')->getMock();
|
||||
$authConfigSource = $this->getMockBuilder('Composer\Config\ConfigSourceInterface')->getMock();
|
||||
|
@ -95,7 +96,7 @@ class GitHubDriverTest extends TestCase
|
|||
'url' => $repoUrl,
|
||||
);
|
||||
|
||||
$gitHubDriver = new GitHubDriver($repoConfig, $io, $this->config, $process, $remoteFilesystem);
|
||||
$gitHubDriver = new GitHubDriver($repoConfig, $io, $this->config, $process, $httpDownloader);
|
||||
$gitHubDriver->initialize();
|
||||
$this->setAttribute($gitHubDriver, 'tags', array($identifier => $sha));
|
||||
|
||||
|
@ -124,21 +125,21 @@ class GitHubDriverTest extends TestCase
|
|||
->method('isInteractive')
|
||||
->will($this->returnValue(true));
|
||||
|
||||
$remoteFilesystem = $this->getMockBuilder('Composer\Util\RemoteFilesystem')
|
||||
->setConstructorArgs(array($io))
|
||||
$httpDownloader = $this->getMockBuilder('Composer\Util\HttpDownloader')
|
||||
->setConstructorArgs(array($io, $this->config))
|
||||
->getMock();
|
||||
|
||||
$remoteFilesystem->expects($this->at(0))
|
||||
->method('getContents')
|
||||
->with($this->equalTo('github.com'), $this->equalTo($repoApiUrl), $this->equalTo(false))
|
||||
->will($this->returnValue('{"master_branch": "test_master", "owner": {"login": "composer"}, "name": "packagist"}'));
|
||||
$httpDownloader->expects($this->at(0))
|
||||
->method('get')
|
||||
->with($this->equalTo($repoApiUrl))
|
||||
->will($this->returnValue(new Response(array('url' => $repoApiUrl), 200, array(), '{"master_branch": "test_master", "owner": {"login": "composer"}, "name": "packagist"}')));
|
||||
|
||||
$repoConfig = array(
|
||||
'url' => $repoUrl,
|
||||
);
|
||||
$repoUrl = 'https://github.com/composer/packagist.git';
|
||||
|
||||
$gitHubDriver = new GitHubDriver($repoConfig, $io, $this->config, null, $remoteFilesystem);
|
||||
$gitHubDriver = new GitHubDriver($repoConfig, $io, $this->config, null, $httpDownloader);
|
||||
$gitHubDriver->initialize();
|
||||
$this->setAttribute($gitHubDriver, 'tags', array($identifier => $sha));
|
||||
|
||||
|
@ -167,31 +168,31 @@ class GitHubDriverTest extends TestCase
|
|||
->method('isInteractive')
|
||||
->will($this->returnValue(true));
|
||||
|
||||
$remoteFilesystem = $this->getMockBuilder('Composer\Util\RemoteFilesystem')
|
||||
->setConstructorArgs(array($io))
|
||||
$httpDownloader = $this->getMockBuilder('Composer\Util\HttpDownloader')
|
||||
->setConstructorArgs(array($io, $this->config))
|
||||
->getMock();
|
||||
|
||||
$remoteFilesystem->expects($this->at(0))
|
||||
->method('getContents')
|
||||
->with($this->equalTo('github.com'), $this->equalTo($repoApiUrl), $this->equalTo(false))
|
||||
->will($this->returnValue('{"master_branch": "test_master", "owner": {"login": "composer"}, "name": "packagist"}'));
|
||||
$httpDownloader->expects($this->at(0))
|
||||
->method('get')
|
||||
->with($this->equalTo($url = $repoApiUrl))
|
||||
->will($this->returnValue(new Response(array('url' => $url), 200, array(), '{"master_branch": "test_master", "owner": {"login": "composer"}, "name": "packagist"}')));
|
||||
|
||||
$remoteFilesystem->expects($this->at(1))
|
||||
->method('getContents')
|
||||
->with($this->equalTo('github.com'), $this->equalTo('https://api.github.com/repos/composer/packagist/contents/composer.json?ref=feature%2F3.2-foo'), $this->equalTo(false))
|
||||
->will($this->returnValue('{"encoding":"base64","content":"'.base64_encode('{"support": {"source": "'.$repoUrl.'" }}').'"}'));
|
||||
$httpDownloader->expects($this->at(1))
|
||||
->method('get')
|
||||
->with($this->equalTo($url = 'https://api.github.com/repos/composer/packagist/contents/composer.json?ref=feature%2F3.2-foo'))
|
||||
->will($this->returnValue(new Response(array('url' => $url), 200, array(), '{"encoding":"base64","content":"'.base64_encode('{"support": {"source": "'.$repoUrl.'" }}').'"}')));
|
||||
|
||||
$remoteFilesystem->expects($this->at(2))
|
||||
->method('getContents')
|
||||
->with($this->equalTo('github.com'), $this->equalTo('https://api.github.com/repos/composer/packagist/commits/feature%2F3.2-foo'), $this->equalTo(false))
|
||||
->will($this->returnValue('{"commit": {"committer":{ "date": "2012-09-10"}}}'));
|
||||
$httpDownloader->expects($this->at(2))
|
||||
->method('get')
|
||||
->with($this->equalTo($url = 'https://api.github.com/repos/composer/packagist/commits/feature%2F3.2-foo'))
|
||||
->will($this->returnValue(new Response(array('url' => $url), 200, array(), '{"commit": {"committer":{ "date": "2012-09-10"}}}')));
|
||||
|
||||
$repoConfig = array(
|
||||
'url' => $repoUrl,
|
||||
);
|
||||
$repoUrl = 'https://github.com/composer/packagist.git';
|
||||
|
||||
$gitHubDriver = new GitHubDriver($repoConfig, $io, $this->config, null, $remoteFilesystem);
|
||||
$gitHubDriver = new GitHubDriver($repoConfig, $io, $this->config, null, $httpDownloader);
|
||||
$gitHubDriver->initialize();
|
||||
$this->setAttribute($gitHubDriver, 'tags', array($identifier => $sha));
|
||||
|
||||
|
@ -227,13 +228,13 @@ class GitHubDriverTest extends TestCase
|
|||
->method('isInteractive')
|
||||
->will($this->returnValue(false));
|
||||
|
||||
$remoteFilesystem = $this->getMockBuilder('Composer\Util\RemoteFilesystem')
|
||||
->setConstructorArgs(array($io))
|
||||
$httpDownloader = $this->getMockBuilder('Composer\Util\HttpDownloader')
|
||||
->setConstructorArgs(array($io, $this->config))
|
||||
->getMock();
|
||||
|
||||
$remoteFilesystem->expects($this->at(0))
|
||||
->method('getContents')
|
||||
->with($this->equalTo('github.com'), $this->equalTo($repoApiUrl), $this->equalTo(false))
|
||||
$httpDownloader->expects($this->at(0))
|
||||
->method('get')
|
||||
->with($this->equalTo($repoApiUrl))
|
||||
->will($this->throwException(new TransportException('HTTP/1.1 404 Not Found', 404)));
|
||||
|
||||
// clean local clone if present
|
||||
|
@ -278,7 +279,7 @@ class GitHubDriverTest extends TestCase
|
|||
'url' => $repoUrl,
|
||||
);
|
||||
|
||||
$gitHubDriver = new GitHubDriver($repoConfig, $io, $this->config, $process, $remoteFilesystem);
|
||||
$gitHubDriver = new GitHubDriver($repoConfig, $io, $this->config, $process, $httpDownloader);
|
||||
$gitHubDriver->initialize();
|
||||
|
||||
$this->assertEquals('test_master', $gitHubDriver->getRootIdentifier());
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue