MCPcopy Create free account
hub / github.com/apache/arrow / TestRoundTrip

Method TestRoundTrip

cpp/src/arrow/util/float16_test.cc:48–62  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

46 };
47
48 static void TestRoundTrip(std::span<const RoundTripTestCase> test_cases) {
49 for (size_t index = 0; index < test_cases.size(); ++index) {
50 ARROW_SCOPED_TRACE("i=", index);
51 const auto& tc = test_cases[index];
52
53 const auto f16 = Float16(tc.input);
54 EXPECT_EQ(tc.bits, f16.bits());
55 EXPECT_EQ(tc.output, static_cast<T>(f16));
56
57 EXPECT_EQ(std::signbit(tc.output), f16.signbit());
58 EXPECT_EQ(std::isnan(tc.output), f16.is_nan());
59 EXPECT_EQ(std::isinf(tc.output), f16.is_infinity());
60 EXPECT_EQ(std::isfinite(tc.output), f16.is_finite());
61 }
62 }
63
64 static void TestRoundTripFromNaN(std::span<const T> test_cases) {
65 for (size_t i = 0; i < test_cases.size(); ++i) {

Callers

nothing calls this directly

Calls 4

signbitFunction · 0.85
signbitMethod · 0.80
Float16Function · 0.70
sizeMethod · 0.45

Tested by

no test coverage detected