NAME Test::Deeply::Float - Test equality of data structure, compare numbers with tolerance VERSION This document describes version 0.002 of Test::Deeply::Float (from Perl distribution Test-Deeply-Float), released on 2018-08-11. SYNOPSIS use Test::More; # exports is_deeply(), etc use Test::Deeply::Float; # exports is_deeply_float() is_deeply ({a => 1, b => 1.1234567}, {a => 1, b => 1.1234568}); # fail is_deeply_float({a => 1, b => 1.1234567}, {a => 1, b => 1.1234568}); # pass is_deeply_float({a => 1, b => 1.12345 }, {a => 1, b => 1.12346 }); # fail To customize tolerance level: $Test::Deeply::Float::EPSILON = 1e-9; # default is 1e-6 DESCRIPTION Deprecation notice: Deprecated in favor of Test::DataCmp. This module exports "is_deeply_float()" which is just like Test::More's "is_deeply()", except that when comparing two numbers (ints or floats) a tolerance is allowed to work around floating point rounding problem. FUNCTIONS is_deeply_float HOMEPAGE Please visit the project's homepage at . SOURCE Source repository is at . BUGS Please report any bugs or feature requests on the bugtracker website When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature. SEE ALSO Test::DataCmp. Code is based on Test::More's "is_deeply()". To compare two floats with tolerance, you can simply do "abs($n1 - $n2) < $epsilon" or use one of several modules on CPAN, e.g. Number::Tolerant. For testing, there are Test::Number::Delta, Test::Approximate. To compare two data structures with tolerant float comparison, there is also Test::Deep (see "num()") with its several extensions e.g. Test::Approximate, Test::Deep::NumberTolerant, Test::Deep::Fuzzy. Note that you need (or: able) to specify the point(s) in the data structure where you want to perform the tolerant comparison at. AUTHOR perlancar COPYRIGHT AND LICENSE This software is copyright (c) 2018 by perlancar@cpan.org. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.