#!/usr/bin/perl --
use strict;
use warnings;
use URI;
Main( @ARGV );
exit( 0 );
sub Main {
ABT();
}
sub ABT {
require Test::More;
Test::More->import(qw' no_plan ');
my $base = URI->new("http://a/d/../e/");
my $uri = URI->new("http://a/y");
is( $base, ( "http://a/d/../e/" ) x 2 );
is( $base->path, ( "/d/../e/" ) x 2 );
is( $uri, ( "http://a/y" ) x 2 );
is( $uri->path, ( "/y" ) x 2 );
diag("should the following be equivalent??");
is( $uri->rel($base), "??", q~$uri->rel($base)~ );
is( URI->new( $uri->path )->rel( $base->path ),
$uri->rel($base), q~URI->new( $uri->path )->rel( $base->path )
+~ );
is( URI->new("/y")->rel("/d/../e/"),
$uri->rel($base), q~URI->new("/y")->rel("/d/../e/") ~ );
}
__END__
ok 1 - http://a/d/../e/
ok 2 - /d/../e/
ok 3 - http://a/y
ok 4 - /y
# should the following be equivalent??
not ok 5 - $uri->rel($base)
# Failed test '$uri->rel($base)'
# at - line 27.
# got: '../../../y'
# expected: '??'
not ok 6 - URI->new( $uri->path )->rel( $base->path )
# Failed test 'URI->new( $uri->path )->rel( $base->path )'
# at - line 28.
# got: '/y'
# expected: '../../../y'
not ok 7 - URI->new("/y")->rel("/d/../e/")
# Failed test 'URI->new("/y")->rel("/d/../e/") '
# at - line 30.
# got: '/y'
# expected: '../../../y'
1..7
# Looks like you failed 3 tests of 7.
|