RegisterWizardFactory_Test.cpp
Go to the documentation of this file.
00001 #include <gtest/gtest.h>
00002 #include "robot_instance/RegisterWizardFactory.h"
00003 
00004 class RegisterWizardFactoryTest : public ::testing::Test
00005 {
00006 protected:
00007     virtual void SetUp()
00008     {
00009         registerXml =
00010             "<Register id=\"Control1\" type=\"Control\" size=\"16\">" \
00011             "   <Certificate value=\"0xAA00\" mask=\"0xFF00\" />" \
00012             "   <Entries>" \
00013             "       <Entry id=\"Mode\" index=\"0\" size=\"8\"><Description>Used to set value of entire lower byte.</Description></Entry>" \
00014             "       <Entry id=\"MotorEnable\" index=\"0\" size=\"1\"><Description>0=disable,1=enable</Description></Entry>" \
00015             "       <Entry id=\"BrakeRelease\" index=\"1\" size=\"1\"><Description>0=engage,1=release</Description></Entry>" \
00016             "       <Entry id=\"ProcReset\" index=\"2\" size=\"1\"><Description>1=reset</Description></Entry>" \
00017             "       <Entry id=\"CourseMode\" index=\"3\" size=\"1\"><Description>0=fine,1=course</Description></Entry>" \
00018             "       <Entry id=\"CalibrationMode\" index=\"4\" size=\"1\"><Description>0=run,1=calibrate</Description></Entry>" \
00019             "       <Entry id=\"ClearEncoder\" index=\"5\" size=\"1\"><Description>1=clear</Description></Entry>" \
00020             "       <Entry id=\"MotComSource\" index=\"6\" size=\"1\"><Description>0=brainstem,1=embedded</Description></Entry>" \
00021             "       <Entry id=\"QuadMode\" index=\"7\" size=\"1\"><Description>0=two quad,1=four quad</Description></Entry>" \
00022             "   </Entries>" \
00023             "</Register>";
00024     }
00025 
00026     virtual void TearDown()
00027     {
00028     }
00029 
00030     std::string registerXml;
00031 };
00032 
00033 TEST(RegisterWizardFactoryTest_NoFixture, Constructors)
00034 {
00035     std::string s;
00036 }
00037 
00038 TEST_F(RegisterWizardFactoryTest, ParseXml)
00039 {
00040     RegisterWizardMap::value_type registerWizardMapElement = RegisterWizardFactory::fromXml(registerXml, "");
00041     EXPECT_STREQ(registerWizardMapElement.first.c_str(), "Control1");
00042 
00043     RegisterWizardMap::value_type registerWizardMapElement2 = RegisterWizardFactory::fromXml(registerXml, "/left_leg/joint0");
00044     EXPECT_STREQ(registerWizardMapElement2.first.c_str(), "/left_leg/joint0/Control1");
00045 
00046     EXPECT_THROW(RegisterWizardFactory::fromXml("", ""), MissingXMLElementException);
00047     EXPECT_THROW(RegisterWizardFactory::fromXml("<Register></Register>", ""), MissingXMLElementException);
00048     EXPECT_THROW(RegisterWizardFactory::fromXml("<Register id=\"\"></Register>", ""), MissingXMLElementException);
00049 }
00050 
00051 int main(int argc, char** argv)
00052 {
00053     testing::InitGoogleTest(&argc, argv);
00054     return RUN_ALL_TESTS();
00055 }


robot_instance
Author(s):
autogenerated on Sat Jun 8 2019 20:43:12