Ready for 7.10.29 development.
This commit is contained in:
commit
c806f99b7b
4236 changed files with 1217679 additions and 0 deletions
65
t/Macro/Splat_random.t
Normal file
65
t/Macro/Splat_random.t
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
#-------------------------------------------------------------------
|
||||
# WebGUI is Copyright 2001-2009 Plain Black Corporation.
|
||||
#-------------------------------------------------------------------
|
||||
# Please read the legal notices (docs/legal.txt) and the license
|
||||
# (docs/license.txt) that came with this distribution before using
|
||||
# this software.
|
||||
#-------------------------------------------------------------------
|
||||
# http://www.plainblack.com info@plainblack.com
|
||||
#-------------------------------------------------------------------
|
||||
|
||||
use FindBin;
|
||||
use strict;
|
||||
use lib "$FindBin::Bin/../lib";
|
||||
|
||||
use WebGUI::Test;
|
||||
use WebGUI::Macro::Splat_random;
|
||||
use WebGUI::Session;
|
||||
use WebGUI::Group;
|
||||
use WebGUI::User;
|
||||
|
||||
my $session = WebGUI::Test->session;
|
||||
|
||||
use Test::More; # increment this value for each test you create
|
||||
use List::Util qw/max min/;
|
||||
use Data::Dumper;
|
||||
|
||||
##Note, testing statistical functions is kind of weird. All we really
|
||||
##need to do is make sure that the macro functions as advertised.
|
||||
|
||||
plan tests => 4;
|
||||
|
||||
my $inBounds = 1;
|
||||
BOUNDED: for (my $i=0; $i<=99; $i++) {
|
||||
my $output = WebGUI::Macro::Splat_random::process($session, 10);
|
||||
if (($output > 10) or ($output < 0)) {
|
||||
$inBounds = 0;
|
||||
last BOUNDED;
|
||||
}
|
||||
}
|
||||
|
||||
ok($inBounds, "100 fetches were in bounds");
|
||||
|
||||
my $output = WebGUI::Macro::Splat_random::process($session);
|
||||
ok($output >= 0 and $output < 1_000_000_000, "Empty argument returns a number within default bounds");
|
||||
|
||||
my $wholeNumber = 1;
|
||||
WHOLE: for (my $i=0; $i<=99; $i++) {
|
||||
my $output = WebGUI::Macro::Splat_random::process($session, 1);
|
||||
if (int($output) != $output) {
|
||||
$wholeNumber = 0;
|
||||
last WHOLE;
|
||||
}
|
||||
}
|
||||
|
||||
ok($wholeNumber, "100 fetches were all whole numbers");
|
||||
|
||||
my @bins = ();
|
||||
WHOLE: for (my $i=0; $i<=999; $i++) {
|
||||
my $output = WebGUI::Macro::Splat_random::process($session, 4);
|
||||
++$bins[$output];
|
||||
}
|
||||
|
||||
is(scalar(@bins), 4, "All bins have values on a sample size of 1000");
|
||||
|
||||
#note explain \@bins;
|
||||
Loading…
Add table
Add a link
Reference in a new issue