Remove the tests that assume something about
[p5sagit/p5-mst-13.2.git] / t / op / srand.t
1 #!./perl -w
2
3 # Test srand.
4
5 use strict;
6 use Test::More tests => 3;
7
8 # Generate a load of random numbers.
9 # int() avoids possible floating point error.
10 sub mk_rand { map int rand 10000, 1..100; }
11
12
13 # Check that rand() is deterministic.
14 srand(1138);
15 my @first_run  = mk_rand;
16
17 srand(1138);
18 my @second_run = mk_rand;
19
20 ok( eq_array(\@first_run, \@second_run),  'srand(), same arg, same rands' );
21
22
23 # Check that different seeds provide different random numbers
24 srand(31337);
25 @first_run  = mk_rand;
26
27 srand(1138);
28 @second_run = mk_rand;
29
30 ok( !eq_array(\@first_run, \@second_run),
31                                  'srand(), different arg, different rands' );
32
33
34 # This test checks whether Perl called srand for you.
35 @first_run  = `$^X -le "print int rand 100 for 1..100"`;
36 @second_run = `$^X -le "print int rand 100 for 1..100"`;
37
38 ok( !eq_array(\@first_run, \@second_run), 'srand() called automatically');