xref: /openbsd-src/gnu/usr.bin/perl/dist/Data-Dumper/t/values.t (revision f2da64fbbbf1b03f09f390ab01267c93dfd77c4c)
1#!./perl -w
2
3BEGIN {
4    if ($ENV{PERL_CORE}){
5        require Config; import Config;
6        no warnings 'once';
7        if ($Config{'extensions'} !~ /\bData\/Dumper\b/) {
8            print "1..0 # Skip: Data::Dumper was not built\n";
9            exit 0;
10        }
11    }
12}
13
14use strict;
15use Data::Dumper;
16use Test::More tests => 4;
17
18my ($a, $b, $obj);
19my (@values, @names);
20my (@newvalues, $objagain, %newvalues);
21$a = 'alpha';
22$b = 'beta';
23
24$obj = Data::Dumper->new([$a,$b], [qw(a b)]);
25@values = $obj->Values;
26is_deeply(\@values, [$a,$b], "Values() returned expected list");
27
28@newvalues = ( qw| gamma delta epsilon | );
29$objagain = $obj->Values(\@newvalues);
30is($objagain, $obj, "Values returned same object");
31is_deeply($objagain->{todump}, \@newvalues,
32    "Able to use Values() to set values to be dumped");
33
34$obj = Data::Dumper->new([$a,$b], [qw(a b)]);
35%newvalues = ( gamma => 'delta', epsilon => 'zeta' );
36eval { @values = $obj->Values(\%newvalues); };
37like($@, qr/Argument to Values, if provided, must be array ref/,
38    "Got expected error message: bad argument to Values()");
39
40
41