30 #include <gtest/gtest.h> 44 EXPECT_TRUE(filter->
configure(
"TestDouble", nh));
46 filter ->
update(out, out);
47 EXPECT_NEAR(4, out, epsilon);
55 EXPECT_TRUE(filter->
configure(
"TestInt", nh));
57 filter ->
update(out, out);
66 EXPECT_TRUE(filter->
configure(
"TestUInt", nh));
68 filter ->
update(out, out);
77 EXPECT_TRUE(filter->
configure(
"TestString", nh));
79 filter ->
update(out, out);
80 EXPECT_STREQ(
"four", out.c_str());
83 TEST(Parameters, DoubleVector)
89 EXPECT_TRUE(filter->
configure(
"TestDoubleVector", nh));
90 std::vector<double> out;
91 filter ->
update(out, out);
92 for (std::vector<double>::iterator it = out.begin(); it != out.end(); ++it)
94 EXPECT_NEAR(4, *it, epsilon);
98 TEST(Parameters, StringVector)
103 EXPECT_TRUE(filter->
configure(
"TestStringVector", nh));
104 std::vector<std::string> out;
105 filter ->
update(out, out);
106 for (std::vector<std::string>::iterator it = out.begin(); it != out.end(); ++it)
108 EXPECT_STREQ(
"four", it->c_str());
113 int main(
int argc,
char **argv){
114 testing::InitGoogleTest(&argc, argv);
116 return RUN_ALL_TESTS();
bool configure(const std::string ¶m_name, ros::NodeHandle node_handle=ros::NodeHandle())
Configure the filter from the parameter server.
A Base filter class to provide a standard interface for all filters.
ROSCPP_DECL void init(int &argc, char **argv, const std::string &name, uint32_t options=0)
void update(const std::string &key, const XmlRpc::XmlRpcValue &v)
A mean filter which works on doubles.
int main(int argc, char **argv)