adding tests for scratch overwrite bug
This commit is contained in:
parent
b6759f5a1e
commit
a2dd0b5a48
1 changed files with 26 additions and 3 deletions
|
|
@ -15,7 +15,7 @@ use lib "$FindBin::Bin/../lib";
|
|||
use WebGUI::Test;
|
||||
use WebGUI::Session;
|
||||
|
||||
use Test::More tests => 14; # increment this value for each test you create
|
||||
use Test::More tests => 37; # increment this value for each test you create
|
||||
|
||||
my $session = WebGUI::Test->session;
|
||||
|
||||
|
|
@ -34,7 +34,6 @@ for (my $count = 1; $count <= $maxCount; $count++){
|
|||
is($scratch->get("Test$count"), $count, "Passed set/get $count");
|
||||
}
|
||||
|
||||
|
||||
$scratch->delete("Test1");
|
||||
is($scratch->get("Test1"), undef, "delete()");
|
||||
|
||||
|
|
@ -44,7 +43,31 @@ is($scratch->get("Test10"), undef, "deleteName()");
|
|||
$scratch->deleteAll;
|
||||
is($scratch->get("Test2"), undef, "deleteAll()");
|
||||
|
||||
|
||||
my $testScratchSession = $scratch->session();
|
||||
|
||||
is($testScratchSession, $session, "session()");
|
||||
|
||||
##Build some variables to test database persistency
|
||||
|
||||
for (my $count = 1; $count <= $maxCount; $count++){
|
||||
$scratch->set("dBase$count",$count);
|
||||
my ($setValue) = $session->db->quickArray("select value from userSessionScratch where sessionId=? and name=?",[$session->getId, "dBase$count"]);
|
||||
is($setValue, $count, "database store for set on $count");
|
||||
}
|
||||
|
||||
##Creating a new session with the previous session's Id should clone the scratch data
|
||||
my $newSession = WebGUI::Session->open(WebGUI::Test->root, WebGUI::Test->file, undef, undef, $session->getId);
|
||||
|
||||
ok($newSession->getId eq $session->getId, "Successful session duplication");
|
||||
|
||||
for (my $count = 1; $count <= $maxCount; $count++){
|
||||
is($newSession->scratch->get("dBase$count"), $count, "Passed set/get $count");
|
||||
}
|
||||
|
||||
$scratch->set("dBase5", 15);
|
||||
|
||||
my ($changedValue) = $session->db->quickArray("select value from userSessionScratch where sessionId=? and name=?",[$session->getId, "dBase5"]);
|
||||
is($changedValue, 15, "changing stored scratch value");
|
||||
is($scratch->get("dBase5"), 15, "checking cached scratch value");
|
||||
|
||||
$newSession->close;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue