Re: TAP: allow overriding PostgresNode in get_new_node

Michael Paquier <michael.paquier@gmail.com>

From: Michael Paquier <michael.paquier@gmail.com>
To: Craig Ringer <craig@2ndquadrant.com>
Cc: PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Date: 2017-06-01T07:36:03Z
Lists: pgsql-hackers
On Wed, May 31, 2017 at 7:18 PM, Craig Ringer <craig@2ndquadrant.com> wrote:
> Note that you can achieve the same effect w/o patching
> PostgresNode.pm, albeit in a somewhat ugly manner, by re-blessing the
> returned object.
>
> sub get_new_mywhatever_node {
>         my $self = PostgresNode::get_new_node($name);
>         $self = bless $self, 'MyWhateverNode';
>         return $self;
> }
>
> so this would be cosmetically nice, but far from functionally vital.

+    $pgnclass = 'PostgresNode' unless defined $pgnclass;
I'd rather leave any code of this kind for the module maintainers,
there is no actual reason to complicate PostgresNode.pm with code
that's not directly useful for what is in-core.
-- 
Michael


Commits

  1. Make PostgresNode easily subclassable