summaryrefslogtreecommitdiff
path: root/t/117_numbers.t
diff options
context:
space:
mode:
authorHyunjee Kim <hj0426.kim@samsung.com>2020-03-17 09:38:42 +0900
committerHyunjee Kim <hj0426.kim@samsung.com>2020-03-17 10:32:30 +0900
commit8d2a41273a56a33a291d292c1fbee03cce290694 (patch)
treed2e93626e62e86e0be5696b4ce240d0af7376a6a /t/117_numbers.t
parentc5bbcb68877d7b8bdb968a69aa62b3b90853cb3f (diff)
downloadperl-json-8d2a41273a56a33a291d292c1fbee03cce290694.tar.gz
perl-json-8d2a41273a56a33a291d292c1fbee03cce290694.tar.bz2
perl-json-8d2a41273a56a33a291d292c1fbee03cce290694.zip
Imported Upstream version 4.02upstream/4.02
Change-Id: I549bbbd41e3db39e6fd6f2b1f2c4c94b94071018 Signed-off-by: Hyunjee Kim <hj0426.kim@samsung.com>
Diffstat (limited to 't/117_numbers.t')
-rw-r--r--t/117_numbers.t24
1 files changed, 24 insertions, 0 deletions
diff --git a/t/117_numbers.t b/t/117_numbers.t
new file mode 100644
index 0000000..6eed93d
--- /dev/null
+++ b/t/117_numbers.t
@@ -0,0 +1,24 @@
+use Test::More;
+use strict;
+BEGIN { $ENV{PERL_JSON_BACKEND} ||= "JSON::backportPP"; }
+BEGIN { $ENV{PERL_JSON_PP_USE_B} = 0 }
+use JSON;
+
+BEGIN { plan skip_all => "requires $JSON::BackendModule 2.90 or newer" if JSON->backend->is_pp and eval $JSON::BackendModule->VERSION < 2.90 }
+BEGIN { plan skip_all => "not for $JSON::BackendModule" if $JSON::BackendModule eq 'JSON::XS' }
+
+BEGIN { plan tests => 3 }
+
+# TODO ("inf"/"nan" representations are not portable)
+# is encode_json([9**9**9]), '["inf"]';
+# is encode_json([-sin(9**9**9)]), '["nan"]';
+
+my $num = 3;
+my $str = "$num";
+is encode_json({test => [$num, $str]}), '{"test":[3,"3"]}';
+$num = 3.21;
+$str = "$num";
+is encode_json({test => [$num, $str]}), '{"test":[3.21,"3.21"]}';
+$str = '0 but true';
+$num = 1 + $str;
+is encode_json({test => [$num, $str]}), '{"test":[1,"0 but true"]}';