8 plan skip_all => "JSON required" if $@;
10 use_ok( 'URI::Template' );
13 my @files = glob( 't/data/*.json' );
15 for my $file ( @files ) {
16 open( my $json, $file );
17 my $data = do { local $/; <$json> };
20 eval { JSON->VERSION( 2 ) };
21 my $suite = $@ ? JSON::jsonToObj( $data ) : JSON::from_json( $data );
22 my %variables = %{ $suite->{ variables } };
25 for my $test ( @{ $suite->{ tests } } ) {
26 my $template = URI::Template->new( $test->{ template } );
27 my $result = $template->process( %variables );
29 is( $result, $test->{ expected }, "${file}#${count}" );