From f2311b4c975e1f55622631bf9cb5d6542532869a Mon Sep 17 00:00:00 2001 From: Bassoonian Date: Fri, 19 Jul 2024 12:30:06 +0200 Subject: [PATCH] Add trainer class ball test (#4999) --- test/battle/trainer_control.c | 47 +++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/test/battle/trainer_control.c b/test/battle/trainer_control.c index 9415360948..d5bc1479f0 100644 --- a/test/battle/trainer_control.c +++ b/test/battle/trainer_control.c @@ -144,3 +144,50 @@ TEST("ModifyPersonalityForNature can set any nature") ModifyPersonalityForNature(&personality, nature); EXPECT_EQ(GetNatureFromPersonality(personality), nature); } + +static const struct TrainerMon sTestParty2[] = +{ + { + .species = SPECIES_WYNAUT, + .lvl = 5, + }, + { + .species = SPECIES_WYNAUT, + .lvl = 5, + }, + { + .species = SPECIES_WYNAUT, + .lvl = 5, + }, + { + .species = SPECIES_WYNAUT, + .lvl = 5, + }, + { + .species = SPECIES_WYNAUT, + .lvl = 5, + }, + { + .species = SPECIES_WYNAUT, + .lvl = 5, + }, +}; + +static const struct Trainer sTestTrainer2 = +{ + .trainerName = _("Test2"), + .trainerClass = TRAINER_CLASS_BLACK_BELT, + .party = TRAINER_PARTY(sTestParty2), +}; + +TEST("Trainer Class Balls apply to the entire party") +{ + u32 j; + struct Pokemon *testParty = Alloc(6 * sizeof(struct Pokemon)); + CreateNPCTrainerPartyFromTrainer(testParty, &sTestTrainer2, TRUE, BATTLE_TYPE_TRAINER); + for(j = 0; j < 6; j++) + { + EXPECT(GetMonData(&testParty[j], MON_DATA_POKEBALL, 0) == gTrainerClasses[sTestTrainer2.trainerClass].ball); + } + Free(testParty); +}