- 220 名前:Unit7.pm [03/12/15 17:14 ID:zoqm3JaO]
- #!/usr/bin/perl
package Unit7;sub new{bless{},pop}*set_up=*tear_down=sub{};sub p{printf@_}sub assert{my($s,$f,$m)=@_;++$s->{n};$f?++$s->{o}:p"%s:%d\t$m\n",(caller)[1,2]}sub run{$s=shift;$N=$O=0;for(grep/^test/,keys%{ref($s)."::"}){$s->{n}=$s->{o}=0;$N ++;set_up$s;$s->$_;tear_down$s;p"$N ) $s->{o}/$s->{n}\t$_\n";$s->{n}-$s->{o} or $O++}p"\nRun $N Tests. $O success.\n"}7 __END__ $s ... $self $N ... test* メソッドの数 $o ... 成功したテストの数 $n ... サブテストの数 $o ... 成功したサブテストの数 Test::Unit::TestCase 相当のモジュールです。 メソッド名 set_up, tear_down, assert は、オリジナルのTest-Unitを意識してそのままにしています。 名前を併せたらTestRunner.pl で実行できるかな?と互換性を期待したけど、無理だった。
|

|