diff --git a/tests/Composer/Test/Repository/SvnDriverTest.php b/tests/Composer/Test/Repository/SvnDriverTest.php new file mode 100644 index 000000000..27faf0350 --- /dev/null +++ b/tests/Composer/Test/Repository/SvnDriverTest.php @@ -0,0 +1,72 @@ + + * Jordi Boggiano + * Till Klampaeckel + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +// is this namespace correct? I mean, who cares... but? +namespace Composer\Test\Json; + +/** + * Why does composer force an install when I need an autoloader instead? + */ +$root = dirname(dirname(dirname(dirname(__DIR__)))) . '/src'; +set_include_path($root . ':' . get_include_path()); + +require_once $root . '/Composer/Autoload/ClassLoader.php'; +$loader = new \Composer\Autoload\ClassLoader; +$loader->register(); +$loader->setUseIncludePath(true); + +//use Symfony\Component\Process\ExecutableFinder; +//use Composer\Package\Dumper\ArrayDumper; +use Composer\Repository\VcsRepository; +use Composer\Repository\Vcs\SvnDriver; +//use Composer\Util\Filesystem; +//use Composer\Util\ProcessExecutor; +use Composer\IO\NullIO; + +class SvnDriverTest extends \PHPUnit_Framework_TestCase +{ + private static $gitRepo; + private static $skipped; + + public function setUp() + { + if (self::$skipped) { + $this->markTestSkipped(self::$skipped); + } + } + + /** + * Provide some examples for {@self::testCredentials()}. + * + * @return array + */ + public static function urlProvider() + { + return array( + array('http://till:test@svn.example.org/', ' --no-auth-cache --username "till" --password "test" '), + array('http://svn.apache.org/', ''), + array('svn://johndoe@example.org', ' --no-auth-cache --username "johndoe" --password "" '), + ); + } + + /** + * @dataProvider urlProvider + */ + public function testCredentials($url, $expect) + { + $io = new \Composer\IO\NullIO; + $svn = new SvnDriver($url, $io); + + $this->assertEquals($expect, $svn->getSvnCredentialString()); + } +}