void BaseMindMapEntityintegration::test_MemMapreadEntity_changeloc() { MemEntity * tlve = new MemEntity("0", 0); tlve->m_contains = new LocatedEntitySet; m_mind->m_map.m_entities[0] = tlve; MemEntity * e2 = new MemEntity("2", 2); e2->m_contains = new LocatedEntitySet; e2->m_location.m_loc = tlve; tlve->m_contains->insert(e2); m_mind->m_map.m_entities[2] = e2; MemEntity * e3 = new MemEntity("3", 3); e3->m_contains = new LocatedEntitySet; e3->m_location.m_loc = e2; e2->m_contains->insert(e3); m_mind->m_map.m_entities[3] = e3; ASSERT_EQUAL(m_mind->m_map.m_entities.size(), 4u); Anonymous data; data->setLoc(tlve->getId()); // Read in entity data that changes the LOC of e3 from e2 to TLVE m_mind->m_map.readEntity(e3, data); ASSERT_EQUAL(e3->m_location.m_loc, tlve) ASSERT_TRUE(e2->m_contains->find(e3) == e2->m_contains->end()); ASSERT_TRUE(tlve->m_contains->find(e3) != tlve->m_contains->end()); }
void EntityBuildertest::test_sequence2() { Anonymous attributes; assert(EntityBuilder::instance() != 0); // Create a normal Entity LocatedEntity * test_ent = EntityBuilder::instance()->newEntity("1", 1, "thing", attributes, BaseWorld::instance()); assert(test_ent != 0); // Create an entity specifying an attrbute attributes->setAttr("funky", "true"); test_ent = EntityBuilder::instance()->newEntity("1", 1, "thing", attributes, BaseWorld::instance()); assert(test_ent != 0); // Create an entity causing VELOCITY to be set attributes = Anonymous(); attributes->setVelocity(std::vector<double>(3, 1.5)); LocatedEntity_merge_action = SET_VELOCITY; test_ent = EntityBuilder::instance()->newEntity("1", 1, "thing", attributes, BaseWorld::instance()); assert(test_ent != 0); LocatedEntity_merge_action = DO_NOTHING; // Create an entity causing VELOCITY to be set for no obvious reason attributes = Anonymous(); LocatedEntity_merge_action = SET_VELOCITY; test_ent = EntityBuilder::instance()->newEntity("1", 1, "thing", attributes, BaseWorld::instance()); assert(test_ent != 0); LocatedEntity_merge_action = DO_NOTHING; // Create an entity specifying a LOC attributes = Anonymous(); attributes->setLoc("1"); test_ent = EntityBuilder::instance()->newEntity("1", 1, "thing", attributes, BaseWorld::instance()); assert(test_ent != 0); }