use
lib
"$FindBin::Bin/../lib"
;
my
$json
=
<<'EOF';
{
"users": [
{ "name": "Alice", "age": 30 },
{ "name": "Bob", "age": 25 },
{ "name": "Charlie", "age": 35 }
]
}
EOF
my
$jq
= JQ::Lite->new;
my
@names
=
$jq
->run_query(
$json
,
'.users[] | .name'
);
is_deeply(\
@names
, [
"Alice"
,
"Bob"
,
"Charlie"
],
'Extract names from users array'
);
my
@ages
=
$jq
->run_query(
$json
,
'.users[] | .age'
);
is_deeply(\
@ages
, [30, 25, 35],
'Extract ages from users array'
);
my
@alt
=
$jq
->run_query(
$json
,
'.users[].name'
);
is_deeply(\
@alt
, [
"Alice"
,
"Bob"
,
"Charlie"
],
'Alternative syntax for extracting names'
);
my
@all
=
$jq
->run_query(
$json
,
'.users'
);
ok(
ref
(
$all
[0]) eq
'ARRAY'
,
'Top-level array returned'
);