subscribers.cpp
Go to the documentation of this file.
1 #include <gtest/gtest.h>
2 
3 #include <std_msgs/Int32.h>
4 #include <ros/duration.h>
5 #include <ros/publisher.h>
6 #include <ros/node_handle.h>
7 
8 #include <atomic>
9 #include <iostream>
10 
11 TEST(Subscriber, internal)
12 {
13  ros::NodeHandle node_handle;
14  int queue_size = 1;
15  ros::Publisher publisher_to_interal_topic = node_handle.advertise<std_msgs::Int32>("fibonacci_publisher_internal",
16  queue_size);
17 
18  while (publisher_to_interal_topic.getNumSubscribers() == 0 && ros::ok())
19  {
20  ros::Duration(0.001).sleep();
21  }
22 
23  EXPECT_EQ(publisher_to_interal_topic.getNumSubscribers(), 1);
24 }
25 
26 int main(int argc, char **argv)
27 {
28  testing::InitGoogleTest(&argc, argv);
29  int time_seed = static_cast<int>(time(0));
30  srand(time_seed);
31 
32  ros::init(argc, argv, "subscribers");
33 
34  return RUN_ALL_TESTS();
35 }
bool sleep() const
ROSCPP_DECL void init(int &argc, char **argv, const std::string &name, uint32_t options=0)
TEST(Subscriber, internal)
Definition: subscribers.cpp:11
ROSCPP_DECL bool ok()
Publisher advertise(const std::string &topic, uint32_t queue_size, bool latch=false)
uint32_t getNumSubscribers() const
int main(int argc, char **argv)
Definition: subscribers.cpp:26


ros1_ros_cpptemplate
Author(s): Alexander Reimann
autogenerated on Sat Sep 2 2017 02:38:06