r5469 - in /packages/libjson-any-perl/trunk: META.yml debian/changelog debian/control lib/JSON/Any.pm t/01-JSON.t
gregoa-guest at users.alioth.debian.org
gregoa-guest at users.alioth.debian.org
Fri May 18 23:00:10 UTC 2007
Author: gregoa-guest
Date: Fri May 18 23:00:09 2007
New Revision: 5469
URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=5469
Log:
* New upstream release.
* Add libtest-pod-perl, libtest-pod-coverage-perl to Build-Depends-Indep.
Modified:
packages/libjson-any-perl/trunk/META.yml
packages/libjson-any-perl/trunk/debian/changelog
packages/libjson-any-perl/trunk/debian/control
packages/libjson-any-perl/trunk/lib/JSON/Any.pm
packages/libjson-any-perl/trunk/t/01-JSON.t
Modified: packages/libjson-any-perl/trunk/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libjson-any-perl/trunk/META.yml?rev=5469&op=diff
==============================================================================
--- packages/libjson-any-perl/trunk/META.yml (original)
+++ packages/libjson-any-perl/trunk/META.yml Fri May 18 23:00:09 2007
@@ -17,4 +17,4 @@
- t
requires:
Carp: 0
-version: 1.07
+version: 1.08
Modified: packages/libjson-any-perl/trunk/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libjson-any-perl/trunk/debian/changelog?rev=5469&op=diff
==============================================================================
--- packages/libjson-any-perl/trunk/debian/changelog (original)
+++ packages/libjson-any-perl/trunk/debian/changelog Fri May 18 23:00:09 2007
@@ -1,3 +1,10 @@
+libjson-any-perl (1.08-1) unstable; urgency=low
+
+ * New upstream release.
+ * Add libtest-pod-perl, libtest-pod-coverage-perl to Build-Depends-Indep.
+
+ -- gregor herrmann <gregor+debian at comodo.priv.at> Sat, 19 May 2007 00:58:55 +0200
+
libjson-any-perl (1.07-1) unstable; urgency=low
* New upstream release
Modified: packages/libjson-any-perl/trunk/debian/control
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libjson-any-perl/trunk/debian/control?rev=5469&op=diff
==============================================================================
--- packages/libjson-any-perl/trunk/debian/control (original)
+++ packages/libjson-any-perl/trunk/debian/control Fri May 18 23:00:09 2007
@@ -2,10 +2,11 @@
Section: perl
Priority: optional
Build-Depends: debhelper (>= 5.0.0)
-Build-Depends-Indep: perl (>= 5.8.8-7), libjson-perl, libyaml-syck-perl
-Uploaders: Krzysztof Krzyzaniak (eloy) <eloy at debian.org>
+Build-Depends-Indep: perl (>= 5.8.8-7), libjson-perl, libyaml-syck-perl, libtest-pod-perl, libtest-pod-coverage-perl
+Uploaders: Krzysztof Krzyzaniak (eloy) <eloy at debian.org>, gregor herrmann <gregor+debian at comodo.priv.at>
Maintainer: Debian Perl Group <pkg-perl-maintainers at lists.alioth.debian.org>
Standards-Version: 3.7.2
+XS-Vcs-Svn: svn://svn.debian.org/pkg-perl/packages/libjson-any-perl/trunk/
Package: libjson-any-perl
Architecture: all
Modified: packages/libjson-any-perl/trunk/lib/JSON/Any.pm
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libjson-any-perl/trunk/lib/JSON/Any.pm?rev=5469&op=diff
==============================================================================
--- packages/libjson-any-perl/trunk/lib/JSON/Any.pm (original)
+++ packages/libjson-any-perl/trunk/lib/JSON/Any.pm Fri May 18 23:00:09 2007
@@ -1,6 +1,6 @@
##############################################################################
# JSON::Any
-# v1.07
+# v1.08
# Copyright (c) 2007 Chris Thompson
##############################################################################
@@ -16,11 +16,11 @@
=head1 VERSION
-Version 1.07
-
-=cut
-
-our $VERSION = '1.07';
+Version 1.08
+
+=cut
+
+our $VERSION = '1.08';
my ( %conf, $handler, $encoder, $decoder );
use constant HANDLER => 0;
@@ -264,10 +264,11 @@
sub objToJson {
my $self = shift;
my $obj = shift;
+ croak 'must provide object to convert' unless defined $obj;
if ( ref $self ) {
croak "No $handler Object created!" unless exists $self->[HANDLER];
my $method = $self->[HANDLER]->can($self->[ENCODER]);
- croak "$handler can't execute $encoder" unless $method;
+ croak "$handler can't execute $self->[ENCODER]" unless $method;
return $self->[HANDLER]->$method($obj);
}
return $handler->can($encoder)->($obj);
@@ -309,10 +310,11 @@
sub jsonToObj {
my $self = shift;
my $obj = shift;
+ croak 'must provide json to convert' unless defined $obj;
if ( ref $self ) {
croak "No $handler Object created!" unless exists $self->[HANDLER];
- my $method = $self->[HANDLER]->can($self->[ENCODER]);
- croak "$handler can't execute $encoder" unless $method;
+ my $method = $self->[HANDLER]->can($self->[DECODER]);
+ croak "$handler can't execute $self->[DECODER]" unless $method;
return $self->[HANDLER]->$method($obj);
}
$handler->can($decoder)->($obj);
Modified: packages/libjson-any-perl/trunk/t/01-JSON.t
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libjson-any-perl/trunk/t/01-JSON.t?rev=5469&op=diff
==============================================================================
--- packages/libjson-any-perl/trunk/t/01-JSON.t (original)
+++ packages/libjson-any-perl/trunk/t/01-JSON.t Fri May 18 23:00:09 2007
@@ -1,41 +1,71 @@
-#!perl -T
+#!perl
$|++;
use strict;
use Test::More;
-
-eval "use JSON::Any qw(PC JSON)";
+eval "use JSON::Any qw(JSON)";
if ($@) {
- plan skip_all => "Neither JSON::PC nor JSON installed: $@";
+ plan skip_all => "JSON.pm not installed: $@";
}
else {
- plan tests => 5;
+ plan tests => 15;
}
-diag("Testing JSON/JSON::PC backend");
+diag("Testing JSON.pm backend");
my ( $js, $obj );
-#1
-ok( my $json = JSON::Any->new( autoconv => 1 ) );
-$obj = { "id" => JSON::Number("1.02") };
-{
- no warnings;
- local $JSON::AUTOCONVERT = 0;
- my $js = $json->objToJson($obj);
+ok(my $json_obj = JSON::Any->new());
+isa_ok($json_obj, 'JSON::Any');
+isa_ok($json_obj->handler, 'JSON');
- #2
- is( $js, '{"id":1.02}' );
-}
-$js = $json->objToJson($obj);
+$js = q|{}|;
+$obj = $json_obj->jsonToObj($js);
+$js = $json_obj->objToJson($obj);
+is($js,'{}');
-#3
-is( $js, '{"id":1.02}' );
+$js = q|[]|;
+$obj = $json_obj->jsonToObj($js);
+$js = $json_obj->objToJson($obj);
+is($js,'[]');
-$obj = { "id" => '0xfa' };
-$js = $json->objToJson($obj);
+$js = q|{"foo":"bar"}|;
+$obj = $json_obj->jsonToObj($js);
+is($obj->{foo},'bar');
+$js = $json_obj->objToJson($obj);
+is($js,'{"foo":"bar"}');
-#4
-is( $js, '{"id":0xfa}' );
+$js = q|{"foo":""}|;
+$obj = $json_obj->jsonToObj($js);
+$js = $json_obj->objToJson($obj);
+is($js,'{"foo":""}');
-#5
-ok( $json = JSON::Any->new( pretty => 1 ) );
+$js = q|{"foo":" "}|;
+$obj = $json_obj->jsonToObj($js);
+$js = $json_obj->objToJson($obj);
+is($js,'{"foo":" "}');
+
+$js = q|{}|;
+$obj = JSON::Any->jsonToObj($js);
+$js = JSON::Any->objToJson($obj);
+is($js,'{}');
+
+$js = q|[]|;
+$obj = JSON::Any->jsonToObj($js);
+$js = JSON::Any->objToJson($obj);
+is($js,'[]');
+
+$js = q|{"foo":"bar"}|;
+$obj = JSON::Any->jsonToObj($js);
+is($obj->{foo},'bar');
+$js = JSON::Any->objToJson($obj);
+is($js,'{"foo":"bar"}');
+
+$js = q|{"foo":""}|;
+$obj = JSON::Any->jsonToObj($js);
+$js = JSON::Any->objToJson($obj);
+is($js,'{"foo":""}');
+
+$js = q|{"foo":" "}|;
+$obj = JSON::Any->jsonToObj($js);
+$js = JSON::Any->objToJson($obj);
+is($js,'{"foo":" "}');
More information about the Pkg-perl-cvs-commits
mailing list