File: 08_mgvars.t

package info (click to toggle)
libdata-util-perl 0.67-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 556 kB
  • sloc: perl: 2,958; ansic: 416; makefile: 8
file content (52 lines) | stat: -rw-r--r-- 709 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#!perl -w
use strict;

use Test::More tests => 12;

use Tie::Scalar;
use Tie::Array;
use Tie::Hash;

use Data::Util qw(:check);

BEGIN{
	package Foo;
	sub new{
		bless {} => shift;
	}
}

tie my($x), 'Tie::StdScalar', [];

$x = [];

ok is_array_ref($x);
ok!is_hash_ref($x);

$x = '';

ok is_scalar_ref(\$x);
ok!is_array_ref($x);

$x = Foo->new();
tie my($class), 'Tie::StdScalar', 'Foo';

ok!is_hash_ref($x);

ok is_instance($x, $class);

$class = 'Bar';
ok!is_instance($x, $class);

$x = undef;
ok!is_instance($x, $class);
$x = {};
ok!is_instance($x, $class);
$x = '';
ok!is_instance($x, $class);

tie my(@arr), 'Tie::StdArray';
ok is_array_ref(\@arr);

tie my(%hash), 'Tie::StdHash';
ok is_hash_ref(\%hash);