Passed
Push — master ( bc69e6...465240 )
by Jakub
12:35
created

CharacterSpecialSkillTest   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 35
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
wmc 3
eloc 25
dl 0
loc 35
rs 10
c 0
b 0
f 0

3 Methods

Rating   Name   Duplication   Size   Complexity  
A testGetValues() 0 14 1
A testGetLevel() 0 8 1
A testGetSkillType() 0 8 1
1
<?php
2
declare(strict_types=1);
3
4
namespace HeroesofAbenez\Combat;
5
6
require __DIR__ . "/../../bootstrap.php";
7
8
use Tester\Assert;
9
10
/**
11
 * @author Jakub Konečný
12
 * @testCase
13
 */
14
final class CharacterSpecialSkillTest extends \Tester\TestCase {
15
  public function testGetSkillType(): void {
16
    $skillData = [
17
      "id" => 1, "name" => "Skill Special", "levels" => 5, "type" => SkillSpecial::TYPE_BUFF, "duration" => 3,
18
      "target" => SkillSpecial::TARGET_SELF, "stat" => Character::STAT_DAMAGE, "value" => 10, "valueGrowth" => 2,
19
    ];
20
    $skill = new SkillSpecial($skillData);
21
    $characterSkill = new CharacterSpecialSkill($skill, 1);
22
    Assert::same("special", $characterSkill->skillType);
23
  }
24
  
25
  public function testGetLevel(): void {
26
    $skillData = [
27
      "id" => 1, "name" => "Skill Special", "levels" => 5, "type" => SkillSpecial::TYPE_BUFF, "duration" => 3,
28
      "target" => SkillSpecial::TARGET_SELF, "stat" => Character::STAT_DAMAGE, "value" => 10, "valueGrowth" => 2,
29
    ];
30
    $skill = new SkillSpecial($skillData);
31
    $characterSkill = new CharacterSpecialSkill($skill, 1);
32
    Assert::same(1, $characterSkill->level);
33
  }
34
  
35
  public function testGetValues(): void {
36
    $skillData = [
37
      "id" => 1, "name" => "Skill Special", "levels" => 5, "type" => SkillSpecial::TYPE_BUFF, "duration" => 3,
38
      "target" => SkillSpecial::TARGET_SELF, "stat" => Character::STAT_DAMAGE, "value" => 10, "valueGrowth" => 2,
39
    ];
40
    $skill = new SkillSpecial($skillData);
41
    $characterSkill = new CharacterSpecialSkill($skill, 1);
42
    Assert::same(10, $characterSkill->value);
43
    $characterSkill = new CharacterSpecialSkill($skill, 5);
44
    Assert::same(18, $characterSkill->value);
45
    $skillData["type"] = SkillSpecial::TYPE_STUN;
46
    $skill = new SkillSpecial($skillData);
47
    $characterSkill = new CharacterSpecialSkill($skill, 1);
48
    Assert::same(0, $characterSkill->value);
49
  }
50
}
51
52
$test = new CharacterSpecialSkillTest();
53
$test->run();
54
?>