Add cleanup for shopping carts and shipping drivers.
Check for leaky carts and drivers. When cleaning up a cart, also clean up its address book.
This commit is contained in:
parent
23b1cb47c5
commit
359882cc21
1 changed files with 26 additions and 16 deletions
|
|
@ -100,14 +100,16 @@ sub import {
|
||||||
if ($ENV{WEBGUI_TEST_DEBUG}) {
|
if ($ENV{WEBGUI_TEST_DEBUG}) {
|
||||||
##Offset Sessions, and Scratch by 1 because 1 will exist at the start
|
##Offset Sessions, and Scratch by 1 because 1 will exist at the start
|
||||||
my @checkCount = (
|
my @checkCount = (
|
||||||
Sessions => 'userSession',
|
Sessions => 'userSession',
|
||||||
Scratch => 'userSessionScratch',
|
Scratch => 'userSessionScratch',
|
||||||
Users => 'users',
|
Users => 'users',
|
||||||
Groups => 'groups',
|
Groups => 'groups',
|
||||||
mailQ => 'mailQueue',
|
mailQ => 'mailQueue',
|
||||||
Tags => 'assetVersionTag',
|
Tags => 'assetVersionTag',
|
||||||
Assets => 'assetData',
|
Assets => 'assetData',
|
||||||
Workflows => 'Workflow',
|
Workflows => 'Workflow',
|
||||||
|
Carts => 'cart',
|
||||||
|
'Ship Drivers' => 'shipper',
|
||||||
);
|
);
|
||||||
my %initCounts;
|
my %initCounts;
|
||||||
for ( my $i = 0; $i < @checkCount; $i += 2) {
|
for ( my $i = 0; $i < @checkCount; $i += 2) {
|
||||||
|
|
@ -763,6 +765,8 @@ were passed in. Currently able to destroy:
|
||||||
WebGUI::User
|
WebGUI::User
|
||||||
WebGUI::VersionTag
|
WebGUI::VersionTag
|
||||||
WebGUI::Workflow
|
WebGUI::Workflow
|
||||||
|
WebGUI::Shop::Cart
|
||||||
|
WebGUI::Shop::ShipDriver
|
||||||
|
|
||||||
Example call:
|
Example call:
|
||||||
|
|
||||||
|
|
@ -831,14 +835,20 @@ Example call:
|
||||||
);
|
);
|
||||||
|
|
||||||
my %cleanup = (
|
my %cleanup = (
|
||||||
'WebGUI::User' => 'delete',
|
'WebGUI::User' => 'delete',
|
||||||
'WebGUI::Group' => 'delete',
|
'WebGUI::Group' => 'delete',
|
||||||
'WebGUI::Storage' => 'delete',
|
'WebGUI::Storage' => 'delete',
|
||||||
'WebGUI::Shop::Cart' => 'delete',
|
'WebGUI::Asset' => 'purge',
|
||||||
'WebGUI::Asset' => 'purge',
|
'WebGUI::VersionTag' => 'rollback',
|
||||||
'WebGUI::VersionTag' => 'rollback',
|
'WebGUI::Workflow' => 'delete',
|
||||||
'WebGUI::Workflow' => 'delete',
|
'WebGUI::Shop::ShipDriver' => 'delete',
|
||||||
'WebGUI::Session' => sub {
|
'WebGUI::Shop::Cart' => sub {
|
||||||
|
my $cart = shift;
|
||||||
|
my $addressBook = $cart->getAddressBook();
|
||||||
|
$addressBook->delete if $addressBook; ##Should we call cleanupGuard instead???
|
||||||
|
$cart->delete;
|
||||||
|
},
|
||||||
|
'WebGUI::Session' => sub {
|
||||||
my $session = shift;
|
my $session = shift;
|
||||||
$session->var->end;
|
$session->var->end;
|
||||||
$session->close;
|
$session->close;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue