test-class icon indicating copy to clipboard operation
test-class copied to clipboard

Setup/Startup Methods Can't Be Overridden

Open szabgab opened this issue 4 years ago • 0 comments

Startup/setup methods in base classes that are overridden by subclasses are still called. For example:

package PigTest;

use base 'Test::Class';

sub startup : Test(startup) 
{ 
  $self->{fixture} = PigService->create($argz)
}

sub eats : Test { }

package PorkyPigTest;

use base 'PigTest';

sub startup : Test(startup) 
{ 
  $self->{fixture} = PorkyPigService->create($argz)
}

sub talks : Test  { }

PigService will be called when running the PorkyPigTest.

Of course this is simple to fix, but it's surprising and unintuitive.

Original: https://rt.cpan.org/Ticket/Display.html?id=72896

szabgab avatar Feb 23 '21 06:02 szabgab