Go to the documentation of this file.00001 #include <ros/ros.h>
00002 #include <gtest/gtest.h>
00003 #include <ddynamic_reconfigure/param/dd_bool_param.h>
00004
00005 namespace ddynamic_reconfigure {
00006
00010 TEST(DDBoolTest, constructorTest) {
00011 DDBool param1("param1",0,"param1",true);
00012 DDBool param2("",0,"",false);
00013 DDBool param3("\000",0,"\000",false);
00014 }
00015
00019 TEST(DDBoolTest, valueTest) {
00020 DDBool param("dd_param",0,"dd_param",true);
00021
00022 Value v(true);
00023 ASSERT_TRUE(param.sameType(v));
00024 ASSERT_TRUE(param.sameValue(v));
00025
00026 v = Value(1);
00027 ASSERT_FALSE(param.sameType(v));
00028 ASSERT_TRUE(param.sameValue(v));
00029
00030 v = Value(false);
00031 ASSERT_TRUE(param.sameType(v));
00032 ASSERT_FALSE(param.sameValue(v));
00033
00034 v = Value(0);
00035 ASSERT_FALSE(param.sameType(v));
00036 ASSERT_FALSE(param.sameValue(v));
00037
00038 param.setValue(v);
00039 v = Value(true);
00040 ASSERT_FALSE(param.sameValue(v));
00041
00042 ASSERT_TRUE(param.getValue().getType() == "bool");
00043 ASSERT_TRUE(param.sameValue(Value(false)));
00044 }
00045
00046 TEST(DDBoolTest, streamTest) {
00047 DDBool param1("param1",0,"param1",true);
00048 stringstream stream;
00049 stream << param1;
00050 ASSERT_EQ(param1.getName() + ":" + param1.getValue().toString(),stream.str());
00051 }
00052 }
00053
00054
00055 int main(int argc, char** argv) {
00056 testing::InitGoogleTest(&argc, argv);
00057
00058 srand((unsigned int)random());
00059
00060 return RUN_ALL_TESTS();
00061 }