Permalink
Browse files

Merge pull request #420 from digitalkaoz/composer_tests

added some trivial tests
  • Loading branch information...
2 parents 6b45390 + a284eb5 commit 8bd0814b67b55d0229ae1bd81a3457df47abd42c @Seldaek committed Mar 11, 2012
@@ -0,0 +1,62 @@
+<?php
+/*
+ * This file is part of Composer.
+ *
+ * (c) Nils Adermann <naderman@naderman.de>
+ * Jordi Boggiano <j.boggiano@seld.be>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Composer\Test;
+
+use Composer\Composer;
+
+class ComposerTest extends TestCase
+{
+ public function testSetGetPackage()
+ {
+ $composer = new Composer();
+ $package = $this->getMock('Composer\Package\PackageInterface');
+ $composer->setPackage($package);
+
+ $this->assertSame($package, $composer->getPackage());
+ }
+
+ public function testSetGetLocker()
+ {
+ $composer = new Composer();
+ $locker = $this->getMockBuilder('Composer\Package\Locker')->disableOriginalConstructor()->getMock();
+ $composer->setLocker($locker);
+
+ $this->assertSame($locker, $composer->getLocker());
+ }
+
+ public function testSetGetRepositoryManager()
+ {
+ $composer = new Composer();
+ $manager = $this->getMockBuilder('Composer\Repository\RepositoryManager')->disableOriginalConstructor()->getMock();
+ $composer->setRepositoryManager($manager);
+
+ $this->assertSame($manager, $composer->getRepositoryManager());
+ }
+
+ public function testSetGetDownloadManager()
+ {
+ $composer = new Composer();
+ $manager = $this->getMock('Composer\Downloader\DownloadManager');
+ $composer->setDownloadManager($manager);
+
+ $this->assertSame($manager, $composer->getDownloadManager());
+ }
+
+ public function testSetGetInstallationManager()
+ {
+ $composer = new Composer();
+ $manager = $this->getMock('Composer\Installer\InstallationManager');
+ $composer->setInstallationManager($manager);
+
+ $this->assertSame($manager, $composer->getInstallationManager());
+ }
+}
@@ -32,4 +32,20 @@ public function testGetFileName()
$this->assertRegExp('#/path/[a-z0-9]+\.js#', $first);
$this->assertSame($first, $method->invoke($downloader, $packageMock, '/path'));
}
+
+ public function testProcessUrl()
+ {
+ $downloader = $this->getMockForAbstractClass('Composer\Downloader\ArchiveDownloader', array($this->getMock('Composer\IO\IOInterface')));
+ $method = new \ReflectionMethod($downloader, 'processUrl');
+ $method->setAccessible(true);
+
+ $expected = 'https://github.com/composer/composer/zipball/master';
+ $url = $method->invoke($downloader, $expected);
+
+ if (extension_loaded('openssl')) {
+ $this->assertEquals($expected, $url);
+ } else {
+ $this->assertEquals('http://nodeload.github.com/composer/composer/zipball/master', $url);
+ }
+ }
}
@@ -0,0 +1,84 @@
+<?php
+
+/*
+ * This file is part of Composer.
+ *
+ * (c) Nils Adermann <naderman@naderman.de>
+ * Jordi Boggiano <j.boggiano@seld.be>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Composer\Test\IO;
+
+use Composer\IO\NullIO;
+use Composer\Test\TestCase;
+
+class NullIOTest extends TestCase
+{
+ public function testIsInteractive()
+ {
+ $io = new NullIO();
+
+ $this->assertFalse($io->isInteractive());
+ }
+
+ public function testHasAuthorization()
+ {
+ $io = new NullIO();
+
+ $this->assertFalse($io->hasAuthorization('foo'));
+ }
+
+ public function testGetLastPassword()
+ {
+ $io = new NullIO();
+
+ $this->assertNull($io->getLastPassword());
+ }
+
+ public function testGetLastUsername()
+ {
+ $io = new NullIO();
+
+ $this->assertNull($io->getLastUsername());
+ }
+
+ public function testAskAndHideAnswer()
+ {
+ $io = new NullIO();
+
+ $this->assertNull($io->askAndHideAnswer('foo'));
+ }
+
+ public function testGetAuthorizations()
+ {
+ $io = new NullIO();
+
+ $this->assertInternalType('array', $io->getAuthorizations());
+ $this->assertEmpty($io->getAuthorizations());
+ $this->assertEquals(array('username' => null, 'password' => null), $io->getAuthorization('foo'));
+ }
+
+ public function testAsk()
+ {
+ $io = new NullIO();
+
+ $this->assertEquals('foo', $io->ask('bar', 'foo'));
+ }
+
+ public function testAskConfirmation()
+ {
+ $io = new NullIO();
+
+ $this->assertEquals('foo', $io->askConfirmation('bar', 'foo'));
+ }
+
+ public function testAskAndValidate()
+ {
+ $io = new NullIO();
+
+ $this->assertEquals('foo', $io->askAndValidate('question', 'validator', false, 'foo'));
+ }
+}

0 comments on commit 8bd0814

Please sign in to comment.