X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2Fexotic_names.t;h=06d64842dec47eabb16f0725b8fc7c63767a414e;hb=3f1762c7005f1669dbfde6bff7a204d3bfc72f72;hp=621cad6dcbac86b7dab65a58f6e2bc46ef4b47f1;hpb=63be23c8914e4741b2e25607a65fb77db9092edd;p=p5sagit%2FSub-Name.git diff --git a/t/exotic_names.t b/t/exotic_names.t index 621cad6..06d6484 100644 --- a/t/exotic_names.t +++ b/t/exotic_names.t @@ -54,7 +54,13 @@ sub caller3_ok { is $stash_name, $expected, "stash name for $type is correct $for_what"; is $sub->(), $expected, "caller() in $type returns correct name $for_what"; - ok $DB::sub{$expected}, "%DB::sub entry for $type is correct $for_what"; + SKIP: { + skip '%DB::sub not populated when enabled at runtime', 1 + unless keys %DB::sub; + my ($prefix) = $expected =~ /^(.*?test::[^:]+::)/; + my ($db_found) = grep /^$prefix/, keys %DB::sub; + is $db_found, $expected, "%DB::sub entry for $type is correct $for_what"; + } } ####################################################################### @@ -104,8 +110,10 @@ for my $ord (@ordinal) { no strict 'refs'; *palatable:: = *{"aliased::native::${pkg}::"}; # now palatable:: literally means aliased::native::${pkg}:: - ${"palatable::$subname"} = 1; - ${"palatable::"}{"sub"} = ${"palatable::"}{$subname}; + my $encoded_sub = $subname; + utf8::encode($encoded_sub) if "$]" < 5.016 and $ord > 255; + ${"palatable::$encoded_sub"} = 1; + ${"palatable::"}{"sub"} = ${"palatable::"}{$encoded_sub}; # and palatable::sub means aliased::native::${pkg}::${subname} } $sub = compile_named_sub 'palatable::sub' => '(caller(0))[3]';