3 #include <gtest/gtest.h>
10 #include <ros/console.h>
13 class ROS :
public testing::Test
50 client.
initialize(ros::names::append(
ns,
"rgb/image"), ros::names::append(
ns,
"depth/image"), ros::names::append(
ns,
"rgb/camera_info"));
51 ros::Time end = ros::Time::now() + ros::Duration(5);
52 bool received =
false;
53 while (!received || ros::Time::now() <= end)
56 ros::Duration(0.1).sleep();
60 ros::Duration(2).sleep();
61 EXPECT_FALSE(
client.
nextImage()) <<
"SetUp failed, client should not have gotten a new image after getting one image correctly";
64 EXPECT_TRUE(received) <<
"SetUp failed, because client wasn't able to get one image correctly.";
78 EXPECT_FALSE(ros::isShuttingDown());
79 EXPECT_FALSE(client.initialized());
80 EXPECT_TRUE(client.initialize(
"rgb/image",
"depth/image",
"rgb/camera_info"));
81 EXPECT_TRUE(client.initialized());
82 EXPECT_FALSE(ros::isShuttingDown());
87 EXPECT_FALSE(ros::isShuttingDown());
88 EXPECT_TRUE(client.initialize(
"rgb/image",
"depth/image",
"rgb/camera_info"));
89 EXPECT_TRUE(client.initialized());
91 EXPECT_FALSE(client.nextImage(image2));
92 EXPECT_FALSE(ros::isShuttingDown());
97 EXPECT_FALSE(ros::isShuttingDown());
98 EXPECT_TRUE(client.initialize(
"rgb/image",
"depth/image",
"rgb/camera_info"));
99 EXPECT_TRUE(client.initialized());
101 EXPECT_FALSE(image2);
102 EXPECT_FALSE(ros::isShuttingDown());
107 EXPECT_FALSE(ros::isShuttingDown());
110 ros::Duration(0.01).sleep();
111 image2 = client.nextImage();
115 EXPECT_EQ(image, *image2);
117 EXPECT_FALSE(ros::isShuttingDown());
122 EXPECT_FALSE(ros::isShuttingDown());
125 ros::Duration(0.01).sleep();
126 EXPECT_TRUE(client.nextImage(image2));
127 EXPECT_EQ(image, image2);
128 EXPECT_FALSE(ros::isShuttingDown());
129 image.setTimestamp(image.getTimestamp()+10.);
131 ros::Duration(0.01).sleep();
132 EXPECT_TRUE(client.nextImage(image2));
133 EXPECT_EQ(image, image2);
134 EXPECT_FALSE(ros::isShuttingDown());
139 EXPECT_FALSE(ros::isShuttingDown());
142 ros::Duration(0.01).sleep();
143 EXPECT_TRUE(client.nextImage(image2));
144 EXPECT_EQ(image, image2);
145 EXPECT_FALSE(ros::isShuttingDown());
146 EXPECT_FALSE(client.nextImage(image2));
147 EXPECT_FALSE(ros::isShuttingDown());
152 EXPECT_FALSE(ros::isShuttingDown());
156 ros::Duration(0.01).sleep();
157 image2 = client.nextImage();
161 EXPECT_EQ(image, *image2);
163 EXPECT_FALSE(ros::isShuttingDown());
164 image.setTimestamp(image.getTimestamp()+10.);
167 ros::Duration(0.01).sleep();
168 image2 = client.nextImage();
172 EXPECT_EQ(image, *image2);
174 EXPECT_FALSE(ros::isShuttingDown());
179 EXPECT_FALSE(ros::isShuttingDown());
183 ros::Duration(0.01).sleep();
184 image2 = client.nextImage();
188 EXPECT_EQ(image, *image2);
190 EXPECT_FALSE(ros::isShuttingDown());
192 image2 = client.nextImage();
193 EXPECT_FALSE(image2);
194 EXPECT_FALSE(ros::isShuttingDown());
199 EXPECT_FALSE(ros::isShuttingDown());
202 ros::Duration(0.01).sleep();
203 EXPECT_TRUE(client.nextImage(image2));
204 EXPECT_EQ(image, image2);
205 EXPECT_FALSE(ros::isShuttingDown());
209 int main(
int argc,
char **argv)
211 ros::init(argc, argv,
"ros_connection");
212 testing::InitGoogleTest(&argc, argv);
213 return RUN_ALL_TESTS();