AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
PoolQuestReloadFixTest Class Reference
Inheritance diagram for PoolQuestReloadFixTest:

Protected Member Functions

void SetUp () override
 
void TearDown () override
 

Protected Attributes

QuestRelationscreatureQuestMap = nullptr
 

Static Protected Attributes

static constexpr uint32 TEST_QUEST_ID = 99998
 
static constexpr uint32 TEST_CREATURE_ID = 99999
 
static constexpr uint32 TEST_POOL_ID = 99997
 

Detailed Description

Member Function Documentation

◆ SetUp()

void PoolQuestReloadFixTest::SetUp ( )
inlineoverrideprotected
221 {
222 creatureQuestMap = sObjectMgr->GetCreatureQuestRelationMap();
223
224 // Set up pool infrastructure (private members via friend access)
225 sPoolMgr->mPoolTemplate[TEST_POOL_ID].MaxLimit = 1;
226
227 // Create the pool group entry (Spawn1Object doesn't use pool group
228 // internals, it only reads mQuestCreatureRelation)
229 sPoolMgr->mPoolQuestGroups[TEST_POOL_ID].SetPoolId(TEST_POOL_ID);
230
231 sPoolMgr->mQuestSearchMap[TEST_QUEST_ID] = TEST_POOL_ID;
232
233 // Mark the quest as active/spawned
234 sPoolMgr->mQuestSpawnedData.AddSpawn<Quest>(TEST_QUEST_ID, TEST_POOL_ID);
235
236 // Set up pool-side mapping: quest -> creature
237 sPoolMgr->mQuestCreatureRelation.insert(
238 PooledQuestRelation::value_type(TEST_QUEST_ID, TEST_CREATURE_ID));
239 }
#define sObjectMgr
Definition ObjectMgr.h:1730
#define sPoolMgr
Definition PoolMgr.h:216
static constexpr uint32 TEST_QUEST_ID
Definition PoolQuestReloadTest.cpp:262
static constexpr uint32 TEST_CREATURE_ID
Definition PoolQuestReloadTest.cpp:263
static constexpr uint32 TEST_POOL_ID
Definition PoolQuestReloadTest.cpp:264
QuestRelations * creatureQuestMap
Definition PoolQuestReloadTest.cpp:266
Definition QuestDef.h:210

References creatureQuestMap, sObjectMgr, sPoolMgr, TEST_CREATURE_ID, TEST_POOL_ID, and TEST_QUEST_ID.

◆ TearDown()

void PoolQuestReloadFixTest::TearDown ( )
inlineoverrideprotected
242 {
243 // Clean up all test state from the singletons
244 sPoolMgr->mPoolTemplate.erase(TEST_POOL_ID);
245 sPoolMgr->mPoolQuestGroups.erase(TEST_POOL_ID);
246 sPoolMgr->mQuestSearchMap.erase(TEST_QUEST_ID);
247 sPoolMgr->mQuestSpawnedData.RemoveSpawn<Quest>(TEST_QUEST_ID, TEST_POOL_ID);
248
249 auto range = sPoolMgr->mQuestCreatureRelation.equal_range(TEST_QUEST_ID);
250 sPoolMgr->mQuestCreatureRelation.erase(range.first, range.second);
251
252 auto crRange = creatureQuestMap->equal_range(TEST_CREATURE_ID);
253 for (auto it = crRange.first; it != crRange.second; )
254 {
255 if (it->second == TEST_QUEST_ID)
256 it = creatureQuestMap->erase(it);
257 else
258 ++it;
259 }
260 }

References creatureQuestMap, sPoolMgr, TEST_CREATURE_ID, TEST_POOL_ID, and TEST_QUEST_ID.

Member Data Documentation

◆ creatureQuestMap

QuestRelations* PoolQuestReloadFixTest::creatureQuestMap = nullptr
protected

Referenced by SetUp(), and TearDown().

◆ TEST_CREATURE_ID

constexpr uint32 PoolQuestReloadFixTest::TEST_CREATURE_ID = 99999
staticconstexprprotected

Referenced by SetUp(), and TearDown().

◆ TEST_POOL_ID

constexpr uint32 PoolQuestReloadFixTest::TEST_POOL_ID = 99997
staticconstexprprotected

Referenced by SetUp(), and TearDown().

◆ TEST_QUEST_ID

constexpr uint32 PoolQuestReloadFixTest::TEST_QUEST_ID = 99998
staticconstexprprotected

Referenced by SetUp(), and TearDown().


The documentation for this class was generated from the following file: