Browse Source

refactoring: replaced placeholders

remotes/origin/encIntegration
János 2 years ago
parent
commit
9ff319fbb4
  1. 7
      src/c/encounter.c
  2. 2
      src/c/encounter.h
  3. 25
      test/c/test_encounter.c

7
src/c/encounter.c

@ -3,7 +3,9 @@
#include <string.h>
#include <stdbool.h>
#include "character.h"
#include "encounter.h"
#include "playerinput.h"
#include "helper.h"
@ -68,8 +70,11 @@ int switchTurns(int currentTurn)
return currentTurn;
}
int fight(int playerH, int playerDamage, int playerArmor, int playerAttack, enemy* enemy)
int fight(Character *character, enemy* enemy)
{
int playerH = getCharacterHealthPoints(character);
int playerDamage = getCharacterAttack(character);
int playerArmor = getCharacterArmor(character);
int currentTurn = 2;
char decision;
while (playerAlive(playerH) && getEnemyHealth(enemy) > 0)

2
src/c/encounter.h

@ -17,7 +17,7 @@ void enemyHeal(enemy *enemy, int healAmount);
void enemyDamaged(enemy* enemy, int damage);
bool enemyChoosesHeal(enemy* enemy);
int switchTurns(int currentTurn);
int fight(int playerH, int playerDamage, int playerArmor, int playerAttack, enemy* enemy);
int fight(Character *character, enemy* enemy);
//Funktionen die Mathematische Berechnungen durchführen
int map(int x, int in_min, int in_max, int out_min, int out_max);

25
test/c/test_encounter.c

@ -1,14 +1,16 @@
#ifdef TEST
#include "unity.h"
#include "character.h"
#include "encounter.h"
#include "playerinput.h"
#include "mock_playerinput.h"
#include "helper.h"
#include "mock_helper.h"
void setUp(void)
{
{
}
void teardown(void)
@ -186,10 +188,12 @@ void test_FightPlayerWins(void)
int playerHealth = 100, playerDamage = 10, playerArmor = 4, playerAttack = 5;
int enemyHealth = 1, enemyDamage = 4, enemyArmor = 4, enemyMaxHealth = 5;
int result;
// aCt
// act
//strength,dexterity,intelligence,healthPoints,manaPoints,level,exp,maxExp,attack,armor,maxHealthPoints;
Character testChar = {10,10,10,playerHealth,100,1,0,100,playerDamage,playerArmor,100};
playerInputChar_ExpectAndReturn('a');
enemy test = {enemyHealth, enemyDamage, enemyArmor, enemyMaxHealth};
result = fight(playerHealth, playerDamage, playerArmor, playerAttack, &test);
result = fight(&testChar, &test);
// assert
TEST_ASSERT_EQUAL(1, result);
}
@ -201,10 +205,11 @@ void test_FightEnemyWins(void)
int enemyHealth = 100, enemyDamage = 4, enemyArmor = 4, enemyMaxHealth = 100;
int result;
// act
Character testChar = {10,10,10,playerHealth,100,1,0,100,playerDamage,playerArmor,100};
playerInputChar_ExpectAndReturn('a');
randomInt_ExpectAndReturn(1);
enemy test = {enemyHealth, enemyDamage, enemyArmor, enemyMaxHealth};
result = fight(playerHealth, playerDamage, playerArmor, playerAttack, &test);
result = fight(&testChar, &test);
// assert
TEST_ASSERT_EQUAL(0, result);
}
@ -216,9 +221,10 @@ void test_FightPlayerChoosesAttack(void)
int enemyHealth = 6, enemyDamage = 4, enemyArmor = 4, enemyMaxHealth = 100;
int result;
// act
Character testChar = {10,10,10,playerHealth,100,1,0,100,playerDamage,playerArmor,100};
playerInputChar_ExpectAndReturn('a');
enemy test = {enemyHealth, enemyDamage, enemyArmor, enemyMaxHealth};
fight(playerHealth, playerDamage, playerArmor, playerAttack, &test);
fight(&testChar, &test);
result = getEnemyHealth(&test);
// assert
TEST_ASSERT_EQUAL(0, result);
@ -231,13 +237,14 @@ void test_FightPlayerHeals_thenAttacks_Wins(void)
int enemyHealth = 11, enemyDamage = 4, enemyArmor = 4, enemyMaxHealth = 100;
int result;
// act
Character testChar = {10,10,10,playerHealth,100,1,0,100,playerDamage,playerArmor,100};
enemy test = {enemyHealth, enemyDamage, enemyArmor, enemyMaxHealth};
playerInputChar_ExpectAndReturn('h');
randomInt_ExpectAndReturn(1);
playerInputChar_ExpectAndReturn('a');
randomInt_ExpectAndReturn(1);
playerInputChar_ExpectAndReturn('a');
result = fight(playerHealth, playerDamage, playerArmor, playerAttack, &test);
result = fight(&testChar, &test);
// assert
TEST_ASSERT_EQUAL(1, result);
}
@ -249,9 +256,10 @@ void test_FightPlayerFlees(void)
int enemyHealth = 11, enemyDamage = 4, enemyArmor = 4, enemyMaxHealth = 100;
int result;
// act
Character testChar = {10,10,10,playerHealth,100,1,0,100,playerDamage,playerArmor,100};
enemy test = {enemyHealth, enemyDamage, enemyArmor, enemyMaxHealth};
playerInputChar_ExpectAndReturn('f');
result = fight(playerHealth, playerDamage, playerArmor, playerAttack, &test);
result = fight(&testChar, &test);
// assert
TEST_ASSERT_EQUAL(2, result);
}
@ -362,11 +370,12 @@ void test_enemyChoosesHeal_ThenAttackWins(void)
int playerHealth = 10, playerDamage = 10, playerArmor = 5, playerAttack = 10;
enemy test2 = {enemyHealth, enemyDamage, enemyArmor, enemyMaxHealth};
//act
Character testChar = {10,10,10,playerHealth,100,1,0,100,playerDamage,playerArmor,100};
playerInputChar_ExpectAndReturn('a');
randomInt_ExpectAndReturn(39); //39%20 = 19 , 19 + 1 = 20
playerInputChar_ExpectAndReturn('a');
randomInt_ExpectAndReturn(0); //0%20 = 0 , 0 + 1 = 1
result = fight(playerHealth, playerDamage, playerArmor, playerAttack, &test2);
result = fight(&testChar, &test2);
//assert
TEST_ASSERT_EQUAL(0, result);

Loading…
Cancel
Save