testbot: Cleanup uses of GetKeys(), GetItem(), GetKey() and CreateCollection().
Francois Gouget
fgouget at codeweavers.com
Tue Oct 30 22:47:17 CDT 2012
Specifically:
- Use GetItems() instead of GetKeys() where appropriate. This way the code is simpler and we avoid one call to GetItem() for each iteration.
- Don't call GetKey() when we already have the object's key in a variable.
- Don't store the result of CreateCollection() in a variable if we are only going to use it once.
---
testbot/bin/CheckForWinetestUpdate.pl | 11 +++-----
testbot/bin/Engine.pl | 17 +++++-------
testbot/bin/Janitor.pl | 38 +++++++++------------------
testbot/bin/RevertVM.pl | 3 +--
testbot/bin/WineRunBuild.pl | 10 +++----
testbot/bin/WineRunReconfig.pl | 4 +--
testbot/bin/WineRunTask.pl | 4 +--
testbot/bin/WineSendLog.pl | 3 +--
testbot/lib/WineTestBot/Branches.pm | 8 ++----
testbot/lib/WineTestBot/CGI/Sessions.pm | 6 +----
testbot/lib/WineTestBot/Jobs.pm | 35 +++++++-----------------
testbot/lib/WineTestBot/Patches.pm | 12 ++++-----
testbot/lib/WineTestBot/PendingPatchSets.pm | 3 +--
testbot/lib/WineTestBot/StepsTasks.pm | 8 ++----
testbot/lib/WineTestBot/Tasks.pm | 4 +--
testbot/lib/WineTestBot/Users.pm | 6 ++---
testbot/lib/WineTestBot/VMs.pm | 9 +++----
testbot/web/JobDetails.pl | 5 ++--
testbot/web/Submit.pl | 24 +++++++----------
19 files changed, 67 insertions(+), 143 deletions(-)
diff --git a/testbot/bin/CheckForWinetestUpdate.pl b/testbot/bin/CheckForWinetestUpdate.pl
index f8a9128..89c828f 100755
--- a/testbot/bin/CheckForWinetestUpdate.pl
+++ b/testbot/bin/CheckForWinetestUpdate.pl
@@ -89,9 +89,8 @@ sub AddJob
$VMs->FilterNotOffline();
foreach my $VMKey (@{$VMs->SortKeysBySortOrder($VMs->GetKeys())})
{
- my $VM = $VMs->GetItem($VMKey);
my $Task = $Tasks->Add();
- $Task->VM($VM);
+ $Task->VM($VMs->GetItem($VMKey));
$Task->Timeout($SuiteTimeout);
$HasTasks = 1;
}
@@ -128,14 +127,12 @@ sub AddReconfigJob
$NewStep->InStaging(!1);
# Add a task for the build VM
- my $Tasks = $NewStep->Tasks;
my $VMs = CreateVMs();
$VMs->AddFilter("Type", ["build"]);
$VMs->AddFilter("Role", ["base"]);
- my $BuildKey = ${$VMs->GetKeys()}[0];
- my $VM = $VMs->GetItem($BuildKey);
- my $Task = $Tasks->Add();
- $Task->VM($VM);
+ my $BuildVM = ${$VMs->GetItems()}[0];
+ my $Task = $NewStep->Tasks->Add();
+ $Task->VM($BuildVM);
$Task->Timeout($ReconfigTimeout);
# Now save the whole thing
diff --git a/testbot/bin/Engine.pl b/testbot/bin/Engine.pl
index f188212..7bd14a1 100755
--- a/testbot/bin/Engine.pl
+++ b/testbot/bin/Engine.pl
@@ -61,8 +61,7 @@ sub HandleJobSubmit
{
my $JobKey = $_[0];
- my $Jobs = CreateJobs();
- my $Job = $Jobs->GetItem($JobKey);
+ my $Job = CreateJobs()->GetItem($JobKey);
if (! $Job)
{
LogMsg "JobSubmit for nonexistent job $JobKey\n";
@@ -73,10 +72,8 @@ sub HandleJobSubmit
$JobKey = $1;
my $ErrMessage;
- my $Steps = $Job->Steps;
- foreach my $StepKey (@{$Steps->GetKeys()})
+ foreach my $Step (@{$Job->Steps->GetItems()})
{
- my $Step = $Steps->GetItem($StepKey);
$ErrMessage = $Step->HandleStaging($JobKey);
if (defined($ErrMessage))
{
@@ -339,12 +336,11 @@ sub HandleWinePatchWebNotification
}
my $MaxExistingWebPatchId = 0;
- my $Patches = CreatePatches();
- foreach my $PatchKey (@{$Patches->GetKeys()})
+ foreach my $Patch (@{CreatePatches()->GetItems()})
{
- if ($MaxExistingWebPatchId < $Patches->GetItem($PatchKey)->WebPatchId)
+ if ($MaxExistingWebPatchId < $Patch->WebPatchId)
{
- $MaxExistingWebPatchId = $Patches->GetItem($PatchKey)->WebPatchId;
+ $MaxExistingWebPatchId = $Patch->WebPatchId;
}
}
@@ -423,8 +419,7 @@ sub HandleGetScreenshot
}
my $VMName = $1;
- my $VMs = CreateVMs();
- my $VM = $VMs->GetItem($VMName);
+ my $VM = CreateVMs()->GetItem($VMName);
if (! defined($VM))
{
LogMsg "Unknown VM $VMName for screenshot\n";
diff --git a/testbot/bin/Janitor.pl b/testbot/bin/Janitor.pl
index e978aa3..57aa172 100755
--- a/testbot/bin/Janitor.pl
+++ b/testbot/bin/Janitor.pl
@@ -46,9 +46,8 @@ if ($JobPurgeDays != 0)
{
my $DeleteBefore = time() - $JobPurgeDays * 86400;
my $Jobs = CreateJobs();
- foreach my $JobKey (@{$Jobs->GetKeys()})
+ foreach my $Job (@{$Jobs->GetItems()})
{
- my $Job = $Jobs->GetItem($JobKey);
if (defined($Job->Ended) && $Job->Ended < $DeleteBefore)
{
LogMsg "Deleting job ", $Job->Id, "\n";
@@ -65,15 +64,13 @@ if ($JobPurgeDays != 0)
# Delete PatchSets that are more than a day old
my $DeleteBefore = time() - 1 * 86400;
-my $Sets = WineTestBot::PendingPatchSets::CreatePendingPatchSets();
-foreach my $SetKey (@{$Sets->GetKeys()})
+my $Sets = CreatePendingPatchSets();
+foreach my $Set (@{$Sets->GetItems()})
{
- my $Set = $Sets->GetItem($SetKey);
- my $Parts = $Set->Parts;
my $MostRecentPatch;
- foreach my $PartKey (@{$Parts->GetKeys()})
+ foreach my $Part (@{$Set->Parts->GetItems()})
{
- my $Patch = $Parts->GetItem($PartKey)->Patch;
+ my $Patch = $Part->Patch;
if (! defined($MostRecentPatch) ||
$MostRecentPatch->Received < $Patch->Received)
{
@@ -95,9 +92,8 @@ if ($JobPurgeDays != 0)
{
$DeleteBefore = time() - $JobPurgeDays * 86400;
my $Patches = CreatePatches();
- foreach my $PatchKey (@{$Patches->GetKeys()})
+ foreach my $Patch (@{$Patches->GetItems()})
{
- my $Patch = $Patches->GetItem($PatchKey);
if ($Patch->Received < $DeleteBefore)
{
my $Jobs = CreateJobs();
@@ -123,17 +119,13 @@ if ($JobArchiveDays != 0)
my $ArchiveBefore = time() - $JobArchiveDays * 86400;
my $Jobs = CreateJobs();
$Jobs->FilterNotArchived();
- foreach my $JobKey (@{$Jobs->GetKeys()})
+ foreach my $Job (@{$Jobs->GetItems()})
{
- my $Job = $Jobs->GetItem($JobKey);
if (defined($Job->Ended) && $Job->Ended < $ArchiveBefore)
{
LogMsg "Archiving job ", $Job->Id, "\n";
-
- my $Steps = $Job->Steps;
- foreach my $StepKey (@{$Steps->GetKeys()})
+ foreach my $Step (@{$Job->Steps->GetItems()})
{
- my $Step = $Steps->GetItem($StepKey);
unlink "$DataDir/jobs/" . $Job->Id . "/" . $Step->No . "/" .
$Step->FileName;
}
@@ -153,21 +145,15 @@ map { $DeleteList{$_} = 1 } @{$VMs->GetKeys()};
if (%DeleteList)
{
- my $Jobs = CreateJobs();
- foreach my $JobKey (@{$Jobs->GetKeys()})
+ foreach my $Job (@{CreateJobs()->GetItems()})
{
- my $Job = $Jobs->GetItem($JobKey);
- my $Steps = $Job->Steps;
- foreach my $StepKey (@{$Steps->GetKeys()})
+ foreach my $Step (@{$Job->Steps->GetItems()})
{
- my $Step = $Steps->GetItem($StepKey);
- my $Tasks = $Step->Tasks;
- foreach my $TaskKey (@{$Tasks->GetKeys()})
+ foreach my $Task (@{$Step->Tasks->GetItems()})
{
- my $Task = $Tasks->GetItem($TaskKey);
if (exists $DeleteList{$Task->VM->Name})
{
- LogMsg "Keeping the ", $Task->VM->Name, " VM for task (", join(":", $JobKey, $StepKey, $TaskKey), ")\n";
+ LogMsg "Keeping the ", $Task->VM->Name, " VM for task ", join("/", @{$Task->GetMasterKey()}), "\n";
delete $DeleteList{$Task->VM->Name};
}
}
diff --git a/testbot/bin/RevertVM.pl b/testbot/bin/RevertVM.pl
index 7104a28..8fbc22a 100755
--- a/testbot/bin/RevertVM.pl
+++ b/testbot/bin/RevertVM.pl
@@ -76,8 +76,7 @@ if (! $VMKey)
die "Usage: RevertVM.pl VMName";
}
-my $VMs = CreateVMs();
-my $VM = $VMs->GetItem($VMKey);
+my $VM = CreateVMs()->GetItem($VMKey);
if (! defined($VM))
{
FatalError "VM $VMKey doesn't exist";
diff --git a/testbot/bin/WineRunBuild.pl b/testbot/bin/WineRunBuild.pl
index 65da630..40c46e4 100755
--- a/testbot/bin/WineRunBuild.pl
+++ b/testbot/bin/WineRunBuild.pl
@@ -154,8 +154,7 @@ else
FatalError "Invalid TaskNo $TaskNo\n";
}
-my $Jobs = CreateJobs();
-my $Job = $Jobs->GetItem($JobId);
+my $Job = CreateJobs()->GetItem($JobId);
if (! defined($Job))
{
FatalError "Job $JobId doesn't exist\n";
@@ -189,9 +188,8 @@ my $FullErrFileName = "$TaskDir/err";
my $BaseName;
my $Run64 = !1;
-foreach my $StepKey (@{$Job->Steps->GetKeys()})
+foreach my $OtherStep (@{$Job->Steps->GetItems()})
{
- my $OtherStep = $Job->Steps->GetItem($StepKey);
if ($OtherStep->No != $StepNo)
{
my $OtherFileName = $OtherStep->FileName;
@@ -267,9 +265,8 @@ if (defined($ErrMessage))
my $NewStatus = ProcessRawlog($FullRawlogFileName, $FullLogFileName,
$FullErrFileName) ? "completed" : "failed";
-foreach my $StepKey (@{$Job->Steps->GetKeys()})
+foreach my $OtherStep (@{$Job->Steps->GetItems()})
{
- my $OtherStep = $Job->Steps->GetItem($StepKey);
if ($OtherStep->No != $StepNo)
{
my $OtherFileName = $OtherStep->FileName;
@@ -311,7 +308,6 @@ $VM->Save();
$Task = undef;
$Step = undef;
$Job = undef;
-$Jobs = undef;
TaskComplete($JobId, $StepNo, $TaskNo);
diff --git a/testbot/bin/WineRunReconfig.pl b/testbot/bin/WineRunReconfig.pl
index ba03fbd..67bb07b 100755
--- a/testbot/bin/WineRunReconfig.pl
+++ b/testbot/bin/WineRunReconfig.pl
@@ -154,8 +154,7 @@ else
FatalError "Invalid TaskNo $TaskNo\n";
}
-my $Jobs = CreateJobs();
-my $Job = $Jobs->GetItem($JobId);
+my $Job = CreateJobs()->GetItem($JobId);
if (! defined($Job))
{
FatalError "Job $JobId doesn't exist\n";
@@ -248,7 +247,6 @@ $VM->Save();
$Task = undef;
$Step = undef;
$Job = undef;
-$Jobs = undef;
TaskComplete($JobId, $StepNo, $TaskNo);
diff --git a/testbot/bin/WineRunTask.pl b/testbot/bin/WineRunTask.pl
index edcfd81..ef9d78c 100755
--- a/testbot/bin/WineRunTask.pl
+++ b/testbot/bin/WineRunTask.pl
@@ -194,8 +194,7 @@ else
FatalError "Invalid TaskNo $TaskNo\n";
}
-my $Jobs = CreateJobs();
-my $Job = $Jobs->GetItem($JobId);
+my $Job = CreateJobs()->GetItem($JobId);
if (! defined($Job))
{
FatalError "Job $JobId doesn't exist\n";
@@ -359,7 +358,6 @@ $VM->Save();
$Task = undef;
$Step = undef;
$Job = undef;
-$Jobs = undef;
TaskComplete($JobId, $StepNo, $TaskNo);
diff --git a/testbot/bin/WineSendLog.pl b/testbot/bin/WineSendLog.pl
index 768e129..b039e2e 100755
--- a/testbot/bin/WineSendLog.pl
+++ b/testbot/bin/WineSendLog.pl
@@ -524,8 +524,7 @@ else
FatalError "Invalid JobId $JobId\n";
}
-my $Jobs = CreateJobs();
-my $Job = $Jobs->GetItem($JobId);
+my $Job = CreateJobs()->GetItem($JobId);
if (! defined($Job))
{
FatalError "Job $JobId doesn't exist\n";
diff --git a/testbot/lib/WineTestBot/Branches.pm b/testbot/lib/WineTestBot/Branches.pm
index ec80543..56f9965 100644
--- a/testbot/lib/WineTestBot/Branches.pm
+++ b/testbot/lib/WineTestBot/Branches.pm
@@ -62,13 +62,9 @@ sub GetDefaultBranch
{
my $self = shift;
- foreach my $Key (@{$self->GetKeys()})
+ foreach my $Branch (@{$self->GetItems()})
{
- my $Branch = $self->GetItem($Key);
- if ($Branch->IsDefault)
- {
- return $Branch;
- }
+ return $Branch if ($Branch->IsDefault);
}
return undef;
diff --git a/testbot/lib/WineTestBot/CGI/Sessions.pm b/testbot/lib/WineTestBot/CGI/Sessions.pm
index cd423bf..6cf8b71 100644
--- a/testbot/lib/WineTestBot/CGI/Sessions.pm
+++ b/testbot/lib/WineTestBot/CGI/Sessions.pm
@@ -82,11 +82,7 @@ sub DeleteNonPermanentSessions
$self->AddFilter("User", [$User]);
$self->AddFilter("Permanent", [!1]);
-
- foreach my $Key (@{$self->GetKeys()})
- {
- $self->DeleteItem($self->GetItem($Key));
- }
+ map { $self->DeleteItem($_); } @{$self->GetItems()};
}
sub NewSession
diff --git a/testbot/lib/WineTestBot/Jobs.pm b/testbot/lib/WineTestBot/Jobs.pm
index de66023..f4be9dc 100644
--- a/testbot/lib/WineTestBot/Jobs.pm
+++ b/testbot/lib/WineTestBot/Jobs.pm
@@ -120,25 +120,22 @@ sub UpdateStatus
{
my $self = shift;
- my $Steps = $self->Steps;
my $HasQueuedStep = !1;
my $HasRunningStep = !1;
my $HasCompletedStep = !1;
my $HasFailedStep = !1;
- my @SortedSteps = sort { $a->No <=> $b->No } @{$Steps->GetItems()};
+ my @SortedSteps = sort { $a->No <=> $b->No } @{$self->Steps->GetItems()};
foreach my $Step (@SortedSteps)
{
my $Status = $Step->Status;
if ($Status eq "queued" || $Status eq "running")
{
- my $Tasks = $Step->Tasks;
my $HasQueuedTask = !1;
my $HasRunningTask = !1;
my $HasCompletedTask = !1;
my $HasFailedTask = !1;
- foreach my $TaskKey (@{$Tasks->GetKeys()})
+ foreach my $Task (@{$Step->Tasks->GetItems()})
{
- my $Task = $Tasks->GetItem($TaskKey);
$Status = $Task->Status;
if ($HasFailedStep && $Status eq "queued")
{
@@ -216,17 +213,13 @@ sub Cancel
{
my $self = shift;
- my $Steps = $self->Steps;
- foreach my $StepKey (@{$Steps->GetKeys()})
+ foreach my $Step (@{$self->Steps->GetItems()})
{
- my $Step = $Steps->GetItem($StepKey);
my $Status = $Step->Status;
if ($Status eq "queued" || $Status eq "running")
{
- my $Tasks = $Step->Tasks;
- foreach my $TaskKey (@{$Tasks->GetKeys()})
+ foreach my $Task (@{$Step->Tasks->GetItems()})
{
- my $Task = $Tasks->GetItem($TaskKey);
if ($Task->Status eq "queued")
{
$Task->Status("skipped");
@@ -236,16 +229,13 @@ sub Cancel
}
}
- foreach my $StepKey (@{$Steps->GetKeys()})
+ foreach my $Step (@{$self->Steps->GetItems()})
{
- my $Step = $Steps->GetItem($StepKey);
my $Status = $Step->Status;
if ($Status eq "queued" || $Status eq "running")
{
- my $Tasks = $Step->Tasks;
- foreach my $TaskKey (@{$Tasks->GetKeys()})
+ foreach my $Task (@{$Step->Tasks->GetItems()})
{
- my $Task = $Tasks->GetItem($TaskKey);
if ($Task->Status eq "running")
{
if (defined($Task->ChildPid))
@@ -546,11 +536,9 @@ sub Schedule
{
my $self = shift;
- my $VMs = CreateVMs();
my %Hosts;
- foreach my $VMKey (@{$VMs->GetKeys()})
+ foreach my $VM (@{CreateVMs()->GetItems()})
{
- my $VM = $VMs->GetItem($VMKey);
my $Host = $VM->GetHost();
$Hosts{$Host}->{$VM->VirtURI} = 1;
}
@@ -588,15 +576,13 @@ sub Check
my $self = shift;
$self->AddFilter("Status", ["queued", "running"]);
- foreach my $JobKey (@{$self->GetKeys()})
+ foreach my $Job (@{$self->GetItems()})
{
- my $Job = $self->GetItem($JobKey);
- my $Steps = $Job->Steps;
my $HasQueuedStep = !1;
my $HasRunningStep = !1;
my $HasCompletedStep = !1;
my $HasFailedStep = !1;
- my @SortedSteps = sort { $a->No <=> $b->No } @{$Steps->GetItems()};
+ my @SortedSteps = sort { $a->No <=> $b->No } @{$Job->Steps->GetItems()};
foreach my $Step (@SortedSteps)
{
my $Status = $Step->Status;
@@ -607,9 +593,8 @@ sub Check
my $HasRunningTask = !1;
my $HasCompletedTask = !1;
my $HasFailedTask = !1;
- foreach my $TaskKey (@{$Tasks->GetKeys()})
+ foreach my $Task (@{$Tasks->GetItems()})
{
- my $Task = $Tasks->GetItem($TaskKey);
my $Dead = !1;
if (defined($Task->ChildPid) && ! kill 0 => $Task->ChildPid)
{
diff --git a/testbot/lib/WineTestBot/Patches.pm b/testbot/lib/WineTestBot/Patches.pm
index d7dca4e..2852242 100644
--- a/testbot/lib/WineTestBot/Patches.pm
+++ b/testbot/lib/WineTestBot/Patches.pm
@@ -175,7 +175,7 @@ sub Submit
$Users->AddFilter("EMail", [$self->FromEMail]);
if (! $Users->IsEmpty())
{
- $User = $Users->GetItem(@{$Users->GetKeys()}[0]);
+ $User = @{$Users->GetItems()}[0];
}
}
if (! defined($User))
@@ -220,14 +220,12 @@ sub Submit
$NewStep->DebugLevel(0);
# Add build task
- my $Tasks = $NewStep->Tasks;
my $VMs = CreateVMs();
$VMs->AddFilter("Type", ["build"]);
$VMs->AddFilter("Role", ["base"]);
- my $BuildKey = ${$VMs->GetKeys()}[0];
- my $VM = $VMs->GetItem($BuildKey);
- my $Task = $Tasks->Add();
- $Task->VM($VM);
+ my $BuildVM = ${$VMs->GetItems()}[0];
+ my $Task = $NewStep->Tasks->Add();
+ $Task->VM($BuildVM);
$Task->Timeout($BuildTimeout);
foreach my $TestSet (keys %{$Targets{$BaseName}})
@@ -250,9 +248,9 @@ sub Submit
$NewStep->FileName("$FileName.exe");
$NewStep->FileType("exe$Bits");
$NewStep->InStaging(!1);
- $Tasks = $NewStep->Tasks;
# And a task for each VM
+ my $Tasks = $NewStep->Tasks;
my $SortedKeys = $VMs->SortKeysBySortOrder($VMs->GetKeys());
foreach my $VMKey (@$SortedKeys)
{
diff --git a/testbot/lib/WineTestBot/PendingPatchSets.pm b/testbot/lib/WineTestBot/PendingPatchSets.pm
index 1a6b9e5..49dad4a 100644
--- a/testbot/lib/WineTestBot/PendingPatchSets.pm
+++ b/testbot/lib/WineTestBot/PendingPatchSets.pm
@@ -316,9 +316,8 @@ sub CheckForCompleteSet
my $self = shift;
my $ErrMessage;
- foreach my $SetKey (@{$self->GetKeys()})
+ foreach my $Set (@{$self->GetItems()})
{
- my $Set = $self->GetItem($SetKey);
if ($Set->CheckComplete())
{
my $Patch = $Set->Parts->GetItem($Set->TotalParts)->Patch;
diff --git a/testbot/lib/WineTestBot/StepsTasks.pm b/testbot/lib/WineTestBot/StepsTasks.pm
index 4ffd812..810d5c4 100644
--- a/testbot/lib/WineTestBot/StepsTasks.pm
+++ b/testbot/lib/WineTestBot/StepsTasks.pm
@@ -122,14 +122,10 @@ sub _initialize
$self->SUPER::_initialize(@_);
- my $Steps = $Job->Steps;
- foreach my $StepKey (@{$Steps->GetKeys()})
+ foreach my $Step (@{$Job->Steps->GetItems()})
{
- my $Step = $Steps->GetItem($StepKey);
- my $Tasks = $Step->Tasks;
- foreach my $TaskKey (@{$Tasks->GetKeys()})
+ foreach my $Task (@{$Step->Tasks->GetItems()})
{
- my $Task = $Tasks->GetItem($TaskKey);
my $StepTask = $self->CreateItem();
$StepTask->Id(100 * $Step->No + $Task->No);
$StepTask->StepNo($Step->No);
diff --git a/testbot/lib/WineTestBot/Tasks.pm b/testbot/lib/WineTestBot/Tasks.pm
index 2630ee2..f0ff98c 100644
--- a/testbot/lib/WineTestBot/Tasks.pm
+++ b/testbot/lib/WineTestBot/Tasks.pm
@@ -82,8 +82,7 @@ sub Run
my $Pid = fork;
if (defined($Pid) && ! $Pid)
{
- my $Jobs = WineTestBot::Jobs::CreateJobs();
- my $Job = $Jobs->GetItem($JobId);
+ my $Job = WineTestBot::Jobs::CreateJobs()->GetItem($JobId);
my $Step = $Job->Steps->GetItem($StepNo);
my $RunScript;
if ($Step->Type eq "build")
@@ -100,7 +99,6 @@ sub Run
}
$Step = undef;
$Job = undef;
- $Jobs = undef;
$ENV{PATH} = "/usr/bin:/bin";
delete $ENV{ENV};
exec($RunScript, $JobId, $StepNo, $self->No);
diff --git a/testbot/lib/WineTestBot/Users.pm b/testbot/lib/WineTestBot/Users.pm
index d5ed7d3..2e6eedc 100644
--- a/testbot/lib/WineTestBot/Users.pm
+++ b/testbot/lib/WineTestBot/Users.pm
@@ -291,8 +291,7 @@ sub HasRole
my $self = shift;
my $RoleName = shift;
- my $Roles = $self->Roles;
- return defined($Roles->GetItem($RoleName));
+ return defined($self->Roles->GetItem($RoleName));
}
package WineTestBot::Users;
@@ -412,8 +411,7 @@ sub GetBatchUser
{
my $class = shift;
- my $Users = $class->CreateUsers();
- return $Users->GetItem("batch");
+ return $class->CreateUsers()->GetItem("batch");
}
sub SetCurrentUser
diff --git a/testbot/lib/WineTestBot/VMs.pm b/testbot/lib/WineTestBot/VMs.pm
index ad6d1b0..4cc64d7 100644
--- a/testbot/lib/WineTestBot/VMs.pm
+++ b/testbot/lib/WineTestBot/VMs.pm
@@ -556,10 +556,9 @@ sub CountRevertingRunningVMs
my $RevertingVMs = 0;
my $RunningVMs = 0;
- foreach my $VMKey (@{$self->GetKeys()})
+ foreach my $VM (@{$self->GetItems()})
{
- my $VMStatus = $self->GetItem($VMKey)->Status;
-
+ my $VMStatus = $VM->Status;
if ($VMStatus eq "reverting")
{
$RevertingVMs++;
@@ -578,11 +577,9 @@ sub CountPoweredOnNonBaseVMs
my $self = shift;
my $PowerdOnVMs = 0;
- foreach my $VMKey (@{$self->GetKeys()})
+ foreach my $VM (@{$self->GetItems()})
{
- my $VM = $self->GetItem($VMKey);
my $VMStatus = $VM->Status;
-
if ($VM->Role ne "base" &&
($VMStatus eq "reverting" ||
$VMStatus eq "sleeping" ||
diff --git a/testbot/web/JobDetails.pl b/testbot/web/JobDetails.pl
index ea07014..2ca81b8 100644
--- a/testbot/web/JobDetails.pl
+++ b/testbot/web/JobDetails.pl
@@ -169,10 +169,9 @@ sub GeneratePage
{
my $self = shift;
- foreach my $Key (@{$self->{Collection}->GetKeys()})
+ foreach my $Job (@{$self->{Collection}->GetItems()})
{
- my $Item = $self->{Collection}->GetItem($Key);
- if ($Item->Status eq "queued" || $Item->Status eq "running")
+ if ($Job->Status eq "queued" || $Job->Status eq "running")
{
$self->{Request}->headers_out->add("Refresh", "30");
last;
diff --git a/testbot/web/Submit.pl b/testbot/web/Submit.pl
index 233583c..d774b9a 100644
--- a/testbot/web/Submit.pl
+++ b/testbot/web/Submit.pl
@@ -155,7 +155,7 @@ sub GenerateFields
{
my $Branch = $Branches->GetItem($Key);
print "<option value='", $self->CGI->escapeHTML($Key), "'";
- if ($Branch->GetKey() eq $SelectedBranchKey)
+ if ($Key eq $SelectedBranchKey)
{
print " selected";
}
@@ -215,7 +215,6 @@ sub GenerateFields
$VMs->AddFilter("Role", ["winetest", "extra"]);
foreach my $VMKey (@{$VMs->GetKeys()})
{
- my $VM = $VMs->GetItem($VMKey);
my $FieldName = "vm_" . $self->CGI->escapeHTML($VMKey);
if (defined $self->GetParam($FieldName))
{
@@ -253,7 +252,7 @@ sub GenerateFields
foreach my $VMKey (@$SortedKeys)
{
my $VM = $VMs->GetItem($VMKey);
- my $FieldName = "vm_" . $self->CGI->escapeHTML($VM->GetKey());
+ my $FieldName = "vm_" . $self->CGI->escapeHTML($VMKey);
print "<div class='ItemProperty'><label>",
$self->CGI->escapeHTML($VM->Name);
if ($VM->Description)
@@ -278,8 +277,7 @@ sub GenerateFields
my $VMs = CreateVMs();
foreach my $VMKey (@{$VMs->GetKeys()})
{
- my $VM = $VMs->GetItem($VMKey);
- my $FieldName = "vm_" . $self->CGI->escapeHTML($VM->GetKey());
+ my $FieldName = "vm_" . $self->CGI->escapeHTML($VMKey);
if ($self->GetParam($FieldName))
{
print "<div><input type='hidden' name='$FieldName' value='on'>",
@@ -377,8 +375,7 @@ sub DisplayProperty
$VMs->AddFilter("Type", ["win64"]);
foreach my $VMKey (@{$VMs->GetKeys()})
{
- my $VM = $VMs->GetItem($VMKey);
- my $FieldName = "vm_" . $self->CGI->escapeHTML($VM->GetKey());
+ my $FieldName = "vm_" . $self->CGI->escapeHTML($VMKey);
if ($self->GetParam($FieldName))
{
$Show64 = 1;
@@ -447,8 +444,7 @@ sub Validate
my $VMs = CreateVMs();
foreach my $VMKey (@{$VMs->GetKeys()})
{
- my $VM = $VMs->GetItem($VMKey);
- my $FieldName = "vm_" . $self->CGI->escapeHTML($VM->GetKey());
+ my $FieldName = "vm_" . $self->CGI->escapeHTML($VMKey);
if ($self->GetParam($FieldName))
{
$VMSelected = 1;
@@ -839,14 +835,12 @@ sub OnSubmit
$BuildStep->DebugLevel(0);
# ...with a build task
- my $Tasks = $BuildStep->Tasks;
my $VMs = CreateVMs();
$VMs->AddFilter("Type", ["build"]);
$VMs->AddFilter("Role", ["base"]);
- my $BuildKey = ${$VMs->GetKeys()}[0];
- my $VM = $VMs->GetItem($BuildKey);
- my $Task = $Tasks->Add();
- $Task->VM($VM);
+ my $BuildVM = ${$VMs->GetItems()}[0];
+ my $Task = $BuildStep->Tasks->Add();
+ $Task->VM($BuildVM);
$Task->Timeout($BuildTimeout);
}
@@ -864,7 +858,7 @@ sub OnSubmit
foreach my $VMKey (@$SortedKeys)
{
my $VM = $VMs->GetItem($VMKey);
- my $FieldName = "vm_" . $self->CGI->escapeHTML($VM->GetKey());
+ my $FieldName = "vm_" . $self->CGI->escapeHTML($VMKey);
next if (!$self->GetParam($FieldName)); # skip unselected VMs
if (!$Tasks)
--
1.7.10.4
More information about the wine-patches
mailing list