diff --git a/Tests/UnitTests/Core/Detector/RectangularConverterTest.h b/Tests/UnitTests/Core/Detector/RectangularConverterTest.h index fe5be601c338c3149cb10266ff30548535c1ad75..5226a695b156a9b67d5e92fdeb6d1f26d1859a35 100644 --- a/Tests/UnitTests/Core/Detector/RectangularConverterTest.h +++ b/Tests/UnitTests/Core/Detector/RectangularConverterTest.h @@ -48,32 +48,34 @@ TEST_F(RectangularConverterTest, RectangularConverter) EXPECT_EQ(converter.dimension(), 2u); - EXPECT_DOUBLE_EQ(converter.calculateMin(0, AxesUnits::DEFAULT), 0.0); - EXPECT_DOUBLE_EQ(converter.calculateMin(0, AxesUnits::NBINS), 0.0); - EXPECT_DOUBLE_EQ(converter.calculateMin(0, AxesUnits::MM), 0.0); + EXPECT_NEAR(converter.calculateMin(0, AxesUnits::DEFAULT), 0.0, 1e-12); + EXPECT_NEAR(converter.calculateMin(0, AxesUnits::NBINS), 0.0, 1e-12); + EXPECT_NEAR(converter.calculateMin(0, AxesUnits::MM), 0.0, 1e-12); EXPECT_NEAR(converter.calculateMin(0, AxesUnits::RADIANS), -m_phi, m_phi*1e-10); EXPECT_NEAR(converter.calculateMin(0, AxesUnits::DEGREES), Units::rad2deg(-m_phi), Units::rad2deg(m_phi)*1e-10); EXPECT_NEAR(converter.calculateMin(0, AxesUnits::QSPACE), -m_kfy, m_kfy*1e-10); - EXPECT_DOUBLE_EQ(converter.calculateMax(0, AxesUnits::DEFAULT), det_width); - EXPECT_DOUBLE_EQ(converter.calculateMax(0, AxesUnits::NBINS), static_cast<double>(det_nx)); - EXPECT_DOUBLE_EQ(converter.calculateMax(0, AxesUnits::MM), det_width); + EXPECT_NEAR(converter.calculateMax(0, AxesUnits::DEFAULT), det_width, det_width*1e-10); + EXPECT_NEAR(converter.calculateMax(0, AxesUnits::NBINS), static_cast<double>(det_nx), + det_nx*1e-10); + EXPECT_NEAR(converter.calculateMax(0, AxesUnits::MM), det_width, det_width*1e-10); EXPECT_NEAR(converter.calculateMax(0, AxesUnits::RADIANS), m_phi, m_phi*1e-10); EXPECT_NEAR(converter.calculateMax(0, AxesUnits::DEGREES), Units::rad2deg(m_phi), Units::rad2deg(m_phi)*1e-10); EXPECT_NEAR(converter.calculateMax(0, AxesUnits::QSPACE), m_kfy, m_kfy*1e-10); - EXPECT_DOUBLE_EQ(converter.calculateMin(1, AxesUnits::DEFAULT), 0.0); - EXPECT_DOUBLE_EQ(converter.calculateMin(1, AxesUnits::NBINS), 0.0); - EXPECT_DOUBLE_EQ(converter.calculateMin(1, AxesUnits::MM), 0.0); - EXPECT_DOUBLE_EQ(converter.calculateMin(1, AxesUnits::RADIANS), 0.0); - EXPECT_DOUBLE_EQ(converter.calculateMin(1, AxesUnits::DEGREES), 0.0); + EXPECT_NEAR(converter.calculateMin(1, AxesUnits::DEFAULT), 0.0, 1e-12); + EXPECT_NEAR(converter.calculateMin(1, AxesUnits::NBINS), 0.0, 1e-12); + EXPECT_NEAR(converter.calculateMin(1, AxesUnits::MM), 0.0, 1e-12); + EXPECT_NEAR(converter.calculateMin(1, AxesUnits::RADIANS), 0.0, 1e-12); + EXPECT_NEAR(converter.calculateMin(1, AxesUnits::DEGREES), 0.0, 1e-12); EXPECT_NEAR(converter.calculateMin(1, AxesUnits::QSPACE), - m_kiz, std::abs(m_kiz)*1e-10); - EXPECT_DOUBLE_EQ(converter.calculateMax(1, AxesUnits::DEFAULT), det_height); - EXPECT_DOUBLE_EQ(converter.calculateMax(1, AxesUnits::NBINS), static_cast<double>(det_ny)); - EXPECT_DOUBLE_EQ(converter.calculateMax(1, AxesUnits::MM), det_height); + EXPECT_NEAR(converter.calculateMax(1, AxesUnits::DEFAULT), det_height, det_height*1e-10); + EXPECT_NEAR(converter.calculateMax(1, AxesUnits::NBINS), static_cast<double>(det_ny), + det_ny*1e-10); + EXPECT_NEAR(converter.calculateMax(1, AxesUnits::MM), det_height, det_height*1e-10); EXPECT_NEAR(converter.calculateMax(1, AxesUnits::RADIANS), m_alpha, m_alpha*1e-10); EXPECT_NEAR(converter.calculateMax(1, AxesUnits::DEGREES), Units::rad2deg(m_alpha), Units::rad2deg(m_alpha)*1e-10); @@ -91,32 +93,34 @@ TEST_F(RectangularConverterTest, RectangularConverterClone) EXPECT_EQ(P_clone->dimension(), 2u); - EXPECT_DOUBLE_EQ(P_clone->calculateMin(0, AxesUnits::DEFAULT), 0.0); - EXPECT_DOUBLE_EQ(P_clone->calculateMin(0, AxesUnits::NBINS), 0.0); - EXPECT_DOUBLE_EQ(P_clone->calculateMin(0, AxesUnits::MM), 0.0); + EXPECT_NEAR(P_clone->calculateMin(0, AxesUnits::DEFAULT), 0.0, 1e-12); + EXPECT_NEAR(P_clone->calculateMin(0, AxesUnits::NBINS), 0.0, 1e-12); + EXPECT_NEAR(P_clone->calculateMin(0, AxesUnits::MM), 0.0, 1e-12); EXPECT_NEAR(P_clone->calculateMin(0, AxesUnits::RADIANS), -m_phi, m_phi*1e-10); EXPECT_NEAR(P_clone->calculateMin(0, AxesUnits::DEGREES), Units::rad2deg(-m_phi), Units::rad2deg(m_phi)*1e-10); EXPECT_NEAR(P_clone->calculateMin(0, AxesUnits::QSPACE), -m_kfy, m_kfy*1e-10); - EXPECT_DOUBLE_EQ(P_clone->calculateMax(0, AxesUnits::DEFAULT), det_width); - EXPECT_DOUBLE_EQ(P_clone->calculateMax(0, AxesUnits::NBINS), static_cast<double>(det_nx)); - EXPECT_DOUBLE_EQ(P_clone->calculateMax(0, AxesUnits::MM), det_width); + EXPECT_NEAR(P_clone->calculateMax(0, AxesUnits::DEFAULT), det_width, det_width*1e-10); + EXPECT_NEAR(P_clone->calculateMax(0, AxesUnits::NBINS), static_cast<double>(det_nx), + det_nx*1e-10); + EXPECT_NEAR(P_clone->calculateMax(0, AxesUnits::MM), det_width, det_width*1e-10); EXPECT_NEAR(P_clone->calculateMax(0, AxesUnits::RADIANS), m_phi, m_phi*1e-10); EXPECT_NEAR(P_clone->calculateMax(0, AxesUnits::DEGREES), Units::rad2deg(m_phi), Units::rad2deg(m_phi)*1e-10); EXPECT_NEAR(P_clone->calculateMax(0, AxesUnits::QSPACE), m_kfy, m_kfy*1e-10); - EXPECT_DOUBLE_EQ(P_clone->calculateMin(1, AxesUnits::DEFAULT), 0.0); - EXPECT_DOUBLE_EQ(P_clone->calculateMin(1, AxesUnits::NBINS), 0.0); - EXPECT_DOUBLE_EQ(P_clone->calculateMin(1, AxesUnits::MM), 0.0); - EXPECT_DOUBLE_EQ(P_clone->calculateMin(1, AxesUnits::RADIANS), 0.0); - EXPECT_DOUBLE_EQ(P_clone->calculateMin(1, AxesUnits::DEGREES), 0.0); + EXPECT_NEAR(P_clone->calculateMin(1, AxesUnits::DEFAULT), 0.0, 1e-12); + EXPECT_NEAR(P_clone->calculateMin(1, AxesUnits::NBINS), 0.0, 1e-12); + EXPECT_NEAR(P_clone->calculateMin(1, AxesUnits::MM), 0.0, 1e-12); + EXPECT_NEAR(P_clone->calculateMin(1, AxesUnits::RADIANS), 0.0, 1e-12); + EXPECT_NEAR(P_clone->calculateMin(1, AxesUnits::DEGREES), 0.0, 1e-12); EXPECT_NEAR(P_clone->calculateMin(1, AxesUnits::QSPACE), - m_kiz, std::abs(m_kiz)*1e-10); - EXPECT_DOUBLE_EQ(P_clone->calculateMax(1, AxesUnits::DEFAULT), det_height); - EXPECT_DOUBLE_EQ(P_clone->calculateMax(1, AxesUnits::NBINS), static_cast<double>(det_ny)); - EXPECT_DOUBLE_EQ(P_clone->calculateMax(1, AxesUnits::MM), det_height); + EXPECT_NEAR(P_clone->calculateMax(1, AxesUnits::DEFAULT), det_height, det_height*1e-10); + EXPECT_NEAR(P_clone->calculateMax(1, AxesUnits::NBINS), static_cast<double>(det_ny), + det_ny*1e-10); + EXPECT_NEAR(P_clone->calculateMax(1, AxesUnits::MM), det_height, det_height*1e-10); EXPECT_NEAR(P_clone->calculateMax(1, AxesUnits::RADIANS), m_alpha, m_alpha*1e-10); EXPECT_NEAR(P_clone->calculateMax(1, AxesUnits::DEGREES), Units::rad2deg(m_alpha), Units::rad2deg(m_alpha)*1e-10);