Change tests to try MANUAL_BY_TOPIC liveliness for FastRTPS (#465)

* Remove tests about FastRTPS not supporting MANUAL_BY_TOPIC liveliness

Signed-off-by: Emerson Knapp <eknapp@amazon.com>

* Remove unused variable

Signed-off-by: Emerson Knapp <eknapp@amazon.com>
This commit is contained in:
Emerson Knapp 2019-06-28 15:55:48 -07:00 committed by Steven! Ragnarök
parent d6ab086b02
commit e9a71b40f7

View file

@ -52,7 +52,7 @@ public:
{ {
is_opensplice = (std::string(rmw_get_implementation_identifier()).find("rmw_opensplice") == 0); is_opensplice = (std::string(rmw_get_implementation_identifier()).find("rmw_opensplice") == 0);
bool is_fastrtps = (std::string(rmw_get_implementation_identifier()).find("rmw_fastrtps") == 0); bool is_fastrtps = (std::string(rmw_get_implementation_identifier()).find("rmw_fastrtps") == 0);
is_liveliness_supported = !is_fastrtps; is_manual_by_node_liveliness_supported = !is_fastrtps;
rcl_ret_t ret; rcl_ret_t ret;
{ {
@ -130,13 +130,7 @@ public:
rmw_time_t lifespan {0, 0}; rmw_time_t lifespan {0, 0};
rmw_time_t deadline {DEADLINE_PERIOD_IN_S.count(), 0}; rmw_time_t deadline {DEADLINE_PERIOD_IN_S.count(), 0};
rmw_time_t lease_duration {LIVELINESS_LEASE_DURATION_IN_S.count(), 0}; rmw_time_t lease_duration {LIVELINESS_LEASE_DURATION_IN_S.count(), 0};
if (!is_liveliness_supported) { rmw_qos_liveliness_policy_t liveliness_policy = RMW_QOS_POLICY_LIVELINESS_MANUAL_BY_TOPIC;
lease_duration = {0, 0};
}
rmw_qos_liveliness_policy_t liveliness_policy =
is_liveliness_supported ?
RMW_QOS_POLICY_LIVELINESS_MANUAL_BY_TOPIC :
RMW_QOS_POLICY_LIVELINESS_AUTOMATIC;
// init publisher // init publisher
ret = setup_publisher(deadline, lifespan, lease_duration, liveliness_policy); ret = setup_publisher(deadline, lifespan, lease_duration, liveliness_policy);
@ -218,7 +212,7 @@ protected:
rcl_subscription_t subscription; rcl_subscription_t subscription;
rcl_event_t subscription_event; rcl_event_t subscription_event;
bool is_opensplice; bool is_opensplice;
bool is_liveliness_supported; bool is_manual_by_node_liveliness_supported;
const char * topic = "rcl_test_publisher_subscription_events"; const char * topic = "rcl_test_publisher_subscription_events";
const rosidl_message_type_support_t * ts; const rosidl_message_type_support_t * ts;
}; };
@ -350,13 +344,12 @@ conditional_wait_for_msgs_and_events(
} }
TEST_F(CLASSNAME(TestEventFixture, RMW_IMPLEMENTATION), test_unsupported_liveliness) { TEST_F(CLASSNAME(TestEventFixture, RMW_IMPLEMENTATION), test_unsupported_liveliness) {
if (is_liveliness_supported) { if (is_manual_by_node_liveliness_supported) {
return; return;
} }
rmw_time_t deadline {0, 0}; rmw_time_t deadline {0, 0};
rmw_time_t lifespan {0, 0}; rmw_time_t lifespan {0, 0};
rmw_time_t lease_duration {0, 0}; rmw_time_t lease_duration {0, 0};
rmw_time_t nonzero_lease_duration {1, 0};
rmw_qos_liveliness_policy_t liveliness_policy = RMW_QOS_POLICY_LIVELINESS_MANUAL_BY_NODE; rmw_qos_liveliness_policy_t liveliness_policy = RMW_QOS_POLICY_LIVELINESS_MANUAL_BY_NODE;
EXPECT_EQ(RCL_RET_ERROR, EXPECT_EQ(RCL_RET_ERROR,
setup_subscriber(deadline, lifespan, lease_duration, liveliness_policy)) << setup_subscriber(deadline, lifespan, lease_duration, liveliness_policy)) <<
@ -364,22 +357,6 @@ TEST_F(CLASSNAME(TestEventFixture, RMW_IMPLEMENTATION), test_unsupported_livelin
EXPECT_EQ(RCL_RET_ERROR, EXPECT_EQ(RCL_RET_ERROR,
setup_publisher(deadline, lifespan, lease_duration, liveliness_policy)) << setup_publisher(deadline, lifespan, lease_duration, liveliness_policy)) <<
"Initialized publisher with RMW_QOS_POLICY_LIVELINESS_MANUAL_BY_NODE when unsupported"; "Initialized publisher with RMW_QOS_POLICY_LIVELINESS_MANUAL_BY_NODE when unsupported";
liveliness_policy = RMW_QOS_POLICY_LIVELINESS_MANUAL_BY_TOPIC;
EXPECT_EQ(RCL_RET_ERROR,
setup_subscriber(deadline, lifespan, lease_duration, liveliness_policy)) <<
"Initialized subscription with RMW_QOS_POLICY_LIVELINESS_MANUAL_BY_TOPIC when unsupported";
EXPECT_EQ(RCL_RET_ERROR,
setup_publisher(deadline, lifespan, lease_duration, liveliness_policy)) <<
"Initialized publisher with RMW_QOS_POLICY_LIVELINESS_MANUAL_BY_TOPIC when unsupported";
liveliness_policy = RMW_QOS_POLICY_LIVELINESS_AUTOMATIC;
EXPECT_EQ(RCL_RET_ERROR,
setup_subscriber(deadline, lifespan, nonzero_lease_duration, liveliness_policy)) <<
"Initialized subscription with nonzero Liveliness lease duration when unsupported";
EXPECT_EQ(RCL_RET_ERROR,
setup_publisher(deadline, lifespan, nonzero_lease_duration, liveliness_policy)) <<
"Initialized publisher with nonzero Liveliness lease duration when unsupported";
} }
/* /*
@ -522,10 +499,6 @@ TEST_F(CLASSNAME(TestEventFixture, RMW_IMPLEMENTATION), test_pubsub_deadline_mis
*/ */
TEST_F(CLASSNAME(TestEventFixture, RMW_IMPLEMENTATION), test_pubsub_liveliness_kill_pub) TEST_F(CLASSNAME(TestEventFixture, RMW_IMPLEMENTATION), test_pubsub_liveliness_kill_pub)
{ {
if (!is_liveliness_supported) {
return;
}
setup_publisher_and_subscriber(RCL_PUBLISHER_LIVELINESS_LOST, setup_publisher_and_subscriber(RCL_PUBLISHER_LIVELINESS_LOST,
RCL_SUBSCRIPTION_LIVELINESS_CHANGED); RCL_SUBSCRIPTION_LIVELINESS_CHANGED);
rcl_ret_t ret; rcl_ret_t ret;