testbot/lib: Always call the parent _initialize() and InitializeNew() methods, with the right arguments.
Francois Gouget
fgouget at codeweavers.com
Wed May 21 10:44:59 CDT 2014
Although Item::_initialize() is empty now, it is improper for subclasses to assume so and skip calling it or not pass it the right arguments.
Similarly, although Item::InitializeNew() does not currently use its Collection argument, subclasses should not assume so.
---
testbot/lib/ObjectModel/Collection.pm | 3 ++-
testbot/lib/ObjectModel/Item.pm | 3 ++-
testbot/lib/WineTestBot/Branches.pm | 4 ++--
testbot/lib/WineTestBot/CGI/Sessions.pm | 4 ++--
testbot/lib/WineTestBot/Jobs.pm | 8 ++++----
testbot/lib/WineTestBot/Patches.pm | 4 ++--
testbot/lib/WineTestBot/Steps.pm | 2 +-
testbot/lib/WineTestBot/StepsTasks.pm | 2 +-
testbot/lib/WineTestBot/Tasks.pm | 2 +-
testbot/lib/WineTestBot/Users.pm | 4 ++--
testbot/lib/WineTestBot/VMs.pm | 6 ++++--
11 files changed, 23 insertions(+), 19 deletions(-)
diff --git a/testbot/lib/ObjectModel/Collection.pm b/testbot/lib/ObjectModel/Collection.pm
index a356990..7dbcf63 100644
--- a/testbot/lib/ObjectModel/Collection.pm
+++ b/testbot/lib/ObjectModel/Collection.pm
@@ -102,7 +102,8 @@ sub new
sub _initialize
{
- my ($self) = @_;
+ # $MasterObject may be required for some Collections.
+ my ($self, $MasterObject) = @_;
$self->{AllScopeItems}->{ref($self)} ||= {};
}
diff --git a/testbot/lib/ObjectModel/Item.pm b/testbot/lib/ObjectModel/Item.pm
index 47aea03..0cc07ab 100644
--- a/testbot/lib/ObjectModel/Item.pm
+++ b/testbot/lib/ObjectModel/Item.pm
@@ -72,11 +72,12 @@ sub new
sub _initialize
{
+ #my ($self, $Collection) = @_;
}
sub InitializeNew
{
- my $self = shift;
+ my ($self, $_Collection) = @_;
$self->{IsModified} = !1;
}
diff --git a/testbot/lib/WineTestBot/Branches.pm b/testbot/lib/WineTestBot/Branches.pm
index 0b37e89..f434569 100644
--- a/testbot/lib/WineTestBot/Branches.pm
+++ b/testbot/lib/WineTestBot/Branches.pm
@@ -35,10 +35,10 @@ require Exporter;
sub InitializeNew
{
- my $self = shift;
+ my ($self, $Collection) = @_;
$self->IsDefault(!1);
- $self->SUPER::InitializeNew();
+ $self->SUPER::InitializeNew($Collection);
}
package WineTestBot::Branches;
diff --git a/testbot/lib/WineTestBot/CGI/Sessions.pm b/testbot/lib/WineTestBot/CGI/Sessions.pm
index a053036..3fbef8a 100644
--- a/testbot/lib/WineTestBot/CGI/Sessions.pm
+++ b/testbot/lib/WineTestBot/CGI/Sessions.pm
@@ -36,9 +36,9 @@ use vars qw(@ISA @EXPORT);
sub InitializeNew
{
- my $self = shift;
+ my ($self, $Collection) = @_;
- $self->SUPER::InitializeNew(@_);
+ $self->SUPER::InitializeNew($Collection);
$self->Permanent(!1);
}
diff --git a/testbot/lib/WineTestBot/Jobs.pm b/testbot/lib/WineTestBot/Jobs.pm
index 4532d4e..60241e0 100644
--- a/testbot/lib/WineTestBot/Jobs.pm
+++ b/testbot/lib/WineTestBot/Jobs.pm
@@ -62,23 +62,23 @@ require Exporter;
sub _initialize
{
- my $self = shift;
+ my ($self, $Collection) = @_;
- $self->SUPER::_initialize(@_);
+ $self->SUPER::_initialize($Collection);
$self->{OldStatus} = undef;
}
sub InitializeNew
{
- my $self = shift;
+ my ($self, $Collection) = @_;
$self->Archived(!1);
$self->Branch(CreateBranches()->GetDefaultBranch());
$self->Status("queued");
$self->Submitted(time());
- $self->SUPER::InitializeNew();
+ $self->SUPER::InitializeNew($Collection);
}
sub Status
diff --git a/testbot/lib/WineTestBot/Patches.pm b/testbot/lib/WineTestBot/Patches.pm
index a4aed22..468c531 100644
--- a/testbot/lib/WineTestBot/Patches.pm
+++ b/testbot/lib/WineTestBot/Patches.pm
@@ -49,11 +49,11 @@ require Exporter;
sub InitializeNew
{
- my $self = shift;
+ my ($self, $Collection) = @_;
$self->Received(time());
- $self->SUPER::InitializeNew();
+ $self->SUPER::InitializeNew($Collection);
}
=pod
diff --git a/testbot/lib/WineTestBot/Steps.pm b/testbot/lib/WineTestBot/Steps.pm
index 0431bc0..683e634 100644
--- a/testbot/lib/WineTestBot/Steps.pm
+++ b/testbot/lib/WineTestBot/Steps.pm
@@ -53,7 +53,7 @@ sub InitializeNew
$self->DebugLevel(1);
$self->ReportSuccessfulTests(!1);
- $self->SUPER::InitializeNew(@_);
+ $self->SUPER::InitializeNew($Collection);
}
sub HandleStaging
diff --git a/testbot/lib/WineTestBot/StepsTasks.pm b/testbot/lib/WineTestBot/StepsTasks.pm
index 8a29196..a5facda 100644
--- a/testbot/lib/WineTestBot/StepsTasks.pm
+++ b/testbot/lib/WineTestBot/StepsTasks.pm
@@ -120,7 +120,7 @@ sub _initialize
my $self = shift;
my $Job = $_[0];
- $self->SUPER::_initialize(@_);
+ $self->SUPER::_initialize($Job);
foreach my $Step (@{$Job->Steps->GetItems()})
{
diff --git a/testbot/lib/WineTestBot/Tasks.pm b/testbot/lib/WineTestBot/Tasks.pm
index dd22749..02dd220 100644
--- a/testbot/lib/WineTestBot/Tasks.pm
+++ b/testbot/lib/WineTestBot/Tasks.pm
@@ -54,7 +54,7 @@ sub InitializeNew
my $Keys = $Collection->GetKeys();
$self->No(scalar @$Keys + 1);
- $self->SUPER::InitializeNew(@_);
+ $self->SUPER::InitializeNew($Collection);
}
=pod
diff --git a/testbot/lib/WineTestBot/Users.pm b/testbot/lib/WineTestBot/Users.pm
index 46828a3..047e5d7 100644
--- a/testbot/lib/WineTestBot/Users.pm
+++ b/testbot/lib/WineTestBot/Users.pm
@@ -40,11 +40,11 @@ require Exporter;
sub InitializeNew
{
- my $self = shift;
+ my ($self, $Collection) = @_;
$self->Status('active');
$self->Password("*");
- $self->SUPER::InitializeNew();
+ $self->SUPER::InitializeNew($Collection);
}
sub GeneratePasswordHash
diff --git a/testbot/lib/WineTestBot/VMs.pm b/testbot/lib/WineTestBot/VMs.pm
index 0aa06eb..e4a5a59 100644
--- a/testbot/lib/WineTestBot/VMs.pm
+++ b/testbot/lib/WineTestBot/VMs.pm
@@ -223,6 +223,8 @@ sub _initialize($$)
{
my ($self, $VMs) = @_;
+ $self->SUPER::_initialize($VMs);
+
$self->{Hypervisors} = $VMs->{Hypervisors};
$self->{Hypervisor} = undef;
$self->{Domain} = undef;
@@ -231,12 +233,12 @@ sub _initialize($$)
sub InitializeNew
{
- my $self = shift;
+ my ($self, $Collection) = @_;
$self->Status("idle");
$self->IdleSnapshot("wtb");
- $self->SUPER::InitializeNew(@_);
+ $self->SUPER::InitializeNew($Collection);
}
sub GetHost($)
--
2.0.0.rc0
More information about the wine-patches
mailing list