summaryrefslogtreecommitdiff
path: root/t/Git-SVN/Utils/canonicalize_url.t
blob: 05795ab636d6885c2aec82512aefd679c736a7e0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#!/usr/bin/env perl

# Test our own home rolled URL canonicalizer.  Test the private one
# directly because we can't predict what the SVN API is doing to do.

use strict;
use warnings;

use Test::More 'no_plan';

use Git::SVN::Utils;
my $canonicalize_url = \&Git::SVN::Utils::_canonicalize_url_ourselves;

my %tests = (
	"http://x.com"			=> "http://x.com",
	"http://x.com/"			=> "http://x.com",
	"http://x.com/foo/bar"		=> "http://x.com/foo/bar",
	"http://x.com//foo//bar//"	=> "http://x.com/foo/bar",
	"http://x.com/  /%/"		=> "http://x.com/%20%20/%25",
);

for my $arg (keys %tests) {
	my $want = $tests{$arg};

	is $canonicalize_url->($arg), $want, "canonicalize_url('$arg') => $want";
}