From 8709b8f40ee939c0eb86865b0bcf5328adc6f231 Mon Sep 17 00:00:00 2001 From: JorVLP <47005135+JorVLP@users.noreply.github.com> Date: Sun, 25 Sep 2022 15:39:36 +0100 Subject: [PATCH] add turkey horse tests --- sapai/data.py | 8 +-- tests/test_effect_queue.py | 127 ++++++++++++++++++++++++++++++++++++- 2 files changed, 130 insertions(+), 5 deletions(-) diff --git a/sapai/data.py b/sapai/data.py index 3636de9..13971ae 100644 --- a/sapai/data.py +++ b/sapai/data.py @@ -9051,8 +9051,8 @@ }, "packs": ["StandardPack"], "tier": "Summoned", - "baseAttack": "?", - "baseHealth": "?", + "baseAttack": 4, + "baseHealth": 4, }, "pet-dirty-rat": { "name": "Dirty Rat", @@ -9090,8 +9090,8 @@ }, "packs": ["StandardPack", "ExpansionPack1"], "tier": "Summoned", - "baseAttack": "?", - "baseHealth": "?", + "baseAttack": 2, + "baseHealth": 2, }, "pet-butterfly": { "name": "Butterfly", diff --git a/tests/test_effect_queue.py b/tests/test_effect_queue.py index c87a136..867afa2 100644 --- a/tests/test_effect_queue.py +++ b/tests/test_effect_queue.py @@ -608,11 +608,136 @@ def test_turkey_horse(self): Test turkey and horse are giving buffs properly to summoned pets """ ### Sheep + # Test Horse + ref_team = Team(["ram", "ram", "horse"], battle=True) + ref_team[0].pet._until_end_of_battle_attack_buff = data["pets"]["pet-horse"][ + "level1Ability" + ]["effect"]["attackAmount"] + ref_team[1].pet._until_end_of_battle_attack_buff = data["pets"]["pet-horse"][ + "level1Ability" + ]["effect"]["attackAmount"] + t0 = Team(["sheep", "horse"]) + t1 = Team(["sloth"]) + t1[0].pet._attack = 50 + b = run_battle(t0, t1) + self.maxDiff = None + self.assertEqual(b.t0.state, ref_team.state) + b = run_battle(t1, t0) + self.assertEqual(b.t1.state, ref_team.state) + # Test Turkey + ref_team = Team(["ram", "ram", "turkey"], battle=True) + ref_team[0].pet._attack = ( + ref_team[0].pet._attack + + data["pets"]["pet-turkey"]["level1Ability"]["effect"]["attackAmount"] + ) + ref_team[0].pet._health = ( + ref_team[0].pet._health + + data["pets"]["pet-turkey"]["level1Ability"]["effect"]["healthAmount"] + ) + ref_team[1].pet._attack = ( + ref_team[1].pet._attack + + data["pets"]["pet-turkey"]["level1Ability"]["effect"]["attackAmount"] + ) + ref_team[1].pet._health = ( + ref_team[1].pet._health + + data["pets"]["pet-turkey"]["level1Ability"]["effect"]["healthAmount"] + ) + t0 = Team(["sheep", "turkey"]) + t1 = Team(["sloth"]) + t1[0].pet._attack = 50 + b = run_battle(t0, t1) + self.assertEqual(b.t0.state, ref_team.state) + b = run_battle(t1, t0) + self.assertEqual(b.t1.state, ref_team.state) ### Rooster + # Test Horse + ref_team = Team(["chick", "horse"], battle=True) + ref_team[0].pet._attack = 2 + ref_team[0].pet._until_end_of_battle_attack_buff = data["pets"]["pet-horse"][ + "level1Ability" + ]["effect"]["attackAmount"] + t0 = Team(["rooster", "horse"]) + t1 = Team(["sloth"]) + t1[0].pet._attack = 50 + b = run_battle(t0, t1) + self.assertEqual(b.t0.state, ref_team.state) + b = run_battle(t1, t0) + self.assertEqual(b.t1.state, ref_team.state) + # Test Turkey + ref_team = Team(["chick", "turkey"], battle=True) + ref_team[0].pet._attack = 2 + ref_team[0].pet._attack = ( + ref_team[0].pet._attack + + data["pets"]["pet-turkey"]["level1Ability"]["effect"]["attackAmount"] + ) + ref_team[0].pet._health = ( + ref_team[0].pet._health + + data["pets"]["pet-turkey"]["level1Ability"]["effect"]["healthAmount"] + ) + t0 = Team(["rooster", "turkey"]) + t1 = Team(["sloth"]) + t1[0].pet._attack = 50 + b = run_battle(t0, t1) + self.assertEqual(b.t0.state, ref_team.state) + b = run_battle(t1, t0) + self.assertEqual(b.t1.state, ref_team.state) ### Sheep fly - self.skipTest("TODO") + # Test Horse + ref_team = Team(["zombie-fly", "ram", "ram", "horse", "fly"], battle=True) + ref_team[4].pet.ability_counter = 1 + ref_team[0].pet._until_end_of_battle_attack_buff = data["pets"]["pet-horse"][ + "level1Ability" + ]["effect"]["attackAmount"] + ref_team[1].pet._until_end_of_battle_attack_buff = data["pets"]["pet-horse"][ + "level1Ability" + ]["effect"]["attackAmount"] + ref_team[2].pet._until_end_of_battle_attack_buff = data["pets"]["pet-horse"][ + "level1Ability" + ]["effect"]["attackAmount"] + t0 = Team(["sheep", "horse", "fly"]) + t1 = Team(["sloth"]) + t1[0].pet._attack = 50 + b = run_battle(t0, t1) + self.maxDiff = None + self.assertEqual(b.t0.state, ref_team.state) + b = run_battle(t1, t0) + self.assertEqual(b.t1.state, ref_team.state) + # Test Turkey + ref_team = Team(["zombie-fly", "ram", "ram", "turkey", "fly"], battle=True) + ref_team[4].pet.ability_counter = 1 + ref_team[0].pet._attack = ( + ref_team[0].pet._attack + + data["pets"]["pet-turkey"]["level1Ability"]["effect"]["attackAmount"] + ) + ref_team[0].pet._health = ( + ref_team[0].pet._health + + data["pets"]["pet-turkey"]["level1Ability"]["effect"]["healthAmount"] + ) + ref_team[1].pet._attack = ( + ref_team[1].pet._attack + + data["pets"]["pet-turkey"]["level1Ability"]["effect"]["attackAmount"] + ) + ref_team[1].pet._health = ( + ref_team[1].pet._health + + data["pets"]["pet-turkey"]["level1Ability"]["effect"]["healthAmount"] + ) + ref_team[2].pet._attack = ( + ref_team[2].pet._attack + + data["pets"]["pet-turkey"]["level1Ability"]["effect"]["attackAmount"] + ) + ref_team[2].pet._health = ( + ref_team[2].pet._health + + data["pets"]["pet-turkey"]["level1Ability"]["effect"]["healthAmount"] + ) + t0 = Team(["sheep", "turkey", "fly"]) + t1 = Team(["sloth"]) + t1[0].pet._attack = 50 + b = run_battle(t0, t1) + self.assertEqual(b.t0.state, ref_team.state) + b = run_battle(t1, t0) + self.assertEqual(b.t1.state, ref_team.state) def test_boar(self): """