From 9fd3a41576bd5365f9156b47490eecddfb2aa842 Mon Sep 17 00:00:00 2001
From: Craig Andrews <candrews@integralblue.com>
Date: Mon, 24 Aug 2009 20:44:06 -0400
Subject: [PATCH] ftps protocol should be handled the same way as ftp Canon
 urls that have a protocol followed by a host (and no path) automatcally get a
 trailing slash by the canon function - make the unit test match that

---
 classes/File_redirection.php |  2 +-
 tests/URLDetectionTest.php   | 24 ++++++++++++------------
 2 files changed, 13 insertions(+), 13 deletions(-)

diff --git a/classes/File_redirection.php b/classes/File_redirection.php
index d6fa0bcb62..363e3b947c 100644
--- a/classes/File_redirection.php
+++ b/classes/File_redirection.php
@@ -182,7 +182,7 @@ class File_redirection extends Memcached_DataObject
             }
         }
 
-        if (('ftp' == $p['scheme']) || ('http' == $p['scheme']) || ('https' == $p['scheme'])) {
+        if (('ftp' == $p['scheme']) || ('ftps' == $p['scheme']) || ('http' == $p['scheme']) || ('https' == $p['scheme'])) {
             if (empty($p['host'])) return false;
             if (empty($p['path'])) {
                 $out_url .= '/';
diff --git a/tests/URLDetectionTest.php b/tests/URLDetectionTest.php
index ed29dc88ea..e69f1a2c38 100644
--- a/tests/URLDetectionTest.php
+++ b/tests/URLDetectionTest.php
@@ -28,27 +28,27 @@ class URLDetectionTest extends PHPUnit_Framework_TestCase
                      array('example',
                            'example'),
                      array('http://example',
-                           'http://example'),
+                           '<a href="http://example/" rel="external">http://example</a>'),
                      array('http://example/',
-                           'http://example/'),
+                           '<a href="http://example/" rel="external">http://example/</a>'),
                      array('http://example/path',
-                           'http://example/path'),
+                           '<a href="http://example/path" rel="external">http://example/path</a>'),
                      array('http://example.com',
-                           '<a href="http://example.com" rel="external">http://example.com</a>'),
+                           '<a href="http://example.com/" rel="external">http://example.com</a>'),
                      array('https://example.com',
-                           '<a href="https://example.com" rel="external">https://example.com</a>'),
+                           '<a href="https://example.com/" rel="external">https://example.com</a>'),
                      array('ftp://example.com',
-                           '<a href="ftp://example.com" rel="external">ftp://example.com</a>'),
+                           '<a href="ftp://example.com/" rel="external">ftp://example.com</a>'),
                      array('ftps://example.com',
-                           '<a href="ftps://example.com" rel="external">ftps://example.com</a>'),
+                           '<a href="ftps://example.com/" rel="external">ftps://example.com</a>'),
                      array('http://user@example.com',
-                           '<a href="http://user@example.com" rel="external">http://user@example.com</a>'),
+                           '<a href="http://user@example.com/" rel="external">http://user@example.com</a>'),
                      array('http://user:pass@example.com',
-                           '<a href="http://user:pass@example.com" rel="external">http://user:pass@example.com</a>'),
+                           '<a href="http://user:pass@example.com/" rel="external">http://user:pass@example.com</a>'),
                      array('http://example.com:8080',
-                           '<a href="http://example.com:8080" rel="external">http://example.com:8080</a>'),
+                           '<a href="http://example.com:8080/" rel="external">http://example.com:8080</a>'),
                      array('http://www.example.com',
-                           '<a href="http://www.example.com" rel="external">http://www.example.com</a>'),
+                           '<a href="http://www.example.com/" rel="external">http://www.example.com</a>'),
                      array('http://example.com/',
                            '<a href="http://example.com/" rel="external">http://example.com/</a>'),
                      array('http://example.com/path',
@@ -58,7 +58,7 @@ class URLDetectionTest extends PHPUnit_Framework_TestCase
                      array('http://example.com/path.html#fragment',
                            '<a href="http://example.com/path.html#fragment" rel="external">http://example.com/path.html#fragment</a>'),
                      array('http://example.com/path.php?foo=bar&bar=foo',
-                           '<a href="http://example.com/path.php?foo=bar&bar=foo" rel="external">http://example.com/path.php?foo=bar&bar=foo</a>'),
+                           '<a href="http://example.com/path.php?foo=bar&amp;bar=foo" rel="external">http://example.com/path.php?foo=bar&amp;bar=foo</a>'),
                      array('http://müllärör.de',
                            '<a href="http://müllärör.de" rel="external">http://müllärör.de</a>'),
                      array('http://ﺱﺲﺷ.com',
-- 
2.39.5