41 lines
1.1 KiB
Perl
41 lines
1.1 KiB
Perl
use Test::More;
|
|
use strict;
|
|
|
|
require 't/test-lib.pm';
|
|
|
|
my $app = LLNG::Manager::Test->new( {
|
|
ini => {
|
|
logLevel => 'error',
|
|
}
|
|
}
|
|
)->p;
|
|
|
|
my @tests = (
|
|
[] => 'http://auth.example.com/',
|
|
['foo'] => 'http://auth.example.com/foo',
|
|
[ 'foo', 'bar' ] => 'http://auth.example.com/foo/bar',
|
|
[ { p => 1 } ] => 'http://auth.example.com/?p=1',
|
|
['https://foo'] => 'https://foo',
|
|
[ 'https://foo', 'bar' ] => 'https://foo/bar',
|
|
[ 'https://foo', 'bar', 'baz' ] => 'https://foo/bar/baz',
|
|
[ 'https://foo', { p => 1 } ] => 'https://foo?p=1',
|
|
[ 'https://foo', 'bar', { p => 1 } ] => 'https://foo/bar?p=1',
|
|
);
|
|
|
|
{
|
|
no warnings;
|
|
$Data::Dumper::Indent = 0;
|
|
$Data::Dumper::Terse = 1;
|
|
}
|
|
|
|
for ( my $i = 0 ; $i < @tests ; $i += 2 ) {
|
|
my @args = @{ $tests[$i] };
|
|
my $expected = $tests[ $i + 1 ];
|
|
ok( $app->buildUrl(@args) eq $expected,
|
|
Dumper( \@args ) . "\t=>\t" . $tests[ $i + 1 ] )
|
|
or explain( $app->buildUrl(@args) . '', $expected );
|
|
count(1);
|
|
}
|
|
|
|
done_testing( count() );
|