7 #include <gtest/gtest.h>
9 TEST(SettingTest, socketcan_masks)
11 const can_err_mask_t fatal_errors = ( CAN_ERR_TX_TIMEOUT
16 const can_err_mask_t report_errors = ( CAN_ERR_LOSTARB
26 EXPECT_EQ(sci.
getErrorMask(), fatal_errors | report_errors);
31 m1->set(
"error_mask/CAN_ERR_LOSTARB",
false);
32 sci.
init(
"None",
false, m1);
33 EXPECT_EQ(sci.
getErrorMask(), (fatal_errors | report_errors) & (~CAN_ERR_LOSTARB));
38 m2->set(
"error_mask/CAN_ERR_TX_TIMEOUT",
false);
39 sci.
init(
"None",
false, m2);
40 EXPECT_EQ(sci.
getErrorMask(), (fatal_errors | report_errors));
45 m3->set(
"fatal_error_mask/CAN_ERR_TX_TIMEOUT",
false);
46 sci.
init(
"None",
false, m3);
47 EXPECT_EQ(sci.
getErrorMask(), (fatal_errors | report_errors) & (~CAN_ERR_TX_TIMEOUT));
52 m4->set(
"fatal_error_mask/CAN_ERR_TX_TIMEOUT",
false);
53 m4->set(
"error_mask/CAN_ERR_LOSTARB",
false);
54 sci.
init(
"None",
false, m4);
55 EXPECT_EQ(sci.
getErrorMask(), (fatal_errors | report_errors) & ~(CAN_ERR_TX_TIMEOUT|CAN_ERR_LOSTARB));
61 XmlRpc::XmlRpcValue value;
63 XmlRpc::XmlRpcValue segment;
65 value[
"segment"] = segment;
68 ASSERT_TRUE(value[
"segment"].hasMember(std::string(
"param")));
71 EXPECT_TRUE(settings.
get<
int>(
"param", res));
74 EXPECT_FALSE(settings.
get<
int>(
"param2", res));
77 EXPECT_TRUE(settings.
get<
int>(
"segment/param", res));
81 EXPECT_FALSE(settings.
get<
int>(
"segment/param2", res));
82 EXPECT_EQ(settings.
get_optional(
"segment/param2", 0), 0);
83 EXPECT_FALSE(settings.
get<
int>(
"segment2/param", res));
84 EXPECT_EQ(settings.
get_optional(
"segment2/param", 0), 0);
88 int main(
int argc,
char **argv){
89 testing::InitGoogleTest(&argc, argv);
90 return RUN_ALL_TESTS();