From 5b24340994e72a7b44d2f1a4654a9b4ecfbf572d Mon Sep 17 00:00:00 2001 From: Colin Kuskie Date: Fri, 22 Jan 2010 18:36:54 -0800 Subject: [PATCH] sessionify duplicate. Tweak AssetClipboard test to use Moose methods. --- lib/WebGUI/AssetClipboard.pm | 9 +++++---- t/Asset/AssetClipboard.t | 20 +++++++++++--------- 2 files changed, 16 insertions(+), 13 deletions(-) diff --git a/lib/WebGUI/AssetClipboard.pm b/lib/WebGUI/AssetClipboard.pm index b231ce4e5..fafb3e4cf 100644 --- a/lib/WebGUI/AssetClipboard.pm +++ b/lib/WebGUI/AssetClipboard.pm @@ -93,25 +93,26 @@ Assets that normally autocommit their workflows (like CS Posts, and Wiki Pages) sub duplicate { my $self = shift; + my $session = $self->session; my $options = shift; my $parent = $self->getParent; my $newAsset = $parent->addChild( $self->get, undef, $self->get("revisionDate"), { skipAutoCommitWorkflows => $options->{skipAutoCommitWorkflows} } ); - $self->session->log->error( + $session->log->error( sprintf "Unable to add child %s (%s) to %s (%s)", $self->getTitle, $self->getId, $parent->getTitle, $parent->getId ); # Duplicate metadata fields - my $sth = $self->session->db->read( + my $sth = $session->db->read( "select * from metaData_values where assetId = ?", [$self->getId] ); while (my $h = $sth->hashRef) { - $self->session->db->write("insert into metaData_values (fieldId, assetId, value) values (?, ?, ?)", [$h->{fieldId}, $newAsset->getId, $h->{value}]); + $session->db->write("insert into metaData_values (fieldId, assetId, value) values (?, ?, ?)", [$h->{fieldId}, $newAsset->getId, $h->{value}]); } # Duplicate keywords - my $k = WebGUI::Keyword->new( $self->session ); + my $k = WebGUI::Keyword->new( $session ); my $keywords = $k->getKeywordsForAsset( { asset => $self, asArrayRef => 1, diff --git a/t/Asset/AssetClipboard.t b/t/Asset/AssetClipboard.t index 4ef457678..8f03d6ad4 100644 --- a/t/Asset/AssetClipboard.t +++ b/t/Asset/AssetClipboard.t @@ -72,12 +72,13 @@ $versionTag->commit; sleep 2; +note "duplicate"; my $duplicatedSnippet = $snippet->duplicate; -is($duplicatedSnippet->get('title'), 'snippet', 'duplicated snippet has correct title'); -isnt($duplicatedSnippet->getId, $snippetAssetId, 'duplicated snippet does not have same assetId as original'); +is($duplicatedSnippet->title, 'snippet', 'duplicated snippet has correct title'); +isnt($duplicatedSnippet->getId, $snippetAssetId, 'duplicated snippet does not have same assetId as original'); is( - $duplicatedSnippet->get("revisionDate"), + $duplicatedSnippet->revisionDate, $snippetRevisionDate, 'duplicated snippet has the same revision date', ); @@ -96,9 +97,10 @@ WebGUI::Test->tagsToRollback($newVersionTag); # #################################################### -is( $topFolder->cut, 1, 'cut: returns 1 if successful' ); -is($topFolder->get('state'), 'clipboard', '... state set to trash on the trashed asset object'); -is($topFolder->cloneFromDb->get('state'), 'clipboard', '... state set to trash in db on object'); -is($folder1a->cloneFromDb->get('state'), 'clipboard-limbo', '... state set to clipboard-limbo on child #1'); -is($folder1b->cloneFromDb->get('state'), 'clipboard-limbo', '... state set to clipboard-limbo on child #2'); -is($folder1a2->cloneFromDb->get('state'), 'clipboard-limbo', '... state set to clipboard-limbo on grandchild #1-1'); +note "cut"; +is($topFolder->cut, 1, 'returns 1 if successful' ); +is($topFolder->state, 'clipboard', '... state set to trash on the trashed asset object'); +is($topFolder->cloneFromDb->state, 'clipboard', '... state set to trash in db on object'); +is($folder1a->cloneFromDb->state, 'clipboard-limbo', '... state set to clipboard-limbo on child #1'); +is($folder1b->cloneFromDb->state, 'clipboard-limbo', '... state set to clipboard-limbo on child #2'); +is($folder1a2->cloneFromDb->state, 'clipboard-limbo', '... state set to clipboard-limbo on grandchild #1-1');