@lgriffin/esi.ts 1.0.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/DOCUMENTATION.md +106 -0
- package/LICENSE +26 -0
- package/README.md +934 -125
- package/TESTING.md +523 -0
- package/demo/examples.ts +250 -0
- package/demo/flexible-examples.ts +166 -0
- package/docs/.nojekyll +1 -0
- package/docs/assets/highlight.css +106 -0
- package/docs/assets/icons.js +18 -0
- package/docs/assets/icons.svg +1 -0
- package/docs/assets/main.js +60 -0
- package/docs/assets/navigation.js +1 -0
- package/docs/assets/search.js +1 -0
- package/docs/assets/style.css +1493 -0
- package/docs/classes/src_EsiClient.EsiClient.html +48 -0
- package/docs/classes/src_EsiClientBuilder.CustomEsiClient.html +43 -0
- package/docs/classes/src_EsiClientBuilder.EsiApiFactory.html +23 -0
- package/docs/classes/src_EsiClientBuilder.EsiClientBuilder.html +15 -0
- package/docs/classes/src_api_alliances_getAllianceById.AllianceByIdApi.html +3 -0
- package/docs/classes/src_api_alliances_getAllianceContactLabels.AllianceContactLabelsApi.html +3 -0
- package/docs/classes/src_api_alliances_getAllianceContacts.AllianceContactsApi.html +3 -0
- package/docs/classes/src_api_alliances_getAllianceCorporations.AllianceCorporationsApi.html +3 -0
- package/docs/classes/src_api_alliances_getAllianceIcons.AllianceIconsApi.html +3 -0
- package/docs/classes/src_api_alliances_getAlliances.AllAlliancesApi.html +3 -0
- package/docs/classes/src_api_assets_getCharacterAssets.GetCharacterAssetsApi.html +3 -0
- package/docs/classes/src_api_assets_getCorporationAssets.GetCorporationAssetsApi.html +3 -0
- package/docs/classes/src_api_assets_postCharacterAssetLocations.PostCharacterAssetLocationsApi.html +3 -0
- package/docs/classes/src_api_assets_postCharacterAssetNames.PostCharacterAssetNamesApi.html +3 -0
- package/docs/classes/src_api_assets_postCorporationAssetLocations.PostCorporationAssetLocationsApi.html +3 -0
- package/docs/classes/src_api_assets_postCorporationAssetNames.PostCorporationAssetNamesApi.html +3 -0
- package/docs/classes/src_api_bookmarks_getCharacterBookmarkFolders.CharacterBookmarkFoldersApi.html +3 -0
- package/docs/classes/src_api_bookmarks_getCharacterBookmarks.CharacterBookmarksApi.html +3 -0
- package/docs/classes/src_api_bookmarks_getCorporationBookmarkFolders.CorporationBookmarkFoldersApi.html +3 -0
- package/docs/classes/src_api_bookmarks_getCorporationBookmarks.CorporationBookmarksApi.html +3 -0
- package/docs/classes/src_api_calendar_getCalendarEventById.GetCalendarEventByIdApi.html +3 -0
- package/docs/classes/src_api_calendar_getCalendarEvents.GetCalendarEventsApi.html +3 -0
- package/docs/classes/src_api_calendar_getEventAttendees.GetEventAttendeesApi.html +3 -0
- package/docs/classes/src_api_calendar_respondToCalendarEvent.RespondToCalendarEventApi.html +3 -0
- package/docs/classes/src_api_characters_getAgentsResearch.GetAgentsResearchApi.html +3 -0
- package/docs/classes/src_api_characters_getBlueprints.GetBlueprintsApi.html +3 -0
- package/docs/classes/src_api_characters_getCharacterPublicInfo.GetCharacterPublicInfoApi.html +3 -0
- package/docs/classes/src_api_characters_getCharacterRoles.GetCharacterRolesApi.html +3 -0
- package/docs/classes/src_api_characters_getCharacterStandings.GetCharacterStandingsApi.html +3 -0
- package/docs/classes/src_api_characters_getCharacterTitles.GetCharacterTitlesApi.html +3 -0
- package/docs/classes/src_api_characters_getContactNotifications.GetContactNotificationsApi.html +3 -0
- package/docs/classes/src_api_characters_getCorporationHistory.GetCorporationHistoryApi.html +3 -0
- package/docs/classes/src_api_characters_getJumpFatigue.GetJumpFatigueApi.html +3 -0
- package/docs/classes/src_api_characters_getMedals.GetMedalsApi.html +3 -0
- package/docs/classes/src_api_characters_getNotifications.GetNotificationsApi.html +3 -0
- package/docs/classes/src_api_characters_getPortrait.GetPortraitApi.html +3 -0
- package/docs/classes/src_api_characters_postCSPAChargeCost.PostCspaChargeCostApi.html +3 -0
- package/docs/classes/src_api_characters_postCharacterAffiliations.PostCharacterAffiliationApi.html +3 -0
- package/docs/classes/src_api_clones_getClones.GetClonesApi.html +3 -0
- package/docs/classes/src_api_clones_getImplants.GetImplantsApi.html +3 -0
- package/docs/classes/src_api_clones_postJumpCloneActivation.PostJumpCloneActivationApi.html +3 -0
- package/docs/classes/src_api_contacts_deleteCharacterContacts.deleteCharacterContacts.html +3 -0
- package/docs/classes/src_api_contacts_getAllianceContactLabels.getAllianceContactLabels.html +3 -0
- package/docs/classes/src_api_contacts_getAllianceContacts.getAllianceContacts.html +3 -0
- package/docs/classes/src_api_contacts_getCharacterContactLabels.getCharacterContactLabels.html +3 -0
- package/docs/classes/src_api_contacts_getCharacterContacts.getCharacterContacts.html +3 -0
- package/docs/classes/src_api_contacts_getCorporationContactLabels.getCorporationContactLabels.html +3 -0
- package/docs/classes/src_api_contacts_getCorporationContacts.getCorporationContacts.html +3 -0
- package/docs/classes/src_api_contacts_postCharacterContacts.postCharacterContacts.html +3 -0
- package/docs/classes/src_api_contacts_putCharacterContacts.putCharacterContacts.html +3 -0
- package/docs/classes/src_api_contracts_getCharacterContractBids.GetCharacterContractBidsApi.html +3 -0
- package/docs/classes/src_api_contracts_getCharacterContractItems.GetCharacterContractItemsApi.html +3 -0
- package/docs/classes/src_api_contracts_getCharacterContracts.GetCharacterContractsApi.html +3 -0
- package/docs/classes/src_api_contracts_getCorporationContractBids.GetCorporationContractBidsApi.html +3 -0
- package/docs/classes/src_api_contracts_getCorporationContractItems.GetCorporationContractItemsApi.html +3 -0
- package/docs/classes/src_api_contracts_getCorporationContracts.GetCorporationContractsApi.html +3 -0
- package/docs/classes/src_api_contracts_getPublicContractBids.GetPublicContractBidsApi.html +3 -0
- package/docs/classes/src_api_contracts_getPublicContractItems.GetPublicContractItemsApi.html +3 -0
- package/docs/classes/src_api_contracts_getPublicContracts.GetPublicContractsApi.html +3 -0
- package/docs/classes/src_api_corporations_getCorporationAllianceHistory.GetCorporationAllianceHistoryApi.html +3 -0
- package/docs/classes/src_api_corporations_getCorporationAlscLogs.GetCorporationAlscLogsApi.html +3 -0
- package/docs/classes/src_api_corporations_getCorporationBlueprints.GetCorporationBlueprintsApi.html +3 -0
- package/docs/classes/src_api_corporations_getCorporationDivisions.GetCorporationDivisionsApi.html +3 -0
- package/docs/classes/src_api_corporations_getCorporationFacilities.GetCorporationFacilitiesApi.html +3 -0
- package/docs/classes/src_api_corporations_getCorporationIcon.GetCorporationIconApi.html +3 -0
- package/docs/classes/src_api_corporations_getCorporationInfo.GetCorporationInfoApi.html +3 -0
- package/docs/classes/src_api_corporations_getCorporationIssuedMedals.GetCorporationIssuedMedalsApi.html +3 -0
- package/docs/classes/src_api_corporations_getCorporationMedals.GetCorporationMedalsApi.html +3 -0
- package/docs/classes/src_api_corporations_getCorporationMemberLimit.GetCorporationMemberLimitApi.html +3 -0
- package/docs/classes/src_api_corporations_getCorporationMemberRoles.GetCorporationMemberRolesApi.html +3 -0
- package/docs/classes/src_api_corporations_getCorporationMemberRolesHistory.GetCorporationMemberRolesHistoryApi.html +3 -0
- package/docs/classes/src_api_corporations_getCorporationMemberTracking.GetCorporationMemberTrackingApi.html +3 -0
- package/docs/classes/src_api_corporations_getCorporationMembers.GetCorporationMembersApi.html +3 -0
- package/docs/classes/src_api_corporations_getCorporationMembersTitles.GetCorporationMembersTitlesApi.html +3 -0
- package/docs/classes/src_api_corporations_getCorporationProjects.GetCorporationProjectsApi.html +3 -0
- package/docs/classes/src_api_corporations_getCorporationShareholders.GetCorporationShareholdersApi.html +3 -0
- package/docs/classes/src_api_corporations_getCorporationStandings.GetCorporationStandingsApi.html +3 -0
- package/docs/classes/src_api_corporations_getCorporationStarbaseDetail.GetCorporationStarbaseDetailApi.html +3 -0
- package/docs/classes/src_api_corporations_getCorporationStarbases.GetCorporationStarbasesApi.html +3 -0
- package/docs/classes/src_api_corporations_getCorporationStructures.GetCorporationStructuresApi.html +3 -0
- package/docs/classes/src_api_corporations_getCorporationTitles.GetCorporationTitlesApi.html +3 -0
- package/docs/classes/src_api_corporations_getNpcCorporations.GetNpcCorporationsApi.html +3 -0
- package/docs/classes/src_api_dogma_getDogmaAttributeById.DogmaAttributeByIdApi.html +3 -0
- package/docs/classes/src_api_dogma_getDogmaAttributes.DogmaAttributesApi.html +3 -0
- package/docs/classes/src_api_dogma_getDogmaDynamicItemAttributes.DogmaDynamicItemApi.html +3 -0
- package/docs/classes/src_api_dogma_getDogmaEffectById.DogmaEffectByIdApi.html +3 -0
- package/docs/classes/src_api_dogma_getDogmaEffects.DogmaEffectsApi.html +3 -0
- package/docs/classes/src_api_factions_getCharacterFactionWarfareStats.GetCharacterFactionWarfareStatsApi.html +3 -0
- package/docs/classes/src_api_factions_getCharacterLeaderboards.GetCharacterLeaderboardsApi.html +3 -0
- package/docs/classes/src_api_factions_getCorporationFactionWarfareStats.GetCorporationFactionWarfareStatsApi.html +3 -0
- package/docs/classes/src_api_factions_getCorporationLeaderboards.GetCorporationLeaderboardsApi.html +3 -0
- package/docs/classes/src_api_factions_getFactionLeaderboards.GetFactionLeaderboardsApi.html +3 -0
- package/docs/classes/src_api_factions_getFactionWarfareStats.getFactionWarfareStats.html +3 -0
- package/docs/classes/src_api_factions_getFactionWarfareSystems.FactionWarfareSystemsApi.html +3 -0
- package/docs/classes/src_api_factions_getFactionWarfareWars.FactionWarfareWarsApi.html +3 -0
- package/docs/classes/src_api_fittings_deleteCharacterFitting.DeleteCharacterFittingApi.html +3 -0
- package/docs/classes/src_api_fittings_getCharacterFittings.GetCharacterFittingsApi.html +3 -0
- package/docs/classes/src_api_fittings_postCharacterFittings.PostCharacterFittingApi.html +3 -0
- package/docs/classes/src_api_fleets_deleteFleetMember.DeleteFleetMemberApi.html +3 -0
- package/docs/classes/src_api_fleets_deleteFleetSquad.DeleteFleetSquadApi.html +3 -0
- package/docs/classes/src_api_fleets_deleteFleetWing.DeleteFleetWingApi.html +3 -0
- package/docs/classes/src_api_fleets_getCharacterFleetInfo.GetCharacterFleetInfoApi.html +3 -0
- package/docs/classes/src_api_fleets_getFleetInfo.GetFleetInfoApi.html +3 -0
- package/docs/classes/src_api_fleets_getFleetMembers.GetFleetMembersApi.html +3 -0
- package/docs/classes/src_api_fleets_getFleetWings.GetFleetWingsApi.html +3 -0
- package/docs/classes/src_api_fleets_postFleetInvitation.PostFleetInvitationApi.html +3 -0
- package/docs/classes/src_api_fleets_postFleetSquad.PostFleetSquadApi.html +3 -0
- package/docs/classes/src_api_fleets_postFleetWing.PostFleetWingApi.html +3 -0
- package/docs/classes/src_api_fleets_putFleetMember.PutFleetMemberApi.html +3 -0
- package/docs/classes/src_api_fleets_putFleetSquad.PutFleetSquadApi.html +3 -0
- package/docs/classes/src_api_fleets_putFleetWing.PutFleetWingApi.html +3 -0
- package/docs/classes/src_api_fleets_updateFleet.UpdateFleetApi.html +3 -0
- package/docs/classes/src_api_incursions_getIncursions.IncursionsApi.html +3 -0
- package/docs/classes/src_api_industry_getCharacterIndustryJobs.GetCharacterIndustryJobsApi.html +3 -0
- package/docs/classes/src_api_industry_getCharacterMiningLedger.GetCharacterMiningLedgerApi.html +3 -0
- package/docs/classes/src_api_industry_getCorporationIndustryJobs.GetCorporationIndustryJobsApi.html +3 -0
- package/docs/classes/src_api_industry_getCorporationMiningObserver.GetCorporationMiningObserverApi.html +3 -0
- package/docs/classes/src_api_industry_getCorporationMiningObservers.GetCorporationMiningObserversApi.html +3 -0
- package/docs/classes/src_api_industry_getIndustryFacilities.GetIndustryFacilitiesApi.html +3 -0
- package/docs/classes/src_api_industry_getIndustrySystems.GetIndustrySystemsApi.html +3 -0
- package/docs/classes/src_api_industry_getMoonExtractionTimers.GetMoonExtractionTimersApi.html +3 -0
- package/docs/classes/src_api_insurance_getInsurancePrices.InsuranceApi.html +3 -0
- package/docs/classes/src_api_killmails_getCharacterRecentKillmails.GetCharacterRecentKillmailsApi.html +3 -0
- package/docs/classes/src_api_killmails_getCorporationRecentKillmails.GetCorporationRecentKillmailsApi.html +3 -0
- package/docs/classes/src_api_killmails_getKillmail.GetKillmailApi.html +3 -0
- package/docs/classes/src_api_location_getCharacterLocation.GetCharacterLocationApi.html +3 -0
- package/docs/classes/src_api_location_getCharacterOnline.GetCharacterOnlineApi.html +3 -0
- package/docs/classes/src_api_location_getCharacterShip.GetCharacterShipApi.html +3 -0
- package/docs/classes/src_api_loyalty_getLoyaltyPoints.GetLoyaltyPointsApi.html +3 -0
- package/docs/classes/src_api_loyalty_getLoyaltyStoreOffers.GetLoyaltyStoreOffersApi.html +3 -0
- package/docs/classes/src_api_mail_deleteCharacterMail.DeleteCharacterMailApi.html +3 -0
- package/docs/classes/src_api_mail_deleteCharacterMailLabel.DeleteCharacterMailLabelApi.html +3 -0
- package/docs/classes/src_api_mail_getCharacterMail.GetCharacterMailApi.html +3 -0
- package/docs/classes/src_api_mail_getCharacterMailHeaders.GetCharacterMailHeadersApi.html +3 -0
- package/docs/classes/src_api_mail_getCharacterMailLabels.GetCharacterMailLabelsApi.html +3 -0
- package/docs/classes/src_api_mail_getCharacterMailingLists.GetCharacterMailingListsApi.html +3 -0
- package/docs/classes/src_api_mail_postCharacterMail.PostCharacterMailApi.html +3 -0
- package/docs/classes/src_api_mail_postCharacterMailLabels.PostCharacterMailLabelsApi.html +3 -0
- package/docs/classes/src_api_mail_putCharacterMail.PutCharacterMailApi.html +3 -0
- package/docs/classes/src_api_market_getCharacterOrderHistory.getCharacterOrderHistory.html +3 -0
- package/docs/classes/src_api_market_getCharacterOrders.getCharacterOrders.html +3 -0
- package/docs/classes/src_api_market_getCorporationOrderHistory.getCorporationOrderHistory.html +3 -0
- package/docs/classes/src_api_market_getCorporationOrders.getCorporationOrders.html +3 -0
- package/docs/classes/src_api_market_getMarketGroupInformation.getMarketGroupInformation.html +3 -0
- package/docs/classes/src_api_market_getMarketGroups.getMarketGroups.html +3 -0
- package/docs/classes/src_api_market_getMarketHistory.getMarketHistory.html +3 -0
- package/docs/classes/src_api_market_getMarketOrders.getMarketOrders.html +3 -0
- package/docs/classes/src_api_market_getMarketOrdersInStructure.getMarketOrdersInStructure.html +3 -0
- package/docs/classes/src_api_market_getMarketPrices.getMarketPrices.html +3 -0
- package/docs/classes/src_api_market_getMarketTypes.getMarketTypes.html +3 -0
- package/docs/classes/src_api_meta_getSwaggerJson.GetSwaggerJsonApi.html +3 -0
- package/docs/classes/src_api_meta_getSwaggerYaml.GetSwaggerYamlApi.html +3 -0
- package/docs/classes/src_api_opportunities_getCharacterOpportunities.GetCharacterOpportunitiesApi.html +3 -0
- package/docs/classes/src_api_opportunities_getOpportunitiesGroupById.GetOpportunitiesGroupByIdApi.html +3 -0
- package/docs/classes/src_api_opportunities_getOpportunitiesGroups.GetOpportunitiesGroupsApi.html +3 -0
- package/docs/classes/src_api_opportunities_getOpportunitiesTaskById.GetOpportunitiesTaskByIdApi.html +3 -0
- package/docs/classes/src_api_opportunities_getOpportunitiesTasks.GetOpportunitiesTasksApi.html +3 -0
- package/docs/classes/src_api_pi_getColonies.GetColoniesApi.html +3 -0
- package/docs/classes/src_api_pi_getColonyLayout.GetColonyLayoutApi.html +3 -0
- package/docs/classes/src_api_pi_getCorporationCustomsOffices.GetCorporationCustomsOfficesApi.html +3 -0
- package/docs/classes/src_api_pi_getSchematicInformation.GetSchematicInformationApi.html +3 -0
- package/docs/classes/src_api_route_getRoute.RouteApi.html +3 -0
- package/docs/classes/src_api_search_getCharacterSearch.CharacterSearchApi.html +3 -0
- package/docs/classes/src_api_skills_getCharacterAttributes.GetCharacterAttributesApi.html +3 -0
- package/docs/classes/src_api_skills_getCharacterSkillQueue.GetCharacterSkillQueueApi.html +3 -0
- package/docs/classes/src_api_skills_getCharacterSkills.GetCharacterSkillsApi.html +3 -0
- package/docs/classes/src_api_sovereignty_getSovereigntyCampaigns.SovereigntyCampaignsApi.html +3 -0
- package/docs/classes/src_api_sovereignty_getSovereigntyMap.SovereigntyMapApi.html +3 -0
- package/docs/classes/src_api_sovereignty_getSovereigntyStructures.SovereigntyStructuresApi.html +3 -0
- package/docs/classes/src_api_status_getStatus.GetStatusApi.html +3 -0
- package/docs/classes/src_api_ui_postAutopilotWaypoint.PostAutopilotWaypointApi.html +3 -0
- package/docs/classes/src_api_ui_postOpenContractWindow.PostOpenContractWindowApi.html +3 -0
- package/docs/classes/src_api_ui_postOpenInformationWindow.PostOpenInformationWindowApi.html +3 -0
- package/docs/classes/src_api_ui_postOpenMarketDetailsWindow.PostOpenMarketDetailsWindowApi.html +3 -0
- package/docs/classes/src_api_ui_postOpenNewMailWindow.PostOpenNewMailWindowApi.html +3 -0
- package/docs/classes/src_api_universe_getAncestries.UniverseAncestriesApi.html +3 -0
- package/docs/classes/src_api_universe_getAsteroidBeltInfo.UniverseAsteroidBeltApi.html +3 -0
- package/docs/classes/src_api_universe_getBloodlines.UniverseBloodlinesApi.html +3 -0
- package/docs/classes/src_api_universe_getConstellationById.UniverseConstellationByIdApi.html +3 -0
- package/docs/classes/src_api_universe_getConstellations.UniverseConstellationsApi.html +3 -0
- package/docs/classes/src_api_universe_getFactions.UniverseFactionsApi.html +3 -0
- package/docs/classes/src_api_universe_getGraphicById.UniverseGraphicByIdApi.html +3 -0
- package/docs/classes/src_api_universe_getGraphics.UniverseGraphicsApi.html +3 -0
- package/docs/classes/src_api_universe_getItemCategories.UniverseCategoriesApi.html +3 -0
- package/docs/classes/src_api_universe_getItemCategoryById.UniverseCategoryByIdApi.html +3 -0
- package/docs/classes/src_api_universe_getItemGroupById.UniverseItemGroupByIdApi.html +3 -0
- package/docs/classes/src_api_universe_getItemGroups.UniverseItemGroupsApi.html +3 -0
- package/docs/classes/src_api_universe_getMoonById.UniverseMoonByIdApi.html +3 -0
- package/docs/classes/src_api_universe_getPlanetById.UniversePlanetByIdApi.html +3 -0
- package/docs/classes/src_api_universe_getRaces.UniverseRacesApi.html +3 -0
- package/docs/classes/src_api_universe_getRegionById.UniverseRegionByIdApi.html +3 -0
- package/docs/classes/src_api_universe_getStarById.UniverseStarByIdApi.html +3 -0
- package/docs/classes/src_api_universe_getStargateById.UniverseStargateByIdApi.html +3 -0
- package/docs/classes/src_api_universe_getStationById.UniverseStationByIdApi.html +3 -0
- package/docs/classes/src_api_universe_getStructureById.UniverseStructureByIdApi.html +3 -0
- package/docs/classes/src_api_universe_getStructures.UniverseStructuresApi.html +3 -0
- package/docs/classes/src_api_universe_getSystemById.UniverseSystemByIdApi.html +3 -0
- package/docs/classes/src_api_universe_getSystemJumps.UniverseSystemJumpsApi.html +3 -0
- package/docs/classes/src_api_universe_getSystemKills.UniverseSystemKillsApi.html +3 -0
- package/docs/classes/src_api_universe_getSystems.UniverseSystemsApi.html +3 -0
- package/docs/classes/src_api_universe_getTypeById.UniverseTypeByIdApi.html +3 -0
- package/docs/classes/src_api_universe_getTypes.UniverseTypesApi.html +3 -0
- package/docs/classes/src_api_universe_postBulkNamesToIds.PostBulkNamesToIdsApi.html +3 -0
- package/docs/classes/src_api_universe_postNamesAndCategories.PostNamesAndCategoriesApi.html +3 -0
- package/docs/classes/src_api_wallet_getCharacterWallet.GetCharacterWalletApi.html +3 -0
- package/docs/classes/src_api_wallet_getCharacterWalletJournal.GetCharacterWalletJournalApi.html +3 -0
- package/docs/classes/src_api_wallet_getCharacterWalletTransactions.GetCharacterWalletTransactionsApi.html +3 -0
- package/docs/classes/src_api_wallet_getCorporationWalletJournal.GetCorporationWalletJournalApi.html +3 -0
- package/docs/classes/src_api_wallet_getCorporationWalletTransactions.GetCorporationWalletTransactionsApi.html +3 -0
- package/docs/classes/src_api_wallet_getCorporationWallets.GetCorporationWalletsApi.html +3 -0
- package/docs/classes/src_api_wars_getWarById.WarByIdApi.html +3 -0
- package/docs/classes/src_api_wars_getWarKillmails.WarKillmailsApi.html +3 -0
- package/docs/classes/src_api_wars_getWars.WarsApi.html +3 -0
- package/docs/classes/src_builders_AllianceApiBuilder.AllianceApiBuilder.html +3 -0
- package/docs/classes/src_builders_AssetsApiBuilder.AssetsApiBuilder.html +3 -0
- package/docs/classes/src_builders_BookmarkApiBuilder.BookmarkApiBuilder.html +3 -0
- package/docs/classes/src_builders_CalendarApiBuilder.CalendarApiBuilder.html +3 -0
- package/docs/classes/src_builders_CharacterApiBuilder.CharacterApiBuilder.html +3 -0
- package/docs/classes/src_builders_ClonesApiBuilder.ClonesApiBuilder.html +3 -0
- package/docs/classes/src_builders_ContactsApiBuilder.ContactsApiBuilder.html +3 -0
- package/docs/classes/src_builders_ContractsApiBuilder.ContractsApiBuilder.html +3 -0
- package/docs/classes/src_builders_CorporationsApiBuilder.CorporationsApiBuilder.html +3 -0
- package/docs/classes/src_builders_DogmaApiBuilder.DogmaAPIBuilder.html +3 -0
- package/docs/classes/src_builders_FactionApiBuilder.FactionAPIBuilder.html +3 -0
- package/docs/classes/src_builders_FittingsApiBuilder.FittingsApiBuilder.html +3 -0
- package/docs/classes/src_builders_FleetApiBuilder.FleetApiBuilder.html +3 -0
- package/docs/classes/src_builders_IncursionsApiBuilder.IncursionsApiBuilder.html +3 -0
- package/docs/classes/src_builders_IndustryApiBuilder.IndustryApiBuilder.html +3 -0
- package/docs/classes/src_builders_InsuranceApiBuilder.InsuranceAPIBuilder.html +3 -0
- package/docs/classes/src_builders_KillmailsBuilder.KillmailsApiBuilder.html +3 -0
- package/docs/classes/src_builders_LocationApiBuilder.LocationApiBuilder.html +3 -0
- package/docs/classes/src_builders_LoyaltyApiBuilder.LoyaltyApiBuilder.html +3 -0
- package/docs/classes/src_builders_MailApiBuilder.MailApiBuilder.html +3 -0
- package/docs/classes/src_builders_MarketApiBuilder.MarketApiBuilder.html +3 -0
- package/docs/classes/src_builders_MetaApiBuilder.MetaApiBuilder.html +3 -0
- package/docs/classes/src_builders_OpportunitiesApiBuilder.OpportunitiesApiBuilder.html +3 -0
- package/docs/classes/src_builders_PiApiBuilder.PiApiBuilder.html +3 -0
- package/docs/classes/src_builders_RouteApiBuilder.RouteApiBuilder.html +3 -0
- package/docs/classes/src_builders_SearchApiBuilder.SearchApiBuilder.html +3 -0
- package/docs/classes/src_builders_SkillsApiBuilder.SkillsApiBuilder.html +3 -0
- package/docs/classes/src_builders_SovereigntyApiBuilder.SovereigntyApiBuilder.html +3 -0
- package/docs/classes/src_builders_StatusApiBuilder.StatusAPIBuilder.html +3 -0
- package/docs/classes/src_builders_UiApiBuilder.UiApiBuilder.html +3 -0
- package/docs/classes/src_builders_UniverseApiBuilder.UniverseAPIBuilder.html +3 -0
- package/docs/classes/src_builders_WalletApiBuilder.WalletApiBuilder.html +3 -0
- package/docs/classes/src_builders_WarsAPIBuilder.WarsAPIBuilder.html +3 -0
- package/docs/classes/src_clients_AllianceClient.AllianceClient.html +10 -0
- package/docs/classes/src_clients_AssetsClient.AssetsClient.html +8 -0
- package/docs/classes/src_clients_BookmarkClient.BookmarkClient.html +6 -0
- package/docs/classes/src_clients_CalendarClient.CalendarClient.html +6 -0
- package/docs/classes/src_clients_CharacterClient.CharacterClient.html +16 -0
- package/docs/classes/src_clients_ClonesClient.ClonesClient.html +5 -0
- package/docs/classes/src_clients_ContactsClient.ContactsClient.html +11 -0
- package/docs/classes/src_clients_ContractsClient.ContractsClient.html +11 -0
- package/docs/classes/src_clients_CorporationsClient.CorporationsClient.html +25 -0
- package/docs/classes/src_clients_DogmaClient.DogmaClient.html +7 -0
- package/docs/classes/src_clients_FactionClient.FactionClient.html +10 -0
- package/docs/classes/src_clients_FittingsClient.FittingsClient.html +5 -0
- package/docs/classes/src_clients_FleetClient.FleetClient.html +16 -0
- package/docs/classes/src_clients_IncursionsClient.IncursionsClient.html +3 -0
- package/docs/classes/src_clients_IndustryClient.IndustryClient.html +10 -0
- package/docs/classes/src_clients_InsuranceClient.InsuranceClient.html +3 -0
- package/docs/classes/src_clients_KillmailsClient.KillmailsClient.html +5 -0
- package/docs/classes/src_clients_LocationClient.LocationClient.html +5 -0
- package/docs/classes/src_clients_LoyaltyClient.LoyaltyClient.html +4 -0
- package/docs/classes/src_clients_MailClient.MailClient.html +11 -0
- package/docs/classes/src_clients_MarketClient.MarketClient.html +13 -0
- package/docs/classes/src_clients_MetaClient.MetaClient.html +6 -0
- package/docs/classes/src_clients_OpportunitiesClient.OpportunitiesClient.html +7 -0
- package/docs/classes/src_clients_PiClient.PIClient.html +6 -0
- package/docs/classes/src_clients_RouteClient.RouteClient.html +3 -0
- package/docs/classes/src_clients_SearchClient.SearchClient.html +3 -0
- package/docs/classes/src_clients_SkillsClient.CharacterSkillsClient.html +5 -0
- package/docs/classes/src_clients_SovereigntyClient.SovereigntyClient.html +5 -0
- package/docs/classes/src_clients_StatusClient.StatusClient.html +3 -0
- package/docs/classes/src_clients_UiClient.UIClient.html +7 -0
- package/docs/classes/src_clients_UniverseClient.UniverseClient.html +31 -0
- package/docs/classes/src_clients_WalletClient.WalletClient.html +8 -0
- package/docs/classes/src_clients_WarsClient.WarsClient.html +5 -0
- package/docs/classes/src_core_ApiClient.ApiClient.html +4 -0
- package/docs/classes/src_core_ApiClientBuilder.ApiClientBuilder.html +6 -0
- package/docs/classes/src_core_ApiError.ApiError.html +3 -0
- package/docs/classes/src_core_cache_ETagCacheManager.ETagCacheManager.html +22 -0
- package/docs/classes/src_core_container_Container.CircularDependencyError.html +2 -0
- package/docs/classes/src_core_container_Container.Container.html +20 -0
- package/docs/classes/src_core_errors_ApiError.ApiError.html +12 -0
- package/docs/classes/src_core_errors_ApiError.ErrorHandler.html +5 -0
- package/docs/classes/src_core_factory_ApiFactory.ApiFactory.html +20 -0
- package/docs/classes/src_core_factory_ApiFactory.ApiModule.html +6 -0
- package/docs/classes/src_core_util_headersUtil.default.html +11 -0
- package/docs/classes/src_testing_TestDataFactory.TestDataFactory.html +47 -0
- package/docs/classes/src_testing_TestHelpers.MockApiClient.html +3 -0
- package/docs/classes/src_testing_TestHelpers.TestAssertions.html +6 -0
- package/docs/classes/src_testing_TestHelpers.TestDataFactory.html +6 -0
- package/docs/classes/src_testing_TestHelpers.TestScenarios.html +5 -0
- package/docs/classes/src_types_winston_loggly_bulk.Loggly.html +2 -0
- package/docs/enums/src_core_errors_ApiError.ApiErrorType.html +11 -0
- package/docs/functions/src.displayCharacterProfile.html +2 -0
- package/docs/functions/src.getCompleteCharacterProfile.html +4 -0
- package/docs/functions/src_config_configManager.getConfig.html +1 -0
- package/docs/functions/src_config_jest_jest_setup.getClient.html +1 -0
- package/docs/functions/src_core_ApiRequestHandler.getETagCache.html +1 -0
- package/docs/functions/src_core_ApiRequestHandler.handleRequest.html +1 -0
- package/docs/functions/src_core_ApiRequestHandler.handleRequestBody.html +1 -0
- package/docs/functions/src_core_ApiRequestHandler.initializeETagCache.html +1 -0
- package/docs/functions/src_core_ApiRequestHandler.resetETagCache.html +1 -0
- package/docs/functions/src_core_container_Container.Inject.html +1 -0
- package/docs/functions/src_core_container_Container.Injectable.html +1 -0
- package/docs/functions/src_core_logger_loggerUtil.logDebug.html +1 -0
- package/docs/functions/src_core_logger_loggerUtil.logError.html +1 -0
- package/docs/functions/src_core_logger_loggerUtil.logInfo.html +1 -0
- package/docs/functions/src_core_logger_loggerUtil.logWarn.html +1 -0
- package/docs/functions/src_core_util_error.buildError.html +1 -0
- package/docs/functions/src_core_util_file.checkForConfig.html +1 -0
- package/docs/functions/src_core_util_file.getSettings.html +1 -0
- package/docs/functions/src_core_util_file.log.html +1 -0
- package/docs/functions/src_core_util_inputValidation.inputValidation.html +1 -0
- package/docs/functions/src_core_util_network.request.html +1 -0
- package/docs/functions/src_core_util_request.inputValidation.html +1 -0
- package/docs/functions/src_core_util_request.request.html +1 -0
- package/docs/functions/src_core_util_testHelpers.getBody.html +1 -0
- package/docs/functions/src_core_util_testHelpers.getHeaders.html +1 -0
- package/docs/functions/src_core_util_testHelpers.mockApiCall.html +1 -0
- package/docs/functions/src_testing_TestHelpers.createMockApiClient.html +1 -0
- package/docs/functions/src_testing_TestHelpers.getBody.html +1 -0
- package/docs/functions/src_testing_TestHelpers.getHeaders.html +1 -0
- package/docs/hierarchy.html +1 -0
- package/docs/index.html +272 -0
- package/docs/interfaces/src_EsiClient.EsiClientConfig.html +8 -0
- package/docs/interfaces/src_core_IAPIBuilder.IAPIBuilder.html +2 -0
- package/docs/interfaces/src_core_IAPIBuilder.IApiClient.html +3 -0
- package/docs/interfaces/src_core_IAPIBuilder.IApiService.html +3 -0
- package/docs/interfaces/src_core_cache_ETagCacheManager.CacheEntry.html +6 -0
- package/docs/interfaces/src_core_cache_ETagCacheManager.ETagCacheConfig.html +6 -0
- package/docs/interfaces/src_core_container_Container.ContainerConfig.html +3 -0
- package/docs/interfaces/src_core_factory_ApiFactory.ApiClientConfig.html +7 -0
- package/docs/interfaces/src_core_factory_ApiFactory.ApiModuleConfig.html +4 -0
- package/docs/interfaces/src_testing_TestHelpers.MockConfig.html +6 -0
- package/docs/interfaces/src_types_api_responses.AllianceContact.html +5 -0
- package/docs/interfaces/src_types_api_responses.AllianceContactLabel.html +3 -0
- package/docs/interfaces/src_types_api_responses.AllianceIcon.html +3 -0
- package/docs/interfaces/src_types_api_responses.AllianceInfo.html +9 -0
- package/docs/interfaces/src_types_api_responses.ApiResponse.html +4 -0
- package/docs/interfaces/src_types_api_responses.AssetLocation.html +3 -0
- package/docs/interfaces/src_types_api_responses.AssetName.html +3 -0
- package/docs/interfaces/src_types_api_responses.CharacterAsset.html +9 -0
- package/docs/interfaces/src_types_api_responses.CharacterAttributes.html +9 -0
- package/docs/interfaces/src_types_api_responses.CharacterInfo.html +13 -0
- package/docs/interfaces/src_types_api_responses.CharacterPortrait.html +5 -0
- package/docs/interfaces/src_types_api_responses.CharacterSkill.html +5 -0
- package/docs/interfaces/src_types_api_responses.ConstellationInfo.html +6 -0
- package/docs/interfaces/src_types_api_responses.Contract.html +23 -0
- package/docs/interfaces/src_types_api_responses.ContractItem.html +8 -0
- package/docs/interfaces/src_types_api_responses.CorporationInfo.html +16 -0
- package/docs/interfaces/src_types_api_responses.ErrorResponse.html +4 -0
- package/docs/interfaces/src_types_api_responses.MailLabel.html +5 -0
- package/docs/interfaces/src_types_api_responses.MailMessage.html +8 -0
- package/docs/interfaces/src_types_api_responses.MarketHistory.html +7 -0
- package/docs/interfaces/src_types_api_responses.MarketOrder.html +12 -0
- package/docs/interfaces/src_types_api_responses.PaginatedResponse.html +5 -0
- package/docs/interfaces/src_types_api_responses.RegionInfo.html +5 -0
- package/docs/interfaces/src_types_api_responses.SkillQueue.html +9 -0
- package/docs/interfaces/src_types_api_responses.SolarSystemInfo.html +10 -0
- package/docs/interfaces/src_types_api_responses.WalletJournal.html +12 -0
- package/docs/interfaces/src_types_api_responses.WalletTransaction.html +11 -0
- package/docs/interfaces/src_types_winston_loggly_bulk.LogglyOptions.html +5 -0
- package/docs/media/LICENSE +26 -0
- package/docs/modules/src.html +22 -0
- package/docs/modules/src_EsiClient.html +4 -0
- package/docs/modules/src_EsiClientBuilder.html +6 -0
- package/docs/modules/src_api_alliances_getAllianceById.html +2 -0
- package/docs/modules/src_api_alliances_getAllianceContactLabels.html +2 -0
- package/docs/modules/src_api_alliances_getAllianceContacts.html +2 -0
- package/docs/modules/src_api_alliances_getAllianceCorporations.html +2 -0
- package/docs/modules/src_api_alliances_getAllianceIcons.html +2 -0
- package/docs/modules/src_api_alliances_getAlliances.html +2 -0
- package/docs/modules/src_api_assets_getCharacterAssets.html +2 -0
- package/docs/modules/src_api_assets_getCorporationAssets.html +2 -0
- package/docs/modules/src_api_assets_postCharacterAssetLocations.html +2 -0
- package/docs/modules/src_api_assets_postCharacterAssetNames.html +2 -0
- package/docs/modules/src_api_assets_postCorporationAssetLocations.html +2 -0
- package/docs/modules/src_api_assets_postCorporationAssetNames.html +2 -0
- package/docs/modules/src_api_bookmarks_getCharacterBookmarkFolders.html +2 -0
- package/docs/modules/src_api_bookmarks_getCharacterBookmarks.html +2 -0
- package/docs/modules/src_api_bookmarks_getCorporationBookmarkFolders.html +2 -0
- package/docs/modules/src_api_bookmarks_getCorporationBookmarks.html +2 -0
- package/docs/modules/src_api_calendar_getCalendarEventById.html +2 -0
- package/docs/modules/src_api_calendar_getCalendarEvents.html +2 -0
- package/docs/modules/src_api_calendar_getEventAttendees.html +2 -0
- package/docs/modules/src_api_calendar_respondToCalendarEvent.html +2 -0
- package/docs/modules/src_api_characters_getAgentsResearch.html +2 -0
- package/docs/modules/src_api_characters_getBlueprints.html +2 -0
- package/docs/modules/src_api_characters_getCharacterPublicInfo.html +2 -0
- package/docs/modules/src_api_characters_getCharacterRoles.html +2 -0
- package/docs/modules/src_api_characters_getCharacterStandings.html +2 -0
- package/docs/modules/src_api_characters_getCharacterTitles.html +2 -0
- package/docs/modules/src_api_characters_getContactNotifications.html +2 -0
- package/docs/modules/src_api_characters_getCorporationHistory.html +2 -0
- package/docs/modules/src_api_characters_getJumpFatigue.html +2 -0
- package/docs/modules/src_api_characters_getMedals.html +2 -0
- package/docs/modules/src_api_characters_getNotifications.html +2 -0
- package/docs/modules/src_api_characters_getPortrait.html +2 -0
- package/docs/modules/src_api_characters_postCSPAChargeCost.html +2 -0
- package/docs/modules/src_api_characters_postCharacterAffiliations.html +2 -0
- package/docs/modules/src_api_clones_getClones.html +2 -0
- package/docs/modules/src_api_clones_getImplants.html +2 -0
- package/docs/modules/src_api_clones_postJumpCloneActivation.html +2 -0
- package/docs/modules/src_api_contacts_deleteCharacterContacts.html +2 -0
- package/docs/modules/src_api_contacts_getAllianceContactLabels.html +2 -0
- package/docs/modules/src_api_contacts_getAllianceContacts.html +2 -0
- package/docs/modules/src_api_contacts_getCharacterContactLabels.html +2 -0
- package/docs/modules/src_api_contacts_getCharacterContacts.html +2 -0
- package/docs/modules/src_api_contacts_getCorporationContactLabels.html +2 -0
- package/docs/modules/src_api_contacts_getCorporationContacts.html +2 -0
- package/docs/modules/src_api_contacts_postCharacterContacts.html +2 -0
- package/docs/modules/src_api_contacts_putCharacterContacts.html +2 -0
- package/docs/modules/src_api_contracts_getCharacterContractBids.html +2 -0
- package/docs/modules/src_api_contracts_getCharacterContractItems.html +2 -0
- package/docs/modules/src_api_contracts_getCharacterContracts.html +2 -0
- package/docs/modules/src_api_contracts_getCorporationContractBids.html +2 -0
- package/docs/modules/src_api_contracts_getCorporationContractItems.html +2 -0
- package/docs/modules/src_api_contracts_getCorporationContracts.html +2 -0
- package/docs/modules/src_api_contracts_getPublicContractBids.html +2 -0
- package/docs/modules/src_api_contracts_getPublicContractItems.html +2 -0
- package/docs/modules/src_api_contracts_getPublicContracts.html +2 -0
- package/docs/modules/src_api_corporations_getCorporationAllianceHistory.html +2 -0
- package/docs/modules/src_api_corporations_getCorporationAlscLogs.html +2 -0
- package/docs/modules/src_api_corporations_getCorporationBlueprints.html +2 -0
- package/docs/modules/src_api_corporations_getCorporationDivisions.html +2 -0
- package/docs/modules/src_api_corporations_getCorporationFacilities.html +2 -0
- package/docs/modules/src_api_corporations_getCorporationIcon.html +2 -0
- package/docs/modules/src_api_corporations_getCorporationInfo.html +2 -0
- package/docs/modules/src_api_corporations_getCorporationIssuedMedals.html +2 -0
- package/docs/modules/src_api_corporations_getCorporationMedals.html +2 -0
- package/docs/modules/src_api_corporations_getCorporationMemberLimit.html +2 -0
- package/docs/modules/src_api_corporations_getCorporationMemberRoles.html +2 -0
- package/docs/modules/src_api_corporations_getCorporationMemberRolesHistory.html +2 -0
- package/docs/modules/src_api_corporations_getCorporationMemberTracking.html +2 -0
- package/docs/modules/src_api_corporations_getCorporationMembers.html +2 -0
- package/docs/modules/src_api_corporations_getCorporationMembersTitles.html +2 -0
- package/docs/modules/src_api_corporations_getCorporationProjects.html +2 -0
- package/docs/modules/src_api_corporations_getCorporationShareholders.html +2 -0
- package/docs/modules/src_api_corporations_getCorporationStandings.html +2 -0
- package/docs/modules/src_api_corporations_getCorporationStarbaseDetail.html +2 -0
- package/docs/modules/src_api_corporations_getCorporationStarbases.html +2 -0
- package/docs/modules/src_api_corporations_getCorporationStructures.html +2 -0
- package/docs/modules/src_api_corporations_getCorporationTitles.html +2 -0
- package/docs/modules/src_api_corporations_getNpcCorporations.html +2 -0
- package/docs/modules/src_api_dogma_getDogmaAttributeById.html +2 -0
- package/docs/modules/src_api_dogma_getDogmaAttributes.html +2 -0
- package/docs/modules/src_api_dogma_getDogmaDynamicItemAttributes.html +2 -0
- package/docs/modules/src_api_dogma_getDogmaEffectById.html +2 -0
- package/docs/modules/src_api_dogma_getDogmaEffects.html +2 -0
- package/docs/modules/src_api_factions_getCharacterFactionWarfareStats.html +2 -0
- package/docs/modules/src_api_factions_getCharacterLeaderboards.html +2 -0
- package/docs/modules/src_api_factions_getCorporationFactionWarfareStats.html +2 -0
- package/docs/modules/src_api_factions_getCorporationLeaderboards.html +2 -0
- package/docs/modules/src_api_factions_getFactionLeaderboards.html +2 -0
- package/docs/modules/src_api_factions_getFactionWarfareStats.html +2 -0
- package/docs/modules/src_api_factions_getFactionWarfareSystems.html +2 -0
- package/docs/modules/src_api_factions_getFactionWarfareWars.html +2 -0
- package/docs/modules/src_api_fittings_deleteCharacterFitting.html +2 -0
- package/docs/modules/src_api_fittings_getCharacterFittings.html +2 -0
- package/docs/modules/src_api_fittings_postCharacterFittings.html +2 -0
- package/docs/modules/src_api_fleets_deleteFleetMember.html +2 -0
- package/docs/modules/src_api_fleets_deleteFleetSquad.html +2 -0
- package/docs/modules/src_api_fleets_deleteFleetWing.html +2 -0
- package/docs/modules/src_api_fleets_getCharacterFleetInfo.html +2 -0
- package/docs/modules/src_api_fleets_getFleetInfo.html +2 -0
- package/docs/modules/src_api_fleets_getFleetMembers.html +2 -0
- package/docs/modules/src_api_fleets_getFleetWings.html +2 -0
- package/docs/modules/src_api_fleets_postFleetInvitation.html +2 -0
- package/docs/modules/src_api_fleets_postFleetSquad.html +2 -0
- package/docs/modules/src_api_fleets_postFleetWing.html +2 -0
- package/docs/modules/src_api_fleets_putFleetMember.html +2 -0
- package/docs/modules/src_api_fleets_putFleetSquad.html +2 -0
- package/docs/modules/src_api_fleets_putFleetWing.html +2 -0
- package/docs/modules/src_api_fleets_updateFleet.html +2 -0
- package/docs/modules/src_api_incursions_getIncursions.html +2 -0
- package/docs/modules/src_api_industry_getCharacterIndustryJobs.html +2 -0
- package/docs/modules/src_api_industry_getCharacterMiningLedger.html +2 -0
- package/docs/modules/src_api_industry_getCorporationIndustryJobs.html +2 -0
- package/docs/modules/src_api_industry_getCorporationMiningObserver.html +2 -0
- package/docs/modules/src_api_industry_getCorporationMiningObservers.html +2 -0
- package/docs/modules/src_api_industry_getIndustryFacilities.html +2 -0
- package/docs/modules/src_api_industry_getIndustrySystems.html +2 -0
- package/docs/modules/src_api_industry_getMoonExtractionTimers.html +2 -0
- package/docs/modules/src_api_insurance_getInsurancePrices.html +2 -0
- package/docs/modules/src_api_killmails_getCharacterRecentKillmails.html +2 -0
- package/docs/modules/src_api_killmails_getCorporationRecentKillmails.html +2 -0
- package/docs/modules/src_api_killmails_getKillmail.html +2 -0
- package/docs/modules/src_api_location_getCharacterLocation.html +2 -0
- package/docs/modules/src_api_location_getCharacterOnline.html +2 -0
- package/docs/modules/src_api_location_getCharacterShip.html +2 -0
- package/docs/modules/src_api_loyalty_getLoyaltyPoints.html +2 -0
- package/docs/modules/src_api_loyalty_getLoyaltyStoreOffers.html +2 -0
- package/docs/modules/src_api_mail_deleteCharacterMail.html +2 -0
- package/docs/modules/src_api_mail_deleteCharacterMailLabel.html +2 -0
- package/docs/modules/src_api_mail_getCharacterMail.html +2 -0
- package/docs/modules/src_api_mail_getCharacterMailHeaders.html +2 -0
- package/docs/modules/src_api_mail_getCharacterMailLabels.html +2 -0
- package/docs/modules/src_api_mail_getCharacterMailingLists.html +2 -0
- package/docs/modules/src_api_mail_postCharacterMail.html +2 -0
- package/docs/modules/src_api_mail_postCharacterMailLabels.html +2 -0
- package/docs/modules/src_api_mail_putCharacterMail.html +2 -0
- package/docs/modules/src_api_market_getCharacterOrderHistory.html +2 -0
- package/docs/modules/src_api_market_getCharacterOrders.html +2 -0
- package/docs/modules/src_api_market_getCorporationOrderHistory.html +2 -0
- package/docs/modules/src_api_market_getCorporationOrders.html +2 -0
- package/docs/modules/src_api_market_getMarketGroupInformation.html +2 -0
- package/docs/modules/src_api_market_getMarketGroups.html +2 -0
- package/docs/modules/src_api_market_getMarketHistory.html +2 -0
- package/docs/modules/src_api_market_getMarketOrders.html +2 -0
- package/docs/modules/src_api_market_getMarketOrdersInStructure.html +2 -0
- package/docs/modules/src_api_market_getMarketPrices.html +2 -0
- package/docs/modules/src_api_market_getMarketTypes.html +2 -0
- package/docs/modules/src_api_meta_getSwaggerJson.html +2 -0
- package/docs/modules/src_api_meta_getSwaggerYaml.html +2 -0
- package/docs/modules/src_api_opportunities_getCharacterOpportunities.html +2 -0
- package/docs/modules/src_api_opportunities_getOpportunitiesGroupById.html +2 -0
- package/docs/modules/src_api_opportunities_getOpportunitiesGroups.html +2 -0
- package/docs/modules/src_api_opportunities_getOpportunitiesTaskById.html +2 -0
- package/docs/modules/src_api_opportunities_getOpportunitiesTasks.html +2 -0
- package/docs/modules/src_api_pi_getColonies.html +2 -0
- package/docs/modules/src_api_pi_getColonyLayout.html +2 -0
- package/docs/modules/src_api_pi_getCorporationCustomsOffices.html +2 -0
- package/docs/modules/src_api_pi_getSchematicInformation.html +2 -0
- package/docs/modules/src_api_route_getRoute.html +2 -0
- package/docs/modules/src_api_search_getCharacterSearch.html +2 -0
- package/docs/modules/src_api_skills_getCharacterAttributes.html +2 -0
- package/docs/modules/src_api_skills_getCharacterSkillQueue.html +2 -0
- package/docs/modules/src_api_skills_getCharacterSkills.html +2 -0
- package/docs/modules/src_api_sovereignty_getSovereigntyCampaigns.html +2 -0
- package/docs/modules/src_api_sovereignty_getSovereigntyMap.html +2 -0
- package/docs/modules/src_api_sovereignty_getSovereigntyStructures.html +2 -0
- package/docs/modules/src_api_status_getStatus.html +2 -0
- package/docs/modules/src_api_ui_postAutopilotWaypoint.html +2 -0
- package/docs/modules/src_api_ui_postOpenContractWindow.html +2 -0
- package/docs/modules/src_api_ui_postOpenInformationWindow.html +2 -0
- package/docs/modules/src_api_ui_postOpenMarketDetailsWindow.html +2 -0
- package/docs/modules/src_api_ui_postOpenNewMailWindow.html +2 -0
- package/docs/modules/src_api_universe_getAncestries.html +2 -0
- package/docs/modules/src_api_universe_getAsteroidBeltInfo.html +2 -0
- package/docs/modules/src_api_universe_getBloodlines.html +2 -0
- package/docs/modules/src_api_universe_getConstellationById.html +2 -0
- package/docs/modules/src_api_universe_getConstellations.html +2 -0
- package/docs/modules/src_api_universe_getFactions.html +2 -0
- package/docs/modules/src_api_universe_getGraphicById.html +2 -0
- package/docs/modules/src_api_universe_getGraphics.html +2 -0
- package/docs/modules/src_api_universe_getItemCategories.html +2 -0
- package/docs/modules/src_api_universe_getItemCategoryById.html +2 -0
- package/docs/modules/src_api_universe_getItemGroupById.html +2 -0
- package/docs/modules/src_api_universe_getItemGroups.html +2 -0
- package/docs/modules/src_api_universe_getMoonById.html +2 -0
- package/docs/modules/src_api_universe_getPlanetById.html +2 -0
- package/docs/modules/src_api_universe_getRaces.html +2 -0
- package/docs/modules/src_api_universe_getRegionById.html +2 -0
- package/docs/modules/src_api_universe_getStarById.html +2 -0
- package/docs/modules/src_api_universe_getStargateById.html +2 -0
- package/docs/modules/src_api_universe_getStationById.html +2 -0
- package/docs/modules/src_api_universe_getStructureById.html +2 -0
- package/docs/modules/src_api_universe_getStructures.html +2 -0
- package/docs/modules/src_api_universe_getSystemById.html +2 -0
- package/docs/modules/src_api_universe_getSystemJumps.html +2 -0
- package/docs/modules/src_api_universe_getSystemKills.html +2 -0
- package/docs/modules/src_api_universe_getSystems.html +2 -0
- package/docs/modules/src_api_universe_getTypeById.html +2 -0
- package/docs/modules/src_api_universe_getTypes.html +2 -0
- package/docs/modules/src_api_universe_postBulkNamesToIds.html +2 -0
- package/docs/modules/src_api_universe_postNamesAndCategories.html +2 -0
- package/docs/modules/src_api_wallet_getCharacterWallet.html +2 -0
- package/docs/modules/src_api_wallet_getCharacterWalletJournal.html +2 -0
- package/docs/modules/src_api_wallet_getCharacterWalletTransactions.html +2 -0
- package/docs/modules/src_api_wallet_getCorporationWalletJournal.html +2 -0
- package/docs/modules/src_api_wallet_getCorporationWalletTransactions.html +2 -0
- package/docs/modules/src_api_wallet_getCorporationWallets.html +2 -0
- package/docs/modules/src_api_wars_getWarById.html +2 -0
- package/docs/modules/src_api_wars_getWarKillmails.html +2 -0
- package/docs/modules/src_api_wars_getWars.html +2 -0
- package/docs/modules/src_builders_AllianceApiBuilder.html +2 -0
- package/docs/modules/src_builders_AssetsApiBuilder.html +2 -0
- package/docs/modules/src_builders_BookmarkApiBuilder.html +2 -0
- package/docs/modules/src_builders_CalendarApiBuilder.html +2 -0
- package/docs/modules/src_builders_CharacterApiBuilder.html +2 -0
- package/docs/modules/src_builders_ClonesApiBuilder.html +2 -0
- package/docs/modules/src_builders_ContactsApiBuilder.html +2 -0
- package/docs/modules/src_builders_ContractsApiBuilder.html +2 -0
- package/docs/modules/src_builders_CorporationsApiBuilder.html +2 -0
- package/docs/modules/src_builders_DogmaApiBuilder.html +2 -0
- package/docs/modules/src_builders_FactionApiBuilder.html +2 -0
- package/docs/modules/src_builders_FittingsApiBuilder.html +2 -0
- package/docs/modules/src_builders_FleetApiBuilder.html +2 -0
- package/docs/modules/src_builders_IncursionsApiBuilder.html +2 -0
- package/docs/modules/src_builders_IndustryApiBuilder.html +2 -0
- package/docs/modules/src_builders_InsuranceApiBuilder.html +2 -0
- package/docs/modules/src_builders_KillmailsBuilder.html +2 -0
- package/docs/modules/src_builders_LocationApiBuilder.html +2 -0
- package/docs/modules/src_builders_LoyaltyApiBuilder.html +2 -0
- package/docs/modules/src_builders_MailApiBuilder.html +2 -0
- package/docs/modules/src_builders_MarketApiBuilder.html +2 -0
- package/docs/modules/src_builders_MetaApiBuilder.html +2 -0
- package/docs/modules/src_builders_OpportunitiesApiBuilder.html +2 -0
- package/docs/modules/src_builders_PiApiBuilder.html +2 -0
- package/docs/modules/src_builders_RouteApiBuilder.html +2 -0
- package/docs/modules/src_builders_SearchApiBuilder.html +2 -0
- package/docs/modules/src_builders_SkillsApiBuilder.html +2 -0
- package/docs/modules/src_builders_SovereigntyApiBuilder.html +2 -0
- package/docs/modules/src_builders_StatusApiBuilder.html +2 -0
- package/docs/modules/src_builders_UiApiBuilder.html +2 -0
- package/docs/modules/src_builders_UniverseApiBuilder.html +2 -0
- package/docs/modules/src_builders_WalletApiBuilder.html +2 -0
- package/docs/modules/src_builders_WarsAPIBuilder.html +2 -0
- package/docs/modules/src_clients_AllianceClient.html +2 -0
- package/docs/modules/src_clients_AssetsClient.html +2 -0
- package/docs/modules/src_clients_BookmarkClient.html +2 -0
- package/docs/modules/src_clients_CalendarClient.html +2 -0
- package/docs/modules/src_clients_CharacterClient.html +2 -0
- package/docs/modules/src_clients_ClonesClient.html +2 -0
- package/docs/modules/src_clients_ContactsClient.html +2 -0
- package/docs/modules/src_clients_ContractsClient.html +2 -0
- package/docs/modules/src_clients_CorporationsClient.html +2 -0
- package/docs/modules/src_clients_DogmaClient.html +2 -0
- package/docs/modules/src_clients_FactionClient.html +2 -0
- package/docs/modules/src_clients_FittingsClient.html +2 -0
- package/docs/modules/src_clients_FleetClient.html +2 -0
- package/docs/modules/src_clients_IncursionsClient.html +2 -0
- package/docs/modules/src_clients_IndustryClient.html +2 -0
- package/docs/modules/src_clients_InsuranceClient.html +2 -0
- package/docs/modules/src_clients_KillmailsClient.html +2 -0
- package/docs/modules/src_clients_LocationClient.html +2 -0
- package/docs/modules/src_clients_LoyaltyClient.html +2 -0
- package/docs/modules/src_clients_MailClient.html +2 -0
- package/docs/modules/src_clients_MarketClient.html +2 -0
- package/docs/modules/src_clients_MetaClient.html +2 -0
- package/docs/modules/src_clients_OpportunitiesClient.html +2 -0
- package/docs/modules/src_clients_PiClient.html +2 -0
- package/docs/modules/src_clients_RouteClient.html +2 -0
- package/docs/modules/src_clients_SearchClient.html +2 -0
- package/docs/modules/src_clients_SkillsClient.html +2 -0
- package/docs/modules/src_clients_SovereigntyClient.html +2 -0
- package/docs/modules/src_clients_StatusClient.html +2 -0
- package/docs/modules/src_clients_UiClient.html +2 -0
- package/docs/modules/src_clients_UniverseClient.html +2 -0
- package/docs/modules/src_clients_WalletClient.html +2 -0
- package/docs/modules/src_clients_WarsClient.html +2 -0
- package/docs/modules/src_config_configManager.html +2 -0
- package/docs/modules/src_config_constants.html +5 -0
- package/docs/modules/src_config_jest_jest_setup.html +2 -0
- package/docs/modules/src_core_ApiClient.html +2 -0
- package/docs/modules/src_core_ApiClientBuilder.html +2 -0
- package/docs/modules/src_core_ApiError.html +2 -0
- package/docs/modules/src_core_ApiRequestHandler.html +6 -0
- package/docs/modules/src_core_IAPIBuilder.html +4 -0
- package/docs/modules/src_core_cache_ETagCacheManager.html +4 -0
- package/docs/modules/src_core_container_Container.html +9 -0
- package/docs/modules/src_core_errors_ApiError.html +4 -0
- package/docs/modules/src_core_factory_ApiFactory.html +6 -0
- package/docs/modules/src_core_logger.html +2 -0
- package/docs/modules/src_core_logger_logger.html +2 -0
- package/docs/modules/src_core_logger_loggerUtil.html +5 -0
- package/docs/modules/src_core_util_error.html +2 -0
- package/docs/modules/src_core_util_file.html +4 -0
- package/docs/modules/src_core_util_headersUtil.html +2 -0
- package/docs/modules/src_core_util_inputValidation.html +2 -0
- package/docs/modules/src_core_util_network.html +2 -0
- package/docs/modules/src_core_util_request.html +3 -0
- package/docs/modules/src_core_util_testHelpers.html +4 -0
- package/docs/modules/src_testing_TestDataFactory.html +3 -0
- package/docs/modules/src_testing_TestHelpers.html +9 -0
- package/docs/modules/src_types_api_responses.html +28 -0
- package/docs/modules/src_types_winston_loggly_bulk.html +3 -0
- package/docs/modules.html +305 -0
- package/docs/types/src_EsiClientBuilder.ApiClientType.html +1 -0
- package/docs/types/src_EsiClientBuilder.ClientInstance.html +1 -0
- package/docs/types/src_core_container_Container.AsyncFactory.html +1 -0
- package/docs/types/src_core_container_Container.Factory.html +1 -0
- package/docs/variables/src_EsiClient.esiClient-1.html +1 -0
- package/docs/variables/src_config_constants.localConfig.html +1 -0
- package/docs/variables/src_config_constants.projectConfig.html +1 -0
- package/docs/variables/src_config_constants.routes.html +1 -0
- package/docs/variables/src_config_constants.server.html +1 -0
- package/docs/variables/src_core_container_Container.container-1.html +1 -0
- package/docs/variables/src_core_factory_ApiFactory.apiFactory-1.html +1 -0
- package/docs/variables/src_core_logger_logger.default.html +1 -0
- package/jest.improved.config.cjs +46 -0
- package/jest.unit.config.cjs +4 -1
- package/output.txt +0 -0
- package/package.json +34 -13
- package/src/EsiClient.ts +351 -0
- package/src/EsiClientBuilder.ts +380 -0
- package/src/TODO +26 -21
- package/src/api/alliances/getAllianceById.ts +7 -1
- package/src/api/alliances/getAlliances.ts +2 -2
- package/src/api/characters/postCharacterAffiliations.ts +2 -1
- package/src/api/clones/postJumpCloneActivation.ts +11 -0
- package/src/api/corporations/getCorporationProjects.ts +10 -0
- package/src/api/meta/getSwaggerJson.ts +10 -0
- package/src/api/meta/getSwaggerYaml.ts +36 -0
- package/src/api/status/getStatus.ts +2 -2
- package/src/builders/AllianceApiBuilder.ts +3 -2
- package/src/builders/AssetsApiBuilder.ts +2 -1
- package/src/builders/BookmarkApiBuilder.ts +2 -1
- package/src/builders/CalendarApiBuilder.ts +2 -1
- package/src/builders/CharacterApiBuilder.ts +2 -1
- package/src/builders/ClonesApiBuilder.ts +2 -1
- package/src/builders/ContactsApiBuilder.ts +2 -1
- package/src/builders/ContractsApiBuilder.ts +2 -1
- package/src/builders/CorporationsApiBuilder.ts +2 -1
- package/src/builders/DogmaApiBuilder.ts +2 -1
- package/src/builders/FactionApiBuilder.ts +3 -2
- package/src/builders/FittingsApiBuilder.ts +2 -3
- package/src/builders/FleetApiBuilder.ts +2 -1
- package/src/builders/IncursionsApiBuilder.ts +2 -1
- package/src/builders/IndustryApiBuilder.ts +2 -1
- package/src/builders/InsuranceApiBuilder.ts +2 -1
- package/src/builders/KillmailsBuilder.ts +2 -1
- package/src/builders/LocationApiBuilder.ts +2 -1
- package/src/builders/LoyaltyApiBuilder.ts +2 -1
- package/src/builders/MailApiBuilder.ts +2 -1
- package/src/builders/MarketApiBuilder.ts +2 -1
- package/src/builders/MetaApiBuilder.ts +15 -0
- package/src/builders/OpportunitiesApiBuilder.ts +2 -1
- package/src/builders/PiApiBuilder.ts +2 -1
- package/src/builders/RouteApiBuilder.ts +2 -1
- package/src/builders/SearchApiBuilder.ts +2 -1
- package/src/builders/SkillsApiBuilder.ts +2 -1
- package/src/builders/SovereigntyApiBuilder.ts +2 -1
- package/src/builders/StatusApiBuilder.ts +2 -1
- package/src/builders/UiApiBuilder.ts +2 -1
- package/src/builders/UniverseApiBuilder.ts +2 -1
- package/src/builders/WalletApiBuilder.ts +2 -1
- package/src/builders/WarsAPIBuilder.ts +2 -1
- package/src/clients/AllianceClient.ts +23 -14
- package/src/clients/ClonesClient.ts +7 -0
- package/src/clients/CorporationsClient.ts +7 -0
- package/src/clients/MetaClient.ts +24 -0
- package/src/core/ApiRequestHandler.ts +77 -3
- package/src/core/IAPIBuilder.ts +13 -0
- package/src/core/cache/ETagCacheManager.ts +248 -0
- package/src/core/container/Container.ts +176 -0
- package/src/core/errors/ApiError.ts +153 -0
- package/src/core/factory/ApiFactory.ts +207 -0
- package/src/core/util/headersUtil.ts +12 -0
- package/src/index.ts +214 -1152
- package/src/testing/TestDataFactory.ts +742 -0
- package/src/testing/TestHelpers.ts +280 -0
- package/src/types/api-responses.ts +291 -0
- package/tests/bdd/simple-bdd-demo.test.ts +210 -0
- package/tests/bdd-scenarios/core/bdd-alliance.test.ts +210 -0
- package/tests/bdd-scenarios/core/bdd-character.test.ts +346 -0
- package/tests/bdd-scenarios/core/bdd-clones.test.ts +159 -0
- package/tests/bdd-scenarios/core/bdd-corporation-projects.test.ts +136 -0
- package/tests/bdd-scenarios/core/bdd-corporation.test.ts +388 -0
- package/tests/bdd-scenarios/core/bdd-etag-caching.test.ts +280 -0
- package/tests/bdd-scenarios/core/bdd-market.test.ts +435 -0
- package/tests/bdd-scenarios/core/bdd-meta.test.ts +131 -0
- package/tests/bdd-scenarios/core/bdd-universe.test.ts +463 -0
- package/tests/bdd-scenarios/integration/bdd-integration-workflows.test.ts +490 -0
- package/tests/bdd-scenarios/performance/bdd-performance.test.ts +463 -0
- package/tests/tdd/alliances/AllianceClient.improved.test.ts +266 -0
- package/tests/tdd/alliances/AllianceClient.test.ts +186 -15
- package/tests/tdd/alliances/getAlliances.test.ts +4 -7
- package/tests/tdd/clones/postJumpCloneActivation.test.ts +70 -0
- package/tests/tdd/contacts/ContactsClient.test.ts +267 -44
- package/tests/tdd/core/ETagCacheManager.test.ts +173 -0
- package/tests/tdd/core/ETagIntegration.test.ts +208 -0
- package/tests/tdd/corporations/CorporationsClient.test.ts +180 -9
- package/tests/tdd/corporations/getCorporationProjects.test.ts +62 -0
- package/tests/tdd/incursions/getIncursions.test.ts +148 -23
- package/tests/tdd/meta/MetaApiBuilder.test.ts +45 -0
- package/tests/tdd/meta/MetaClient.test.ts +92 -0
- package/tests/tdd/meta/getSwaggerJson.test.ts +40 -0
- package/tests/tdd/meta/getSwaggerYaml.test.ts +40 -0
- package/tests/tdd/status/StatusClient.test.ts +10 -8
- package/tests/tdd/status/getStatus.test.ts +12 -10
- package/typedoc.json +77 -0
- package/Structure.js +0 -257
- package/eslint.json +0 -13
- package/jest.bdd.config.cjs +0 -22
- package/src/config/jest/jest.bdd.setup.ts +0 -11
- package/tests/bdd/features/alliances/getAllianceById.feature +0 -6
- package/tests/bdd/features/alliances/getAllianceContactLabels.feature +0 -0
- package/tests/bdd/features/alliances/getAllianceContacts.feature +0 -0
- package/tests/bdd/features/alliances/getAllianceCorporations.feature +0 -6
- package/tests/bdd/features/alliances/getAllianceIcons.feature +0 -6
- package/tests/bdd/features/alliances/getAlliances.feature +0 -0
- package/tests/bdd/features/characters/getCharacter.feature +0 -0
- package/tests/bdd/features/characters/getCharacterAffiliation.feature +0 -0
- package/tests/bdd/features/characters/getCharacterAgentsResearch.feature +0 -0
- package/tests/bdd/features/characters/getCharacterAssetLocations.feature +0 -0
- package/tests/bdd/features/characters/getCharacterAssetNames.feature +0 -0
- package/tests/bdd/features/characters/getCharacterAssets.feature +0 -0
- package/tests/bdd/features/characters/getCharacterAttributes.feature +0 -0
- package/tests/bdd/features/characters/getCharacterBlueprints.feature +0 -0
- package/tests/bdd/features/characters/getCharacterBookmarkFolders.feature +0 -0
- package/tests/bdd/features/characters/getCharacterBookmarks.feature +0 -0
- package/tests/bdd/features/characters/getCharacterCalendarEventById.feature +0 -0
- package/tests/bdd/features/characters/getCharacterCalendarEvents.feature +0 -0
- package/tests/bdd/features/characters/getCharacterClones.feature +0 -0
- package/tests/bdd/features/characters/getCharacterContractBids.feature +0 -0
- package/tests/bdd/features/characters/getCharacterContractItems.feature +0 -0
- package/tests/bdd/features/characters/getCharacterContracts.feature +0 -0
- package/tests/bdd/features/characters/getCharacterCorporationHistory.feature +0 -0
- package/tests/bdd/features/characters/getCharacterFatigue.feature +0 -0
- package/tests/bdd/features/characters/getCharacterFittings.feature +0 -0
- package/tests/bdd/features/characters/getCharacterFleet.feature +0 -0
- package/tests/bdd/features/characters/getCharacterFwStats.feature +0 -0
- package/tests/bdd/features/characters/getCharacterImplants.feature +0 -0
- package/tests/bdd/features/characters/getCharacterIndustryJobs.feature +0 -0
- package/tests/bdd/features/characters/getCharacterKillmails.feature +0 -0
- package/tests/bdd/features/characters/getCharacterLocation.feature +0 -0
- package/tests/bdd/features/characters/getCharacterLoyaltyPoints.feature +0 -0
- package/tests/bdd/features/characters/getCharacterMail.feature +0 -0
- package/tests/bdd/features/characters/getCharacterMailById.feature +0 -0
- package/tests/bdd/features/characters/getCharacterMailLabels.feature +0 -0
- package/tests/bdd/features/characters/getCharacterMailLists.feature +0 -0
- package/tests/bdd/features/characters/getCharacterMedals.feature +0 -0
- package/tests/bdd/features/characters/getCharacterMining.feature +0 -0
- package/tests/bdd/features/characters/getCharacterNotifications.feature +0 -0
- package/tests/bdd/features/characters/getCharacterNotificationsContacts.feature +0 -0
- package/tests/bdd/features/characters/getCharacterOpportunities.feature +0 -0
- package/tests/bdd/features/characters/getCharacterOrderHistory.feature +0 -0
- package/tests/bdd/features/characters/getCharacterOrders.feature +0 -0
- package/tests/bdd/features/characters/getCharacterPlanets.feature +0 -0
- package/tests/bdd/features/characters/getCharacterPortrait.feature +0 -0
- package/tests/bdd/features/characters/getCharacterRoles.feature +0 -0
- package/tests/bdd/features/characters/getCharacterSearch.feature +0 -0
- package/tests/bdd/features/characters/getCharacterShip.feature +0 -0
- package/tests/bdd/features/characters/getCharacterSkillQueue.feature +0 -0
- package/tests/bdd/features/characters/getCharacterSkills.feature +0 -0
- package/tests/bdd/features/characters/getCharacterStandings.feature +0 -0
- package/tests/bdd/features/characters/getCharacterStats.feature +0 -0
- package/tests/bdd/features/characters/getCharacterTitles.feature +0 -0
- package/tests/bdd/features/characters/getCharacterWallet.feature +0 -0
- package/tests/bdd/features/characters/getCharacterWalletJournal.feature +0 -0
- package/tests/bdd/features/characters/getCharacterWalletTransactions.feature +0 -0
- package/tests/bdd/features/contracts/getContractBids.feature +0 -0
- package/tests/bdd/features/contracts/getContractById.feature +0 -0
- package/tests/bdd/features/contracts/getContractItems.feature +0 -0
- package/tests/bdd/features/contracts/getContracts.feature +0 -0
- package/tests/bdd/features/contracts/getPublicContractBids.feature +0 -0
- package/tests/bdd/features/contracts/getPublicContractItems.feature +0 -0
- package/tests/bdd/features/contracts/getPublicContracts.feature +0 -0
- package/tests/bdd/features/corporations/getCorporation.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationAlliances.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationBlueprints.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationBookmarkFolders.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationBookmarks.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationContactLabels.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationContacts.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationContainerLogs.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationContractBids.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationContractItems.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationContracts.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationDivisions.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationFacilities.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationFwStats.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationIcons.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationIndustryJobs.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationKillmails.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationMedals.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationMemberLimit.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationMemberTracking.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationMembers.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationMining.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationNotifications.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationOrderHistory.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationOrders.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationOutposts.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationRoles.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationShareholders.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationStandings.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationStarbases.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationStructures.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationTitles.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationWalletJournal.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationWalletTransactions.feature +0 -0
- package/tests/bdd/features/corporations/getCorporationWallets.feature +0 -0
- package/tests/bdd/features/dogma/getDogmaAttributeById.feature +0 -0
- package/tests/bdd/features/dogma/getDogmaAttributes.feature +0 -0
- package/tests/bdd/features/dogma/getDogmaDynamicItemAttributes.feature +0 -0
- package/tests/bdd/features/dogma/getDogmaEffectById.feature +0 -0
- package/tests/bdd/features/dogma/getDogmaEffects.feature +0 -0
- package/tests/bdd/features/factions/getFactionWarfareLeaderboards.feature +0 -6
- package/tests/bdd/features/factions/getFactionWarfareStats.feature +0 -6
- package/tests/bdd/features/factions/getFactionWarfareSystems.feature +0 -6
- package/tests/bdd/features/factions/getFactionWarfareWars.feature +0 -6
- package/tests/bdd/features/fleets/getFleetMembers.feature +0 -0
- package/tests/bdd/features/fleets/getFleetSquads.feature +0 -0
- package/tests/bdd/features/fleets/getFleetWings.feature +0 -0
- package/tests/bdd/features/fleets/getFleets.feature +0 -0
- package/tests/bdd/features/incursions/getIncursions.feature +0 -0
- package/tests/bdd/features/industry/getIndustryCorporationJobs.feature +0 -0
- package/tests/bdd/features/industry/getIndustryFacilities.feature +0 -0
- package/tests/bdd/features/industry/getIndustryJobs.feature +0 -0
- package/tests/bdd/features/industry/getIndustrySystems.feature +0 -0
- package/tests/bdd/features/insurance/getInsurancePrices.feature +0 -0
- package/tests/bdd/features/killmails/getKillmailById.feature +0 -0
- package/tests/bdd/features/killmails/getKillmails.feature +0 -0
- package/tests/bdd/features/killmails/getRecentCharacterKillmails.feature +0 -0
- package/tests/bdd/features/killmails/getRecentCorporationKillmails.feature +0 -0
- package/tests/bdd/features/location/getLocation.feature +0 -0
- package/tests/bdd/features/markets/getMarketGroupById.feature +0 -0
- package/tests/bdd/features/markets/getMarketGroups.feature +0 -0
- package/tests/bdd/features/markets/getMarketHistory.feature +0 -0
- package/tests/bdd/features/markets/getMarketOrders.feature +0 -0
- package/tests/bdd/features/markets/getMarketPrices.feature +0 -0
- package/tests/bdd/features/markets/getMarketRegionHistory.feature +0 -0
- package/tests/bdd/features/markets/getMarketRegionOrders.feature +0 -0
- package/tests/bdd/features/opportunities/getOpportunitiesGroups.feature +0 -0
- package/tests/bdd/features/opportunities/getOpportunitiesTasks.feature +0 -0
- package/tests/bdd/features/search/postSearch.feature +0 -0
- package/tests/bdd/features/sovereignty/getSovereigntyCampaigns.feature +0 -0
- package/tests/bdd/features/sovereignty/getSovereigntyMap.feature +0 -0
- package/tests/bdd/features/sovereignty/getSovereigntyStructures.feature +0 -0
- package/tests/bdd/features/ui/postUiAutopilotWaypoint.feature +0 -0
- package/tests/bdd/features/ui/postUiOpenWindowContract.feature +0 -0
- package/tests/bdd/features/ui/postUiOpenWindowInformation.feature +0 -0
- package/tests/bdd/features/ui/postUiOpenWindowMarketDetails.feature +0 -0
- package/tests/bdd/features/ui/postUiOpenWindowNewMail.feature +0 -0
- package/tests/bdd/features/universe/getAncestries.feature +0 -0
- package/tests/bdd/features/universe/getAsteroidBelt.feature +0 -0
- package/tests/bdd/features/universe/getBloodlines.feature +0 -0
- package/tests/bdd/features/universe/getCategories.feature +0 -0
- package/tests/bdd/features/universe/getCategoryById.feature +0 -0
- package/tests/bdd/features/universe/getConstellationById.feature +0 -0
- package/tests/bdd/features/universe/getConstellations.feature +0 -0
- package/tests/bdd/features/universe/getFactions.feature +0 -0
- package/tests/bdd/features/universe/getGraphicById.feature +0 -0
- package/tests/bdd/features/universe/getGraphics.feature +0 -0
- package/tests/bdd/features/universe/getGroupById.feature +0 -0
- package/tests/bdd/features/universe/getGroups.feature +0 -0
- package/tests/bdd/features/universe/getMoonById.feature +0 -0
- package/tests/bdd/features/universe/getMoons.feature +0 -0
- package/tests/bdd/features/universe/getPlanetById.feature +0 -0
- package/tests/bdd/features/universe/getPlanets.feature +0 -0
- package/tests/bdd/features/universe/getRaces.feature +0 -0
- package/tests/bdd/features/universe/getRegionById.feature +0 -0
- package/tests/bdd/features/universe/getRegions.feature +0 -0
- package/tests/bdd/features/universe/getStarById.feature +0 -0
- package/tests/bdd/features/universe/getStargateById.feature +0 -0
- package/tests/bdd/features/universe/getStargates.feature +0 -0
- package/tests/bdd/features/universe/getStars.feature +0 -0
- package/tests/bdd/features/universe/getStationById.feature +0 -0
- package/tests/bdd/features/universe/getStations.feature +0 -0
- package/tests/bdd/features/universe/getStructures.feature +0 -0
- package/tests/bdd/features/universe/getSystemById.feature +0 -0
- package/tests/bdd/features/universe/getSystemJumps.feature +0 -0
- package/tests/bdd/features/universe/getSystemKills.feature +0 -0
- package/tests/bdd/features/universe/getSystems.feature +0 -0
- package/tests/bdd/features/universe/getTypeById.feature +0 -0
- package/tests/bdd/features/universe/getTypes.feature +0 -0
- package/tests/bdd/features/universe/getWarById.feature +0 -0
- package/tests/bdd/features/universe/getWars.feature +0 -0
- package/tests/bdd/features/universe/postBulkIdsToNames.feature +0 -0
- package/tests/bdd/features/universe/postBulkNamesToIds.feature +0 -0
- package/tests/bdd/features/universe/postUniverseNames.feature +0 -0
- package/tests/bdd/features/wars/getWarById.feature +0 -0
- package/tests/bdd/features/wars/getWars.feature +0 -0
- package/tests/bdd/steps/alliances/getAllianceById.ts +0 -17
- package/tests/bdd/steps/alliances/getAllianceContactLabels.ts +0 -0
- package/tests/bdd/steps/alliances/getAllianceContacts.ts +0 -0
- package/tests/bdd/steps/alliances/getAllianceCorporations.ts +0 -18
- package/tests/bdd/steps/alliances/getAllianceIcons.ts +0 -21
- package/tests/bdd/steps/alliances/getAlliances.ts +0 -0
- package/tests/bdd/steps/characters/getCharacter.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterAffiliation.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterAgentsResearch.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterAssetLocations.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterAssetNames.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterAssets.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterAttributes.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterBlueprints.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterBookmarkFolders.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterBookmarks.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterCalendarEventById.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterCalendarEvents.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterClones.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterContractBids.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterContractItems.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterContracts.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterCorporationHistory.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterFatigue.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterFittings.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterFleet.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterFwStats.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterImplants.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterIndustryJobs.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterKillmails.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterLocation.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterLoyaltyPoints.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterMail.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterMailById.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterMailLabels.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterMailLists.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterMedals.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterMining.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterNotifications.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterNotificationsContacts.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterOpportunities.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterOrderHistory.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterOrders.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterPlanets.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterPortrait.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterRoles.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterSearch.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterShip.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterSkillQueue.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterSkills.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterStandings.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterStats.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterTitles.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterWallet.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterWalletJournal.ts +0 -0
- package/tests/bdd/steps/characters/getCharacterWalletTransactions.ts +0 -0
- package/tests/bdd/steps/contracts/getContractBids.ts +0 -0
- package/tests/bdd/steps/contracts/getContractById.ts +0 -0
- package/tests/bdd/steps/contracts/getContractItems.ts +0 -0
- package/tests/bdd/steps/contracts/getContracts.ts +0 -0
- package/tests/bdd/steps/contracts/getPublicContractBids.ts +0 -0
- package/tests/bdd/steps/contracts/getPublicContractItems.ts +0 -0
- package/tests/bdd/steps/contracts/getPublicContracts.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporation.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationAlliances.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationBlueprints.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationBookmarkFolders.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationBookmarks.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationContactLabels.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationContacts.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationContainerLogs.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationContractBids.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationContractItems.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationContracts.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationDivisions.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationFacilities.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationFwStats.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationIcons.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationIndustryJobs.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationKillmails.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationMedals.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationMemberLimit.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationMemberTracking.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationMembers.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationMining.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationNotifications.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationOrderHistory.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationOrders.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationOutposts.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationRoles.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationShareholders.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationStandings.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationStarbases.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationStructures.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationTitles.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationWalletJournal.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationWalletTransactions.ts +0 -0
- package/tests/bdd/steps/corporations/getCorporationWallets.ts +0 -0
- package/tests/bdd/steps/dogma/getDogmaAttributeById.ts +0 -0
- package/tests/bdd/steps/dogma/getDogmaAttributes.ts +0 -0
- package/tests/bdd/steps/dogma/getDogmaDynamicItemAttributes.ts +0 -0
- package/tests/bdd/steps/dogma/getDogmaEffectById.ts +0 -0
- package/tests/bdd/steps/dogma/getDogmaEffects.ts +0 -0
- package/tests/bdd/steps/factions/getFactionWarfareLeaderboards.ts +0 -33
- package/tests/bdd/steps/factions/getFactionWarfareStats.ts +0 -34
- package/tests/bdd/steps/factions/getFactionWarfareSystems.ts +0 -33
- package/tests/bdd/steps/factions/getFactionWarfareWars.ts +0 -33
- package/tests/bdd/steps/fleets/getFleetMembers.ts +0 -0
- package/tests/bdd/steps/fleets/getFleetSquads.ts +0 -0
- package/tests/bdd/steps/fleets/getFleetWings.ts +0 -0
- package/tests/bdd/steps/fleets/getFleets.ts +0 -0
- package/tests/bdd/steps/incursions/getIncursions.ts +0 -0
- package/tests/bdd/steps/industry/getIndustryCorporationJobs.ts +0 -0
- package/tests/bdd/steps/industry/getIndustryFacilities.ts +0 -0
- package/tests/bdd/steps/industry/getIndustryJobs.ts +0 -0
- package/tests/bdd/steps/industry/getIndustrySystems.ts +0 -0
- package/tests/bdd/steps/insurance/getInsurancePrices.ts +0 -0
- package/tests/bdd/steps/killmails/getKillmailById.ts +0 -0
- package/tests/bdd/steps/killmails/getKillmails.ts +0 -0
- package/tests/bdd/steps/killmails/getRecentCharacterKillmails.ts +0 -0
- package/tests/bdd/steps/killmails/getRecentCorporationKillmails.ts +0 -0
- package/tests/bdd/steps/location/getLocation.ts +0 -0
- package/tests/bdd/steps/markets/getMarketGroupById.ts +0 -0
- package/tests/bdd/steps/markets/getMarketGroups.ts +0 -0
- package/tests/bdd/steps/markets/getMarketHistory.ts +0 -0
- package/tests/bdd/steps/markets/getMarketOrders.ts +0 -0
- package/tests/bdd/steps/markets/getMarketPrices.ts +0 -0
- package/tests/bdd/steps/markets/getMarketRegionHistory.ts +0 -0
- package/tests/bdd/steps/markets/getMarketRegionOrders.ts +0 -0
- package/tests/bdd/steps/opportunities/getOpportunitiesGroups.ts +0 -0
- package/tests/bdd/steps/opportunities/getOpportunitiesTasks.ts +0 -0
- package/tests/bdd/steps/search/postSearch.ts +0 -0
- package/tests/bdd/steps/sovereignty/getSovereigntyCampaigns.ts +0 -0
- package/tests/bdd/steps/sovereignty/getSovereigntyMap.ts +0 -0
- package/tests/bdd/steps/sovereignty/getSovereigntyStructures.ts +0 -0
- package/tests/bdd/steps/ui/postUiAutopilotWaypoint.ts +0 -0
- package/tests/bdd/steps/ui/postUiOpenWindowContract.ts +0 -0
- package/tests/bdd/steps/ui/postUiOpenWindowInformation.ts +0 -0
- package/tests/bdd/steps/ui/postUiOpenWindowMarketDetails.ts +0 -0
- package/tests/bdd/steps/ui/postUiOpenWindowNewMail.ts +0 -0
- package/tests/bdd/steps/universe/getAncestries.ts +0 -0
- package/tests/bdd/steps/universe/getAsteroidBelt.ts +0 -0
- package/tests/bdd/steps/universe/getBloodlines.ts +0 -0
- package/tests/bdd/steps/universe/getCategories.ts +0 -0
- package/tests/bdd/steps/universe/getCategoryById.ts +0 -0
- package/tests/bdd/steps/universe/getConstellationById.ts +0 -0
- package/tests/bdd/steps/universe/getConstellations.ts +0 -0
- package/tests/bdd/steps/universe/getFactions.ts +0 -0
- package/tests/bdd/steps/universe/getGraphicById.ts +0 -0
- package/tests/bdd/steps/universe/getGraphics.ts +0 -0
- package/tests/bdd/steps/universe/getGroupById.ts +0 -0
- package/tests/bdd/steps/universe/getGroups.ts +0 -0
- package/tests/bdd/steps/universe/getMoonById.ts +0 -0
- package/tests/bdd/steps/universe/getMoons.ts +0 -0
- package/tests/bdd/steps/universe/getPlanetById.ts +0 -0
- package/tests/bdd/steps/universe/getPlanets.ts +0 -0
- package/tests/bdd/steps/universe/getRaces.ts +0 -0
- package/tests/bdd/steps/universe/getRegionById.ts +0 -0
- package/tests/bdd/steps/universe/getRegions.ts +0 -0
- package/tests/bdd/steps/universe/getStarById.ts +0 -0
- package/tests/bdd/steps/universe/getStargateById.ts +0 -0
- package/tests/bdd/steps/universe/getStargates.ts +0 -0
- package/tests/bdd/steps/universe/getStars.ts +0 -0
- package/tests/bdd/steps/universe/getStationById.ts +0 -0
- package/tests/bdd/steps/universe/getStations.ts +0 -0
- package/tests/bdd/steps/universe/getStructures.ts +0 -0
- package/tests/bdd/steps/universe/getSystemById.ts +0 -0
- package/tests/bdd/steps/universe/getSystemJumps.ts +0 -0
- package/tests/bdd/steps/universe/getSystemKills.ts +0 -0
- package/tests/bdd/steps/universe/getSystems.ts +0 -0
- package/tests/bdd/steps/universe/getTypeById.ts +0 -0
- package/tests/bdd/steps/universe/getTypes.ts +0 -0
- package/tests/bdd/steps/universe/getWarById.ts +0 -0
- package/tests/bdd/steps/universe/getWars.ts +0 -0
- package/tests/bdd/steps/universe/postBulkIdsToNames.ts +0 -0
- package/tests/bdd/steps/universe/postBulkNamesToIds.ts +0 -0
- package/tests/bdd/steps/universe/postUniverseNames.ts +0 -0
- package/tests/bdd/steps/wars/getWarById.ts +0 -0
- package/tests/bdd/steps/wars/getWars.ts +0 -0
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
import { EsiClient } from '../../../src/EsiClient';
|
|
2
|
+
import { initializeETagCache, getETagCache, resetETagCache } from '../../../src/core/ApiRequestHandler';
|
|
3
|
+
import fetchMock from 'jest-fetch-mock';
|
|
4
|
+
|
|
5
|
+
fetchMock.enableMocks();
|
|
6
|
+
|
|
7
|
+
describe('ETag Integration Tests', () => {
|
|
8
|
+
let client: EsiClient;
|
|
9
|
+
|
|
10
|
+
beforeEach(() => {
|
|
11
|
+
fetchMock.resetMocks();
|
|
12
|
+
|
|
13
|
+
// Reset the global cache to ensure clean state
|
|
14
|
+
resetETagCache();
|
|
15
|
+
|
|
16
|
+
client = new EsiClient({
|
|
17
|
+
clientId: 'test-client',
|
|
18
|
+
baseUrl: 'https://esi.evetech.net',
|
|
19
|
+
enableETagCache: true,
|
|
20
|
+
etagCacheConfig: {
|
|
21
|
+
maxEntries: 100,
|
|
22
|
+
defaultTtl: 5000,
|
|
23
|
+
cleanupInterval: 1000
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
afterEach(() => {
|
|
29
|
+
client.shutdown();
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
describe('ETag Caching Flow', () => {
|
|
33
|
+
it('should cache response with ETag on first request', async () => {
|
|
34
|
+
const mockData = [{ alliance_id: 1, name: 'Test Alliance' }];
|
|
35
|
+
const etag = '"abc123def456"';
|
|
36
|
+
|
|
37
|
+
fetchMock.mockResponseOnce(JSON.stringify(mockData), {
|
|
38
|
+
headers: {
|
|
39
|
+
'ETag': etag,
|
|
40
|
+
'Content-Type': 'application/json'
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
const result = await client.alliance.getAlliances();
|
|
45
|
+
|
|
46
|
+
expect(result).toEqual(mockData);
|
|
47
|
+
|
|
48
|
+
const cache = getETagCache();
|
|
49
|
+
expect(cache).toBeDefined();
|
|
50
|
+
|
|
51
|
+
const cacheStats = client.getCacheStats();
|
|
52
|
+
expect(cacheStats.totalEntries).toBe(1);
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
it('should return cached data on 304 Not Modified', async () => {
|
|
56
|
+
const mockData = [{ alliance_id: 1, name: 'Test Alliance' }];
|
|
57
|
+
const etag = '"abc123def456"';
|
|
58
|
+
|
|
59
|
+
// First request - populate cache
|
|
60
|
+
fetchMock.mockResponseOnce(JSON.stringify(mockData), {
|
|
61
|
+
headers: {
|
|
62
|
+
'ETag': etag,
|
|
63
|
+
'Content-Type': 'application/json'
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
|
|
67
|
+
await client.alliance.getAlliances();
|
|
68
|
+
|
|
69
|
+
// Second request - should return 304
|
|
70
|
+
fetchMock.mockResponseOnce('', {
|
|
71
|
+
status: 304,
|
|
72
|
+
headers: {
|
|
73
|
+
'ETag': etag
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
|
|
77
|
+
const cachedResult = await client.alliance.getAlliances();
|
|
78
|
+
|
|
79
|
+
expect(cachedResult).toEqual(mockData);
|
|
80
|
+
expect(fetchMock).toHaveBeenCalledTimes(2);
|
|
81
|
+
|
|
82
|
+
// Verify If-None-Match header was sent
|
|
83
|
+
const lastCall = fetchMock.mock.calls[1];
|
|
84
|
+
const requestHeaders = lastCall[1]?.headers as Record<string, string>;
|
|
85
|
+
expect(requestHeaders['If-None-Match']).toBe(etag);
|
|
86
|
+
});
|
|
87
|
+
|
|
88
|
+
it('should update cache when ETag changes', async () => {
|
|
89
|
+
const oldData = [{ alliance_id: 1, name: 'Old Alliance' }];
|
|
90
|
+
const newData = [{ alliance_id: 1, name: 'Updated Alliance' }];
|
|
91
|
+
const oldETag = '"old123"';
|
|
92
|
+
const newETag = '"new456"';
|
|
93
|
+
|
|
94
|
+
// First request
|
|
95
|
+
fetchMock.mockResponseOnce(JSON.stringify(oldData), {
|
|
96
|
+
headers: {
|
|
97
|
+
'ETag': oldETag,
|
|
98
|
+
'Content-Type': 'application/json'
|
|
99
|
+
}
|
|
100
|
+
});
|
|
101
|
+
|
|
102
|
+
const firstResult = await client.alliance.getAlliances();
|
|
103
|
+
expect(firstResult).toEqual(oldData);
|
|
104
|
+
|
|
105
|
+
// Second request with new ETag
|
|
106
|
+
fetchMock.mockResponseOnce(JSON.stringify(newData), {
|
|
107
|
+
headers: {
|
|
108
|
+
'ETag': newETag,
|
|
109
|
+
'Content-Type': 'application/json'
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
|
|
113
|
+
const secondResult = await client.alliance.getAlliances();
|
|
114
|
+
expect(secondResult).toEqual(newData);
|
|
115
|
+
|
|
116
|
+
const cache = getETagCache();
|
|
117
|
+
const url = 'https://esi.evetech.net/alliances';
|
|
118
|
+
expect(cache?.getETag(url)).toBe(newETag);
|
|
119
|
+
});
|
|
120
|
+
});
|
|
121
|
+
|
|
122
|
+
describe('Cache Management', () => {
|
|
123
|
+
it('should provide cache statistics', async () => {
|
|
124
|
+
const mockData = [{ alliance_id: 1, name: 'Test Alliance' }];
|
|
125
|
+
|
|
126
|
+
fetchMock.mockResponseOnce(JSON.stringify(mockData), {
|
|
127
|
+
headers: { 'ETag': '"test123"' }
|
|
128
|
+
});
|
|
129
|
+
|
|
130
|
+
await client.alliance.getAlliances();
|
|
131
|
+
|
|
132
|
+
const stats = client.getCacheStats();
|
|
133
|
+
expect(stats).toBeDefined();
|
|
134
|
+
expect(stats.totalEntries).toBe(1);
|
|
135
|
+
expect(stats.maxEntries).toBe(100);
|
|
136
|
+
});
|
|
137
|
+
|
|
138
|
+
it('should clear cache', async () => {
|
|
139
|
+
const mockData = [{ alliance_id: 1, name: 'Test Alliance' }];
|
|
140
|
+
|
|
141
|
+
fetchMock.mockResponseOnce(JSON.stringify(mockData), {
|
|
142
|
+
headers: { 'ETag': '"test123"' }
|
|
143
|
+
});
|
|
144
|
+
|
|
145
|
+
await client.alliance.getAlliances();
|
|
146
|
+
|
|
147
|
+
expect(client.getCacheStats().totalEntries).toBe(1);
|
|
148
|
+
|
|
149
|
+
client.clearCache();
|
|
150
|
+
|
|
151
|
+
expect(client.getCacheStats().totalEntries).toBe(0);
|
|
152
|
+
});
|
|
153
|
+
|
|
154
|
+
it('should update cache configuration', () => {
|
|
155
|
+
const initialStats = client.getCacheStats();
|
|
156
|
+
expect(initialStats.maxEntries).toBe(100);
|
|
157
|
+
|
|
158
|
+
client.updateCacheConfig({ maxEntries: 200 });
|
|
159
|
+
|
|
160
|
+
const updatedStats = client.getCacheStats();
|
|
161
|
+
expect(updatedStats.maxEntries).toBe(200);
|
|
162
|
+
});
|
|
163
|
+
});
|
|
164
|
+
|
|
165
|
+
describe('ETag Disabled', () => {
|
|
166
|
+
it('should work without ETag cache when disabled', async () => {
|
|
167
|
+
const clientWithoutETag = new EsiClient({
|
|
168
|
+
enableETagCache: false
|
|
169
|
+
});
|
|
170
|
+
|
|
171
|
+
const mockData = [{ alliance_id: 1, name: 'Test Alliance' }];
|
|
172
|
+
|
|
173
|
+
fetchMock.mockResponseOnce(JSON.stringify(mockData), {
|
|
174
|
+
headers: { 'ETag': '"test123"' }
|
|
175
|
+
});
|
|
176
|
+
|
|
177
|
+
const result = await clientWithoutETag.alliance.getAlliances();
|
|
178
|
+
|
|
179
|
+
expect(result).toEqual(mockData);
|
|
180
|
+
expect(clientWithoutETag.getCacheStats()).toBeNull();
|
|
181
|
+
|
|
182
|
+
clientWithoutETag.shutdown();
|
|
183
|
+
});
|
|
184
|
+
});
|
|
185
|
+
|
|
186
|
+
describe('Error Handling', () => {
|
|
187
|
+
it('should handle requests when cache returns null', async () => {
|
|
188
|
+
const mockData = [{ alliance_id: 1, name: 'Test Alliance' }];
|
|
189
|
+
|
|
190
|
+
// Mock 304 response but no cached data (edge case)
|
|
191
|
+
fetchMock.mockResponseOnce('', {
|
|
192
|
+
status: 304
|
|
193
|
+
});
|
|
194
|
+
|
|
195
|
+
// Should handle gracefully and not crash
|
|
196
|
+
const result = await client.alliance.getAlliances();
|
|
197
|
+
|
|
198
|
+
// Should return error object for 304 with no cache
|
|
199
|
+
expect(result).toEqual({ error: 'not modified' });
|
|
200
|
+
});
|
|
201
|
+
|
|
202
|
+
it('should handle network errors gracefully', async () => {
|
|
203
|
+
fetchMock.mockRejectOnce(new Error('Network error'));
|
|
204
|
+
|
|
205
|
+
await expect(client.alliance.getAlliances()).rejects.toThrow('Network error');
|
|
206
|
+
});
|
|
207
|
+
});
|
|
208
|
+
});
|
|
@@ -1,22 +1,25 @@
|
|
|
1
1
|
import { CorporationsClient } from '../../../src/clients/CorporationsClient';
|
|
2
2
|
import { ApiClientBuilder } from '../../../src/core/ApiClientBuilder';
|
|
3
3
|
import { getConfig } from '../../../src/config/configManager';
|
|
4
|
+
import { getBody } from '../../../src/core/util/testHelpers';
|
|
4
5
|
import fetchMock from 'jest-fetch-mock';
|
|
5
6
|
|
|
6
7
|
fetchMock.enableMocks();
|
|
7
8
|
|
|
8
|
-
const config = getConfig();
|
|
9
|
-
const client = new ApiClientBuilder()
|
|
10
|
-
.setClientId(config.projectName)
|
|
11
|
-
.setLink(config.link)
|
|
12
|
-
.setAccessToken(config.authToken || undefined)
|
|
13
|
-
.build();
|
|
14
|
-
|
|
15
|
-
const corporationsClient = new CorporationsClient(client);
|
|
16
|
-
|
|
17
9
|
describe('CorporationsClient', () => {
|
|
10
|
+
let corporationsClient: CorporationsClient;
|
|
11
|
+
|
|
18
12
|
beforeEach(() => {
|
|
19
13
|
fetchMock.resetMocks();
|
|
14
|
+
|
|
15
|
+
const config = getConfig();
|
|
16
|
+
const client = new ApiClientBuilder()
|
|
17
|
+
.setClientId(config.projectName)
|
|
18
|
+
.setLink(config.link)
|
|
19
|
+
.setAccessToken(config.authToken || undefined)
|
|
20
|
+
.build();
|
|
21
|
+
|
|
22
|
+
corporationsClient = new CorporationsClient(client);
|
|
20
23
|
});
|
|
21
24
|
|
|
22
25
|
it('should return valid structure for getCorporationInfo', async () => {
|
|
@@ -227,4 +230,172 @@ describe('CorporationsClient', () => {
|
|
|
227
230
|
expect(result).toHaveProperty('px256x256');
|
|
228
231
|
expect(typeof result.px256x256).toBe('string');
|
|
229
232
|
});
|
|
233
|
+
|
|
234
|
+
// Adding tests for key missing methods
|
|
235
|
+
it('should return valid structure for getCorporationMembers', async () => {
|
|
236
|
+
const mockResponse = [
|
|
237
|
+
{
|
|
238
|
+
character_id: 123456789,
|
|
239
|
+
name: 'John Doe',
|
|
240
|
+
title: 'CEO'
|
|
241
|
+
},
|
|
242
|
+
{
|
|
243
|
+
character_id: 987654321,
|
|
244
|
+
name: 'Jane Smith',
|
|
245
|
+
title: 'Director'
|
|
246
|
+
}
|
|
247
|
+
];
|
|
248
|
+
|
|
249
|
+
fetchMock.mockResponseOnce(JSON.stringify(mockResponse));
|
|
250
|
+
|
|
251
|
+
const result = await getBody(() => corporationsClient.getCorporationMembers(123456789));
|
|
252
|
+
|
|
253
|
+
expect(Array.isArray(result)).toBe(true);
|
|
254
|
+
result.forEach((member: { character_id: number; name: string; title: string }) => {
|
|
255
|
+
expect(member).toHaveProperty('character_id');
|
|
256
|
+
expect(typeof member.character_id).toBe('number');
|
|
257
|
+
expect(member).toHaveProperty('name');
|
|
258
|
+
expect(typeof member.name).toBe('string');
|
|
259
|
+
expect(member).toHaveProperty('title');
|
|
260
|
+
expect(typeof member.title).toBe('string');
|
|
261
|
+
});
|
|
262
|
+
});
|
|
263
|
+
|
|
264
|
+
it('should return valid structure for getCorporationMemberLimit', async () => {
|
|
265
|
+
const mockResponse = 50;
|
|
266
|
+
|
|
267
|
+
fetchMock.mockResponseOnce(JSON.stringify(mockResponse));
|
|
268
|
+
|
|
269
|
+
const result = await getBody(() => corporationsClient.getCorporationMemberLimit(123456789));
|
|
270
|
+
|
|
271
|
+
expect(typeof result).toBe('number');
|
|
272
|
+
expect(result).toBe(50);
|
|
273
|
+
});
|
|
274
|
+
|
|
275
|
+
it('should return valid structure for getCorporationRoles', async () => {
|
|
276
|
+
const mockResponse = [
|
|
277
|
+
{
|
|
278
|
+
character_id: 123456789,
|
|
279
|
+
roles: ['Director', 'Personnel_Manager'],
|
|
280
|
+
grantable_roles: ['Accountant'],
|
|
281
|
+
roles_at_hq: ['Director'],
|
|
282
|
+
grantable_roles_at_hq: [],
|
|
283
|
+
roles_at_base: [],
|
|
284
|
+
grantable_roles_at_base: [],
|
|
285
|
+
roles_at_other: [],
|
|
286
|
+
grantable_roles_at_other: []
|
|
287
|
+
}
|
|
288
|
+
];
|
|
289
|
+
|
|
290
|
+
fetchMock.mockResponseOnce(JSON.stringify(mockResponse));
|
|
291
|
+
|
|
292
|
+
const result = await getBody(() => corporationsClient.getCorporationRoles(123456789));
|
|
293
|
+
|
|
294
|
+
expect(Array.isArray(result)).toBe(true);
|
|
295
|
+
result.forEach((roleData: any) => {
|
|
296
|
+
expect(roleData).toHaveProperty('character_id');
|
|
297
|
+
expect(typeof roleData.character_id).toBe('number');
|
|
298
|
+
expect(roleData).toHaveProperty('roles');
|
|
299
|
+
expect(Array.isArray(roleData.roles)).toBe(true);
|
|
300
|
+
expect(roleData).toHaveProperty('grantable_roles');
|
|
301
|
+
expect(Array.isArray(roleData.grantable_roles)).toBe(true);
|
|
302
|
+
});
|
|
303
|
+
});
|
|
304
|
+
|
|
305
|
+
it('should return valid structure for getCorporationStandings', async () => {
|
|
306
|
+
const mockResponse = [
|
|
307
|
+
{
|
|
308
|
+
from_id: 123456,
|
|
309
|
+
from_type: 'agent',
|
|
310
|
+
standing: 5.0
|
|
311
|
+
},
|
|
312
|
+
{
|
|
313
|
+
from_id: 789012,
|
|
314
|
+
from_type: 'faction',
|
|
315
|
+
standing: -2.5
|
|
316
|
+
}
|
|
317
|
+
];
|
|
318
|
+
|
|
319
|
+
fetchMock.mockResponseOnce(JSON.stringify(mockResponse));
|
|
320
|
+
|
|
321
|
+
const result = await getBody(() => corporationsClient.getCorporationStandings(123456789));
|
|
322
|
+
|
|
323
|
+
expect(Array.isArray(result)).toBe(true);
|
|
324
|
+
result.forEach((standing: any) => {
|
|
325
|
+
expect(standing).toHaveProperty('from_id');
|
|
326
|
+
expect(typeof standing.from_id).toBe('number');
|
|
327
|
+
expect(standing).toHaveProperty('from_type');
|
|
328
|
+
expect(typeof standing.from_type).toBe('string');
|
|
329
|
+
expect(standing).toHaveProperty('standing');
|
|
330
|
+
expect(typeof standing.standing).toBe('number');
|
|
331
|
+
});
|
|
332
|
+
});
|
|
333
|
+
|
|
334
|
+
it('should return valid structure for getCorporationTitles', async () => {
|
|
335
|
+
const mockResponse = [
|
|
336
|
+
{
|
|
337
|
+
title_id: 1,
|
|
338
|
+
name: 'CEO',
|
|
339
|
+
roles: ['Director', 'Personnel_Manager'],
|
|
340
|
+
grantable_roles: ['Accountant'],
|
|
341
|
+
roles_at_hq: ['Director'],
|
|
342
|
+
grantable_roles_at_hq: [],
|
|
343
|
+
roles_at_base: [],
|
|
344
|
+
grantable_roles_at_base: [],
|
|
345
|
+
roles_at_other: [],
|
|
346
|
+
grantable_roles_at_other: []
|
|
347
|
+
}
|
|
348
|
+
];
|
|
349
|
+
|
|
350
|
+
fetchMock.mockResponseOnce(JSON.stringify(mockResponse));
|
|
351
|
+
|
|
352
|
+
const result = await getBody(() => corporationsClient.getCorporationTitles(123456789));
|
|
353
|
+
|
|
354
|
+
expect(Array.isArray(result)).toBe(true);
|
|
355
|
+
result.forEach((title: any) => {
|
|
356
|
+
expect(title).toHaveProperty('title_id');
|
|
357
|
+
expect(typeof title.title_id).toBe('number');
|
|
358
|
+
expect(title).toHaveProperty('name');
|
|
359
|
+
expect(typeof title.name).toBe('string');
|
|
360
|
+
expect(title).toHaveProperty('roles');
|
|
361
|
+
expect(Array.isArray(title.roles)).toBe(true);
|
|
362
|
+
});
|
|
363
|
+
});
|
|
364
|
+
|
|
365
|
+
it('should return valid structure for getNpcCorporations', async () => {
|
|
366
|
+
const mockResponse = [1000001, 1000002, 1000003, 1000004];
|
|
367
|
+
|
|
368
|
+
fetchMock.mockResponseOnce(JSON.stringify(mockResponse));
|
|
369
|
+
|
|
370
|
+
const result = await getBody(() => corporationsClient.getNpcCorporations());
|
|
371
|
+
|
|
372
|
+
expect(Array.isArray(result)).toBe(true);
|
|
373
|
+
result.forEach((corpId: number) => {
|
|
374
|
+
expect(typeof corpId).toBe('number');
|
|
375
|
+
expect(corpId).toBeGreaterThan(0);
|
|
376
|
+
});
|
|
377
|
+
});
|
|
378
|
+
|
|
379
|
+
it('should return valid structure for getCorporationProjects', async () => {
|
|
380
|
+
const mockResponse = [
|
|
381
|
+
{
|
|
382
|
+
project_id: 1,
|
|
383
|
+
name: 'Research Project Alpha',
|
|
384
|
+
description: 'Advanced research project',
|
|
385
|
+
status: 'active'
|
|
386
|
+
}
|
|
387
|
+
];
|
|
388
|
+
|
|
389
|
+
fetchMock.mockResponseOnce(JSON.stringify(mockResponse));
|
|
390
|
+
|
|
391
|
+
const result = await getBody(() => corporationsClient.getCorporationProjects(123456789));
|
|
392
|
+
|
|
393
|
+
expect(Array.isArray(result)).toBe(true);
|
|
394
|
+
result.forEach((project: any) => {
|
|
395
|
+
expect(project).toHaveProperty('project_id');
|
|
396
|
+
expect(typeof project.project_id).toBe('number');
|
|
397
|
+
expect(project).toHaveProperty('name');
|
|
398
|
+
expect(typeof project.name).toBe('string');
|
|
399
|
+
});
|
|
400
|
+
});
|
|
230
401
|
});
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { GetCorporationProjectsApi } from '../../../src/api/corporations/getCorporationProjects';
|
|
2
|
+
import { getClient } from '../../../src/config/jest/jest.setup';
|
|
3
|
+
import fetchMock from 'jest-fetch-mock';
|
|
4
|
+
|
|
5
|
+
fetchMock.enableMocks();
|
|
6
|
+
|
|
7
|
+
let getCorporationProjectsApi: GetCorporationProjectsApi;
|
|
8
|
+
|
|
9
|
+
beforeAll(() => {
|
|
10
|
+
getCorporationProjectsApi = new GetCorporationProjectsApi(getClient());
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
describe('GetCorporationProjectsApi', () => {
|
|
14
|
+
beforeEach(() => {
|
|
15
|
+
fetchMock.resetMocks();
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
it('should call getCorporationProjects and return corporation projects', async () => {
|
|
19
|
+
const corporationId = 98000001;
|
|
20
|
+
const mockProjects = [
|
|
21
|
+
{
|
|
22
|
+
project_id: 1,
|
|
23
|
+
name: 'Test Project',
|
|
24
|
+
description: 'A test project',
|
|
25
|
+
status: 'active'
|
|
26
|
+
}
|
|
27
|
+
];
|
|
28
|
+
|
|
29
|
+
fetchMock.mockResponseOnce(JSON.stringify(mockProjects));
|
|
30
|
+
|
|
31
|
+
const result = await getBody(() => getCorporationProjectsApi.getCorporationProjects(corporationId));
|
|
32
|
+
|
|
33
|
+
expect(result).toEqual(mockProjects);
|
|
34
|
+
expect(Array.isArray(result)).toBe(true);
|
|
35
|
+
if (result.length > 0) {
|
|
36
|
+
expect(result[0]).toHaveProperty('project_id');
|
|
37
|
+
expect(result[0]).toHaveProperty('name');
|
|
38
|
+
expect(result[0]).toHaveProperty('status');
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
it('should handle different corporation IDs correctly', async () => {
|
|
43
|
+
const corporationId = 98000002;
|
|
44
|
+
const mockProjects: any[] = [];
|
|
45
|
+
|
|
46
|
+
fetchMock.mockResponseOnce(JSON.stringify(mockProjects));
|
|
47
|
+
|
|
48
|
+
const result = await getBody(() => getCorporationProjectsApi.getCorporationProjects(corporationId));
|
|
49
|
+
|
|
50
|
+
expect(result).toEqual(mockProjects);
|
|
51
|
+
expect(Array.isArray(result)).toBe(true);
|
|
52
|
+
expect(result).toHaveLength(0);
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
it('should handle API errors gracefully', async () => {
|
|
56
|
+
const corporationId = 98000001;
|
|
57
|
+
|
|
58
|
+
fetchMock.mockRejectOnce(new Error('Corporation not found'));
|
|
59
|
+
|
|
60
|
+
await expect(getBody(() => getCorporationProjectsApi.getCorporationProjects(corporationId))).rejects.toThrow();
|
|
61
|
+
});
|
|
62
|
+
});
|
|
@@ -1,31 +1,17 @@
|
|
|
1
|
+
import { IncursionsClient } from '../../../src/clients/IncursionsClient';
|
|
1
2
|
import { ApiClientBuilder } from '../../../src/core/ApiClientBuilder';
|
|
2
|
-
import { IncursionsApi } from '../../../src/api/incursions/getIncursions';
|
|
3
3
|
import { getConfig } from '../../../src/config/configManager';
|
|
4
|
+
import { getBody } from '../../../src/core/util/testHelpers';
|
|
4
5
|
import fetchMock from 'jest-fetch-mock';
|
|
5
6
|
|
|
6
7
|
fetchMock.enableMocks();
|
|
7
8
|
|
|
8
|
-
describe('
|
|
9
|
+
describe('IncursionsClient', () => {
|
|
10
|
+
let incursionsClient: IncursionsClient;
|
|
11
|
+
|
|
9
12
|
beforeEach(() => {
|
|
10
13
|
fetchMock.resetMocks();
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
it('should fetch incursions correctly', async () => {
|
|
14
|
-
const mockResponse = [
|
|
15
|
-
{
|
|
16
|
-
constellation_id: 20000169,
|
|
17
|
-
faction_id: 500019,
|
|
18
|
-
has_boss: true,
|
|
19
|
-
infested_solar_systems: [30001161, 30001162],
|
|
20
|
-
influence: 0.9,
|
|
21
|
-
staging_solar_system_id: 30001161,
|
|
22
|
-
state: 'mobilizing',
|
|
23
|
-
type: 'Incursion'
|
|
24
|
-
}
|
|
25
|
-
];
|
|
26
|
-
|
|
27
|
-
fetchMock.mockResponseOnce(JSON.stringify(mockResponse));
|
|
28
|
-
|
|
14
|
+
|
|
29
15
|
const config = getConfig();
|
|
30
16
|
const client = new ApiClientBuilder()
|
|
31
17
|
.setClientId(config.projectName)
|
|
@@ -33,9 +19,148 @@ describe('IncursionsApi', () => {
|
|
|
33
19
|
.setAccessToken(config.authToken || undefined)
|
|
34
20
|
.build();
|
|
35
21
|
|
|
36
|
-
|
|
22
|
+
incursionsClient = new IncursionsClient(client);
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
describe('getIncursions', () => {
|
|
26
|
+
it('should return valid incursion data structure', async () => {
|
|
27
|
+
const mockResponse = [
|
|
28
|
+
{
|
|
29
|
+
constellation_id: 20000169,
|
|
30
|
+
faction_id: 500019,
|
|
31
|
+
has_boss: true,
|
|
32
|
+
infested_solar_systems: [30001161, 30001162],
|
|
33
|
+
influence: 0.9,
|
|
34
|
+
staging_solar_system_id: 30001161,
|
|
35
|
+
state: 'mobilizing',
|
|
36
|
+
type: 'Incursion'
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
constellation_id: 20000170,
|
|
40
|
+
faction_id: 500019,
|
|
41
|
+
has_boss: false,
|
|
42
|
+
infested_solar_systems: [30001163, 30001164, 30001165],
|
|
43
|
+
influence: 0.7,
|
|
44
|
+
staging_solar_system_id: 30001163,
|
|
45
|
+
state: 'established',
|
|
46
|
+
type: 'Incursion'
|
|
47
|
+
}
|
|
48
|
+
];
|
|
49
|
+
|
|
50
|
+
fetchMock.mockResponseOnce(JSON.stringify(mockResponse));
|
|
51
|
+
|
|
52
|
+
const result = await getBody(() => incursionsClient.getIncursions());
|
|
53
|
+
|
|
54
|
+
expect(Array.isArray(result)).toBe(true);
|
|
55
|
+
expect(result).toHaveLength(2);
|
|
56
|
+
|
|
57
|
+
// Validate first incursion structure
|
|
58
|
+
const firstIncursion = result[0];
|
|
59
|
+
expect(firstIncursion).toHaveProperty('constellation_id');
|
|
60
|
+
expect(typeof firstIncursion.constellation_id).toBe('number');
|
|
61
|
+
expect(firstIncursion.constellation_id).toBe(20000169);
|
|
62
|
+
|
|
63
|
+
expect(firstIncursion).toHaveProperty('faction_id');
|
|
64
|
+
expect(typeof firstIncursion.faction_id).toBe('number');
|
|
65
|
+
expect(firstIncursion.faction_id).toBe(500019);
|
|
66
|
+
|
|
67
|
+
expect(firstIncursion).toHaveProperty('has_boss');
|
|
68
|
+
expect(typeof firstIncursion.has_boss).toBe('boolean');
|
|
69
|
+
expect(firstIncursion.has_boss).toBe(true);
|
|
70
|
+
|
|
71
|
+
expect(firstIncursion).toHaveProperty('infested_solar_systems');
|
|
72
|
+
expect(Array.isArray(firstIncursion.infested_solar_systems)).toBe(true);
|
|
73
|
+
expect(firstIncursion.infested_solar_systems).toEqual([30001161, 30001162]);
|
|
74
|
+
|
|
75
|
+
expect(firstIncursion).toHaveProperty('influence');
|
|
76
|
+
expect(typeof firstIncursion.influence).toBe('number');
|
|
77
|
+
expect(firstIncursion.influence).toBe(0.9);
|
|
78
|
+
|
|
79
|
+
expect(firstIncursion).toHaveProperty('staging_solar_system_id');
|
|
80
|
+
expect(typeof firstIncursion.staging_solar_system_id).toBe('number');
|
|
81
|
+
expect(firstIncursion.staging_solar_system_id).toBe(30001161);
|
|
82
|
+
|
|
83
|
+
expect(firstIncursion).toHaveProperty('state');
|
|
84
|
+
expect(typeof firstIncursion.state).toBe('string');
|
|
85
|
+
expect(firstIncursion.state).toBe('mobilizing');
|
|
86
|
+
|
|
87
|
+
expect(firstIncursion).toHaveProperty('type');
|
|
88
|
+
expect(typeof firstIncursion.type).toBe('string');
|
|
89
|
+
expect(firstIncursion.type).toBe('Incursion');
|
|
90
|
+
|
|
91
|
+
// Validate all incursions have required properties
|
|
92
|
+
result.forEach((incursion: any) => {
|
|
93
|
+
expect(incursion).toHaveProperty('constellation_id');
|
|
94
|
+
expect(incursion).toHaveProperty('faction_id');
|
|
95
|
+
expect(incursion).toHaveProperty('has_boss');
|
|
96
|
+
expect(incursion).toHaveProperty('infested_solar_systems');
|
|
97
|
+
expect(incursion).toHaveProperty('influence');
|
|
98
|
+
expect(incursion).toHaveProperty('staging_solar_system_id');
|
|
99
|
+
expect(incursion).toHaveProperty('state');
|
|
100
|
+
expect(incursion).toHaveProperty('type');
|
|
101
|
+
|
|
102
|
+
// Type validations
|
|
103
|
+
expect(typeof incursion.constellation_id).toBe('number');
|
|
104
|
+
expect(typeof incursion.faction_id).toBe('number');
|
|
105
|
+
expect(typeof incursion.has_boss).toBe('boolean');
|
|
106
|
+
expect(Array.isArray(incursion.infested_solar_systems)).toBe(true);
|
|
107
|
+
expect(typeof incursion.influence).toBe('number');
|
|
108
|
+
expect(typeof incursion.staging_solar_system_id).toBe('number');
|
|
109
|
+
expect(typeof incursion.state).toBe('string');
|
|
110
|
+
expect(typeof incursion.type).toBe('string');
|
|
111
|
+
|
|
112
|
+
// Value validations
|
|
113
|
+
expect(incursion.constellation_id).toBeGreaterThan(0);
|
|
114
|
+
expect(incursion.faction_id).toBeGreaterThan(0);
|
|
115
|
+
expect(incursion.influence).toBeGreaterThanOrEqual(0);
|
|
116
|
+
expect(incursion.influence).toBeLessThanOrEqual(1);
|
|
117
|
+
expect(incursion.staging_solar_system_id).toBeGreaterThan(0);
|
|
118
|
+
expect(incursion.infested_solar_systems.length).toBeGreaterThan(0);
|
|
119
|
+
expect(['mobilizing', 'established', 'withdrawing'].includes(incursion.state)).toBe(true);
|
|
120
|
+
expect(incursion.type).toBe('Incursion');
|
|
121
|
+
});
|
|
122
|
+
});
|
|
123
|
+
|
|
124
|
+
it('should handle empty incursion list', async () => {
|
|
125
|
+
const mockResponse: any[] = [];
|
|
126
|
+
|
|
127
|
+
fetchMock.mockResponseOnce(JSON.stringify(mockResponse));
|
|
128
|
+
|
|
129
|
+
const result = await getBody(() => incursionsClient.getIncursions());
|
|
130
|
+
|
|
131
|
+
expect(Array.isArray(result)).toBe(true);
|
|
132
|
+
expect(result).toHaveLength(0);
|
|
133
|
+
});
|
|
134
|
+
|
|
135
|
+
it('should handle single incursion response', async () => {
|
|
136
|
+
const mockResponse = [
|
|
137
|
+
{
|
|
138
|
+
constellation_id: 20000169,
|
|
139
|
+
faction_id: 500019,
|
|
140
|
+
has_boss: false,
|
|
141
|
+
infested_solar_systems: [30001161],
|
|
142
|
+
influence: 0.5,
|
|
143
|
+
staging_solar_system_id: 30001161,
|
|
144
|
+
state: 'established',
|
|
145
|
+
type: 'Incursion'
|
|
146
|
+
}
|
|
147
|
+
];
|
|
148
|
+
|
|
149
|
+
fetchMock.mockResponseOnce(JSON.stringify(mockResponse));
|
|
150
|
+
|
|
151
|
+
const result = await getBody(() => incursionsClient.getIncursions());
|
|
152
|
+
|
|
153
|
+
expect(Array.isArray(result)).toBe(true);
|
|
154
|
+
expect(result).toHaveLength(1);
|
|
155
|
+
expect(result[0].constellation_id).toBe(20000169);
|
|
156
|
+
});
|
|
157
|
+
|
|
158
|
+
it('should handle API errors gracefully', async () => {
|
|
159
|
+
fetchMock.mockResponseOnce('Server Error', { status: 500 });
|
|
37
160
|
|
|
38
|
-
|
|
39
|
-
|
|
161
|
+
const result = await getBody(() => incursionsClient.getIncursions());
|
|
162
|
+
expect(result).toHaveProperty('error');
|
|
163
|
+
expect(result.error).toBe('internal server error');
|
|
164
|
+
});
|
|
40
165
|
});
|
|
41
166
|
});
|