From 483eb2f56657e8e7f419ab1a4fab8dce9ade8609 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 27 Apr 2024 20:24:20 +0200 Subject: Adding upstream version 14.2.21. Signed-off-by: Daniel Baumann --- .../test/histogram_serialization_test.cpp | 50 ++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 src/boost/libs/histogram/test/histogram_serialization_test.cpp (limited to 'src/boost/libs/histogram/test/histogram_serialization_test.cpp') diff --git a/src/boost/libs/histogram/test/histogram_serialization_test.cpp b/src/boost/libs/histogram/test/histogram_serialization_test.cpp new file mode 100644 index 00000000..29f6e5ae --- /dev/null +++ b/src/boost/libs/histogram/test/histogram_serialization_test.cpp @@ -0,0 +1,50 @@ +// Copyright 2018 Hans Dembinski +// +// Distributed under the Boost Software License, Version 1.0. +// (See accompanying file LICENSE_1_0.txt +// or copy at http://www.boost.org/LICENSE_1_0.txt) + +#include +#include +#include +#include +#include +#include +#include +#include +#include "throw_exception.hpp" +#include "utility_histogram.hpp" +#include "utility_serialization.hpp" + +using namespace boost::histogram; + +template +void run_tests(const std::string& filename) { + // histogram_serialization + namespace tr = axis::transform; + using def = use_default; + using axis::option::none_t; + auto a = + make(Tag(), axis::regular(1, -1, 1, "reg"), + axis::circular(1, 0.0, 1.0, "cir"), + axis::regular(1, 1, std::exp(2), "reg-log"), + axis::regular, axis::option::overflow_t>( + tr::pow(0.5), 1, 1, 100, {1, 2, 3}), + axis::variable({1.5, 2.5}, "var"), + axis::category{3, 1}, + axis::integer(1, 2)); + a(0.5, 0.2, 2, 20, 2.2, 1, 1); + print_xml(filename, a); + + auto b = decltype(a)(); + BOOST_TEST_NE(a, b); + load_xml(filename, b); + BOOST_TEST_EQ(a, b); +} + +int main(int argc, char** argv) { + BOOST_ASSERT(argc == 2); + run_tests(join(argv[1], "histogram_serialization_test_static.xml")); + run_tests(join(argv[1], "histogram_serialization_test_dynamic.xml")); + return boost::report_errors(); +} -- cgit v1.2.3