Skip to content

Commit

Permalink
Tests for the URL parsing code
Browse files Browse the repository at this point in the history
  • Loading branch information
cosimo committed Jun 27, 2010
1 parent db624f3 commit c1e6214
Showing 1 changed file with 41 additions and 0 deletions.
41 changes: 41 additions & 0 deletions t/parse-url.t
@@ -0,0 +1,41 @@
#
# Test the parse_url() method
#

use v6;
use Test;

use LWP::Simple;

my @test = (
'Simple URL without path',
'http://www.rakudo.org',
['http', 'www.rakudo.org', 80, '/'],

'Port other than 80',
'http://www.altavista.com:81',
['http', 'www.altavista.com', 81, '/'],

'HTTPS scheme, and default port != 80',
'https://www.rakudo.org/rakudo-latest.tar.bz2',
['https', 'www.rakudo.org', 443, '/rakudo-latest.tar.bz2'],

'#GH-1 http://github.com/cosimo/perl6-lwp-simple/issues/#issue/1',
'http://www.c64.com/path/with/multiple/slashes/',
['http', 'www.c64.com', 80, '/path/with/multiple/slashes/'],

'FTP url',
'ftp://get.opera.com/pub/opera/win/1054/en/Opera_1054_en_Setup.exe',
['ftp', 'get.opera.com', 21, '/pub/opera/win/1054/en/Opera_1054_en_Setup.exe'],
);

for @test -> $test, $url, $results {
my ($scheme, $host, $port, $path) = LWP::Simple.parse_url($url);
is($scheme, $results.[0], "Scheme for $url is $scheme");
is($host, $results.[1], "Hostname for $url is $host");
is($port, $results.[2], "Port for $url is $port");
is($path, $results.[3], "Path for $url is $path");
}

done_testing;

0 comments on commit c1e6214

Please sign in to comment.