perl/lib/Config/Extensions.t
Michiel Beijen 70cbce258a do not count tests, instead use done_testing()
Having to count tests is annoying for maintainers.

Also, manually updating count tests is problematic when multiple people
are working on the same code; it causes merge conflicts and recounts.

done_testing() is available since Test::More 0.88 which was released in
2009.

This commit changes all tests under lib/ that use Test::More and were
planning the number of tests.

Michiel Beijen is now a Perl author
2021-12-04 15:55:55 +01:00

36 lines
756 B
Perl

#!perl -w
BEGIN {
if( $ENV{PERL_CORE} ) {
chdir 't' if -d 't';
@INC = '../lib';
}
}
use strict;
use Test::More;
BEGIN {use_ok 'Config::Extensions', '%Extensions'};
use Config;
my @types = qw(dynamic static nonxs);
my %types;
@types{@types} = @types;
ok (keys %Extensions, "There are some extensions");
# Check only the 3 valid keys have been used.
while (my ($key, $val) = each %Extensions) {
my $raw_ext = $key;
# Back to the format in Config
$raw_ext =~ s!::!/!g;
my $re = qr/\b\Q$raw_ext\E\b/;
like($Config{extensions}, $re, "$key was built");
unless ($types{$val}) {
fail("$key is $val");
next;
}
my $type = $val . '_ext';
like($Config{$type}, $re, "$key is $type");
}
done_testing();