Прямо сейчас, когда я делаю что-то вроде этого:
use strict;
use warnings;
package My::Test;
use parent 'Test::Class';
use Test::More;
sub overrides_basic : Tests {
ok( 1, "works" ); ok( 1, "works" );
}
sub overrides_no_profile : Tests {
ok( 2, "works" ); ok( 2, "works" );
}
__PACKAGE__->runtests;
1;
Вывод такой:
ok 1 - works
ok 2 - works
ok 3 - works
ok 4 - works
1..4
Это не очень приятно.
Однако, еслия делаю это:
use strict;
use warnings;
package My::Test;
use parent 'Test::Class';
use Test::More;
sub overrides_basic : Tests {
subtest 'overrides_basic' => sub {
ok( 1, "works" ); ok( 1, "works" );
};
}
sub overrides_no_profile : Tests {
subtest 'overrides_no_profile' => sub {
ok( 2, "works" ); ok( 2, "works" );
};
}
__PACKAGE__->runtests;
1;
Вывод более приятный и более желательный, например так:
ok 1 - works
ok 2 - works
1..2
ok 1 - overrides_basic
ok 1 - works
ok 2 - works
1..2
ok 2 - overrides_no_profile
1..2
Проблема здесь в том, что для этого требуется много ненужной работы.Так что сейчас я просто подклассифицирую Test :: Class, чтобы переопределить подпункты Tests.
Однако мне интересно, есть ли уже простое решение для этого, которое я не смог найти.