1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
|
use strict;
use vars qw($test $ok $total @foo);
sub OK { print "ok " . $test++ . "\n" }
sub NOT_OK { print "not ok " . $test++ . "\n"};
BEGIN { $test = 1; $ok=0; $| = 1 }
END { NOT_OK unless $ok }
use enum;
$ok++;
OK;
use enum qw(Foo Bar Cat Dog);
use enum qw(
:Months_=0 Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
:Days_ Sun=0 Mon Tue Wed Thu Fri Sat
:Letters_=0 A..Z
:=0
: A..Z
Ten=10 Forty=40 FortyOne FortyTwo
Zero=0 One Two Three=3 Four
:=100
);
$foo[Foo] = "Foo";
$foo[Bar] = "Bar";
$foo[Cat] = "Cat";
$foo[Dog] = "Dog";
{
package main::F;
use enum qw(Foo Bar Cat Dog);
}
if (
$foo[F::Foo] ne "Foo"
or $foo[F::Bar] ne "Bar"
or $foo[F::Cat] ne "Cat"
or $foo[F::Dog] ne "Dog"
) {
NOT_OK;
}
else {
OK;
}
BEGIN { $total = 2; print "1..$total\n" }
|