Make all my ChangeLog's look more or less the same
[Data-Peek.git] / t / 52_DGrow.t
blob9a2e08fbdad4ee1197c87a309731b1cabc962de3
1 #!/usr/bin/perl
3 use strict;
4 use warnings;
6 use Test::More tests => 15;
7 use Test::NoWarnings;
9 use Data::Peek qw( DGrow DDump );
11 my $x = "";
12 is (length ($x), 0, "Initial length = 0");
13 my %dd = DDump $x;
14 ok ($dd{LEN} <= 16);
15 my $len = 10240;
16 ok (my $l = DGrow ($x, $len), "Set to $len");
17 is (length ($x), 0, "Variable content");
18 ok ($l >= $len, "returned LEN >= $len");
19 my $limit = 4 * $len;
20 ok ($l <= $limit, "returned LEN <= $limit");
21 %dd = DDump $x;
22 ok ($dd{LEN} >= $len, "LEN in variable >= $len");
23 ok ($dd{LEN} <= $limit, "LEN in variable <= limit");
24 ok ($l = DGrow (\$x, $limit), "Set to $limit");
25 ok ($l >= $limit, "LEN in variable >= $limit");
26 ($len, $limit) = ($limit, 4 * $limit);
27 ok ($l <= $limit, "LEN in variable <= $limit");
28 %dd = DDump $x;
29 ok ($dd{LEN} >= $len, "LEN in variable >= $len");
30 ok ($dd{LEN} <= $limit, "LEN in variable <= $limit");
31 is (DGrow ($x, 20), $l, "Don't shrink");