# Before `make install' is performed this script should be runnable with
# `make test'. After `make install' it should work as `perl test.pl'

######################### We start with some black magic to print on failure.

# Change 1..1 below to 1..last_test_to_print .
# (It may become useful if the test is moved to ./t subdirectory.)

BEGIN { $| = 1; print "1..1\n"; }
END {print "not ok 1\n" unless $loaded;}
use ran;
$loaded = 1;
print "ok 1\n";

######################### End of black magic.

# Insert your test code below (better if it prints "ok 13"
# (correspondingly "not ok 13") depending on the success of chunk 13
# of the test code):


my ($sum, $n) = (0, 0);
my $i;
for($i=0; $i<1000; $i++)	{
	my $x = ran::ran2($i);
	if($x<0 || $x>1)	{
		die "Not OK ran2 range";
		}
	$sum += $x;
	$n++;
	}

my $avg = $sum/$n;
if($avg<0.45 || $avg>0.55)	{
	die "Not OK ran2 average";
	}

($sum, $n) = (0, 0);
for($i=0; $i<1000; $i++)	{
	my $x = ran::ran1();
	if($x<0 || $x>1)	{
		die "Not OK ran1 range";
		}
	$sum += $x;
	$n++;
	}

my $avg = $sum/$n;
if($avg<0.45 || $avg>0.55)	{
	die "Not OK ran1 average";
	}

($sum, $n) = (0, 0);
for($i=0; $i<1000; $i++)	{
	my $x = ran::ran1a();
	if($x<0 || $x>1)	{
		die "Not OK ran1a range";
		}
	$sum += $x;
	$n++;
	}

my $avg = $sum/$n;
if($avg<0.45 || $avg>0.55)	{
	die "Not OK ran1a average";
	}


($sum, $n) = (0, 0);
for($i=0; $i<1000; $i++)	{
	my $x = ran::Nnoise();
	if($x<=-8 || $x>8)	{
		die "Not OK Nnoise range";
		}
	$sum += $x;
	$n++;
	}

my $avg = $sum/$n;
if($avg<-0.05 || $avg>0.05)	{
	die "Not OK Nnoise average";
	}


print "ok\n";
