- add sources.
[platform/framework/web/crosswalk.git] / src / third_party / JSON / JSON-2.59 / t / e11_conv_blessed_univ.t
1
2 use strict;
3 use Test::More;
4 BEGIN { plan tests => 3 };
5
6 BEGIN { $ENV{PERL_JSON_BACKEND} = "JSON::backportPP"; }
7
8 use JSON -convert_blessed_universally;
9
10
11 my $obj  = Test->new( [ 1, 2, {foo => 'bar'} ] );
12
13 $obj->[3] = Test2->new( { a => 'b' } );
14
15 my $json = JSON->new->allow_blessed->convert_blessed;
16
17 is( $json->encode( $obj ), '[1,2,{"foo":"bar"},"hoge"]'  );
18
19 $json->convert_blessed(0);
20
21 is( $json->encode( $obj ), 'null' );
22
23 $json->allow_blessed(0)->convert_blessed(1);
24
25 is( $json->encode( $obj ), '[1,2,{"foo":"bar"},"hoge"]'  );
26
27
28 package Test;
29
30 sub new {
31     bless $_[1], $_[0];
32 }
33
34
35
36 package Test2;
37
38 sub new {
39     bless $_[1], $_[0];
40 }
41
42 sub TO_JSON {
43     "hoge";
44 }
45