File: hashkeys.t

package info (click to toggle)
libtest-deep-perl 0.113-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 464 kB
  • ctags: 254
  • sloc: perl: 2,144; makefile: 2
file content (69 lines) | stat: -rw-r--r-- 943 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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
use strict;
use warnings;

use t::std;

{
	check_tests(
		sub {
			cmp_deeply({}, hashkeys(), "0");
			cmp_deeply({1 => 2, 3 => 4, 5 => 6}, hashkeys(1, 3, 5), "3");
		},
		[
			{
				name => "0",
				actual_ok => 1,
				diag => "",
			},
			{
				name => "3",
				actual_ok => 1,
				diag => "",
			}
		],
		"keys ok"
	);
	check_tests(
		sub {
			cmp_deeply({a => 2, b => 4}, hashkeys("a", "c"));
		},
		[
			{
				actual_ok => 0,
				diag => <<EOM,
Comparing hash keys of \$data
Missing: 'c'
Extra: 'b'
EOM
			},
		],
		"bad length"
	);
	check_tests(
		sub {
			cmp_deeply("a", hashkeys(1), "string");
			cmp_deeply([], hashkeys(1), "array");
		},
		[
			{
				name => "string",
				actual_ok => 0,
				diag => <<EOM,
Compared reftype(\$data)
   got : undef
expect : 'HASH'
EOM
			},
			{
				name => "array",
				actual_ok => 0,
				diag => <<EOM,
Compared reftype(\$data)
   got : 'ARRAY'
expect : 'HASH'
EOM
			},
		],
		"not array"
	);
}