NAME

Test::BSON - Test BSON documents

VERSION

This document describes Test::BSON version 0.01.

SYNOPSIS

use Test::BSON;

bson_ok $bson,                 'BSON is valid';
bson_is $bson, $expected_bson, 'BSON matches what we expected';

DESCRIPTION

BSON is a binary-encoded extension of JSON. Test::BSON makes it easy to verify that you have built a valid BSON document and that it matches what you expected.

EXPORTED TESTS

bson_ok

Test passes if the BSON document is valid.

bson_ok $bson, 'BSON is valid';

is_valid_bson is provided as an alternative to bson_ok using the same naming convention as Test::JSON but is not exported by default.

bson_is

Test passes if the two BSON documents are valid and evaluate to the same data structure.

bson_is $bson, $expected_bson, 'BSON matches what we expected';

Test::Differences is used to provide easy diagnostics of why the BSON documents did not match. For example:

  Failed test 'BSON matches what we expected'
  in t/bson.t at line 10.
+----+----------------+----------------+
| Elt|Got             |Expected        |
+----+----------------+----------------+
|   0|{               |{               |
|   1|  BSON => [     |  BSON => [     |
*   2|    'AWSUM!!',  |    'awesome',  *
|   3|    '5.05',     |    '5.05',     |
*   4|    1984        |    1986        *
|   5|  ]             |  ]             |
|   6|}               |}               |
+----+----------------+----------------+

is_bson is provided as an alternative to bson_is using the same naming convention as Test::JSON but is not exported by default.

SEE ALSO

This module uses BSON and Test::Differences, and is based on Test::JSON. Learn more about BSON at http://bsonspec.org/.

AUTHOR

Nick Patch <patch@cpan.org>

ACKNOWLEDGEMENTS

This module was forked from Test::JSYNC, which was forked from Test::JSON authored by Curtis “Ovid” Poe.

COPYRIGHT & LICENSE

© 2011–2012 Nick Patch

© 2005–2007 Curtis “Ovid” Poe

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.