diff options
Diffstat (limited to 'perl/t/policy')
| -rwxr-xr-x | perl/t/policy/stanford.t | 28 | 
1 files changed, 26 insertions, 2 deletions
| diff --git a/perl/t/policy/stanford.t b/perl/t/policy/stanford.t index 555086c..9ed0fa6 100755 --- a/perl/t/policy/stanford.t +++ b/perl/t/policy/stanford.t @@ -16,7 +16,7 @@ use 5.008;  use strict;  use warnings; -use Test::More tests => 101; +use Test::More tests => 130;  use lib 't/lib';  use Util; @@ -24,7 +24,8 @@ use Util;  # Load the naming policy module.  BEGIN {      use_ok('Wallet::Admin'); -    use_ok('Wallet::Policy::Stanford', qw(default_owner verify_name)); +    use_ok('Wallet::Policy::Stanford', +           qw(default_owner verify_name is_for_host));      use_ok('Wallet::Server');  } @@ -101,6 +102,29 @@ for my $name (@INVALID_FILES) {      isnt(verify_name('file', $name), undef, "Invalid file $name");  } +# Now test a few cases for checking to see if a file is host-based.  We don't +# test the legacy examples because they're more complicated and less obvious. +for my $name (@VALID_KEYTABS) { +    my $hostname = 'example.stanford.edu'; +    if ($name =~ m{\b$hostname\b}) { +        is(is_for_host('keytab', $name, $hostname), 1, +           "Keytab $name belongs to $hostname"); +    } else { +        is(is_for_host('keytab', $name, $hostname), 0, +           "Keytab $name doesn't belong to $hostname"); +    } +} +for my $name (@VALID_FILES) { +    my $hostname = 'example.stanford.edu'; +    if ($name =~ m{\b$hostname\b}) { +        is(is_for_host('file', $name, $hostname), 1, +           "File $name belongs to $hostname"); +    } else { +        is(is_for_host('file', $name, $hostname), 0, +           "File $name doesn't belong to $hostname"); +    } +} +  # Now we need an actual database.  Use Wallet::Admin to set it up.  db_setup;  my $setup = eval { Wallet::Admin->new }; | 
