From cd2e5bf2e05c830c674a3da4cc646b1c521ebf69 Mon Sep 17 00:00:00 2001 From: Jordi Boggiano Date: Sat, 24 Mar 2012 23:19:58 +0100 Subject: [PATCH] Make SvnDriver::supports less greedy and more realistic --- src/Composer/Repository/Vcs/SvnDriver.php | 7 ++++--- tests/Composer/Test/Repository/Vcs/SvnDriverTest.php | 5 ----- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/src/Composer/Repository/Vcs/SvnDriver.php b/src/Composer/Repository/Vcs/SvnDriver.php index 631058234..2e9c71798 100644 --- a/src/Composer/Repository/Vcs/SvnDriver.php +++ b/src/Composer/Repository/Vcs/SvnDriver.php @@ -262,12 +262,13 @@ class SvnDriver extends VcsDriver */ public static function supports($url, $deep = false) { - $url = self::fixSvnUrl($url); - if (preg_match('#((^svn://)|(^svn\+ssh://)|(^file:///)|(^http)|(svn\.))#i', $url)) { + $url = self::normalizeUrl($url); + if (preg_match('#(^svn://|^svn\+ssh://|svn\.)#i', $url)) { return true; } - if (!$deep) { + // proceed with deep check for local urls since they are fast to process + if (!$deep && !static::isLocalUrl($url)) { return false; } diff --git a/tests/Composer/Test/Repository/Vcs/SvnDriverTest.php b/tests/Composer/Test/Repository/Vcs/SvnDriverTest.php index 5cbdf7b2b..3265ab311 100644 --- a/tests/Composer/Test/Repository/Vcs/SvnDriverTest.php +++ b/tests/Composer/Test/Repository/Vcs/SvnDriverTest.php @@ -58,15 +58,10 @@ class SvnDriverTest extends \PHPUnit_Framework_TestCase array('https://svn.sf.net', true), array('svn://example.org', true), array('svn+ssh://example.org', true), - array('file:///d:/repository_name/project', true), - array('file:///repository_name/project', true), - array('/absolute/path', true), ); } /** - * Nail a bug in {@link SvnDriver::support()}. - * * @dataProvider supportProvider */ public function testSupport($url, $assertion)