From e004eab9f57da5a7b17f28cc5e883d54691a7d7e Mon Sep 17 00:00:00 2001 From: Colin Kuskie Date: Tue, 23 Mar 2010 16:15:09 -0700 Subject: [PATCH] New infrastructure for building the parents that an asset requires. --- t/tests/Test/WebGUI/Asset.pm | 41 ++++++++++++++++++------------------ 1 file changed, 20 insertions(+), 21 deletions(-) diff --git a/t/tests/Test/WebGUI/Asset.pm b/t/tests/Test/WebGUI/Asset.pm index fc4e25748..8d0a269e1 100644 --- a/t/tests/Test/WebGUI/Asset.pm +++ b/t/tests/Test/WebGUI/Asset.pm @@ -24,23 +24,25 @@ sub list_of_tables { return [qw/assetData/]; } -sub getMyParent { - my $test = shift; - my $session = $test->session; - my $parentClasses = $test->class->valid_parent_classes; - my $default = WebGUI::Asset->getDefault($session); - if (WebGUI::Utility::isIn('WebGUI::Asset', @{ $parentClasses}) ) { - return $default; - } - else { - my $class = $parentClasses->[0]; - note "Adding a parent of $class"; - my $parent = $default->addChild({ - className => $class, - }, undef, undef, {skipNotification => 1, skipAutoCommitWorkflows => 1,}); - addToCleanup($parent); - return $parent; +sub parent_list { + return []; +} + +sub getMyParents { + my $test = shift; + my $session = $test->session; + my $parent_classes = $test->parent_list; + my @parents = (); + my $default = WebGUI::Asset->getDefault($session); + push @parents, $default; + my $parent = $default; + foreach $parent_class (@{ $parent_classes }) { + my $new_parent = $parent->addChild({className => $parent_class}, undef, undef, {skipNotification => 1, skipAutoCommitWorkflows => 1,}); + push @parents, $new_parent; + $parent = $new_parent; + addToCleanup($new_parent); } + return @parents; } sub _constructor : Test(4) { @@ -194,11 +196,8 @@ sub keywords : Test(3) { my $test = shift; my $session = $test->session; note "keywords for ".$test->class; - use Data::Dumper; - warn Dumper $test->class->valid_parent_classes; - my $parent = $test->getMyParent; - note "got parent and it is a ".ref $parent; - my $asset = $parent->addChild({ + my @parents = $test->getMyParents; + my $asset = $parents[-1]->addChild({ className => $test->class, }, undef, undef, {skipNotification => 1, skipAutoCommitWorkflows => 1,}); addToCleanup($asset);