JSON-Assert
Test-JSON-Assert
================
These two modules help you check that what you expect to be in an JSON document
is actually there. You can do this via
The JSON::Assert module exports the assert() function. This ...
* json_match( jpath, count wanted, msg );
* jpath_is( jpath, value, msg );
Examples:
* json_matches( '$.NZSRSResponse.Response.Domain', 1, "Response contains one domain record" );
* jpath_is( '$.NZSRSResponse.Response.Domain', '{ DomainName => "foo.co.te"}', "Response DomainName is foo.co.te" );
EXAMPLE JSON ASSERTIONS
=======================
For example, in the following document, you can assert a number of things, for
example, that you expect one <content> hash in the document, and that it's
value is "Hello, World!":
use JSON;
my $json = <<'EOF';
NZSRSResponse:
Response:
Domain: foo.co.te
Status: Available
EOF
my $data = decode_json $json;
my $json_assert = JSON::Assert->new();
$json_assert->is_jpath_count($data, '$.NZSRSResponse.Response.Domain', 1);
$json_assert->does_jpath_value_match($doc, '$.NZSRSResponse.Response.Domain', 'Hello, World!')
INSTALLATION
============
To install this module type the following:
perl Makefile.PL
make
make test
make install
DEPENDENCIES
============
This module requires these other modules and libraries:
Test::Simple (Test::More/Test::Builder -- core)
AUTHOR, COPYRIGHT AND LICENCE
=============================
Written by Andrew Ruthven:
*
[email protected]
*
[email protected]
Based on XML::Assert by Andrew Chilton.
This software development is sponsored and directed by NZRS Limited,
http://www.nzrs.net.nz/
Part of work was carried out by Catalyst IT,
http://www.catalyst.net.nz/
Copyright (c) 2014-2015, NZRS. All Rights Reserved. This software
may be used under the terms of the Artistic License 2.0. Note that this
license is compatible with both the GNU GPL and Artistic licenses. A copy of
this license is supplied with the distribution in the file COPYING.txt.