File: 247_check_ref_bool.t

package info (click to toggle)
perl 5.42.0-2
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 128,392 kB
  • sloc: perl: 534,963; ansic: 240,563; sh: 72,042; pascal: 6,934; xml: 2,428; yacc: 1,360; makefile: 1,197; cpp: 208; lisp: 1
file content (34 lines) | stat: -rw-r--r-- 860 bytes parent folder | download | duplicates (3)
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
use Test2::V0;

BEGIN {
    skip_all "Test needs JSON::MaybeXS" unless eval {
        require JSON::MaybeXS;
        JSON::MaybeXS->import(qw/decode_json/);
        1;
    };
}

my $data = '{ "aaa": true, "bbb": false }';
my $h = decode_json($data);

ok($h->{aaa}, "true");
ok(!$h->{bbb}, "false");
is($h->{aaa}, T(), 'Test true on true');
is($h->{bbb}, F(), 'Test false on false');
is($h, hash {aaa => T(), etc}, 'Test true on true');
is($h, hash {bbb => F(), etc}, 'Test false on false');

my $events = intercept {
    ok(!$h->{aaa}, "true");
    ok($h->{bbb}, "false");
    is($h, hash {field aaa => F(); etc}, 'Test false on true');
    is($h, hash {field bbb => T(); etc}, 'Test true on false');
};

is(
    [map { $_->causes_fail ? 1 : 0 } grep { $_->facet_data->{assert} } @$events],
    [1, 1, 1, 1],
    "All 4 events cause failure"
);

done_testing;