Latest fixes to GDTR made such thing as name collisions completely impossible, so tests were fixed accordingly

This commit is contained in:
Pavel Kirienko
2014-03-08 22:03:58 +04:00
parent 7e17e852d1
commit 35db1858c8
3 changed files with 1 additions and 15 deletions
-1
View File
@@ -120,7 +120,6 @@ public:
bool match(DataTypeKind kind, const char* name) const;
bool match(DataTypeKind kind, uint16_t id) const;
bool match(const char* name) const { return match(kind_, name); }
std::string toString() const;
+1 -1
View File
@@ -79,7 +79,7 @@ GlobalDataTypeRegistry::RegistResult GlobalDataTypeRegistry::registImpl(Entry* d
{
if (p->descriptor.getID() == dtd->descriptor.getID()) // ID collision
return RegistResultCollision;
if (p->descriptor.match(dtd->descriptor.getFullName())) // Name collision
if (!std::strcmp(p->descriptor.getFullName(), dtd->descriptor.getFullName())) // Name collision
return RegistResultCollision;
p = p->getNextListNode();
}
@@ -47,15 +47,6 @@ namespace
static const char* getDataTypeFullName() { return "foo.DataTypeD"; }
};
struct DataTypeBNameCollision
{
enum { DefaultDataTypeID = 999 };
enum { DataTypeKind = uavcan::DataTypeKindMessage };
static uavcan::DataTypeSignature getDataTypeSignature() { return uavcan::DataTypeSignature(963); }
static const char* getDataTypeFullName() { return "my_namespace.DataTypeB"; }
};
template <typename Type>
uavcan::DataTypeDescriptor extractDescriptor(uint16_t dtid = Type::DefaultDataTypeID)
{
@@ -139,10 +130,6 @@ TEST(GlobalDataTypeRegistry, Basic)
ASSERT_EQ(GlobalDataTypeRegistry::RegistResultCollision,
GlobalDataTypeRegistry::instance().regist<DataTypeC>(741)); // ID COLLISION
ASSERT_EQ(GlobalDataTypeRegistry::RegistResultCollision,
GlobalDataTypeRegistry::instance().regist<DataTypeBNameCollision>(
DataTypeBNameCollision::DefaultDataTypeID)); // NAME COLLISION
ASSERT_EQ(GlobalDataTypeRegistry::RegistResultOk,
GlobalDataTypeRegistry::instance().regist<DataTypeC>(DataTypeC::DefaultDataTypeID));
uavcan::DefaultDataTypeRegistrator<DataTypeD> reg_DataTypeD;