diff --git a/lib/WebGUI/Workflow/Activity/NotifyAboutLowStock.pm b/lib/WebGUI/Workflow/Activity/NotifyAboutLowStock.pm index fb51f2860..77255ec17 100644 --- a/lib/WebGUI/Workflow/Activity/NotifyAboutLowStock.pm +++ b/lib/WebGUI/Workflow/Activity/NotifyAboutLowStock.pm @@ -98,7 +98,7 @@ sub execute { my $warningLimit = $self->get('warningLimit'); my $finishTime = time() + $self->getTTL; my $expired = 0; - PRODUCT: foreach my $product ($productIterator->()) { + PRODUCT: while (my $product = $productIterator->()) { VARIANT: foreach my $collateral ( @{ $product->getAllCollateral('variantsJSON') }) { if ($collateral->{quantity} <= $warningLimit) { ##Build message diff --git a/t/Workflow/Activity/NotifyAboutLowStock.t b/t/Workflow/Activity/NotifyAboutLowStock.t index 7921a128d..39b564f65 100644 --- a/t/Workflow/Activity/NotifyAboutLowStock.t +++ b/t/Workflow/Activity/NotifyAboutLowStock.t @@ -35,7 +35,11 @@ my $posters = $import->addChild({ className => 'WebGUI::Asset::Sku::Product', url => 'cell_posters', title => "Red's Posters", -}); +}, undef, undef, { skipAutoCommitWorkflows => 1, }); + +my $versionTag = WebGUI::VersionTag->getWorking($session); +$versionTag->commit(); +addToCleanup($versionTag); my $ritaVarId = $posters->setCollateral('variantsJSON', 'variantId', 'new', { @@ -74,6 +78,7 @@ my $workflow = WebGUI::Workflow->create($session, mode => 'realtime', }, ); +addToCleanup($workflow); my $threshold = $workflow->addActivity('WebGUI::Workflow::Activity::NotifyAboutLowStock'); $threshold->set('className' , 'WebGUI::Activity::NotifyAboutLowStock');