Francois Gouget : testbot/lib: Always call the parent _initialize() and InitializeNew() methods, with the right arguments.

Alexandre Julliard julliard at winehq.org
Wed May 21 12:34:34 CDT 2014


Module: tools
Branch: master
Commit: 261fcf10d4d16b2c85ec5bb225733ef1b3ece485
URL:    http://source.winehq.org/git/tools.git/?a=commit;h=261fcf10d4d16b2c85ec5bb225733ef1b3ece485

Author: Francois Gouget <fgouget at codeweavers.com>
Date:   Wed May 21 17:44:59 2014 +0200

testbot/lib: Always call the parent _initialize() and InitializeNew() methods, with the right arguments.

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 70c47f7..bb7ea3f 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 e937866..2a7ee35 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($)




More information about the wine-cvs mailing list