/** * @test */ public function I_can_create_it() { $zeroLevel = $this->createZeroLevel(); $firstLevel = $this->createFirstLevel('fighter'); $withFirstLevelOnly = new ProfessionLevels($zeroLevel, $firstLevel); self::assertNotNull($withFirstLevelOnly); $anotherInstance = ProfessionLevels::createIt($zeroLevel, $firstLevel); self::assertEquals($withFirstLevelOnly, $anotherInstance); $yetAnotherInstance = ProfessionLevels::createIt($zeroLevel, $firstLevel); self::assertNotSame($anotherInstance, $yetAnotherInstance); $withExplicitlyEmptyNextLevels = ProfessionLevels::createIt($zeroLevel, $firstLevel, []); self::assertEquals($withFirstLevelOnly, $withExplicitlyEmptyNextLevels); $withNextLevels = ProfessionLevels::createIt($zeroLevel, $firstLevel, $nextLevels = [ProfessionNextLevel::createNextLevel(Fighter::getIt(), LevelRank::getIt(2), Strength::getIt(1), Agility::getIt(0), Knack::getIt(0), Will::getIt(0), Intelligence::getIt(1), Charisma::getIt(0))]); self::assertNotEquals($withFirstLevelOnly, $withNextLevels); }
public static function createSkillsEntity(Tables $tables) { return Skills::createSkills(ProfessionLevels::createIt(ProfessionFirstLevel::createFirstLevel($profession = Fighter::getIt()), [ProfessionNextLevel::createNextLevel($profession, LevelRank::getIt(2), Strength::getIt(0), Agility::getIt(1), Knack::getIt(0), Will::getIt(0), Intelligence::getIt(1), Charisma::getIt(0))]), BackgroundSkillPoints::getIt(2, Heritage::getIt(7)), $tables, new PhysicalSkills(), new PsychicalSkills(), new CombinedSkills()); }