This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Update CPAN-Meta-YAML to CPAN version 0.010
[perl5.git] / cpan / CPAN-Meta-YAML / t / 21_bom.t
1 use strict;
2 use warnings;
3
4 BEGIN {
5     $|  = 1;
6     $^W = 1;
7 }
8
9 use File::Spec::Functions ':ALL';
10 use t::lib::Test;
11 use Test::More tests(0, 1, 4);
12 use CPAN::Meta::YAML;
13
14
15
16
17
18 #####################################################################
19 # Testing that Perl::Smith config files work
20
21 my $sample_file = catfile( 't', 'data', 'utf_16_le_bom.yml' );
22 my $sample      = load_ok( 'utf_16_le_bom.yml', $sample_file, 3 );
23
24 # Does the string parse to the structure
25 my $name      = "utf-16";
26 my $yaml_copy = $sample;
27 my $yaml      = eval { CPAN::Meta::YAML->read_string( $yaml_copy ); };
28 is( $@, '', "$name: CPAN::Meta::YAML parses without error" );
29 is( $yaml_copy, $sample, "$name: CPAN::Meta::YAML does not modify the input string" );
30 SKIP: {
31     skip( "Shortcutting after failure", 2 ) if $@;
32     is( $yaml, undef, "file not parsed" );
33     is( CPAN::Meta::YAML->errstr, "Stream has a non UTF-8 BOM", "correct error" );
34 }