public void TestStart() { Mock <Player> mockPlayer = new Mock <Player>("name", 100, 1); Mock <Enemy> mockEnemy = new Mock <Enemy>("name", 100, 1); Mock <CharacterCombatHandler> mockPlayerCombatHandler = new Mock <CharacterCombatHandler>(); Mock <CharacterCombatHandler> mockEnemyCombatHandler = new Mock <CharacterCombatHandler>(); mockCombatConfig.Setup(combatConfig => combatConfig.GetPlayer()).Returns(mockPlayer.Object); mockCharacterManager.Setup(characterManager => characterManager.RegisterCharacter(It.IsAny <Player>())); mockCombatConfig.Setup(combatConfig => combatConfig.GetEnemy()).Returns(mockEnemy.Object); mockCharacterManager.Setup(characterManager => characterManager.RegisterCharacter(It.IsAny <Enemy>())); mockPlayer.Setup(player => player.SubscribeCombatHandler(It.IsAny <CharacterCombatHandler>())); mockCombatUI.Setup(combatUI => combatUI.GetPlayerCombatHandler(It.IsAny <Player>())).Returns(mockPlayerCombatHandler.Object); mockCombatUI.Setup(combatUI => combatUI.GetEnemyCombatHandler(It.IsAny <Enemy>())).Returns(mockEnemyCombatHandler.Object); mockCombatManager.Setup(combatManager => combatManager.Init(It.IsAny <CharacterManager>(), It.IsAny <TurnManager>(), It.IsAny <GameFlowManager>())); combatInitializer.Initialize(); mockCharacterManager.Verify(characterManager => characterManager.RegisterCharacter(mockPlayer.Object)); mockCombatConfig.Verify(combatConfig => combatConfig.GetEnemy()); mockCharacterManager.Verify(characterManager => characterManager.RegisterCharacter(mockEnemy.Object)); mockCombatConfig.Verify(combatConfig => combatConfig.GetPlayer()); mockPlayer.Verify(player => player.SubscribeCombatHandler(mockPlayerCombatHandler.Object)); mockCombatConfig.Verify(combatConfig => combatConfig.GetEnemy()); mockEnemy.Verify(enemy => enemy.SubscribeCombatHandler(mockEnemyCombatHandler.Object)); mockCombatManager.Verify(combatManager => combatManager.Init(mockCharacterManager.Object, mockTurnManager.Object, mockGameFlowManager.Object)); }
IEnumerator FirstLoad() { if (combatConfig == null || combatInitializer == null || dataInitializer.SaveManager == null) { yield return(null); } if (combatUI.GetPlayerCombatHandler(dataInitializer.GameSave.Player) == null) { yield return(null); } currentLevel = dataInitializer.GameSave.EnemyLevel; combatConfig.Initialize(dataInitializer.GameSave.Player, levels[currentLevel].GetEnemy()); combatInitializer.Initialize(); combatConfig.GetPlayer().EquipWeapon(weapons[dataInitializer.GameSave.WeaponLevel].GetWeapon()); inBattle = true; SceneManager.LoadScene("Intro", LoadSceneMode.Additive); }