16 #include <gtest/gtest.h>
18 #include <boost/optional.hpp>
23 TEST(TrackFindingCDCTest, cpp_float)
25 EXPECT_TRUE(std::signbit(-0.0));
26 EXPECT_FALSE(std::signbit(0.0));
27 EXPECT_FALSE(std::signbit(NAN));
30 TEST(TrackFindingCDCTest, cpp_max)
35 double maximum = std::max(NAN, value);
36 EXPECT_TRUE(std::isnan(maximum));
38 double maximum2 = std::max(value, NAN);
39 EXPECT_EQ(value, maximum2);
42 TEST(TrackFindingCDCTest, cpp_array_init)
44 float values[10] = {};
45 for (
int i = 0; i < 10; ++i) {
46 EXPECT_EQ(0, values[i]);
50 TEST(TrackFindingCDCTest, cpp_char_is_signed)
53 EXPECT_GT(0, isSigned);
56 TEST(TrackFindingCDCTest, cpp_stringstream_copy)
59 std::stringstream filled_non_const;
60 filled_non_const <<
"filled "
64 const std::stringstream& filled = filled_non_const;
66 std::stringstream copy1;
67 copy1 << filled.rdbuf();
68 filled.rdbuf()->pubseekpos(0, std::ios_base::in);
70 std::stringstream copy2;
71 copy2 << filled.rdbuf();
72 filled.rdbuf()->pubseekpos(0, std::ios_base::in);
74 EXPECT_EQ(filled.str(), copy1.str());
75 EXPECT_EQ(filled.str(), copy2.str());
78 TEST(TrackFindingCDCTest, cpp_map_insert)
80 std::map<int, int> defaults{{1, 1}, {2, 2}};
82 std::map<int, int> concret{{1, 10}};
84 concret.insert(defaults.begin(), defaults.end());
87 EXPECT_EQ(10, concret[1]);
90 EXPECT_EQ(2, concret[2]);
93 TEST(TrackFindingCDCTest, cpp_remainder)
98 double value = 3.0 / 2.0;
99 double reduced_value = std::remainder(value, 2.0);
101 EXPECT_FLOAT_EQ(-1.0 / 2.0, reduced_value);
105 double value = -3.0 / 2.0;
106 double reduced_value = std::remainder(value, 2.0);
108 EXPECT_FLOAT_EQ(1.0 / 2.0, reduced_value);
112 TEST(TrackFindingCDCTest, boost_optional_reference)
114 std::vector<int> integers({1});
115 boost::optional<std::vector<int>&> ref_integers(integers);
116 int i = ref_integers->at(0);
TEST(TestgetDetectorRegion, TestgetDetectorRegion)
Test Constructors.