Revision: | 1.1 |
Committed: | Fri Mar 23 15:10:55 2007 UTC (17 years, 3 months ago) by root |
Content type: | application/x-troff |
Branch: | MAIN |
CVS Tags: | rel-2_01, rel-1_11, rel-1_51, rel-1_53, rel-4_0, rel-2_222, rel-0_31, rel-3_0, rel-4_01, rel-4_03, rel-4_02, rel-2_2, rel-2_3, rel-2_0, rel-2_1, rel-0_3, rel-4_0_00, rel-0_5, rel-0_7, rel-0_8, rel-2_34, rel-2_32, rel-2_33, rel-2_31, rel-1_1, rel-1_0, rel-1_3, rel-1_2, rel-1_5, rel-1_4, rel-2_2311, rel-1_01, rel-1_24, rel-3_01, rel-3_02, rel-3_03, rel-3_04, rel-1_21, rel-1_22, rel-1_23, rel-1_43, rel-1_41, rel-2_232, rel-2_231, rel-2_29, rel-2_28, rel-2_21, rel-2_2222, rel-2_23, rel-2_22, rel-2_25, rel-2_24, rel-2_27, rel-2_26, HEAD |
Log Message: | *** empty log message *** |
# | User | Rev | Content |
---|---|---|---|
1 | root | 1.1 | #! perl |
2 | |||
3 | # copied over from JSON::DWIW and modified to use JSON::XS | ||
4 | |||
5 | # Creation date: 2007-02-20 19:51:06 | ||
6 | # Authors: don | ||
7 | |||
8 | use strict; | ||
9 | use Test; | ||
10 | |||
11 | # main | ||
12 | { | ||
13 | BEGIN { plan tests => 5 } | ||
14 | |||
15 | use JSON::XS; | ||
16 | |||
17 | my $data; | ||
18 | |||
19 | # my $expected_str = '{"var1":"val1","var2":["first_element",{"sub_element":"sub_val","sub_element2":"sub_val2"}],"var3":"val3"}'; | ||
20 | |||
21 | my $expected_str1 = '{"var1":"val1","var2":["first_element",{"sub_element":"sub_val","sub_element2":"sub_val2"}]}'; | ||
22 | my $expected_str2 = '{"var2":["first_element",{"sub_element":"sub_val","sub_element2":"sub_val2"}],"var1":"val1"}'; | ||
23 | my $expected_str3 = '{"var2":["first_element",{"sub_element2":"sub_val2","sub_element":"sub_val"}],"var1":"val1"}'; | ||
24 | my $expected_str4 = '{"var1":"val1","var2":["first_element",{"sub_element2":"sub_val2","sub_element":"sub_val"}]}'; | ||
25 | |||
26 | my $json_obj = JSON::XS->new->allow_nonref (1); | ||
27 | my $json_str; | ||
28 | # print STDERR "\n" . $json_str . "\n\n"; | ||
29 | |||
30 | my $expected_str; | ||
31 | |||
32 | $data = 'stuff'; | ||
33 | $json_str = $json_obj->encode($data); | ||
34 | ok($json_str eq '"stuff"'); | ||
35 | |||
36 | $data = "stu\nff"; | ||
37 | $json_str = $json_obj->encode($data); | ||
38 | ok($json_str eq '"stu\nff"'); | ||
39 | |||
40 | $data = [ 1, 2, 3 ]; | ||
41 | $expected_str = '[1,2,3]'; | ||
42 | $json_str = $json_obj->encode($data); | ||
43 | |||
44 | ok($json_str eq $expected_str); | ||
45 | |||
46 | $data = { var1 => 'val1', var2 => 'val2' }; | ||
47 | $json_str = $json_obj->encode($data); | ||
48 | |||
49 | ok($json_str eq '{"var1":"val1","var2":"val2"}' | ||
50 | or $json_str eq '{"var2":"val2","var1":"val1"}'); | ||
51 | |||
52 | $data = { var1 => 'val1', | ||
53 | var2 => [ 'first_element', | ||
54 | { sub_element => 'sub_val', sub_element2 => 'sub_val2' }, | ||
55 | ], | ||
56 | # var3 => 'val3', | ||
57 | }; | ||
58 | |||
59 | $json_str = $json_obj->encode($data); | ||
60 | |||
61 | ok($json_str eq $expected_str1 or $json_str eq $expected_str2 | ||
62 | or $json_str eq $expected_str3 or $json_str eq $expected_str4); | ||
63 | } | ||
64 | |||
65 | exit 0; | ||
66 | |||
67 | ############################################################################### | ||
68 | # Subroutines | ||
69 |