use
5.020;
no
if
"$]"
>= 5.031009,
feature
=>
'indirect'
;
no
if
"$]"
>= 5.033001,
feature
=>
'multidimensional'
;
no
if
"$]"
>= 5.033006,
feature
=>
'bareword_filehandles'
;
use
if
$ENV
{AUTHOR_TESTING},
'Test::Warnings'
;
my
$accepter
= Test::JSON::Schema::Acceptance->new(
test_dir
=>
't/tests/simple-booleans'
);
my
$parser
= SchemaParser->new;
my
$events
= intercept(
sub
{
$accepter
->acceptance(
sub
(
$schema
,
$input_data
) {
return
$parser
->validate_data(
$input_data
,
$schema
);
});
}
);
my
@bool_tests
=
grep
$_
->isa(
'Test2::Event::Ok'
),
@$events
;
is(
@bool_tests
, 18,
'found all the tests'
);
cmp_deeply(
\
@bool_tests
,
array_each(methods(
pass
=> 1,
effective_pass
=> 1,
)),
'all tests pass'
,
);
cmp_deeply(
[
map
$_
->name,
@bool_tests
],
[
map
{
my
$file
=
$_
;
map
{
my
$group
=
$_
;
map
$file
.
'.json: "'
.
$group
.
'" - "'
.
$_
.
'"'
,
'integer'
,
'boolean false'
,
'boolean true'
}
'empty schema'
,
'false schema'
,
'true schema'
}
qw(bar foo)
],
'test names are shown correctly'
,
);
done_testing;