add WebGUI::GUID and make WebGUI::Session::Id a wrapper around that
This commit is contained in:
parent
cd0986ecdf
commit
e71e95544f
3 changed files with 158 additions and 138 deletions
|
|
@ -50,23 +50,27 @@ my @testSets = (
|
|||
|
||||
my $session = WebGUI::Test->session;
|
||||
|
||||
plan tests => scalar(@testSets) + 6;
|
||||
|
||||
# generate
|
||||
my $generateId = $session->id->generate();
|
||||
is(length($generateId), 22, "generate() - length of 22 characters");
|
||||
my @uniqueIds;
|
||||
my $isUnique = 1;
|
||||
my $isValid = 1;
|
||||
for (1..2000) {
|
||||
last unless $isUnique;
|
||||
my $id = $session->id->generate();
|
||||
$isUnique = ($isUnique ? ! ($id ~~ @uniqueIds) : 0);
|
||||
$isValid = ($isValid ? $session->id->valid($id) : 0);
|
||||
push(@uniqueIds,$id);
|
||||
|
||||
my %uniqueIds;
|
||||
GEN_LOOP: {
|
||||
for (1..2000) {
|
||||
my $id = $session->id->generate();
|
||||
if (! $session->id->valid($id)) {
|
||||
fail "GUID $id is valid";
|
||||
last GEN_LOOP;
|
||||
}
|
||||
elsif ($uniqueIds{$id}) {
|
||||
fail "GUID $id is unique";
|
||||
last GEN_LOOP;
|
||||
}
|
||||
$uniqueIds{$id} = 1;
|
||||
}
|
||||
pass "All GUIDs valid";
|
||||
pass "All GUIDs unique";
|
||||
}
|
||||
ok($isUnique, "generate() - unique");
|
||||
ok($isValid, "generate() - valid id generated");
|
||||
|
||||
foreach my $testSet (@testSets) {
|
||||
is($session->id->valid($testSet->{guid}), $testSet->{valid}, $testSet->{comment});
|
||||
|
|
@ -80,3 +84,6 @@ is($session->id->fromHex('c2369b66c28e6fb90105288eddb430cc'), 'wjabZsKOb7kBBSiO3
|
|||
|
||||
my $re = $session->id->getValidator;
|
||||
is( ref $re, 'Regexp', 'getValidator returns a regexp object');
|
||||
|
||||
done_testing;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue