NAME
Test::HexDifferences - Test binary as hexadecimal string
VERSION
1.001
SYNOPSIS
use Test::HexDifferences;eq_or_dump_diff($got,$expected,);eq_or_dump_diff($got,$expected,$test_name,);eq_or_dump_diff($got,$expected,{address => $start_address,format => "%a : %4C : %d\n",}$test_name,);
If $got or $expected is "undef" or a reference, the hexadecimal formatter is off. Then "eq_or_dump_diff" is a text compare.
dumped_eq_dump_or_diff($got_value,$expected_dump,);dumped_eq_dump_or_diff($got_value,$expected_dump,$test_name,);dumped_eq_dump_or_diff($got_value,$expected_dump,{address => $start_address,format => "%a : %4C : %d\n",}$test_name,);
See Test::HexDifferences::HexDump for the format description.
EXAMPLE
Inside of this Distribution is a directory named example. Run this *.t files.
DESCRIPTION
The are some special cases for testing binary data.
- •
-
The ascii format is not good for e.g. a length byte 0x41 displayed as A.
- •
-
Multibyte values are better shown as 1 value.
- •
-
Structured binary e.g. 2 byte length followed by bytes better are shown as it is.
- •
-
Compare 2 binary or 1 binary and a dump.
SUBROUTINES/METHODS
subroutine eq_or_dump_diff
eq_or_dump_diff($got_value,$expected_value,{ # optional hash referenceaddress => $display_start_address, # optionalformat => $format_string, # optional}$test_name, # optional);
subroutine dumped_eq_dump_or_diff
dumped_eq_dump_or_diff($got_value,$expected_dump,{ # optional hash referenceaddress => $display_start_address, # optionalformat => $format_string, # optional}$test_name, # optional);
DIAGNOSTICS
nothing
CONFIGURATION AND ENVIRONMENT
nothing
DEPENDENCIES
Sub::Exporter
Test::Builder::Module
Test::HexDifferences::HexDump
Text::Diff
INCOMPATIBILITIES
none
BUGS AND LIMITATIONS
none
SEE ALSO
Test::HexDifferences::HexDump
AUTHOR
Steffen Winkler
LICENSE AND COPYRIGHT
Copyright (c) 2012 - 2015, Steffen Winkler "<steffenw at cpan.org>". All rights reserved.
This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.