Test::HexDifferences(3pm) | User Contributed Perl Documentation | Test::HexDifferences(3pm) |
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 reference address => $display_start_address, # optional format => $format_string, # optional } $test_name, # optional );
subroutine dumped_eq_dump_or_diff¶
dumped_eq_dump_or_diff( $got_value, $expected_dump, { # optional hash reference address => $display_start_address, # optional format => $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.
2020-08-04 | perl v5.30.3 |