36-Common-Regexp.t 1.32 KB
Newer Older
Xavier Guimard's avatar
Xavier Guimard committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
# Before `make install' is performed this script should be runnable with
# `make test'. After `make install' it should work as `perl Lemonldap-NG-Common.t'

#########################

# change 'tests => 1' to 'tests => last_test_to_print';

use Test::More tests => 20;
use strict;

BEGIN {
    use_ok('Lemonldap::NG::Common::Regexp');
}

#########################

Christophe Maudoux's avatar
Typo  
Christophe Maudoux committed
17
# Insert your test code below, the Test::More module is used here so read
Xavier Guimard's avatar
Xavier Guimard committed
18 19 20 21 22 23 24 25 26 27 28 29 30 31
# its man page ( perldoc Test::More ) for help writing this test script.

*HOST            = *Lemonldap::NG::Common::Regexp::HOST;
*HOSTNAME        = *Lemonldap::NG::Common::Regexp::HOSTNAME;
*HTTP_URI        = *Lemonldap::NG::Common::Regexp::HTTP_URI;
*reDomainsToHost = *Lemonldap::NG::Common::Regexp::reDomainsToHost;

ok( 'test.ex.com' =~ HOST() );
ok( 'test.ex.com' =~ HOSTNAME() );
ok( 'test..ex.com' !~ HOST() );
ok( 'test..ex.com' !~ HOSTNAME() );
ok( '10.1.1.1' =~ HOST() );
ok( '10.1.1.1' !~ HOSTNAME() );
ok( 'test.ex.com' !~ HTTP_URI() );
Clément OUDOT's avatar
Clément OUDOT committed
32 33
ok( 'https://test.ex.com' =~ HTTP_URI() );
ok( 'https://test.ex.com/' =~ HTTP_URI() );
Xavier Guimard's avatar
Xavier Guimard committed
34 35 36 37 38 39 40 41 42 43 44
ok( 'https://test.ex.com/a' =~ HTTP_URI() );
ok( 'https://test.ex.com/?<script>' !~ HTTP_URI() );

my $re;
ok( $re = reDomainsToHost('a.com b.org c.net') );
ok( 'test.d.fr' !~ $re );

foreach (qw(a.com b.org c.net)) {
    ok( "test.$_" =~ $re );
    ok( "test..$_" !~ $re );
}