From eeeb89f6985909c83175ac2c73772e55c959abd9 Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Sat, 10 May 2025 05:35:54 -0600 Subject: [PATCH 01/26] fix: format --- Package.swift | 19 +- .../APIv1/Account/AccountAPIv1.swift | 1 - .../GetAccountSettingsRequestV1.swift | 4 +- ...GetAccountVerifyCredentialsRequestV1.swift | 1 - ...tAccountRemoveProfileBannerRequestV1.swift | 1 - .../PostAccountSettingsRequestV1.swift | 1 - ...tAccountUpdateProfileBannerRequestV1.swift | 2 - ...stAccountUpdateProfileImageRequestV1.swift | 1 - .../PostAccountUpdateProfileRequestV1.swift | 1 - .../APIv1/Application/ApplicationAPIv1.swift | 1 - ...tApplicationRateLimitStatusRequestV1.swift | 1 - .../BlockAndMute/BlockAndMuteAPIv1.swift | 1 - .../Requests/GetBlocksIDsRequestV1.swift | 3 +- .../Requests/GetBlocksListRequestV1.swift | 1 - .../Requests/GetMutesUsersIDsRequestV1.swift | 2 +- .../Requests/GetMutesUsersListRequestV1.swift | 2 +- .../Requests/PostBlocksCreateRequestV1.swift | 2 +- .../Requests/PostBlocksDestroyRequestV1.swift | 2 +- .../PostMutesUsersCreateRequestV1.swift | 2 +- .../PostMutesUsersDestroyRequestV1.swift | 2 +- .../PostUsersReportSpamRequestV1.swift | 2 +- .../APIv1/Collection/CollectionAPIv1.swift | 1 - .../GetCollectionsEntriesRequestV1.swift | 1 - .../GetCollectionsListRequestV1.swift | 1 - .../GetCollectionsShowRequestV1.swift | 1 - .../PostCollectionsCreateRequestV1.swift | 1 + .../PostCollectionsDestroyRequestV1.swift | 1 - .../PostCollectionsEntriesAddRequestV1.swift | 1 - ...ostCollectionsEntriesCurateRequestV1.swift | 5 +- .../PostCollectionsEntriesMoveRequestV1.swift | 1 - ...ostCollectionsEntriesRemoveRequestV1.swift | 1 - .../PostCollectionsUpdateRequestV1.swift | 1 - .../DirectMessage/DirectMessageAPIv1.swift | 3 +- .../DeleteDirectMessageRequestV1.swift | 3 +- .../GetDirectMessageListRequestV1.swift | 1 - .../Requests/GetDirectMessageRequestV1.swift | 1 - .../Requests/PostDirectMessageRequestV1.swift | 23 +- ...irectMessagesIndicateTypingRequestV1.swift | 1 - .../PostDirectMessagesMarkReadRequestV1.swift | 1 - .../APIv1/Favorite/FavoriteAPIv1.swift | 1 - .../Requests/GetFavoritesRequestV1.swift | 1 - .../Requests/PostFavoriteRequestV1.swift | 2 - .../Requests/PostUnFavoriteRequestV1.swift | 1 - .../APIv1/Friendships/FriendshipsAPIv1.swift | 1 - .../Requests/GetFollowersIDsRequestV1.swift | 1 - .../Requests/GetFollowersListRequestV1.swift | 2 +- .../Requests/GetFriendsIDsRequestV1.swift | 1 - .../Requests/GetFriendsListRequestV1.swift | 1 - .../GetFriendshipsIncomingRequestV1.swift | 2 +- .../GetFriendshipsLookupRequestV1.swift | 1 - ...GetFriendshipsNoRetweetsIDsRequestV1.swift | 1 - .../GetFriendshipsOutgoingRequestV1.swift | 1 - .../GetFriendshipsShowRequestV1.swift | 1 - .../PostFriendshipsCreateRequestV1.swift | 1 - .../PostFriendshipsDestroyRequestV1.swift | 1 - .../PostFriendshipsUpdateRequestV1.swift | 1 - .../TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift | 1 - .../Geo/Requests/GetGeoPlaceIDRequestV1.swift | 1 - .../GetGeoReverseGeocodeRequestV1.swift | 1 - .../Geo/Requests/GetGeoSearchRequestV1.swift | 8 +- .../TwitterAPIKit/APIv1/Help/HelpAPIv1.swift | 1 - .../Requests/GetHelpLanguagesRequestV1.swift | 4 +- .../TwitterAPIKit/APIv1/List/ListAPIv1.swift | 1 - .../List/Requests/GetListsListRequestV1.swift | 1 - .../Requests/GetListsMembersRequestV1.swift | 1 - .../GetListsMembersShowRequestV1.swift | 1 - .../GetListsMembershipsRequestV1.swift | 1 - .../GetListsOwnershipsRequestV1.swift | 1 - .../List/Requests/GetListsShowRequestV1.swift | 1 - .../Requests/GetListsStatusesRequestV1.swift | 1 - .../GetListsSubscribersRequestV1.swift | 1 - .../GetListsSubscribersShowRequestV1.swift | 1 - .../GetListsSubscriptionsRequestV1.swift | 1 - .../Requests/PostListsCreateRequestV1.swift | 1 - .../Requests/PostListsDestroyRequestV1.swift | 1 - .../PostListsMembersCreateAllRequestV1.swift | 1 - .../PostListsMembersCreateRequestV1.swift | 2 +- .../PostListsMembersDestroyAllRequestV1.swift | 1 - .../PostListsMembersDestroyRequestV1.swift | 1 - .../PostListsSubscribersCreateRequestV1.swift | 1 - ...PostListsSubscribersDestroyRequestV1.swift | 1 - .../Requests/PostListsUpdateRequestV1.swift | 1 - .../APIv1/Media/MediaAPIv1.swift | 8 +- .../GetUploadMediaStatusRequestV1.swift | 1 - .../PostMediaMetadataCreateRequestV1.swift | 1 - .../PostMediaSubtitlesCreateRequestV1.swift | 6 +- .../PostMediaSubtitlesDeleteRequestV1.swift | 5 +- .../Requests/UploadMediaAppendRequestV1.swift | 5 +- .../UploadMediaFinalizeRequestV1.swift | 1 - .../Requests/UploadMediaInitRequestV1.swift | 1 - .../APIv1/Media/UploadMediaEntity.swift | 17 +- .../Requests/GetRetweetersRequestV1.swift | 3 - .../Requests/GetRetweetsOfMeRequestV1.swift | 2 - .../Requests/GetRetweetsRequestV1.swift | 1 - .../APIv1/Retweet/RetweetAPIv1.swift | 1 - .../GetSavedSearchesListRequestV1.swift | 2 - .../Requests/GetSearchTweetsRequestV1.swift | 1 - .../PostSavedSearchesCreateRequestV1.swift | 1 - .../PostSavedSearchesDestroyRequestV1.swift | 1 - .../APIv1/Search/SearchAPIv1.swift | 1 - .../GetStatusesHomeTimelineRequestV1.swift | 1 - ...GetStatusesMentionsTimelineRequestV1.swift | 1 - .../GetStatusesUserTimelineRequestV1.swift | 1 - .../APIv1/Timelines/TimelineAPIv1.swift | 1 - .../GetTrendsAvailableRequestV1.swift | 2 - .../Requests/GetTrendsClosestRequestV1.swift | 1 - .../Requests/GetTrendsPlaceRequestV1.swift | 1 - .../APIv1/Trend/TrendAPIv1.swift | 1 - .../Requests/GetStatusesLookupRequestV1.swift | 1 - .../Requests/GetStatusesShowRequestV1.swift | 2 - .../PostStatusesDestroyRequestV1.swift | 2 +- .../Requests/PostUpdateStatusRequestV1.swift | 2 - .../APIv1/Tweet/TweetAPIv1.swift | 1 - .../APIv1/TwitterListIdentifierV1.swift | 8 +- .../APIv1/TwitterLocations.swift | 4 +- .../APIv1/TwitterUserIdentifierV1.swift | 8 +- .../Requests/GetUsersLookupRequestV1.swift | 1 - .../GetUsersProfileBannerRequestV1.swift | 1 - .../Requests/GetUsersSearchRequestV1.swift | 1 - .../Requests/GetUsersShowRequestV1.swift | 1 - .../TwitterAPIKit/APIv1/Users/UserAPIv1.swift | 1 - .../BlockAndMute/BlockAndMuteAPIv2.swift | 1 - .../DeleteUsersBlockingRequestV2.swift | 1 - .../Requests/DeleteUsersMutingRequestV2.swift | 1 - .../Requests/GetUsersBlockingRequestV2.swift | 1 - .../Requests/GetUsersMutingRequestV2.swift | 1 - .../Requests/PostUsersBlockingRequestV2.swift | 1 - .../Requests/PostUsersMutingRequestV2.swift | 1 - .../APIv2/Bookmarks/BookmarksAPIv2.swift | 1 - .../DeleteUsersBookmarksRequestV2.swift | 1 - .../Requests/GetUsersBookmarksRequestV2.swift | 1 - .../PostUsersBookmarksRequestV2.swift | 1 - .../APIv2/Compliance/ComplianceAPIv2.swift | 1 - .../Requests/GetComplianceJobRequestV2.swift | 1 - .../Requests/GetComplianceJobsRequestV2.swift | 1 - .../PostComplianceJobsRequestV2.swift | 1 - ...etDmConversationsIdDmEventsRequestV2.swift | 1 - ...nsWithParticipantIdDmEventsRequestV2.swift | 1 - .../Requests/GetDmEventsRequestV2.swift | 1 - .../PostDmConversationByIdRequestV2.swift | 1 - .../PostDmConversationRequestV2.swift | 1 - .../PostDmConversationWithUserRequestV2.swift | 1 - .../TwitterAPIKit/APIv2/ExpansionsV2.swift | 16 +- Sources/TwitterAPIKit/APIv2/FieldsV2.swift | 28 +- .../DeleteUsersFollowingRequestV2.swift | 1 - .../Requests/GetUsersFollowersRequestV2.swift | 1 - .../Requests/GetUsersFollowingRequestV2.swift | 1 - .../PostUsersFollowingRequestV2.swift | 1 - .../TwitterAPIKit/APIv2/Like/LikeAPIv2.swift | 1 - .../Requests/DeleteUsersLikesRequestV2.swift | 1 - .../GetTweetsLikingUsersRequestV2.swift | 1 - .../GetUsersLikedTweetsRequestV2.swift | 1 - .../Requests/PostUsersLikesRequestV2.swift | 1 - .../TwitterAPIKit/APIv2/List/ListAPIv2.swift | 1 - .../List/Requests/DeleteListRequestV2.swift | 1 - .../DeleteListsMembersRequestV2.swift | 1 - .../DeleteUsersFollowedListsRequestV2.swift | 1 - .../DeleteUsersPinnedListsRequestV2.swift | 1 - .../List/Requests/GetListRequestV2.swift | 1 - .../Requests/GetListsFollowersRequestV2.swift | 1 - .../Requests/GetListsMembersRequestV2.swift | 1 - .../Requests/GetListsTweetsRequestV2.swift | 1 - .../GetUsersFollowedListsRequestV2.swift | 1 - .../GetUsersListMembershipsRequestV2.swift | 1 - .../GetUsersOwnedListsRequestV2.swift | 1 - .../GetUsersPinnedListsRequestV2.swift | 1 - .../Requests/PostListsMembersRequestV2.swift | 1 - .../List/Requests/PostListsRequestV2.swift | 1 - .../PostUsersFollowedListsRequestV2.swift | 1 - .../PostUsersPinnedListsRequestV2.swift | 1 - .../List/Requests/PutListRequestV2.swift | 1 - .../DeleteUsersRetweetsRequestV2.swift | 1 - .../GetTweetsRetweetedByRequestV2.swift | 1 - .../Requests/PostUsersRetweetsRequestV2.swift | 1 - .../APIv2/Retweet/RetweetAPIv2.swift | 1 - .../GetTweetsSearchAllRequestV2.swift | 1 - .../GetTweetsSearchRecentRequestV2.swift | 1 - .../APIv2/Search/SearchAPIv2.swift | 1 - .../TwitterSearchTweetsSortOrderV2.swift | 1 - .../Spaces/Requests/GetSpaceRequestV2.swift | 1 - .../Requests/GetSpacesBuyersRequestV2.swift | 1 - .../GetSpacesByCreatorIDsRequestV2.swift | 1 - .../Spaces/Requests/GetSpacesRequestV2.swift | 1 - .../Requests/GetSpacesSearchRequestV2.swift | 1 - .../Requests/GetSpacesTweetsRequestV2.swift | 1 - .../APIv2/Spaces/SpacesAPIv2.swift | 1 - .../GetTweetsSampleStreamRequestV2.swift | 1 - .../GetTweetsSearchStreamRequestV2.swift | 1 - .../GetTweetsSearchStreamRulesRequestV2.swift | 1 - ...PostTweetsSearchStreamRulesRequestV2.swift | 9 +- .../APIv2/Stream/StreamAPIv2.swift | 1 - .../Requests/GetUsersMentionsRequestV2.swift | 1 - ...melinesReverseChronologicalRequestV2.swift | 1 - .../Requests/GetUsersTweetsRequestV2.swift | 1 - .../APIv2/Timeline/TimelineAPIv2.swift | 1 - .../Tweet/Requests/DeleteTweetRequestV2.swift | 1 - .../Tweet/Requests/GetTweetRequestV2.swift | 1 - .../GetTweetsQuoteTweetsRequestV2.swift | 1 - .../Tweet/Requests/GetTweetsRequestV2.swift | 1 - .../Tweet/Requests/PostTweetsRequestV2.swift | 1 - .../Requests/PutTweetsHiddenRequestV2.swift | 1 - .../GetTweetsCountsAllRequestV2.swift | 1 - .../GetTweetsCountsRecentRequestV2.swift | 1 - .../Requests/TweetCountGranularity.swift | 1 - .../Users/Requests/GetUserRequestV2.swift | 1 - .../Users/Requests/GetUsersByRequestV2.swift | 1 - .../GetUsersByUsernameRequestV2.swift | 1 - .../Users/Requests/GetUsersMeRequestV2.swift | 1 - .../Users/Requests/GetUsersRequestV2.swift | 1 - Sources/TwitterAPIKit/AuthAPI/AuthAPI.swift | 1 - .../TwitterAPIKit/AuthAPI/OAuth10aAPI.swift | 1 - .../TwitterAPIKit/AuthAPI/OAuth20API.swift | 6 +- .../GetOAuthAuthenticateRequestV1.swift | 1 - .../Requests/GetOAuthAuthorizeRequestV1.swift | 1 - .../PostOAuth2AccessTokenRequestV2.swift | 1 - .../PostOAuth2InvalidateTokenRequestV1.swift | 1 - .../PostOAuth2RefreshTokenRequestV2.swift | 1 - .../PostOAuth2RevokeTokenRequestV2.swift | 1 - .../Requests/PostOAuth2TokenRequestV1.swift | 2 +- .../PostOAuthAccessTokenRequestV1.swift | 1 - .../PostOAuthInvalidateTokenRequestV1.swift | 1 - .../PostOAuthRequestTokenRequestV1.swift | 1 - .../AuthAPI/TwitterOAuth2AccessToken.swift | 13 +- .../AuthAPI/TwitterOAuth2BearerToken.swift | 4 +- .../AuthAPI/TwitterOAuthAccessTokenV1.swift | 8 +- .../AuthAPI/TwitterOAuthTokenV1.swift | 3 +- .../Extensions/Concurrency.swift | 145 +++-- Sources/TwitterAPIKit/Extensions/Data.swift | 14 +- .../TwitterAPIKit/Extensions/Dictionary.swift | 3 +- Sources/TwitterAPIKit/Extensions/HMAC.swift | 8 +- Sources/TwitterAPIKit/Extensions/Result.swift | 5 +- .../SessionTask/TwitterAPIFailedTask.swift | 20 +- .../TwitterAPISessionDataTask.swift | 1 - .../TwitterAPISessionDelegatedJSONTask.swift | 16 +- ...TwitterAPISessionDelegatedStreamTask.swift | 8 +- .../TwitterAPISessionJSONTask.swift | 1 - .../TwitterAPISessionSpecializedTask.swift | 9 +- .../TwitterAPISessionStreamTask.swift | 1 - .../TwitterAPI+Flat.generated.swift | 560 +++++++++++------- Sources/TwitterAPIKit/TwitterAPIClient.swift | 21 +- .../TwitterAPIErrorResponse.swift | 40 +- .../TwitterAPIKit/TwitterAPIKitError.swift | 126 ++-- Sources/TwitterAPIKit/TwitterAPIRequest.swift | 41 +- .../TwitterAPIKit/TwitterAPIResponse.swift | 33 +- Sources/TwitterAPIKit/TwitterAPISession.swift | 11 +- .../TwitterAPISessionDelegate.swift | 9 +- .../TwitterAuthenticationMethod.swift | 22 +- Sources/TwitterAPIKit/TwitterRateLimit.swift | 9 +- .../GetAccountSettingsRequestV1Tests.swift | 6 +- ...countVerifyCredentialsRequestV1Tests.swift | 6 +- ...untRemoveProfileBannerRequestV1Tests.swift | 6 +- .../PostAccountSettingsRequestV1Tests.swift | 6 +- ...untUpdateProfileBannerRequestV1Tests.swift | 8 +- ...ountUpdateProfileImageRequestV1Tests.swift | 8 +- ...stAccountUpdateProfileRequestV1Tests.swift | 6 +- ...icationRateLimitStatusRequestV1Tests.swift | 8 +- .../GetBlocksIDsRequestV1Tests.swift | 6 +- .../GetBlocksListRequestV1Tests.swift | 6 +- .../GetMutesUsersIDsRequestV1Tests.swift | 6 +- .../GetMutesUsersListRequestV1Tests.swift | 6 +- .../PostBlocksCreateRequestV1Tests.swift | 8 +- .../PostBlocksDestroyRequestV1Tests.swift | 8 +- .../PostMutesUsersCreateRequestV1Tests.swift | 10 +- .../PostMutesUsersDestroyRequestV1Tests.swift | 10 +- .../PostUsersReportSpamRequestV1Tests.swift | 8 +- .../GetCollectionsEntriesRequestV1Tests.swift | 8 +- .../GetCollectionsListRequestV1Tests.swift | 8 +- .../GetCollectionsShowRequestV1Tests.swift | 8 +- .../PostCollectionsCreateRequestV1Tests.swift | 8 +- ...PostCollectionsDestroyRequestV1Tests.swift | 8 +- ...tCollectionsEntriesAddRequestV1Tests.swift | 6 +- ...llectionsEntriesCurateRequestV1Tests.swift | 6 +- ...CollectionsEntriesMoveRequestV1Tests.swift | 6 +- ...llectionsEntriesRemoveRequestV1Tests.swift | 6 +- .../PostCollectionsUpdateRequestV1Tests.swift | 8 +- .../DeleteDirectMessageRequestV1Tests.swift | 7 +- .../GetDirectMessageListRequestV1Tests.swift | 11 +- .../GetDirectMessageRequestV1Tests.swift | 7 +- .../PostDirectMessageRequestV1Tests.swift | 40 +- ...MessagesIndicateTypingRequestV1Tests.swift | 7 +- ...DirectMessagesMarkReadRequestV1Tests.swift | 10 +- .../Favorite/GetFavoritesRequestV1Tests.swift | 8 +- .../Favorite/PostFavoriteRequestV1Tests.swift | 8 +- .../PostUnFavoriteRequestV1Tests.swift | 8 +- .../GetFollowersIDsRequestV1Tests.swift | 8 +- .../GetFollowersListRequestV1Tests.swift | 8 +- .../GetFriendsIDsRequestV1Tests.swift | 8 +- .../GetFriendsListRequestV1Tests.swift | 8 +- ...GetFriendshipsIncomingRequestV1Tests.swift | 6 +- .../GetFriendshipsLookupRequestV1Tests.swift | 10 +- ...iendshipsNoRetweetsIDsRequestV1Tests.swift | 8 +- ...GetFriendshipsOutgoingRequestV1Tests.swift | 6 +- .../GetFriendshipsShowRequestV1Tests.swift | 6 +- .../PostFriendshipsCreateRequestV1Tests.swift | 8 +- ...PostFriendshipsDestroyRequestV1Tests.swift | 10 +- .../PostFriendshipsUpdateRequestV1Tests.swift | 8 +- .../Geo/GetGeoPlaceIDRequestV1Tests.swift | 6 +- .../GetGeoReverseGeocodeRequestV1Tests.swift | 6 +- .../Geo/GetGeoSearchRequestV1Tests.swift | 7 +- .../Help/GetHelpLanguagesRequestV1Tests.swift | 6 +- .../List/GetListsListRequestV1Tests.swift | 8 +- .../List/GetListsMembersRequestV1Tests.swift | 6 +- .../GetListsMembersShowRequestV1Tests.swift | 6 +- .../GetListsMembershipsRequestV1Tests.swift | 8 +- .../GetListsOwnershipsRequestV1Tests.swift | 8 +- .../List/GetListsShowRequestV1Tests.swift | 8 +- .../List/GetListsStatusesRequestV1Tests.swift | 8 +- .../GetListsSubscribersRequestV1Tests.swift | 6 +- ...etListsSubscribersShowRequestV1Tests.swift | 6 +- .../GetListsSubscriptionsRequestV1Tests.swift | 8 +- .../APIv1/List/ListRequestV1Tests.swift | 9 +- .../List/PostListsCreateRequestV1Tests.swift | 8 +- .../List/PostListsDestroyRequestV1Tests.swift | 8 +- ...tListsMembersCreateAllRequestV1Tests.swift | 6 +- ...PostListsMembersCreateRequestV1Tests.swift | 6 +- ...ListsMembersDestroyAllRequestV1Tests.swift | 6 +- ...ostListsMembersDestroyRequestV1Tests.swift | 6 +- ...ListsSubscribersCreateRequestV1Tests.swift | 8 +- ...istsSubscribersDestroyRequestV1Tests.swift | 8 +- .../List/PostListsUpdateRequestV1Tests.swift | 6 +- .../GetUploadMediaStatusRequestV1Tests.swift | 11 +- ...ostMediaMetadataCreateRequestV1Tests.swift | 7 +- ...stMediaSubtitlesCreateRequestV1Tests.swift | 16 +- ...stMediaSubtitlesDeleteRequestV1Tests.swift | 9 +- .../UploadMediaAppendRequestV1Tests.swift | 11 +- .../UploadMediaFinalizeRequestV1Tests.swift | 11 +- .../Media/UploadMediaInitRequestV1Tests.swift | 10 +- .../APIv1/Media/UploadMediaUtilTests.swift | 82 ++- .../Retweet/GetRetweetersRequestV1Tests.swift | 8 +- .../GetRetweetsOfMeRequestV1Tests.swift | 6 +- .../Retweet/GetRetweetsRequestV1Tests.swift | 6 +- .../Retweet/PostRetweetRequestV1Tests.swift | 8 +- .../Retweet/PostUnRetweetRequestV1Tests.swift | 8 +- .../GetSavedSearchesListRequestV1Tests.swift | 6 +- .../GetSearchTweetsRequestV1Tests.swift | 13 +- ...ostSavedSearchesCreateRequestV1Tests.swift | 8 +- ...stSavedSearchesDestroyRequestV1Tests.swift | 6 +- ...etStatusesHomeTimelineRequestV1Tests.swift | 6 +- ...atusesMentionsTimelineRequestV1Tests.swift | 6 +- ...etStatusesUserTimelineRequestV1Tests.swift | 8 +- .../GetTrendsAvailableRequestV1Tests.swift | 6 +- .../GetTrendsClosestRequestV1Tests.swift | 6 +- .../Trend/GetTrendsPlaceRequestV1Tests.swift | 8 +- .../GetStatusesLookupRequestV1Tests.swift | 8 +- .../Tweet/GetStatusesShowRequestV1Tests.swift | 8 +- .../PostStatusesDestroyRequestV1Tests.swift | 8 +- .../PostStatusesUpdateRequestV1Tests.swift | 8 +- .../Users/GetUsersLookupRequestV1Tests.swift | 8 +- .../GetUsersProfileBannerRequestV1Tests.swift | 10 +- .../Users/GetUsersSearchRequestV1Tests.swift | 8 +- .../Users/GetUsersShowRequestV1Tests.swift | 8 +- .../DeleteUsersBlockingRequestV2Tests.swift | 6 +- .../DeleteUsersMutingRequestV2Tests.swift | 6 +- .../GetUsersBlockingRequestV2Tests.swift | 9 +- .../GetUsersMutingRequestV2Tests.swift | 9 +- .../PostUsersBlockingRequestV2Tests.swift | 11 +- .../PostUsersMutingRequestV2Tests.swift | 8 +- .../DeleteUsersBookmarksRequestV2Tests.swift | 6 +- .../GetUsersBookmarksRequestV2Tests.swift | 6 +- .../PostUsersBookmarksRequestV2Tests.swift | 8 +- .../GetComplianceJobRequestV2Tests.swift | 6 +- .../GetComplianceJobsRequestV2Tests.swift | 14 +- .../PostComplianceJobsRequestV2Tests.swift | 14 +- ...onversationsIdDmEventsRequestV2Tests.swift | 6 +- ...hParticipantIdDmEventsRequestV2Tests.swift | 6 +- .../GetDmEventsRequestV2Tests.swift | 6 +- ...PostDmConversationByIdRequestV2Tests.swift | 6 +- .../PostDmConversationRequestV2Tests.swift | 6 +- ...DmConversationWithUserRequestV2Tests.swift | 6 +- .../APIv2/ExpansionsV2Tests.swift | 8 +- .../APIv2/FieldsV2Tests.swift | 11 +- .../DeleteUsersFollowingRequestV2Tests.swift | 6 +- .../GetUsersFollowersRequestV2Tests.swift | 9 +- .../GetUsersFollowingRequestV2Tests.swift | 9 +- .../PostUsersFollowingRequestV2Tests.swift | 6 +- .../Like/DeleteUsersLikesRequestV2Tests.swift | 6 +- .../GetTweetsLikingUsersRequestV2Tests.swift | 6 +- .../GetUsersLikedTweetsRequestV2Tests.swift | 6 +- .../Like/PostUsersLikesRequestV2Tests.swift | 8 +- .../APIv2/List/DeleteListRequestV2Tests.swift | 6 +- .../DeleteListsMembersRequestV2Tests.swift | 6 +- ...leteUsersFollowedListsRequestV2Tests.swift | 6 +- ...DeleteUsersPinnedListsRequestV2Tests.swift | 6 +- .../APIv2/List/GetListRequestV2Tests.swift | 9 +- .../GetListsFollowersRequestV2Tests.swift | 9 +- .../List/GetListsMembersRequestV2Tests.swift | 9 +- .../List/GetListsTweetsRequestV2Tests.swift | 10 +- .../GetUsersFollowedListsRequestV2Tests.swift | 9 +- ...etUsersListMembershipsRequestV2Tests.swift | 9 +- .../GetUsersOwnedListsRequestV2Tests.swift | 10 +- .../GetUsersPinnedListsRequestV2Tests.swift | 9 +- .../List/PostListsMembersRequestV2Tests.swift | 11 +- .../APIv2/List/PostListsRequestV2Tests.swift | 8 +- ...PostUsersFollowedListsRequestV2Tests.swift | 8 +- .../PostUsersPinnedListsRequestV2Tests.swift | 8 +- .../APIv2/List/PutListRequestV2Tests.swift | 6 +- .../DeleteUsersRetweetsRequestV2Tests.swift | 6 +- .../GetTweetsRetweetedByRequestV2Tests.swift | 9 +- .../PostUsersRetweetsRequestV2Tests.swift | 11 +- .../GetTweetsSearchAllRequestV2Tests.swift | 8 +- .../GetTweetsSearchRecentRequestV2Tests.swift | 9 +- .../APIv2/Spaces/GetSpaceRequestV2Tests.swift | 6 +- .../GetSpacesBuyersRequestV2Tests.swift | 6 +- .../GetSpacesByCreatorIDsRequestV2Tests.swift | 8 +- .../Spaces/GetSpacesRequestV2Tests.swift | 8 +- .../GetSpacesSearchRequestV2Tests.swift | 8 +- .../GetSpacesTweetsRequestV2Tests.swift | 6 +- .../GetTweetsSampleStreamRequestV2Tests.swift | 6 +- .../GetTweetsSearchStreamRequestV2Tests.swift | 6 +- ...weetsSearchStreamRulesRequestV2Tests.swift | 8 +- ...weetsSearchStreamRulesRequestV2Tests.swift | 30 +- .../GetUsersMentionsRequestV2Tests.swift | 6 +- ...esReverseChronologicalRequestV2Tests.swift | 6 +- .../GetUsersTweetsRequestV2Tests.swift | 6 +- .../Tweet/DeleteTweetRequestV2Tests.swift | 7 +- .../APIv2/Tweet/GetTweetRequestV2Tests.swift | 12 +- .../GetTweetsQuoteTweetsRequestV2Tests.swift | 6 +- .../APIv2/Tweet/GetTweetsRequestV2Tests.swift | 12 +- .../Tweet/PostTweetsRequestV2Tests.swift | 14 +- .../Tweet/PutTweetsHiddenRequestV2Tests.swift | 8 +- .../GetTweetsCountsAllRequestV2Tests.swift | 10 +- .../GetTweetsCountsRecentRequestV2Tests.swift | 10 +- .../APIv2/Users/GetUserRequestV2Tests.swift | 6 +- .../Users/GetUsersByRequestV2Tests.swift | 8 +- .../GetUsersByUsernameRequestV2Tests.swift | 6 +- .../Users/GetUsersMeRequestV2Tests.swift | 6 +- .../APIv2/Users/GetUsersRequestV2Tests.swift | 8 +- .../GetOAuth2AuthorizeRequestV1Tests.swift | 6 +- .../GetOAuthAuthenticateRequestV1Tests.swift | 9 +- .../GetOAuthAuthorizeRequestV1Tests.swift | 8 +- .../PostOAuth2AccessTokenRequestV2Tests.swift | 6 +- ...tOAuth2InvalidateTokenRequestV1Tests.swift | 8 +- ...PostOAuth2RefreshTokenRequestV2Tests.swift | 6 +- .../PostOAuth2RevokeTokenRequestV2Tests.swift | 8 +- .../PostOAuth2TokenRequestV1Tests.swift | 10 +- .../PostOAuthAccessTokenRequestV1Tests.swift | 6 +- ...stOAuthInvalidateTokenRequestV1Tests.swift | 6 +- .../PostOAuthRequestTokenRequestV1Tests.swift | 8 +- .../AuthAPI/TwitterAuthAPITests.swift | 11 +- .../TwitterOAuth2AccessTokenTests.swift | 2 - .../TwitterOAuth2BearerTokenTests.swift | 8 +- .../TwitterOAuthAccessTokenV1Tests.swift | 11 +- .../AuthAPI/TwitterOAuthTokenV1Tests.swift | 9 +- .../Extensions/ConcurrencyTests.swift | 19 +- .../Extensions/DataTests.swift | 7 +- .../Extensions/StringTests.swift | 9 +- .../Helper/CombinationsSequence.swift | 48 +- .../Mock/MockURLProtocol.swift | 13 +- .../MultipartFormDataPartTests.swift | 12 +- .../TwitterAPIKitTests/OAuthHelperTests.swift | 3 - .../MockTwitterAPISessionTask.swift | 6 +- .../TwitterAPIFailedTaskTests.swift | 8 +- ...tterAPISessionDelegatedJSONTaskTests.swift | 19 +- ...erAPISessionDelegatedStreamTaskTests.swift | 14 +- ...witterAPISessionSpecializedTaskTests.swift | 15 +- .../TwitterAPIClientTests.swift | 8 +- .../TwitterAPIErrorResponseTests.swift | 92 ++- .../TwitterAPIKitErrorTests.swift | 10 +- .../TwitterAPIKitTests.swift | 3 +- .../TwitterAPIRequestTests.swift | 17 +- .../TwitterAPIResponseTests.swift | 16 +- .../TwitterAPISessionTests.swift | 40 +- .../TwitterAuthenticationMethodTests.swift | 10 +- .../TwitterRateLimitTests.swift | 11 +- scripts/gen_init_params.swift | 50 +- 465 files changed, 1507 insertions(+), 2103 deletions(-) diff --git a/Package.swift b/Package.swift index 6d05a000..24bc1e44 100644 --- a/Package.swift +++ b/Package.swift @@ -7,11 +7,11 @@ import PackageDescription // If CommonCrypto is not available, swift-crypto should be used. #if canImport(CommonCrypto) -let dependencies: [Package.Dependency] = [] -let tDependencies: [Target.Dependency] = [] + let dependencies: [Package.Dependency] = [] + let tDependencies: [Target.Dependency] = [] #else // for Linux -let dependencies: [Package.Dependency] = [.package(url: "https://github.com/apple/swift-crypto.git", from: "3.8.0")] -let tDependencies: [Target.Dependency] = [.product(name: "Crypto", package: "swift-crypto")] + let dependencies: [Package.Dependency] = [.package(url: "https://github.com/apple/swift-crypto.git", from: "3.8.0")] + let tDependencies: [Target.Dependency] = [.product(name: "Crypto", package: "swift-crypto")] #endif let package = Package( @@ -20,13 +20,14 @@ let package = Package( .macOS(.v10_14), .iOS(.v12), .tvOS(.v12), - .watchOS(.v6) + .watchOS(.v6), ], products: [ // Products define the executables and libraries a package produces, and make them visible to other packages. .library( name: "TwitterAPIKit", - targets: ["TwitterAPIKit"]), + targets: ["TwitterAPIKit"] + ), ], dependencies: dependencies, targets: [ @@ -34,9 +35,11 @@ let package = Package( // Targets can depend on other targets in this package, and on products in packages this package depends on. .target( name: "TwitterAPIKit", - dependencies: tDependencies), + dependencies: tDependencies + ), .testTarget( name: "TwitterAPIKitTests", - dependencies: ["TwitterAPIKit"]), + dependencies: ["TwitterAPIKit"] + ), ] ) diff --git a/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift index 71f057a9..05d31375 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift @@ -1,7 +1,6 @@ import Foundation open class AccountAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/get-account-settings public func getAccountSetting( _ request: GetAccountSettingsRequestV1 diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountSettingsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountSettingsRequestV1.swift index ee05a441..65764226 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountSettingsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountSettingsRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/get-account-settings open class GetAccountSettingsRequestV1: TwitterAPIRequest { - public var method: HTTPMethod { return .get } @@ -15,6 +14,5 @@ open class GetAccountSettingsRequestV1: TwitterAPIRequest { return [:] } - public init() { - } + public init() {} } diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountVerifyCredentialsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountVerifyCredentialsRequestV1.swift index c6dc146f..bf516eac 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountVerifyCredentialsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountVerifyCredentialsRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/get-account-verify_credentials open class GetAccountVerifyCredentialsRequestV1: TwitterAPIRequest { - public let skipStatus: Bool? public let includeEmail: Bool? public let includeEntities: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountRemoveProfileBannerRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountRemoveProfileBannerRequestV1.swift index 887caffa..558dec89 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountRemoveProfileBannerRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountRemoveProfileBannerRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-account-remove_profile_banner open class PostAccountRemoveProfileBannerRequestV1: TwitterAPIRequest { - public var method: HTTPMethod { return .post } diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift index 801e0bae..0c1ef111 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-account-settings open class PostAccountSettingsRequestV1: TwitterAPIRequest { - /// two letter ISO 639-1 public let lang: String? /// RailsTimeZone diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileBannerRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileBannerRequestV1.swift index 63fdf5c8..e732246b 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileBannerRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileBannerRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-account-update_profile_banner open class PostAccountUpdateProfileBannerRequestV1: TwitterAPIRequest { - public let banner: Data public let width: Int? public let height: Int? @@ -40,5 +39,4 @@ open class PostAccountUpdateProfileBannerRequestV1: TwitterAPIRequest { self.offsetTop = offsetTop self.offsetLeft = offsetLeft } - } diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileImageRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileImageRequestV1.swift index c8adfb7d..2b77285e 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileImageRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileImageRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-account-update_profile_image open class PostAccountUpdateProfileImageRequestV1: TwitterAPIRequest { - public let image: Data public let skipStatus: Bool? public let includeEntities: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileRequestV1.swift index 35be905c..a04af31c 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-account-update_profile open class PostAccountUpdateProfileRequestV1: TwitterAPIRequest { - public let url: String? public let name: String? public let location: String? diff --git a/Sources/TwitterAPIKit/APIv1/Application/ApplicationAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Application/ApplicationAPIv1.swift index 9294a7fd..92e1826e 100644 --- a/Sources/TwitterAPIKit/APIv1/Application/ApplicationAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Application/ApplicationAPIv1.swift @@ -1,7 +1,6 @@ import Foundation open class ApplicationAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/developer-utilities/rate-limit-status/api-reference/get-application-rate_limit_status public func getRateLimit( _ request: GetApplicationRateLimitStatusRequestV1 diff --git a/Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift index 19ecdd40..f556e77e 100644 --- a/Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/developer-utilities/rate-limit-status/api-reference/get-application-rate_limit_status open class GetApplicationRateLimitStatusRequestV1: TwitterAPIRequest { - public let resources: [String]? public var method: HTTPMethod { diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift index 8fdc8df0..9cf1d7e7 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift @@ -1,7 +1,6 @@ import Foundation open class BlockAndMuteAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/get-blocks-ids public func getBlockIDs( _ request: GetBlocksIDsRequestV1 diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift index 83b4bf19..f2cf81a7 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift @@ -2,13 +2,13 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/get-blocks-ids open class GetBlocksIDsRequestV1: TwitterAPIRequest { - public let stringifyIDs: Bool? public let cursor: String? public var method: HTTPMethod { return .get } + public var path: String { return "/1.1/blocks/ids.json" } @@ -19,6 +19,7 @@ open class GetBlocksIDsRequestV1: TwitterAPIRequest { cursor.map { p["cursor"] = $0 } return p } + public init( stringifyIDs: Bool? = .none, cursor: String? = .none diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift index 3cf13afe..055491a7 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/get-blocks-list open class GetBlocksListRequestV1: TwitterAPIRequest { - public let includeEntities: Bool? public let skipStatus: Bool? public let cursor: String? diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift index e490cc6a..ced7cab0 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift @@ -2,13 +2,13 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/get-mutes-users-ids open class GetMutesUsersIDsRequestV1: TwitterAPIRequest { - public let stringifyIDs: Bool? public let cursor: String? public var method: HTTPMethod { return .get } + public var path: String { return "/1.1/mutes/users/ids.json" } diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift index b42a8c6a..685f0e21 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/get-mutes-users-list open class GetMutesUsersListRequestV1: TwitterAPIRequest { - public let cursor: String? public let includeEntities: Bool? public let skipStatus: Bool? @@ -10,6 +9,7 @@ open class GetMutesUsersListRequestV1: TwitterAPIRequest { public var method: HTTPMethod { return .get } + public var path: String { return "/1.1/mutes/users/list.json" } diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift index f06c2986..506ce264 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/post-blocks-create open class PostBlocksCreateRequestV1: TwitterAPIRequest { - public let user: TwitterUserIdentifierV1 public let includeEntities: Bool? public let skipStatus: Bool? @@ -10,6 +9,7 @@ open class PostBlocksCreateRequestV1: TwitterAPIRequest { public var method: HTTPMethod { return .post } + public var path: String { return "/1.1/blocks/create.json" } diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift index 936c1a64..42d4a588 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/post-blocks-destroy open class PostBlocksDestroyRequestV1: TwitterAPIRequest { - public let user: TwitterUserIdentifierV1 public let includeEntities: Bool? public let skipStatus: Bool? @@ -10,6 +9,7 @@ open class PostBlocksDestroyRequestV1: TwitterAPIRequest { public var method: HTTPMethod { return .post } + public var path: String { return "/1.1/blocks/destroy.json" } diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift index e3e90448..43005852 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift @@ -2,12 +2,12 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/post-mutes-users-create open class PostMutesUsersCreateRequestV1: TwitterAPIRequest { - public let user: TwitterUserIdentifierV1 public var method: HTTPMethod { return .post } + public var path: String { return "/1.1/mutes/users/create.json" } diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift index 708eb657..4f40d670 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift @@ -2,12 +2,12 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/post-mutes-users-destroy open class PostMutesUsersDestroyRequestV1: TwitterAPIRequest { - public let user: TwitterUserIdentifierV1 public var method: HTTPMethod { return .post } + public var path: String { return "/1.1/mutes/users/destroy.json" } diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift index 25587a77..dd81c61d 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift @@ -1,12 +1,12 @@ /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/post-users-report_spam open class PostUsersReportSpamRequestV1: TwitterAPIRequest { - public let user: TwitterUserIdentifierV1 public let performBlock: Bool? public var method: HTTPMethod { return .post } + public var path: String { return "/1.1/users/report_spam.json" } diff --git a/Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift index 424b17e4..aa7c9aab 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift @@ -1,7 +1,6 @@ import Foundation open class CollectionAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/get-collections-entries public func getCollectionEntries( _ request: GetCollectionsEntriesRequestV1 diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift index e5e26bd0..4a2aa811 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/get-collections-entries open class GetCollectionsEntriesRequestV1: TwitterAPIRequest { - public let id: String public let count: Int? public let maxPosition: String? diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsListRequestV1.swift index c9f347bc..d50a877e 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsListRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/get-collections-list open class GetCollectionsListRequestV1: TwitterAPIRequest { - public let user: TwitterUserIdentifierV1 public let count: Int? public let cursor: String? diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsShowRequestV1.swift index 976aef15..e71e4ff4 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsShowRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/get-collections-show open class GetCollectionsShowRequestV1: TwitterAPIRequest { - public let id: String public var method: HTTPMethod { diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift index 08e007e6..7ab7f540 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift @@ -11,6 +11,7 @@ open class PostCollectionsCreateRequestV1: TwitterAPIRequest { param["timeline_order"] = rawValue } } + public let name: String public let url: String? public let description: String? diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift index e8deffb4..7e5153e4 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-destroy open class PostCollectionsDestroyRequestV1: TwitterAPIRequest { - public let id: String public var method: HTTPMethod { diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift index 564f9df4..3aac72a9 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-entries-add open class PostCollectionsEntriesAddRequestV1: TwitterAPIRequest { - public let id: String public let tweetID: String public let above: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift index c0819cec..faafa598 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift @@ -2,16 +2,15 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-entries-curate open class PostCollectionsEntriesCurateRequestV1: TwitterAPIRequest { - public enum Operation { case add(tweetID: String) case remove(tweetID: String) var keyValue: [String: String] { switch self { - case .add(let tweetID): + case let .add(tweetID): return ["op": "add", "tweet_id": tweetID] - case .remove(let tweetID): + case let .remove(tweetID): return ["op": "remove", "tweet_id": tweetID] } } diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift index f1892067..8148d044 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-entries-move open class PostCollectionsEntriesMoveRequestV1: TwitterAPIRequest { - public let id: String public let tweetID: String public let above: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift index 2c0e8d50..f09b33c5 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-entries-remove open class PostCollectionsEntriesRemoveRequestV1: TwitterAPIRequest { - public let id: String public let tweetID: String diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift index d5e5f50c..15463bf7 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-update open class PostCollectionsUpdateRequestV1: TwitterAPIRequest { - public let id: String public let url: String? public let name: String? diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift index 5d584fcd..27d9ec00 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift @@ -1,7 +1,6 @@ import Foundation open class DirectMessageAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/sending-and-receiving/api-reference/new-event public func postDirectMessage( _ request: PostDirectMessageRequestV1 @@ -12,7 +11,7 @@ open class DirectMessageAPIv1: TwitterAPIBase { /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/sending-and-receiving/api-reference/delete-message-event public func deleteDirectMessage( _ request: DeleteDirectMessageRequestV1 - ) -> TwitterAPISessionDataTask { // 204 - No Content + ) -> TwitterAPISessionDataTask { // 204 - No Content return session.send(request) } diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift index 66f9a83e..e3174372 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/sending-and-receiving/api-reference/delete-message-event open class DeleteDirectMessageRequestV1: TwitterAPIRequest { - public let id: String public var method: HTTPMethod { @@ -15,7 +14,7 @@ open class DeleteDirectMessageRequestV1: TwitterAPIRequest { open var parameters: [String: Any] { return [ - "id": id + "id": id, ] } diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageListRequestV1.swift index 42815538..98f3180d 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageListRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/sending-and-receiving/api-reference/list-events open class GetDirectMessageListRequestV1: TwitterAPIRequest { - /// Max: 50 public let count: Int? public let cursor: String? diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageRequestV1.swift index f751572e..f9b1d99b 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageRequestV1.swift @@ -3,7 +3,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/sending-and-receiving/api-reference/get-event open class GetDirectMessageRequestV1: TwitterAPIRequest { - public let id: String public var method: HTTPMethod { diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift index d56d846f..a1f3ea6c 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift @@ -2,14 +2,13 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/sending-and-receiving/api-reference/new-event open class PostDirectMessageRequestV1: TwitterAPIRequest { - public enum Attachment { public enum Location { case coordinate(TwitterCoordinateV1) - case place(String /* Place ID */) + case place(String /* Place ID */ ) } - case media(String /* Media ID */) + case media(String /* Media ID */ ) /** If you attach a Location, it will probably return the following error for unknown reasons. @@ -28,12 +27,12 @@ open class PostDirectMessageRequestV1: TwitterAPIRequest { var parameter: [String: Any] { switch self { - case .media(let mediaID): + case let .media(mediaID): return [ "type": "media", "media": ["id": mediaID], ] - case .location(.coordinate(let coordinate)): + case let .location(.coordinate(coordinate)): return [ "type": "location", "location": [ @@ -42,19 +41,19 @@ open class PostDirectMessageRequestV1: TwitterAPIRequest { "coordinates": [ "type": "Point", "coordinates": [coordinate.lat, coordinate.long], - ] + ], ], ], ] - case .location(.place(let placeID)): + case let .location(.place(placeID)): return [ "type": "location", "location": [ "type": "shared_place", "shared_place": [ "place": [ - "id": placeID - ] + "id": placeID, + ], ], ], ] @@ -107,7 +106,7 @@ open class PostDirectMessageRequestV1: TwitterAPIRequest { open var parameters: [String: Any] { var messageData: [String: Any] = [ - "text": message + "text": message, ] attachment.map { messageData["attachment"] = $0.parameter } @@ -123,11 +122,11 @@ open class PostDirectMessageRequestV1: TwitterAPIRequest { "type": "message_create", "message_create": [ "target": [ - "recipient_id": targetUserID + "recipient_id": targetUserID, ], "message_data": messageData, ], - ] + ], ] } diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift index b577bd15..d72c34ba 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/typing-indicator-and-read-receipts/api-reference/new-typing-indicator open class PostDirectMessagesIndicateTypingRequestV1: TwitterAPIRequest { - public let recipientID: String public var method: HTTPMethod { diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift index 675d84aa..bcb81914 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/typing-indicator-and-read-receipts/api-reference/new-read-receipt open class PostDirectMessagesMarkReadRequestV1: TwitterAPIRequest { - /// Message ID public let lastReadEventID: String diff --git a/Sources/TwitterAPIKit/APIv1/Favorite/FavoriteAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Favorite/FavoriteAPIv1.swift index 8ca109f5..cdd1840e 100644 --- a/Sources/TwitterAPIKit/APIv1/Favorite/FavoriteAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Favorite/FavoriteAPIv1.swift @@ -1,7 +1,6 @@ import Foundation open class FavoriteAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/post-favorites-create public func postFavorite( _ request: PostFavoriteRequestV1 diff --git a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/GetFavoritesRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/GetFavoritesRequestV1.swift index 88d051a5..fe9ca9e4 100644 --- a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/GetFavoritesRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/GetFavoritesRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/get-favorites-list open class GetFavoritesRequestV1: TwitterAPIRequest { - public let target: TwitterUserIdentifierV1 public let count: Int? public let sinceID: String? diff --git a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostFavoriteRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostFavoriteRequestV1.swift index a0d22eb3..2e421243 100644 --- a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostFavoriteRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostFavoriteRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/post-favorites-create open class PostFavoriteRequestV1: TwitterAPIRequest { - public let id: String public let includeEntities: Bool? @@ -28,5 +27,4 @@ open class PostFavoriteRequestV1: TwitterAPIRequest { self.id = id self.includeEntities = includeEntities } - } diff --git a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostUnFavoriteRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostUnFavoriteRequestV1.swift index 0bf1243e..95d78fb1 100644 --- a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostUnFavoriteRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostUnFavoriteRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/post-favorites-destroy open class PostUnFavoriteRequestV1: TwitterAPIRequest { - public let id: String public let includeEntities: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift index c088ce28..fd6d730d 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift @@ -1,7 +1,6 @@ import Foundation open class FriendshipsAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-followers-ids public func getFollowerIDs( _ request: GetFollowersIDsRequestV1 diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift index 14fc2650..620da259 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-followers-ids open class GetFollowersIDsRequestV1: TwitterAPIRequest { - public let user: TwitterUserIdentifierV1 public let count: Int? public let cursor: String? diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift index 93335d5c..0209b764 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-followers-list open class GetFollowersListRequestV1: TwitterAPIRequest { - public let user: TwitterUserIdentifierV1 public let count: Int? public let cursor: String? @@ -12,6 +11,7 @@ open class GetFollowersListRequestV1: TwitterAPIRequest { public var method: HTTPMethod { return .get } + public var path: String { return "/1.1/followers/list.json" } diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift index 6beea5cf..07489460 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friends-ids open class GetFriendsIDsRequestV1: TwitterAPIRequest { - public let user: TwitterUserIdentifierV1 public let count: Int? public let cursor: String? diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsListRequestV1.swift index 33d4b46b..543b2b31 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsListRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friends-list open class GetFriendsListRequestV1: TwitterAPIRequest { - public let user: TwitterUserIdentifierV1 public let count: Int? public let cursor: String? diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift index 27f5d7e4..6b3ffc64 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift @@ -2,13 +2,13 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friendships-incoming open class GetFriendshipsIncomingRequestV1: TwitterAPIRequest { - public let cursor: String? public let stringifyIDs: Bool? public var method: HTTPMethod { return .get } + public var path: String { return "/1.1/friendships/incoming.json" } diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift index 8218e00b..fec72535 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friendships-lookup open class GetFriendshipsLookupRequestV1: TwitterAPIRequest { - public let users: TwitterUsersIdentifierV1 public var method: HTTPMethod { diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift index bf6488cd..89cc62b0 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friendships-no_retweets-ids open class GetFriendshipsNoRetweetsIDsRequestV1: TwitterAPIRequest { - public let stringifyIDs: Bool? public var method: HTTPMethod { diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift index 71d76c94..a2807bd0 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friendships-outgoing open class GetFriendshipsOutgoingRequestV1: TwitterAPIRequest { - public let cursor: String? public let stringifyIDs: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift index 54de1c87..4d6a9f39 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friendships-show open class GetFriendshipsShowRequestV1: TwitterAPIRequest { - public let sourceUser: TwitterUserIdentifierV1 public let targetUser: TwitterUserIdentifierV1 diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift index d63febd8..fc5c7e03 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/post-friendships-create open class PostFriendshipsCreateRequestV1: TwitterAPIRequest { - public let user: TwitterUserIdentifierV1 public let follow: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift index bd6eb498..2c14827b 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/post-friendships-destroy open class PostFriendshipsDestroyRequestV1: TwitterAPIRequest { - public let user: TwitterUserIdentifierV1 public var method: HTTPMethod { diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift index 3206b1c5..66cc3cf9 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/post-friendships-update open class PostFriendshipsUpdateRequestV1: TwitterAPIRequest { - public let user: TwitterUserIdentifierV1 public let device: Bool? public let retweets: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift index d1236cd6..0a0d701e 100644 --- a/Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift @@ -1,7 +1,6 @@ import Foundation open class GeoAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/geo/places-near-location/api-reference/get-geo-reverse_geocode public func getReverseGeocode( _ request: GetGeoReverseGeocodeRequestV1 diff --git a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoPlaceIDRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoPlaceIDRequestV1.swift index 5f612aa5..1ba306b6 100644 --- a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoPlaceIDRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoPlaceIDRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/geo/place-information/api-reference/get-geo-id-place_id open class GetGeoPlaceIDRequestV1: TwitterAPIRequest { - public let placeID: String public var method: HTTPMethod { diff --git a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoReverseGeocodeRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoReverseGeocodeRequestV1.swift index 6d35009c..fc9231c1 100644 --- a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoReverseGeocodeRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoReverseGeocodeRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/geo/places-near-location/api-reference/get-geo-reverse_geocode open class GetGeoReverseGeocodeRequestV1: TwitterAPIRequest { - public let location: TwitterCoordinateV1 public let accuracy: TwitterAccuracyV1? public let maxResults: Int? diff --git a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift index ac76f3db..378f1ea4 100644 --- a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift @@ -2,18 +2,17 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/geo/places-near-location/api-reference/get-geo-search open class GetGeoSearchRequestV1: TwitterAPIRequest { - public enum Location { case coordinate(TwitterCoordinateV1) case query(String) case ip(String) func bind(param: inout [String: Any]) { switch self { - case .coordinate(let twitterCoordinate): + case let .coordinate(twitterCoordinate): twitterCoordinate.bind(param: ¶m) - case .query(let string): + case let .query(string): param["query"] = string - case .ip(let string): + case let .ip(string): param["ip"] = string } } @@ -48,5 +47,4 @@ open class GetGeoSearchRequestV1: TwitterAPIRequest { self.maxResults = maxResults self.granularity = granularity } - } diff --git a/Sources/TwitterAPIKit/APIv1/Help/HelpAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Help/HelpAPIv1.swift index 2880ab24..ed8d746b 100644 --- a/Sources/TwitterAPIKit/APIv1/Help/HelpAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Help/HelpAPIv1.swift @@ -1,7 +1,6 @@ import Foundation open class HelpAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/developer-utilities/supported-languages/api-reference/get-help-languages public func getSupportedLanguages( _ request: GetHelpLanguagesRequestV1 diff --git a/Sources/TwitterAPIKit/APIv1/Help/Requests/GetHelpLanguagesRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Help/Requests/GetHelpLanguagesRequestV1.swift index 8aac306d..d179dee7 100644 --- a/Sources/TwitterAPIKit/APIv1/Help/Requests/GetHelpLanguagesRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Help/Requests/GetHelpLanguagesRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/developer-utilities/supported-languages/api-reference/get-help-languages open class GetHelpLanguagesRequestV1: TwitterAPIRequest { - public var method: HTTPMethod { return .get } @@ -15,6 +14,5 @@ open class GetHelpLanguagesRequestV1: TwitterAPIRequest { return [:] } - public init() { - } + public init() {} } diff --git a/Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift b/Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift index 895ad889..5b7e1b65 100644 --- a/Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift @@ -1,7 +1,6 @@ import Foundation open class ListAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-list public func getLists( _ request: GetListsListRequestV1 diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift index f2b4ddeb..49740d10 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-list open class GetListsListRequestV1: TwitterAPIRequest { - public let user: TwitterUserIdentifierV1 public let reverse: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift index c9907371..8e75d188 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-members open class GetListsMembersRequestV1: TwitterAPIRequest { - public let list: TwitterListIdentifierV1 public let count: Int? public let cursor: String? diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift index 035b4560..650072e3 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-members-show open class GetListsMembersShowRequestV1: TwitterAPIRequest { - public let list: TwitterListIdentifierV1 public let user: TwitterUserIdentifierV1 public let includeEntities: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift index 138c59b3..46ade3cb 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-memberships open class GetListsMembershipsRequestV1: TwitterAPIRequest { - public let user: TwitterUserIdentifierV1 public let count: Int? public let cursor: String? diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift index c0d3d323..352edcab 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-ownerships open class GetListsOwnershipsRequestV1: TwitterAPIRequest { - public let user: TwitterUserIdentifierV1 public let count: Int? public let cursor: String? diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift index 15bd29ff..f0429d81 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-show open class GetListsShowRequestV1: TwitterAPIRequest { - public let list: TwitterListIdentifierV1 public var method: HTTPMethod { diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift index 7dd53886..3a5827f3 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-statuses open class GetListsStatusesRequestV1: TwitterAPIRequest { - public let list: TwitterListIdentifierV1 public let count: Int? public let sinceID: String? diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersRequestV1.swift index 6426272d..649d0a07 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-subscribers open class GetListsSubscribersRequestV1: TwitterAPIRequest { - public let list: TwitterListIdentifierV1 public let count: Int? public let cursor: String? diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift index c9bd89a3..fa1fc98a 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-subscribers-show open class GetListsSubscribersShowRequestV1: TwitterAPIRequest { - public let list: TwitterListIdentifierV1 public let user: TwitterUserIdentifierV1 public let includeEntities: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift index 7522cbac..35959581 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-subscriptions open class GetListsSubscriptionsRequestV1: TwitterAPIRequest { - let user: TwitterUserIdentifierV1 let count: Int? let cursor: String? diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift index da1bccdf..3281387f 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-create open class PostListsCreateRequestV1: TwitterAPIRequest { - public let name: String public let mode: TwitterListModeV1? public let description: String? diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift index ad97da0f..a99868ec 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-destroy open class PostListsDestroyRequestV1: TwitterAPIRequest { - public let list: TwitterListIdentifierV1 public var method: HTTPMethod { diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift index 37f3d98e..cad556a7 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-members-create_all open class PostListsMembersCreateAllRequestV1: TwitterAPIRequest { - public let list: TwitterListIdentifierV1 public let users: TwitterUsersIdentifierV1 diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift index 2313c3ef..afc47983 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-members-create open class PostListsMembersCreateRequestV1: TwitterAPIRequest { - public let list: TwitterListIdentifierV1 public let user: TwitterUserIdentifierV1 @@ -20,6 +19,7 @@ open class PostListsMembersCreateRequestV1: TwitterAPIRequest { user.bind(param: &p) return p } + public init( list: TwitterListIdentifierV1, user: TwitterUserIdentifierV1 diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift index 62c57041..31bcd315 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-members-destroy_all open class PostListsMembersDestroyAllRequestV1: TwitterAPIRequest { - public let list: TwitterListIdentifierV1 public let users: TwitterUsersIdentifierV1 diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift index ce4a0c23..08f8c62c 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-members-destroy open class PostListsMembersDestroyRequestV1: TwitterAPIRequest { - public let list: TwitterListIdentifierV1 public let user: TwitterUserIdentifierV1 diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift index ed89a468..57aac6ff 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-subscribers-create open class PostListsSubscribersCreateRequestV1: TwitterAPIRequest { - public let list: TwitterListIdentifierV1 public var method: HTTPMethod { diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift index c11d3147..b0c73f62 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-subscribers-destroy open class PostListsSubscribersDestroyRequestV1: TwitterAPIRequest { - public let list: TwitterListIdentifierV1 public var method: HTTPMethod { diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift index 24eebc40..2a0d0540 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-update open class PostListsUpdateRequestV1: TwitterAPIRequest { - public let list: TwitterListIdentifierV1 public let name: String? public let mode: TwitterListModeV1? diff --git a/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift index d19ab603..9404a1b0 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift @@ -1,7 +1,6 @@ import Foundation open class MediaAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/get-media-upload-status public func getUploadMediaStatus( _ request: GetUploadMediaStatusRequestV1 @@ -28,7 +27,6 @@ open class MediaAPIv1: TwitterAPIBase { _ request: UploadMediaAppendRequestV1, maxBytes: Int = 5_242_880 /* 5MB */ ) -> [TwitterAPISessionSpecializedTask] { - let tasks = request.segments(maxBytes: maxBytes) .map { req in uploadMediaAppend(req).specialized { _ in @@ -128,7 +126,6 @@ open class MediaAPIv1: TwitterAPIBase { TwitterAPIResponse ) -> Void ) { - DispatchQueue.global(qos: .default).asyncAfter(deadline: .now() + .seconds(initialWaitSec)) { [weak self] in guard let self = self else { return } self.waitMediaProcessing(mediaID: mediaID, completionHandler: completionHandler) @@ -151,14 +148,13 @@ open class MediaAPIv1: TwitterAPIBase { switch success.state { case let .pending(checkAfterSecs: sec), - let .inProgress(checkAfterSecs: sec, progressPercent: _): + let .inProgress(checkAfterSecs: sec, progressPercent: _): self.waitMediaProcessing( mediaID: mediaID, initialWaitSec: sec, completionHandler: completionHandler ) - case .succeeded: completionHandler(response) case let .failed(error: error): @@ -173,7 +169,7 @@ open class MediaAPIv1: TwitterAPIBase { response.flatMap { _ in .failure(error) } ) return - } catch let error { + } catch { completionHandler( response.flatMap { _ in .failure(.unkonwn(error: error)) } ) diff --git a/Sources/TwitterAPIKit/APIv1/Media/Requests/GetUploadMediaStatusRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Media/Requests/GetUploadMediaStatusRequestV1.swift index 3bf43824..a56a08b3 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/Requests/GetUploadMediaStatusRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/Requests/GetUploadMediaStatusRequestV1.swift @@ -1,7 +1,6 @@ import Foundation open class GetUploadMediaStatusRequestV1: TwitterAPIRequest { - public let command: String = "STATUS" public let mediaID: String diff --git a/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaMetadataCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaMetadataCreateRequestV1.swift index 669189f6..5d71b2ad 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaMetadataCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaMetadataCreateRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/post-media-metadata-create open class PostMediaMetadataCreateRequestV1: TwitterAPIRequest { - public let mediaID: String public let altText: String diff --git a/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesCreateRequestV1.swift index 2229b819..94612255 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesCreateRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/post-media-subtitles-create open class PostMediaSubtitlesCreateRequestV1: TwitterAPIRequest { - public struct Subtitle { public let mediaID: String /// The language code should be a BCP47 code (e.g. 'en", "sp") @@ -41,18 +40,17 @@ open class PostMediaSubtitlesCreateRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() p["media_id"] = mediaID p["media_category"] = mediaCategory p["subtitle_info"] = [ "subtitles": subtitles.map { - return [ + [ "media_id": $0.mediaID, "language_code": $0.languageCode, "display_name": $0.displayName, ] - } + }, ] return p } diff --git a/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesDeleteRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesDeleteRequestV1.swift index 244152bc..17e39844 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesDeleteRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesDeleteRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/post-media-subtitles-delete open class PostMediaSubtitlesDeleteRequestV1: TwitterAPIRequest { - public let mediaID: String public let mediaCategory: String /// //The language code should be a BCP47 code (e.g. 'en", "sp") @@ -30,8 +29,8 @@ open class PostMediaSubtitlesDeleteRequestV1: TwitterAPIRequest { p["media_category"] = mediaCategory p["subtitle_info"] = [ "subtitles": subtitleLanguageCodes.map { - return ["language_code": $0] - } + ["language_code": $0] + }, ] return p } diff --git a/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaAppendRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaAppendRequestV1.swift index c001aaf9..3c1beced 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaAppendRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaAppendRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/post-media-upload-append open class UploadMediaAppendRequestV1: TwitterAPIRequest { - public let command: String = "APPEND" public let mediaID: String @@ -31,7 +30,6 @@ open class UploadMediaAppendRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - let p: [String: MultipartFormDataPart] = [ "command": .value(name: "command", value: command), "media_id": .value(name: "media_id", value: mediaID), @@ -57,7 +55,6 @@ open class UploadMediaAppendRequestV1: TwitterAPIRequest { } open func segments(maxBytes: Int) -> [UploadMediaAppendRequestV1] { - var requests = [UploadMediaAppendRequestV1]() let totalDataSize = media.count var currentSegmentIndex = 0 @@ -69,7 +66,7 @@ open class UploadMediaAppendRequestV1: TwitterAPIRequest { mediaID: mediaID, filename: filename, mimeType: mimeType, - media: media.subdata(in: start..<(start + len)), + media: media.subdata(in: start ..< (start + len)), segmentIndex: currentSegmentIndex ) requests.append(req) diff --git a/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaFinalizeRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaFinalizeRequestV1.swift index c9fd6432..83af73ff 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaFinalizeRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaFinalizeRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/post-media-upload-finalize open class UploadMediaFinalizeRequestV1: TwitterAPIRequest { - public let command: String = "FINALIZE" public let mediaID: String diff --git a/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaInitRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaInitRequestV1.swift index 2336d7d0..069ca178 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaInitRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaInitRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/post-media-upload-init open class UploadMediaInitRequestV1: TwitterAPIRequest { - public let command: String = "INIT" public let totalBytes: Int public let mediaType: String diff --git a/Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift b/Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift index d13a125e..f3b225dc 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift @@ -27,9 +27,8 @@ public struct UploadMediaRequestParameters { } } -extension TwitterAPIClient { - - public struct UploadMediaInitResponse: Decodable { +public extension TwitterAPIClient { + struct UploadMediaInitResponse: Decodable { public let mediaID: String public let expiresAfterSecs: Int @@ -39,12 +38,11 @@ extension TwitterAPIClient { } } - public struct UploadMediaVideo: Decodable { + struct UploadMediaVideo: Decodable { public let videoType: String } - public struct UploadMediaProcessingInfo: Decodable { - + struct UploadMediaProcessingInfo: Decodable { public enum State { case pending(checkAfterSecs: Int) case inProgress(checkAfterSecs: Int, progressPercent: Int) @@ -82,8 +80,7 @@ extension TwitterAPIClient { public let error: TwitterAPIKitError.UploadMediaError? } - public struct UploadMediaFinalizeResponse: Decodable { - + struct UploadMediaFinalizeResponse: Decodable { public let mediaID: String public let size: Int public let expiresAfterSecs: Int @@ -96,8 +93,7 @@ extension TwitterAPIClient { } } - public struct UploadMediaStatusResponse: Decodable { - + struct UploadMediaStatusResponse: Decodable { public var state: UploadMediaProcessingInfo.State { return processingInfo.enumState } @@ -112,5 +108,4 @@ extension TwitterAPIClient { case expiresAfterSecs, video, processingInfo } } - } diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift index c7cd45b3..081a4279 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/get-statuses-retweeters-ids open class GetRetweetersRequestV1: TwitterAPIRequest { - // Status ID let id: String let count: Int? @@ -14,12 +13,10 @@ open class GetRetweetersRequestV1: TwitterAPIRequest { } public var path: String { - return "/1.1/statuses/retweeters/ids.json" } open var parameters: [String: Any] { - var p = [String: Any]() p["id"] = id diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift index b3642eb9..038c5ff1 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/get-statuses-retweets_of_me open class GetRetweetsOfMeRequestV1: TwitterAPIRequest { - public let count: Int? public let sinceID: String? public let maxID: String? @@ -46,5 +45,4 @@ open class GetRetweetsOfMeRequestV1: TwitterAPIRequest { self.includeEntities = includeEntities self.includeUserEntities = includeUserEntities } - } diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsRequestV1.swift index 64f8a3cd..9bc4619e 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/get-statuses-retweets-id open class GetRetweetsRequestV1: TwitterAPIRequest { - /// Status ID public let id: String /// max: 100 diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift index 28523da1..409b6f6a 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift @@ -1,7 +1,6 @@ import Foundation open class RetweetAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/post-statuses-retweet-id public func postRetweet( _ request: PostRetweetRequestV1 diff --git a/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSavedSearchesListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSavedSearchesListRequestV1.swift index aa80f61c..5f7fdacb 100644 --- a/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSavedSearchesListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSavedSearchesListRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/get-saved_searches-list open class GetSavedSearchesListRequestV1: TwitterAPIRequest { - public var method: HTTPMethod { return .get } @@ -16,5 +15,4 @@ open class GetSavedSearchesListRequestV1: TwitterAPIRequest { } public init() {} - } diff --git a/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSearchTweetsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSearchTweetsRequestV1.swift index 77f5b258..f3e48d5a 100644 --- a/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSearchTweetsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSearchTweetsRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/search/api-reference/get-search-tweets open class GetSearchTweetsRequestV1: TwitterAPIRequest { - public enum ResultType: String { case mixed case recent diff --git a/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift index dbd37516..fef730be 100644 --- a/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-saved_searches-create open class PostSavedSearchesCreateRequestV1: TwitterAPIRequest { - public let query: String public var method: HTTPMethod { diff --git a/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift index 130cb60d..6c10f6bb 100644 --- a/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-saved_searches-destroy-id open class PostSavedSearchesDestroyRequestV1: TwitterAPIRequest { - public let id: String public var method: HTTPMethod { diff --git a/Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift index acc09f06..2bd0fc9e 100644 --- a/Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift @@ -1,7 +1,6 @@ import Foundation open class SearchAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/search/api-reference/get-search-tweets public func searchTweets( _ request: GetSearchTweetsRequestV1 diff --git a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift index 3ad9fc85..0810c4f5 100644 --- a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/timelines/api-reference/get-statuses-home_timeline open class GetStatusesHomeTimelineRequestV1: TwitterAPIRequest { - public let count: Int? public let maxID: String? public let sinceID: String? diff --git a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesMentionsTimelineRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesMentionsTimelineRequestV1.swift index 49486e18..9f431fe4 100644 --- a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesMentionsTimelineRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesMentionsTimelineRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/timelines/api-reference/get-statuses-mentions_timeline open class GetStatusesMentionsTimelineRequestV1: TwitterAPIRequest { - public let count: Int? public let maxID: String? public let sinceID: String? diff --git a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesUserTimelineRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesUserTimelineRequestV1.swift index 722c2999..3ca24871 100644 --- a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesUserTimelineRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesUserTimelineRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/timelines/api-reference/get-statuses-user_timeline open class GetStatusesUserTimelineRequestV1: TwitterAPIRequest { - public let user: TwitterUserIdentifierV1 public let count: Int? public let maxID: String? diff --git a/Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift index e477a2c7..fec7d4c3 100644 --- a/Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/timelines/overview open class TimelineAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/timelines/api-reference/get-statuses-home_timeline public func getHomeTimeline( _ request: GetStatusesHomeTimelineRequestV1 diff --git a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift index 89b645c9..bef67ca9 100644 --- a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/trends/locations-with-trending-topics/api-reference/get-trends-available open class GetTrendsAvailableRequestV1: TwitterAPIRequest { - public var method: HTTPMethod { return .get } @@ -16,5 +15,4 @@ open class GetTrendsAvailableRequestV1: TwitterAPIRequest { } public init() {} - } diff --git a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift index 7ec24ce7..abf0ab0b 100644 --- a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/trends/locations-with-trending-topics/api-reference/get-trends-closest open class GetTrendsClosestRequestV1: TwitterAPIRequest { - public let location: TwitterCoordinateV1 public var method: HTTPMethod { diff --git a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsPlaceRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsPlaceRequestV1.swift index 5e98e24b..bc479193 100644 --- a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsPlaceRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsPlaceRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/trends/trends-for-location/api-reference/get-trends-place open class GetTrendsPlaceRequestV1: TwitterAPIRequest { - /// Where On Earth ID Global public let woeid: String diff --git a/Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift index 14e3fa0b..1b3332b6 100644 --- a/Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift @@ -1,7 +1,6 @@ import Foundation open class TrendAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/trends/locations-with-trending-topics/api-reference/get-trends-available public func getTrendsAvailable( _ request: GetTrendsAvailableRequestV1 diff --git a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesLookupRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesLookupRequestV1.swift index 0796e663..9f11927c 100644 --- a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesLookupRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesLookupRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/get-statuses-lookup open class GetStatusesLookupRequestV1: TwitterAPIRequest { - public let ids: [String] public let map: Bool? public let trimUser: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesShowRequestV1.swift index 1eff520d..17bb1b99 100644 --- a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesShowRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/get-statuses-show-id open class GetStatusesShowRequestV1: TwitterAPIRequest { - public let id: String public let trimUser: Bool? public let includeCardUri: Bool? @@ -44,5 +43,4 @@ open class GetStatusesShowRequestV1: TwitterAPIRequest { self.includeMyRetweet = includeMyRetweet self.includeExtAltText = includeExtAltText } - } diff --git a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostStatusesDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostStatusesDestroyRequestV1.swift index 30108d2e..8d2b7ec1 100644 --- a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostStatusesDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostStatusesDestroyRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/post-statuses-destroy-id open class PostStatusesDestroyRequestV1: TwitterAPIRequest { - public let id: String public let trimUser: Bool? @@ -13,6 +12,7 @@ open class PostStatusesDestroyRequestV1: TwitterAPIRequest { public var path: String { return "/1.1/statuses/destroy/\(id).json" } + open var parameters: [String: Any] { var p = [String: Any]() trimUser.map { p["trim_user"] = $0 } diff --git a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift index b86a52c9..612bd02b 100644 --- a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/post-statuses-update open class PostStatusesUpdateRequestV1: TwitterAPIRequest { - public let status: String public let inReplyToStatusID: String? public let autoPopulateReplyMetadata: Bool? @@ -76,5 +75,4 @@ open class PostStatusesUpdateRequestV1: TwitterAPIRequest { self.failDMcommands = failDMcommands self.cardUri = cardUri } - } diff --git a/Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift index 94d06540..009dc669 100644 --- a/Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift @@ -1,7 +1,6 @@ import Foundation open class TweetAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/post-statuses-update public func postUpdateStatus( _ request: PostStatusesUpdateRequestV1 diff --git a/Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift b/Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift index faeee8e3..ce5cb2db 100644 --- a/Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift +++ b/Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift @@ -8,14 +8,14 @@ public enum TwitterListIdentifierV1 { extension TwitterListIdentifierV1 { func bind(param: inout [String: Any]) { switch self { - case .listID(let string): + case let .listID(string): param["list_id"] = string - case .slug(let slug, let owner): + case let .slug(slug, owner): param["slug"] = slug switch owner { - case .userID(let string): + case let .userID(string): param["owner_id"] = string - case .screenName(let string): + case let .screenName(string): param["owner_screen_name"] = string } } diff --git a/Sources/TwitterAPIKit/APIv1/TwitterLocations.swift b/Sources/TwitterAPIKit/APIv1/TwitterLocations.swift index 96de0a18..72513f88 100644 --- a/Sources/TwitterAPIKit/APIv1/TwitterLocations.swift +++ b/Sources/TwitterAPIKit/APIv1/TwitterLocations.swift @@ -23,9 +23,9 @@ public enum TwitterAccuracyV1 { func bind(param: inout [String: Any]) { switch self { - case .m(let int): + case let .m(int): param["accuracy"] = "\(int)m" - case .ft(let int): + case let .ft(int): param["accuracy"] = "\(int)ft" } } diff --git a/Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift b/Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift index f49b14ff..2816e2b3 100644 --- a/Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift +++ b/Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift @@ -15,9 +15,9 @@ public enum TwitterUsersIdentifierV1 { extension TwitterUserIdentifierV1 { func bind(param: inout [String: Any], userIDKey: String = "user_id", screenNameKey: String = "screen_name") { switch self { - case .userID(let string): + case let .userID(string): param[userIDKey] = string - case .screenName(let string): + case let .screenName(string): param[screenNameKey] = string } } @@ -26,9 +26,9 @@ extension TwitterUserIdentifierV1 { extension TwitterUsersIdentifierV1 { func bind(param: inout [String: Any]) { switch self { - case .userIDs(let array): + case let .userIDs(array): param["user_id"] = array.joined(separator: ",") - case .screenNames(let array): + case let .screenNames(array): param["screen_name"] = array.joined(separator: ",") } } diff --git a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersLookupRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersLookupRequestV1.swift index f5acc19b..b02d5abd 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersLookupRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersLookupRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-users-lookup open class GetUsersLookupRequestV1: TwitterAPIRequest { - public let users: TwitterUsersIdentifierV1 public let tweetMode: Bool? public let includeEntities: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift index 7268e94b..a634bdeb 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/get-users-profile_banner open class GetUsersProfileBannerRequestV1: TwitterAPIRequest { - public let user: TwitterUserIdentifierV1 public var method: HTTPMethod { diff --git a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift index f7945cb2..451472a2 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-users-search open class GetUsersSearchRequestV1: TwitterAPIRequest { - public let q: String public let page: Int? public let count: Int? diff --git a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift index 650cde93..ff1007af 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-users-show open class GetUsersShowRequestV1: TwitterAPIRequest { - public let user: TwitterUserIdentifierV1 public let includeEntities: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift index 1f144164..c419ebe9 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift @@ -1,7 +1,6 @@ import Foundation open class UserAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-users-lookup public func getUsers( _ request: GetUsersLookupRequestV1 diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/BlockAndMuteAPIv2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/BlockAndMuteAPIv2.swift index bd595b09..073c4294 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/BlockAndMuteAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/BlockAndMuteAPIv2.swift @@ -1,7 +1,6 @@ import Foundation open class BlockAndMuteAPIv2: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/users/blocks/api-reference/get-users-blocking public func getBlockUsers( _ request: GetUsersBlockingRequestV2 diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersBlockingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersBlockingRequestV2.swift index 220607cc..fec08ef1 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersBlockingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersBlockingRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/blocks/api-reference/delete-users-user_id-blocking open class DeleteUsersBlockingRequestV2: TwitterAPIRequest { - public let sourceUserID: String public let targetUserID: String diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersMutingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersMutingRequestV2.swift index 7fd0e23d..062ee1fd 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersMutingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersMutingRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/mutes/api-reference/delete-users-user_id-muting open class DeleteUsersMutingRequestV2: TwitterAPIRequest { - public let sourceUserID: String public let targetUserID: String diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersBlockingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersBlockingRequestV2.swift index 67bb76e2..7780983e 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersBlockingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersBlockingRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/blocks/api-reference/get-users-blocking open class GetUsersBlockingRequestV2: TwitterAPIRequest { - public let id: String public let expansions: Set? public let maxResults: Int? diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersMutingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersMutingRequestV2.swift index 6dca6307..9152dc4d 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersMutingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersMutingRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/mutes/api-reference/get-users-muting open class GetUsersMutingRequestV2: TwitterAPIRequest { - public let id: String public let expansions: Set? public let maxResults: Int? diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersBlockingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersBlockingRequestV2.swift index 3c864ff5..bce561d5 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersBlockingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersBlockingRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/blocks/api-reference/post-users-user_id-blocking open class PostUsersBlockingRequestV2: TwitterAPIRequest { - public let id: String public let targetUserID: String diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersMutingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersMutingRequestV2.swift index 0de67654..da2ecf6a 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersMutingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersMutingRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/mutes/api-reference/post-users-user_id-muting open class PostUsersMutingRequestV2: TwitterAPIRequest { - public let id: String public let targetUserID: String diff --git a/Sources/TwitterAPIKit/APIv2/Bookmarks/BookmarksAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Bookmarks/BookmarksAPIv2.swift index 13e94fa2..37027344 100644 --- a/Sources/TwitterAPIKit/APIv2/Bookmarks/BookmarksAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Bookmarks/BookmarksAPIv2.swift @@ -1,7 +1,6 @@ import Foundation open class BookmarksAPIv2: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/tweets/bookmarks/api-reference/get-users-id-bookmarks public func getBookmarks( _ request: GetUsersBookmarksRequestV2 diff --git a/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/DeleteUsersBookmarksRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/DeleteUsersBookmarksRequestV2.swift index ce9904a4..aaf031f5 100644 --- a/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/DeleteUsersBookmarksRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/DeleteUsersBookmarksRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/bookmarks/api-reference/delete-users-id-bookmarks-tweet_id open class DeleteUsersBookmarksRequestV2: TwitterAPIRequest { - /// The user ID of an authenticated user who you are removing a Bookmark of a Tweet on behalf of. It must match your own user ID or that of an authenticating user, meaning that you must pass the Access Tokens associated with the user ID when authenticating your request. public let id: String public let tweetID: String diff --git a/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/GetUsersBookmarksRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/GetUsersBookmarksRequestV2.swift index f05e12f4..bb29707a 100644 --- a/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/GetUsersBookmarksRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/GetUsersBookmarksRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/bookmarks/api-reference/get-users-id-bookmarks open class GetUsersBookmarksRequestV2: TwitterAPIRequest { - /// User ID of an authenticated user to request bookmarked Tweets for. public let id: String public let expansions: Set? diff --git a/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/PostUsersBookmarksRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/PostUsersBookmarksRequestV2.swift index ea3d4059..3d7b8b68 100644 --- a/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/PostUsersBookmarksRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/PostUsersBookmarksRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/bookmarks/api-reference/post-users-id-bookmarks open class PostUsersBookmarksRequestV2: TwitterAPIRequest { - /// The user ID who you are bookmarking a Tweet on behalf of. It must match your own user ID or that of an authenticating user, meaning that you must pass the Access Token associated with the user ID when authenticating your request. public let id: String public let tweetID: String diff --git a/Sources/TwitterAPIKit/APIv2/Compliance/ComplianceAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Compliance/ComplianceAPIv2.swift index 514c47d9..4a3835ad 100644 --- a/Sources/TwitterAPIKit/APIv2/Compliance/ComplianceAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Compliance/ComplianceAPIv2.swift @@ -1,7 +1,6 @@ import Foundation open class ComplianceAPIv2: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/compliance/batch-compliance/api-reference/get-compliance-jobs-id public func getComplianceJob( _ request: GetComplianceJobRequestV2 diff --git a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobRequestV2.swift index 970ac81c..cb7d70c7 100644 --- a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/compliance/batch-compliance/api-reference/get-compliance-jobs-id open class GetComplianceJobRequestV2: TwitterAPIRequest { - public let id: Int public var method: HTTPMethod { diff --git a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift index 3155fc59..abbdda1f 100644 --- a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/compliance/batch-compliance/api-reference/get-compliance-jobs open class GetComplianceJobsRequestV2: TwitterAPIRequest { - public enum Status: String { case created case inProgress = "in_progress" diff --git a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/PostComplianceJobsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/PostComplianceJobsRequestV2.swift index 9691a0bf..912dfb8f 100644 --- a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/PostComplianceJobsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/PostComplianceJobsRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/compliance/batch-compliance/api-reference/post-compliance-jobs open class PostComplianceJobsRequestV2: TwitterAPIRequest { - public let type: TwitterComplianceJobTypeV2 public let name: String? public let resumable: Bool? diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsIdDmEventsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsIdDmEventsRequestV2.swift index 46de57f5..39de81d3 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsIdDmEventsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsIdDmEventsRequestV2.swift @@ -3,7 +3,6 @@ import Foundation /// Returns DM Events for a DM Conversation /// Required OAuth 2.0 scopes: dm.read, tweet.read, users.read open class GetDmConversationsIdDmEventsRequestV2: TwitterAPIRequest { - /// The DM Conversation ID. public let id: String /// The maximum number of results. diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift index f494d995..2bcf1cdb 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift @@ -3,7 +3,6 @@ import Foundation /// Returns DM Events for a DM Conversation /// Required OAuth 2.0 scopes: dm.read, tweet.read, users.read open class GetDmConversationsWithParticipantIdDmEventsRequestV2: TwitterAPIRequest { - /// The ID of the participant user for the One to One DM conversation. public let participantID: String /// The maximum number of results. diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmEventsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmEventsRequestV2.swift index c2bbdcc4..cb0bac44 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmEventsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmEventsRequestV2.swift @@ -3,7 +3,6 @@ import Foundation /// Returns recent DM Events across DM conversations /// Required OAuth 2.0 scopes: dm.read, tweet.read, users.read open class GetDmEventsRequestV2: TwitterAPIRequest { - /// The maximum number of results. public let maxResults: Int? /// This parameter is used to get a specified 'page' of results. diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationByIdRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationByIdRequestV2.swift index 8c4e984d..b1ac9288 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationByIdRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationByIdRequestV2.swift @@ -3,7 +3,6 @@ import Foundation /// Creates a new message for a DM Conversation specified by DM Conversation ID /// Required OAuth 2.0 scopes: dm.write, tweet.read, users.read open class PostDmConversationByIdRequestV2: TwitterAPIRequest { - /// The DM Conversation ID. public let dmConversationID: String /// Attachments to a DM Event. diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationRequestV2.swift index cd7bb508..68925a5f 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationRequestV2.swift @@ -3,7 +3,6 @@ import Foundation /// Creates a new DM Conversation. /// Required OAuth 2.0 scopes: dm.write, tweet.read, users.read open class PostDmConversationRequestV2: TwitterAPIRequest { - /// The conversation type that is being created. public enum ConversationType: String { case group = "Group" diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationWithUserRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationWithUserRequestV2.swift index fe79dafb..b499aaff 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationWithUserRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationWithUserRequestV2.swift @@ -3,7 +3,6 @@ import Foundation /// Creates a new message for a DM Conversation with a participant user by ID /// Required OAuth 2.0 scopes: dm.write, tweet.read, users.read open class PostDmConversationWithUserRequestV2: TwitterAPIRequest { - /// The ID of the recipient user that will receive the DM. public let participantID: String /// Attachments to a DM Event. diff --git a/Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift b/Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift index a7213ff8..bbff6dd2 100644 --- a/Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift +++ b/Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift @@ -11,7 +11,6 @@ extension Set where Element: TwitterExpansionsParameterV2 { } public enum TwitterTweetExpansionsV2: TwitterExpansionsParameterV2, Hashable { - case attachmentsPollIDs case attachmentsMediaKeys case authorID @@ -32,7 +31,7 @@ public enum TwitterTweetExpansionsV2: TwitterExpansionsParameterV2, Hashable { case .inReplyToUserID: return "in_reply_to_user_id" case .referencedTweetsID: return "referenced_tweets.id" case .referencedTweetsIDAuthorID: return "referenced_tweets.id.author_id" - case .other(let string): return string + case let .other(string): return string } } @@ -55,12 +54,12 @@ public enum TwitterUserExpansionsV2: TwitterExpansionsParameterV2, Hashable { public var stringValue: String { switch self { case .pinnedTweetID: return "pinned_tweet_id" - case .other(let string): return string + case let .other(string): return string } } public static let all: Set = [ - .pinnedTweetID + .pinnedTweetID, ] } @@ -71,17 +70,16 @@ public enum TwitterListExpansionsV2: TwitterExpansionsParameterV2, Hashable { public var stringValue: String { switch self { case .ownerID: return "owner_id" - case .other(let string): return string + case let .other(string): return string } } public static let all: Set = [ - .ownerID + .ownerID, ] } public enum TwitterSpaceExpansionsV2: TwitterExpansionsParameterV2, Hashable { - case invitedUserIDs case speakerIDs case creatorID @@ -96,7 +94,7 @@ public enum TwitterSpaceExpansionsV2: TwitterExpansionsParameterV2, Hashable { case .creatorID: return "creator_id" case .hostIDs: return "host_ids" case .topicIDs: return "topic_ids" - case .other(let string): return string + case let .other(string): return string } } @@ -124,7 +122,7 @@ public enum TwitterDmEventExpansionsV2: TwitterExpansionsParameterV2, Hashable { case .participantIDs: return "participant_ids" case .referencedTweetsID: return "referenced_tweets.id" case .senderID: return "sender_id" - case .other(let string): return string + case let .other(string): return string } } diff --git a/Sources/TwitterAPIKit/APIv2/FieldsV2.swift b/Sources/TwitterAPIKit/APIv2/FieldsV2.swift index 5ed79d61..8cb438a1 100644 --- a/Sources/TwitterAPIKit/APIv2/FieldsV2.swift +++ b/Sources/TwitterAPIKit/APIv2/FieldsV2.swift @@ -4,7 +4,6 @@ import Foundation /// tweet.fields public enum TwitterTweetFieldsV2: TwitterAPIv2RequestParameter, Hashable { - case attachments case authorID case contextAnnotations @@ -28,7 +27,6 @@ public enum TwitterTweetFieldsV2: TwitterAPIv2RequestParameter, Hashable { case other(String) public var stringValue: String { - switch self { case .attachments: return "attachments" @@ -70,7 +68,7 @@ public enum TwitterTweetFieldsV2: TwitterAPIv2RequestParameter, Hashable { return "text" case .withheld: return "withheld" - case .other(let other): + case let .other(other): return other } } @@ -153,7 +151,7 @@ public enum TwitterUserFieldsV2: TwitterAPIv2RequestParameter, Hashable { return "verified" case .withheld: return "withheld" - case .other(let other): + case let .other(other): return other } } @@ -184,7 +182,6 @@ extension Set where Element == TwitterUserFieldsV2 { /// place.fields public enum TwitterPlaceFieldsV2: TwitterAPIv2RequestParameter, Hashable { - case containedWithin case country case countryCode @@ -213,7 +210,7 @@ public enum TwitterPlaceFieldsV2: TwitterAPIv2RequestParameter, Hashable { return "name" case .placeType: return "place_type" - case .other(let other): + case let .other(other): return other } } @@ -257,7 +254,7 @@ public enum TwitterPollFieldsV2: TwitterAPIv2RequestParameter, Hashable { return "options" case .votingStatus: return "voting_status" - case .other(let other): + case let .other(other): return other } } @@ -309,7 +306,7 @@ public enum TwitterMediaFieldsV2: TwitterAPIv2RequestParameter, Hashable { case .promotedMetrics: return "promoted_metrics" case .altText: return "alt_text" case .variants: return "variants" - case .other(let string): return string + case let .other(string): return string } } @@ -338,7 +335,6 @@ extension Set where Element == TwitterMediaFieldsV2 { /// list.fields public enum TwitterListFieldsV2: TwitterAPIv2RequestParameter, Hashable { - case createdAt case followerCount case memberCount @@ -359,7 +355,7 @@ public enum TwitterListFieldsV2: TwitterAPIv2RequestParameter, Hashable { case .id: return "id" case .name: return "name" case .ownerID: return "owner_id" - case .other(let string): return string + case let .other(string): return string } } @@ -383,7 +379,6 @@ extension Set where Element == TwitterListFieldsV2 { /// space.fields public enum TwitterSpaceFieldsV2: TwitterAPIv2RequestParameter, Hashable { - case id case state case hostIDs @@ -422,7 +417,7 @@ public enum TwitterSpaceFieldsV2: TwitterAPIv2RequestParameter, Hashable { case .updatedAt: return "updated_at" case .scheduledStart: return "scheduled_start" case .isTicketed: return "is_ticketed" - case .other(let string): return string + case let .other(string): return string } } @@ -455,7 +450,6 @@ extension Set where Element == TwitterSpaceFieldsV2 { /// topic.fields public enum TwitterTopicFieldsV2: TwitterAPIv2RequestParameter, Hashable { - case id case name case description @@ -466,7 +460,7 @@ public enum TwitterTopicFieldsV2: TwitterAPIv2RequestParameter, Hashable { case .id: return "id" case .name: return "name" case .description: return "description" - case .other(let string): return string + case let .other(string): return string } } @@ -508,7 +502,7 @@ public enum TwitterDmEventFieldsV2: TwitterAPIv2RequestParameter, Hashable { case .referencedTweets: return "referenced_tweets" case .senderID: return "sender_id" case .text: return "text" - case .other(let string): return string + case let .other(string): return string } } @@ -540,12 +534,12 @@ public enum TwitterDmConversationFieldsV2: TwitterAPIv2RequestParameter, Hashabl public var stringValue: String { switch self { case .id: return "id" - case .other(let string): return string + case let .other(string): return string } } public static let all: Set = [ - .id + .id, ] } diff --git a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/DeleteUsersFollowingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/DeleteUsersFollowingRequestV2.swift index a09b8ee3..a986b339 100644 --- a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/DeleteUsersFollowingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/DeleteUsersFollowingRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/follows/api-reference/delete-users-source_id-following open class DeleteUsersFollowingRequestV2: TwitterAPIRequest { - public let sourceUserID: String public let targetUserID: String diff --git a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowersRequestV2.swift index d83e62bc..c0f80c55 100644 --- a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowersRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/follows/api-reference/get-users-id-followers open class GetUsersFollowersRequestV2: TwitterAPIRequest { - public let id: String public let expansions: Set? public let maxResults: Int? diff --git a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowingRequestV2.swift index 696d37ec..4e4d4d76 100644 --- a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowingRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/follows/api-reference/get-users-id-following open class GetUsersFollowingRequestV2: TwitterAPIRequest { - public let id: String public let expansions: Set? public let maxResults: Int? diff --git a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/PostUsersFollowingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/PostUsersFollowingRequestV2.swift index a2398a08..37bdd48b 100644 --- a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/PostUsersFollowingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/PostUsersFollowingRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/follows/api-reference/post-users-source_user_id-following open class PostUsersFollowingRequestV2: TwitterAPIRequest { - public let id: String public let targetUserID: String diff --git a/Sources/TwitterAPIKit/APIv2/Like/LikeAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Like/LikeAPIv2.swift index 7daf5b20..a6eef99a 100644 --- a/Sources/TwitterAPIKit/APIv2/Like/LikeAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Like/LikeAPIv2.swift @@ -1,7 +1,6 @@ import Foundation open class LikeAPIv2: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/tweets/likes/api-reference/get-tweets-id-liking_users public func getLikingUsers( _ request: GetTweetsLikingUsersRequestV2 diff --git a/Sources/TwitterAPIKit/APIv2/Like/Requests/DeleteUsersLikesRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Like/Requests/DeleteUsersLikesRequestV2.swift index 4b20f4f7..53ab65b1 100644 --- a/Sources/TwitterAPIKit/APIv2/Like/Requests/DeleteUsersLikesRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Like/Requests/DeleteUsersLikesRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/likes/api-reference/delete-users-id-likes-tweet_id open class DeleteUsersLikesRequestV2: TwitterAPIRequest { - /// user ID public let id: String public let tweetID: String diff --git a/Sources/TwitterAPIKit/APIv2/Like/Requests/GetTweetsLikingUsersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Like/Requests/GetTweetsLikingUsersRequestV2.swift index 68ffdfa4..c6fd0be9 100644 --- a/Sources/TwitterAPIKit/APIv2/Like/Requests/GetTweetsLikingUsersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Like/Requests/GetTweetsLikingUsersRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/likes/api-reference/get-tweets-id-liking_users open class GetTweetsLikingUsersRequestV2: TwitterAPIRequest { - /// Tweet ID public let id: String public let expansions: Set? diff --git a/Sources/TwitterAPIKit/APIv2/Like/Requests/GetUsersLikedTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Like/Requests/GetUsersLikedTweetsRequestV2.swift index d0569bdb..4b379339 100644 --- a/Sources/TwitterAPIKit/APIv2/Like/Requests/GetUsersLikedTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Like/Requests/GetUsersLikedTweetsRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/likes/api-reference/get-users-id-liked_tweets open class GetUsersLikedTweetsRequestV2: TwitterAPIRequest { - /// User ID public let id: String public let expansions: Set? diff --git a/Sources/TwitterAPIKit/APIv2/Like/Requests/PostUsersLikesRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Like/Requests/PostUsersLikesRequestV2.swift index c28d7035..7fa4b761 100644 --- a/Sources/TwitterAPIKit/APIv2/Like/Requests/PostUsersLikesRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Like/Requests/PostUsersLikesRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/likes/api-reference/post-users-id-likes open class PostUsersLikesRequestV2: TwitterAPIRequest { - /// user ID public let id: String public let tweetID: String diff --git a/Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift b/Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift index e762cc3d..fead0670 100644 --- a/Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift @@ -1,7 +1,6 @@ import Foundation open class ListAPIv2: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/lists/list-tweets/api-reference/get-lists-id-tweets public func getListTweets( _ request: GetListsTweetsRequestV2 diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListRequestV2.swift index 984582d0..74718014 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/manage-lists/api-reference/delete-lists-id open class DeleteListRequestV2: TwitterAPIRequest { - public let id: String public var method: HTTPMethod { diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListsMembersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListsMembersRequestV2.swift index 641d71c8..fff14073 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListsMembersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListsMembersRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/list-members/api-reference/delete-lists-id-members-user_id open class DeleteListsMembersRequestV2: TwitterAPIRequest { - public let id: String public let userID: String diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift index 60bbf743..d4bea829 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/list-follows/api-reference/delete-users-id-followed-lists-list_id open class DeleteUsersFollowedListsRequestV2: TwitterAPIRequest { - public let id: String public let listID: String diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersPinnedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersPinnedListsRequestV2.swift index b33ce1e5..718b6a6b 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersPinnedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersPinnedListsRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/pinned-lists/api-reference/delete-users-id-pinned-lists-list_id open class DeleteUsersPinnedListsRequestV2: TwitterAPIRequest { - public let id: String public let listID: String diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListRequestV2.swift index a5579170..e8bc24d7 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/list-lookup/api-reference/get-lists-id open class GetListRequestV2: TwitterAPIRequest { - public let id: String public let expansions: Set? public let listFields: Set? diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsFollowersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsFollowersRequestV2.swift index f1640b8d..3cbaef5e 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsFollowersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsFollowersRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/list-follows/api-reference/get-lists-id-followers open class GetListsFollowersRequestV2: TwitterAPIRequest { - public let id: String public let expansions: Set? public let maxResults: Int? diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsMembersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsMembersRequestV2.swift index 8a34a974..84243000 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsMembersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsMembersRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/list-members/api-reference/get-lists-id-members open class GetListsMembersRequestV2: TwitterAPIRequest { - /// List ID public let id: String public let expansions: Set? diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsTweetsRequestV2.swift index aa72e1a3..ded2ac6c 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsTweetsRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/list-tweets/api-reference/get-lists-id-tweets open class GetListsTweetsRequestV2: TwitterAPIRequest { - public let id: String public let expansions: Set? public let maxResults: Int? diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersFollowedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersFollowedListsRequestV2.swift index 299a69d9..53cba5ab 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersFollowedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersFollowedListsRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/list-follows/api-reference/get-users-id-followed_lists open class GetUsersFollowedListsRequestV2: TwitterAPIRequest { - public let id: String public let expansions: Set? public let listFields: Set? diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersListMembershipsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersListMembershipsRequestV2.swift index 7eba6e46..252315a3 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersListMembershipsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersListMembershipsRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/list-members/api-reference/get-users-id-list_memberships open class GetUsersListMembershipsRequestV2: TwitterAPIRequest { - /// User ID public let id: String public let expansions: Set? diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersOwnedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersOwnedListsRequestV2.swift index 5ca55a51..4b054929 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersOwnedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersOwnedListsRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/list-lookup/api-reference/get-users-id-owned_lists open class GetUsersOwnedListsRequestV2: TwitterAPIRequest { - public let id: String public let expansions: Set? public let listFields: Set? diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersPinnedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersPinnedListsRequestV2.swift index d15a4e6a..cd4e90c0 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersPinnedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersPinnedListsRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/pinned-lists/api-reference/get-users-id-pinned_lists open class GetUsersPinnedListsRequestV2: TwitterAPIRequest { - public let id: String public let expansions: Set? public let listFields: Set? diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsMembersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsMembersRequestV2.swift index ac423acc..70f5743a 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsMembersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsMembersRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/list-members/api-reference/post-lists-id-members open class PostListsMembersRequestV2: TwitterAPIRequest { - public let id: String public let userID: String diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsRequestV2.swift index 512bf11e..bff86232 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/manage-lists/api-reference/post-lists open class PostListsRequestV2: TwitterAPIRequest { - public let name: String public let description: String? public let `private`: Bool? diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersFollowedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersFollowedListsRequestV2.swift index b7aaa556..1515a9f0 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersFollowedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersFollowedListsRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/list-follows/api-reference/post-users-id-followed-lists open class PostUsersFollowedListsRequestV2: TwitterAPIRequest { - public let id: String public let listID: String diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersPinnedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersPinnedListsRequestV2.swift index 626d1e77..8689338d 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersPinnedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersPinnedListsRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/pinned-lists/api-reference/post-users-id-pinned-lists open class PostUsersPinnedListsRequestV2: TwitterAPIRequest { - public let id: String public let listID: String diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/PutListRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/PutListRequestV2.swift index 49c610da..3c25d9db 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/PutListRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/PutListRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/manage-lists/api-reference/put-lists-id open class PutListRequestV2: TwitterAPIRequest { - public let id: String public let description: String? public let name: String? diff --git a/Sources/TwitterAPIKit/APIv2/Retweet/Requests/DeleteUsersRetweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Retweet/Requests/DeleteUsersRetweetsRequestV2.swift index 8a1d21c3..bca3e4b3 100644 --- a/Sources/TwitterAPIKit/APIv2/Retweet/Requests/DeleteUsersRetweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Retweet/Requests/DeleteUsersRetweetsRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/retweets/api-reference/delete-users-id-retweets-tweet_id open class DeleteUsersRetweetsRequestV2: TwitterAPIRequest { - public let id: String public let sourceTweetID: String diff --git a/Sources/TwitterAPIKit/APIv2/Retweet/Requests/GetTweetsRetweetedByRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Retweet/Requests/GetTweetsRetweetedByRequestV2.swift index 84c05741..81a6ceb9 100644 --- a/Sources/TwitterAPIKit/APIv2/Retweet/Requests/GetTweetsRetweetedByRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Retweet/Requests/GetTweetsRetweetedByRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/retweets/api-reference/get-tweets-id-retweeted_by open class GetTweetsRetweetedByRequestV2: TwitterAPIRequest { - /// Tweet ID public let id: String public let expansions: Set? diff --git a/Sources/TwitterAPIKit/APIv2/Retweet/Requests/PostUsersRetweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Retweet/Requests/PostUsersRetweetsRequestV2.swift index edf40647..aae70fbe 100644 --- a/Sources/TwitterAPIKit/APIv2/Retweet/Requests/PostUsersRetweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Retweet/Requests/PostUsersRetweetsRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/retweets/api-reference/post-users-id-retweets open class PostUsersRetweetsRequestV2: TwitterAPIRequest { - public let id: String public let tweetID: String diff --git a/Sources/TwitterAPIKit/APIv2/Retweet/RetweetAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Retweet/RetweetAPIv2.swift index 568f8265..313a4a49 100644 --- a/Sources/TwitterAPIKit/APIv2/Retweet/RetweetAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Retweet/RetweetAPIv2.swift @@ -1,7 +1,6 @@ import Foundation open class RetweetAPIv2: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/tweets/retweets/api-reference/get-tweets-id-retweeted_by public func getRetweetedBy( _ request: GetTweetsRetweetedByRequestV2 diff --git a/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchAllRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchAllRequestV2.swift index cedb8f8f..c322cde9 100644 --- a/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchAllRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchAllRequestV2.swift @@ -3,7 +3,6 @@ import Foundation /// This endpoint is only available to those users who have been approved for Academic Research access. /// https://developer.twitter.com/en/docs/twitter-api/tweets/search/api-reference/get-tweets-search-all open class GetTweetsSearchAllRequestV2: TwitterAPIRequest { - public let query: String public let endTime: Date? public let expansions: Set? diff --git a/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift index f282c332..da6eaa37 100644 --- a/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/search/api-reference/get-tweets-search-recent open class GetTweetsSearchRecentRequestV2: TwitterAPIRequest { - public enum TwitterSearchTweetsSortOrderV2: String { case recency case relevancy diff --git a/Sources/TwitterAPIKit/APIv2/Search/SearchAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Search/SearchAPIv2.swift index feaad5f8..bb386376 100644 --- a/Sources/TwitterAPIKit/APIv2/Search/SearchAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Search/SearchAPIv2.swift @@ -1,7 +1,6 @@ import Foundation open class SearchAPIv2: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/tweets/search/api-reference/get-tweets-search-recent public func searchTweetsRecent( _ request: GetTweetsSearchRecentRequestV2 diff --git a/Sources/TwitterAPIKit/APIv2/Search/TwitterSearchTweetsSortOrderV2.swift b/Sources/TwitterAPIKit/APIv2/Search/TwitterSearchTweetsSortOrderV2.swift index 3d006612..220a2a40 100644 --- a/Sources/TwitterAPIKit/APIv2/Search/TwitterSearchTweetsSortOrderV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Search/TwitterSearchTweetsSortOrderV2.swift @@ -1,7 +1,6 @@ import Foundation public enum TwitterSearchTweetsSortOrderV2: String { - case recency case relevancy diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpaceRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpaceRequestV2.swift index 0fe85f6d..b1d866ed 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpaceRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpaceRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/spaces/lookup/api-reference/get-spaces-id open class GetSpaceRequestV2: TwitterAPIRequest { - public let id: String public let expansions: Set? public let spaceFields: Set? diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesBuyersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesBuyersRequestV2.swift index d5a5bdfc..4cb5e939 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesBuyersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesBuyersRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/spaces/lookup/api-reference/get-spaces-id-buyers open class GetSpacesBuyersRequestV2: TwitterAPIRequest { - public let id: String public let expansions: Set? public let mediaFields: Set? diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesByCreatorIDsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesByCreatorIDsRequestV2.swift index d75289d3..a5c04ced 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesByCreatorIDsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesByCreatorIDsRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/spaces/lookup/api-reference/get-spaces-by-creator-ids open class GetSpacesByCreatorIDsRequestV2: TwitterAPIRequest { - public let userIDs: [String] public let expansions: Set? public let spaceFields: Set? diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesRequestV2.swift index fdf4aefc..1a79c217 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/spaces/lookup/api-reference/get-spaces open class GetSpacesRequestV2: TwitterAPIRequest { - public let ids: [String] public let expansions: Set? public let spaceFields: Set? diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift index f831fa41..8a24a808 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/spaces/search/api-reference/get-spaces-search open class GetSpacesSearchRequestV2: TwitterAPIRequest { - public enum State: String { case all case live diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesTweetsRequestV2.swift index b677c362..4184eae8 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesTweetsRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/spaces/lookup/api-reference/get-spaces-id-tweets open class GetSpacesTweetsRequestV2: TwitterAPIRequest { - public let id: String public let expansions: Set? public let mediaFields: Set? diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/SpacesAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/SpacesAPIv2.swift index fa80a1b6..f49ecce5 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/SpacesAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/SpacesAPIv2.swift @@ -1,7 +1,6 @@ import Foundation open class SpacesAPIv2: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/spaces/lookup/api-reference/get-spaces-id public func getSpace( _ request: GetSpaceRequestV2 diff --git a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSampleStreamRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSampleStreamRequestV2.swift index dda31764..bf5fb4f8 100644 --- a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSampleStreamRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSampleStreamRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/volume-streams/api-reference/get-tweets-sample-stream open class GetTweetsSampleStreamRequestV2: TwitterAPIRequest { - public let backfillMinutes: Int? public let expansions: Set? public let mediaFields: Set? diff --git a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRequestV2.swift index f298717a..e0f3dfa2 100644 --- a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/filtered-stream/api-reference/get-tweets-search-stream open class GetTweetsSearchStreamRequestV2: TwitterAPIRequest { - public let backfillMinutes: Int? public let expansions: Set? public let mediaFields: Set? diff --git a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift index 27fbf2fd..3c47a46e 100644 --- a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/filtered-stream/api-reference/get-tweets-search-stream-rules open class GetTweetsSearchStreamRulesRequestV2: TwitterAPIRequest { - public let ids: [String]? public var method: HTTPMethod { diff --git a/Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift index 682efdf8..e84b3d03 100644 --- a/Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/filtered-stream/api-reference/post-tweets-search-stream-rules#Validate open class PostTweetsSearchStreamRulesRequestV2: TwitterAPIRequest { - public struct Rule { public let value: String public let tag: String? @@ -14,7 +13,7 @@ open class PostTweetsSearchStreamRulesRequestV2: TwitterAPIRequest { public enum Operation { case add([Rule]) - case delete([String] /* rule IDs */) + case delete([String] /* rule IDs */ ) } public let dryRun: Bool? @@ -42,14 +41,14 @@ open class PostTweetsSearchStreamRulesRequestV2: TwitterAPIRequest { var p = [String: Any]() switch operation { - case .add(let rules): + case let .add(rules): p["add"] = rules.map { - return [ + [ "value": $0.value, "tag": $0.tag, ].compactMapValues { $0 } } - case .delete(let ids): + case let .delete(ids): p["delete"] = ["ids": ids] } diff --git a/Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift index 8d3ec0c7..d6d68d76 100644 --- a/Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift @@ -1,7 +1,6 @@ import Foundation open class StreamAPIv2: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/tweets/volume-streams/api-reference/get-tweets-sample-stream public func sampleStream( _ request: GetTweetsSampleStreamRequestV2 diff --git a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersMentionsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersMentionsRequestV2.swift index 342a0390..cb997826 100644 --- a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersMentionsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersMentionsRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/timelines/api-reference/get-users-id-mentions open class GetUsersMentionsRequestV2: TwitterAPIRequest { - public let id: String public let endTime: Date? public let expansions: Set? diff --git a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTimelinesReverseChronologicalRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTimelinesReverseChronologicalRequestV2.swift index 405abab9..b7656b71 100644 --- a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTimelinesReverseChronologicalRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTimelinesReverseChronologicalRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/timelines/api-reference/get-users-id-reverse-chronological open class GetUsersTimelinesReverseChronologicalRequestV2: TwitterAPIRequest { - public let id: String public let endTime: Date? public let exclude: Set? diff --git a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTweetsRequestV2.swift index 62b49d71..29678d5e 100644 --- a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTweetsRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/timelines/api-reference/get-users-id-tweets open class GetUsersTweetsRequestV2: TwitterAPIRequest { - public let id: String public let endTime: Date? public let exclude: Set? diff --git a/Sources/TwitterAPIKit/APIv2/Timeline/TimelineAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Timeline/TimelineAPIv2.swift index ae73719e..05e2d3ff 100644 --- a/Sources/TwitterAPIKit/APIv2/Timeline/TimelineAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Timeline/TimelineAPIv2.swift @@ -1,7 +1,6 @@ import Foundation open class TimelineAPIv2: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/tweets/timelines/api-reference/get-users-id-tweets public func getUserTweets( _ request: GetUsersTweetsRequestV2 diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/DeleteTweetRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/DeleteTweetRequestV2.swift index 16b977b5..dfa6dade 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/DeleteTweetRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/DeleteTweetRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/manage-tweets/api-reference/delete-tweets-id open class DeleteTweetRequestV2: TwitterAPIRequest { - public let id: String public var method: HTTPMethod { diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetRequestV2.swift index 6e048e6e..8892fd30 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/lookup/api-reference/get-tweets-id open class GetTweetRequestV2: TwitterAPIRequest { - public let id: String public let expansions: Set? public let mediaFields: Set? diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsQuoteTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsQuoteTweetsRequestV2.swift index ef110382..069b0dc1 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsQuoteTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsQuoteTweetsRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/quote-tweets/api-reference/get-tweets-id-quote_tweets open class GetTweetsQuoteTweetsRequestV2: TwitterAPIRequest { - public let id: String public let expansions: Set? public let maxResults: Int? diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsRequestV2.swift index 319997e5..701ecf99 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/lookup/api-reference/get-tweets open class GetTweetsRequestV2: TwitterAPIRequest { - public let ids: [String] public let expansions: Set? public let mediaFields: Set? diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift index 7c6e3adc..121cf804 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/manage-tweets/api-reference/post-tweets open class PostTweetsRequestV2: TwitterAPIRequest { - public struct Geo { public let placeID: String diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PutTweetsHiddenRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PutTweetsHiddenRequestV2.swift index 8639c6a2..f764c6b2 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PutTweetsHiddenRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PutTweetsHiddenRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/hide-replies/api-reference/put-tweets-id-hidden open class PutTweetsHiddenRequestV2: TwitterAPIRequest { - /// Tweet ID public let id: String public let hidden: Bool diff --git a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsAllRequestV2.swift b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsAllRequestV2.swift index 94b5faef..8f77d6cc 100644 --- a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsAllRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsAllRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/counts/api-reference/get-tweets-counts-all open class GetTweetsCountsAllRequestV2: TwitterAPIRequest { - public let query: String public let endTime: Date? public let granularity: TweetCountGranularityV2? diff --git a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsRecentRequestV2.swift b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsRecentRequestV2.swift index 7ff28e8a..e0136bba 100644 --- a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsRecentRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsRecentRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/counts/api-reference/get-tweets-counts-recent open class GetTweetsCountsRecentRequestV2: TwitterAPIRequest { - public let query: String public let endTime: Date? public let granularity: TweetCountGranularityV2? diff --git a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift index 9b4d0d6e..b9e1efdd 100644 --- a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift +++ b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift @@ -1,7 +1,6 @@ import Foundation public enum TweetCountGranularityV2: String { - case minute case hour case day diff --git a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUserRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUserRequestV2.swift index 199cc709..0e4e18fd 100644 --- a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUserRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUserRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/lookup/api-reference/get-users-id open class GetUserRequestV2: TwitterAPIRequest { - public let id: String public let expansions: Set? public let tweetFields: Set? diff --git a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByRequestV2.swift index 90c9a7c8..63a313ed 100644 --- a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/lookup/api-reference/get-users-by open class GetUsersByRequestV2: TwitterAPIRequest { - public let usernames: [String] public let expansions: Set? public let tweetFields: Set? diff --git a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByUsernameRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByUsernameRequestV2.swift index 7633e850..6298cf5a 100644 --- a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByUsernameRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByUsernameRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/lookup/api-reference/get-users-by-username-username open class GetUsersByUsernameRequestV2: TwitterAPIRequest { - public let username: String public let expansions: Set? public let tweetFields: Set? diff --git a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersMeRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersMeRequestV2.swift index a1b10250..34d92014 100644 --- a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersMeRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersMeRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/lookup/api-reference/get-users-me open class GetUsersMeRequestV2: TwitterAPIRequest { - public let expansions: Set? public let tweetFields: Set? public let userFields: Set? diff --git a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersRequestV2.swift index 24835625..fd7a4bf4 100644 --- a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/lookup/api-reference/get-users open class GetUsersRequestV2: TwitterAPIRequest { - public let ids: [String] public let expansions: Set? public let tweetFields: Set? diff --git a/Sources/TwitterAPIKit/AuthAPI/AuthAPI.swift b/Sources/TwitterAPIKit/AuthAPI/AuthAPI.swift index 1ec7993b..9e0e7619 100644 --- a/Sources/TwitterAPIKit/AuthAPI/AuthAPI.swift +++ b/Sources/TwitterAPIKit/AuthAPI/AuthAPI.swift @@ -1,5 +1,4 @@ open class TwitterAuthAPI { - public let oauth10a: OAuth10aAPI public let oauth20: OAuth20API diff --git a/Sources/TwitterAPIKit/AuthAPI/OAuth10aAPI.swift b/Sources/TwitterAPIKit/AuthAPI/OAuth10aAPI.swift index cb9f4f34..14760d1f 100644 --- a/Sources/TwitterAPIKit/AuthAPI/OAuth10aAPI.swift +++ b/Sources/TwitterAPIKit/AuthAPI/OAuth10aAPI.swift @@ -1,7 +1,6 @@ import Foundation open class OAuth10aAPI: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/authentication/api-reference/request_token public func postOAuthRequestTokenData( _ request: PostOAuthRequestTokenRequestV1 diff --git a/Sources/TwitterAPIKit/AuthAPI/OAuth20API.swift b/Sources/TwitterAPIKit/AuthAPI/OAuth20API.swift index 30b547ff..443c516c 100644 --- a/Sources/TwitterAPIKit/AuthAPI/OAuth20API.swift +++ b/Sources/TwitterAPIKit/AuthAPI/OAuth20API.swift @@ -1,7 +1,6 @@ import Foundation open class OAuth20API: TwitterAPIBase { - // MARK: - OAuth 2.0 Bearer Token /// https://developer.twitter.com/en/docs/authentication/api-reference/token @@ -24,7 +23,7 @@ open class OAuth20API: TwitterAPIBase { ) } return token - } catch let error { + } catch { throw TwitterAPIKitError.responseSerializeFailed( reason: .jsonSerializationFailed(error: error) ) @@ -34,7 +33,7 @@ open class OAuth20API: TwitterAPIBase { /// https://developer.twitter.com/en/docs/authentication/api-reference/invalidate_bearer_token /// - ///May not work. {"errors":[{"code":348,"message":"Client application is not permitted to to invalidate this token."}]} + /// May not work. {"errors":[{"code":348,"message":"Client application is not permitted to to invalidate this token."}]} /// https://twittercommunity.com/t/oauth2-invalidate-token-not-working-for-app-only-authentication-tokens/133108 /// https://twittercommunity.com/t/invalidate-bearer-client-application-not-permitted/162761 public func postInvalidateOAuth2BearerToken( @@ -74,7 +73,6 @@ open class OAuth20API: TwitterAPIBase { ) -> TwitterAPISessionSpecializedTask { return postOAuth2RefreshTokenData(request) .specialized { try TwitterOAuth2AccessToken.fromResponse(data: $0) } - } public func postOAuth2RevokeToken( diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthenticateRequestV1.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthenticateRequestV1.swift index df581ec9..bd98fa82 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthenticateRequestV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthenticateRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/authentication/api-reference/authenticate open class GetOAuthAuthenticateRequestV1: TwitterAPIRequest { - public let oauthToken: String public let forceLogin: Bool? public let screenName: String? diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthorizeRequestV1.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthorizeRequestV1.swift index c5e95c52..09d1a5d9 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthorizeRequestV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthorizeRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/authentication/api-reference/authorize open class GetOAuthAuthorizeRequestV1: TwitterAPIRequest { - public let oauthToken: String public let forceLogin: Bool? public let screenName: String? diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2AccessTokenRequestV2.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2AccessTokenRequestV2.swift index 37b67d3d..eb8e0461 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2AccessTokenRequestV2.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2AccessTokenRequestV2.swift @@ -1,7 +1,6 @@ import Foundation open class PostOAuth2AccessTokenRequestV2: TwitterAPIRequest { - public let code: String public let grantType: String /// Required for Public Client. diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2InvalidateTokenRequestV1.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2InvalidateTokenRequestV1.swift index c706a212..e56c5606 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2InvalidateTokenRequestV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2InvalidateTokenRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/authentication/api-reference/invalidate_bearer_token open class PostOAuth2InvalidateTokenRequestV1: TwitterAPIRequest { - public let accessToken: String public var method: HTTPMethod { diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RefreshTokenRequestV2.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RefreshTokenRequestV2.swift index c8072b48..88e18e56 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RefreshTokenRequestV2.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RefreshTokenRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/authentication/oauth-2-0/user-access-token open class PostOAuth2RefreshTokenRequestV2: TwitterAPIRequest { - public let refreshToken: String public let grantType: String /// Required for Public Client. diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RevokeTokenRequestV2.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RevokeTokenRequestV2.swift index c35fd780..fd18cb0c 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RevokeTokenRequestV2.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RevokeTokenRequestV2.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/authentication/oauth-2-0/user-access-token open class PostOAuth2RevokeTokenRequestV2: TwitterAPIRequest { - public let token: String /// Required for Public Client. public let clientID: String? diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2TokenRequestV1.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2TokenRequestV1.swift index 5bb12169..ba12963f 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2TokenRequestV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2TokenRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/authentication/api-reference/token open class PostOAuth2TokenRequestV1: TwitterAPIRequest { - public let grantType: String public var method: HTTPMethod { @@ -12,6 +11,7 @@ open class PostOAuth2TokenRequestV1: TwitterAPIRequest { public var path: String { return "/oauth2/token" } + open var parameters: [String: Any] { var p = [String: Any]() p["grant_type"] = grantType diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthAccessTokenRequestV1.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthAccessTokenRequestV1.swift index bb275b8f..f48c1db5 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthAccessTokenRequestV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthAccessTokenRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/authentication/api-reference/access_token open class PostOAuthAccessTokenRequestV1: TwitterAPIRequest { - public let oauthToken: String public let oauthVerifier: String diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthInvalidateTokenRequestV1.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthInvalidateTokenRequestV1.swift index cebfdf1d..ab6b5cb0 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthInvalidateTokenRequestV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthInvalidateTokenRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/authentication/api-reference/invalidate_access_token open class PostOAuthInvalidateTokenRequestV1: TwitterAPIRequest { - public var method: HTTPMethod { return .post } diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthRequestTokenRequestV1.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthRequestTokenRequestV1.swift index 62bdb83f..3de1c393 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthRequestTokenRequestV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthRequestTokenRequestV1.swift @@ -2,7 +2,6 @@ import Foundation /// https://developer.twitter.com/en/docs/authentication/api-reference/request_token open class PostOAuthRequestTokenRequestV1: TwitterAPIRequest { - /// If you are using pin-based authorization, you will need to set this to oob public let oauthCallback: String diff --git a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift index ef6d154d..08987e34 100644 --- a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift +++ b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift @@ -20,7 +20,6 @@ import Foundation */ public struct TwitterOAuth2AccessToken { - public let scope: [String] public let tokenType: String public let expiresIn: Int @@ -33,17 +32,17 @@ public struct TwitterOAuth2AccessToken { let json = try JSONSerialization.jsonObject(with: jsonData, options: []) guard let obj = json as? [String: Any], - let scope = obj["scope"] as? String, - let tokenType = obj["token_type"] as? String, - let expiresIn = obj["expires_in"] as? Int, - let accessToken = obj["access_token"] as? String + let scope = obj["scope"] as? String, + let tokenType = obj["token_type"] as? String, + let expiresIn = obj["expires_in"] as? Int, + let accessToken = obj["access_token"] as? String else { return nil } self.scope = scope.components(separatedBy: " ") self.tokenType = tokenType self.expiresIn = expiresIn self.accessToken = accessToken - self.refreshToken = obj["refresh_token"] as? String + refreshToken = obj["refresh_token"] as? String } } @@ -56,7 +55,7 @@ extension TwitterOAuth2AccessToken { ) } return token - } catch let error { + } catch { throw TwitterAPIKitError.responseSerializeFailed( reason: .jsonSerializationFailed(error: error) ) diff --git a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift index 7f51a27f..9a4638de 100644 --- a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift +++ b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift @@ -10,8 +10,8 @@ public struct TwitterOAuth2BearerToken { let json = try JSONSerialization.jsonObject(with: jsonData, options: []) guard let obj = json as? [String: Any], - let tokenType = obj["token_type"] as? String, - let accessToken = obj["access_token"] as? String + let tokenType = obj["token_type"] as? String, + let accessToken = obj["access_token"] as? String else { return nil } diff --git a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift index a606a50c..cc9069cf 100644 --- a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift @@ -1,7 +1,6 @@ import Foundation public struct TwitterOAuthAccessTokenV1 { - public let oauthToken: String public let oauthTokenSecret: String @@ -21,15 +20,15 @@ public struct TwitterOAuthAccessTokenV1 { var comp = URLComponents() comp.query = query guard let oauthToken = comp.queryItems?.first(where: { $0.name == "oauth_token" })?.value, - let oauthTokenSecret = comp.queryItems?.first(where: { $0.name == "oauth_token_secret" })?.value + let oauthTokenSecret = comp.queryItems?.first(where: { $0.name == "oauth_token_secret" })?.value else { return nil } self.oauthToken = oauthToken self.oauthTokenSecret = oauthTokenSecret - self.userID = comp.queryItems?.first(where: { $0.name == "user_id" })?.value - self.screenName = comp.queryItems?.first(where: { $0.name == "screen_name" })?.value + userID = comp.queryItems?.first(where: { $0.name == "user_id" })?.value + screenName = comp.queryItems?.first(where: { $0.name == "screen_name" })?.value } public init( @@ -43,5 +42,4 @@ public struct TwitterOAuthAccessTokenV1 { self.userID = userID self.screenName = screenName } - } diff --git a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift index 727513ce..daf80c6e 100644 --- a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift @@ -7,14 +7,13 @@ public struct TwitterOAuthTokenV1 { /// from: oauth_token=zlgW3QAAAAAA2_NZAAABfxxxxxxk&oauth_token_secret=pBYEQzdbyMqIcyDzyn0X7LDxxxxxxxxx&oauth_callback_confirmed=true public init?(queryStringData: Data) { - let query = String(data: queryStringData, encoding: .utf8) var comp = URLComponents() comp.query = query guard let oauthToken = comp.queryItems?.first(where: { $0.name == "oauth_token" })?.value, - let oauthTokenSecret = comp.queryItems?.first(where: { $0.name == "oauth_token_secret" })?.value + let oauthTokenSecret = comp.queryItems?.first(where: { $0.name == "oauth_token_secret" })?.value else { return nil } diff --git a/Sources/TwitterAPIKit/Extensions/Concurrency.swift b/Sources/TwitterAPIKit/Extensions/Concurrency.swift index a344d614..b4775877 100644 --- a/Sources/TwitterAPIKit/Extensions/Concurrency.swift +++ b/Sources/TwitterAPIKit/Extensions/Concurrency.swift @@ -4,109 +4,108 @@ import Foundation #if compiler(>=5.5.2) && canImport(_Concurrency) -// I'm not that familiar with Swift Concurrency, so please report any problems. + // I'm not that familiar with Swift Concurrency, so please report any problems. -@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) -extension TwitterAPISessionDataTask { - - public var responseData: TwitterAPIResponse { - get async { - return await withTaskCancellationHandler( - operation: { - return await withCheckedContinuation { c in - responseData { response in - c.resume(returning: response) + @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) + public extension TwitterAPISessionDataTask { + var responseData: TwitterAPIResponse { + get async { + await withTaskCancellationHandler( + operation: { + await withCheckedContinuation { c in + responseData { response in + c.resume(returning: response) + } } + }, + onCancel: { + cancel() } - }, - onCancel: { - cancel() - }) + ) + } } } -} -@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) -extension TwitterAPISessionJSONTask { + @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) + public extension TwitterAPISessionJSONTask { + var responseObject: TwitterAPIResponse { + get async { + await withTaskCancellationHandler( + operation: { + await withCheckedContinuation { c in + responseObject { response in + c.resume(returning: response) + } + } + }, + onCancel: { + cancel() + } + ) + } + } - public var responseObject: TwitterAPIResponse { - get async { + func responseDecodable(type: T.Type, decoder _: JSONDecoder = TwitterAPIClient.defaultJSONDecoder) async -> TwitterAPIResponse { return await withTaskCancellationHandler( operation: { - return await withCheckedContinuation { c in - responseObject { response in + await withCheckedContinuation { c in + responseDecodable(type: type) { response in c.resume(returning: response) } } }, onCancel: { cancel() - }) - } - } - - public func responseDecodable(type: T.Type, decoder: JSONDecoder = TwitterAPIClient.defaultJSONDecoder) async -> TwitterAPIResponse { - return await withTaskCancellationHandler( - operation: { - return await withCheckedContinuation { c in - responseDecodable(type: type) { response in - c.resume(returning: response) - } } - }, - onCancel: { - cancel() - }) + ) + } } -} -@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) -extension TwitterAPISessionSpecializedTask { - - public var responseObject: TwitterAPIResponse { - get async { - return await withTaskCancellationHandler( - operation: { - return await withCheckedContinuation { c in - responseObject { response in - c.resume(returning: response) + @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) + public extension TwitterAPISessionSpecializedTask { + var responseObject: TwitterAPIResponse { + get async { + await withTaskCancellationHandler( + operation: { + await withCheckedContinuation { c in + responseObject { response in + c.resume(returning: response) + } } + }, onCancel: { + cancel() } - }, onCancel: { - cancel() - }) + ) + } } } -} -@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) -extension TwitterAPISessionStreamTask { - - public func streamResponse(queue: DispatchQueue = .main) -> AsyncStream> { - return AsyncStream { continuation in - streamResponse(queue: queue) { response in - continuation.yield(response) - if response.isError { - continuation.finish() + @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) + public extension TwitterAPISessionStreamTask { + func streamResponse(queue: DispatchQueue = .main) -> AsyncStream> { + return AsyncStream { continuation in + streamResponse(queue: queue) { response in + continuation.yield(response) + if response.isError { + continuation.finish() + } + } + continuation.onTermination = { @Sendable _ in + cancel() } - } - continuation.onTermination = { @Sendable _ in - cancel() } } } -} - -@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) -extension TwitterAPIClient { - public func refreshOAuth20Token(type: TwitterAuthenticationMethod.OAuth20WithPKCEClientType, forceRefresh: Bool = false) async throws -> RefreshOAuth20TokenResultValue { - return try await withCheckedThrowingContinuation { c in - refreshOAuth20Token(type: type, forceRefresh: forceRefresh) { result in - c.resume(with: result) + @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) + public extension TwitterAPIClient { + func refreshOAuth20Token(type: TwitterAuthenticationMethod.OAuth20WithPKCEClientType, forceRefresh: Bool = false) async throws -> RefreshOAuth20TokenResultValue { + return try await withCheckedThrowingContinuation { c in + refreshOAuth20Token(type: type, forceRefresh: forceRefresh) { result in + c.resume(with: result) + } } } } -} #endif diff --git a/Sources/TwitterAPIKit/Extensions/Data.swift b/Sources/TwitterAPIKit/Extensions/Data.swift index 8366fa36..21434aeb 100644 --- a/Sources/TwitterAPIKit/Extensions/Data.swift +++ b/Sources/TwitterAPIKit/Extensions/Data.swift @@ -1,22 +1,20 @@ import Foundation extension Data { - func split(separator: Data, omittingEmptySubsequences: Bool = true) -> [Data] { var current = startIndex var chunks = [Data]() while let range = self[current...].range(of: separator) { - if !omittingEmptySubsequences { - chunks.append(self[current.. current { - chunks.append(self[current.. Result { let result: Result = .init { - return try decoder.decode(type, from: self) + try decoder.decode(type, from: self) } return result.mapError { error in - return .responseSerializeFailed( + .responseSerializeFailed( reason: .jsonDecodeFailed(error: error) ) } diff --git a/Sources/TwitterAPIKit/Extensions/Dictionary.swift b/Sources/TwitterAPIKit/Extensions/Dictionary.swift index 3e3bd9ac..df2290e4 100644 --- a/Sources/TwitterAPIKit/Extensions/Dictionary.swift +++ b/Sources/TwitterAPIKit/Extensions/Dictionary.swift @@ -1,14 +1,13 @@ import Foundation extension Dictionary { - var urlEncodedQueryString: String { var parts = [String]() for (key, value) in self { let keyString = "\(key)".urlEncodedString let valueString = "\(value)".urlEncodedString - let query: String = "\(keyString)=\(valueString)" + let query = "\(keyString)=\(valueString)" parts.append(query) } diff --git a/Sources/TwitterAPIKit/Extensions/HMAC.swift b/Sources/TwitterAPIKit/Extensions/HMAC.swift index fa2ab416..2c2f55cc 100644 --- a/Sources/TwitterAPIKit/Extensions/HMAC.swift +++ b/Sources/TwitterAPIKit/Extensions/HMAC.swift @@ -3,9 +3,8 @@ import Foundation #if canImport(CommonCrypto) import CommonCrypto - extension Data { - fileprivate func hmac(key: Data) -> Data { - + fileprivate extension Data { + func hmac(key: Data) -> Data { // Thanks: https://github.com/jernejstrasner/SwiftCrypto let digestLen = Int(CC_SHA1_DIGEST_LENGTH) @@ -34,8 +33,9 @@ import Foundation return message.hmac(key: key) } -#elseif canImport(Crypto) // for Linux +#elseif canImport(Crypto) // for Linux import Crypto + func createHMACSHA1(key: Data, message: Data) -> Data { return Data(HMAC.authenticationCode(for: message, using: SymmetricKey(data: key))) } diff --git a/Sources/TwitterAPIKit/Extensions/Result.swift b/Sources/TwitterAPIKit/Extensions/Result.swift index a51f2739..3a61e4a3 100644 --- a/Sources/TwitterAPIKit/Extensions/Result.swift +++ b/Sources/TwitterAPIKit/Extensions/Result.swift @@ -2,11 +2,12 @@ import Foundation extension Result where Failure == TwitterAPIKitError { var success: Success? { - guard case .success(let value) = self else { return nil } + guard case let .success(value) = self else { return nil } return value } + var error: Failure? { - guard case .failure(let error) = self else { return nil } + guard case let .failure(error) = self else { return nil } return error } } diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPIFailedTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPIFailedTask.swift index 83de5695..f7e82753 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPIFailedTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPIFailedTask.swift @@ -1,7 +1,6 @@ import Foundation public struct TwitterAPIFailedTask: TwitterAPISessionJSONTask, TwitterAPISessionStreamTask { - public let error: TwitterAPIKitError public init(_ error: TwitterAPIKitError) { @@ -24,7 +23,8 @@ public struct TwitterAPIFailedTask: TwitterAPISessionJSONTask, TwitterAPISession response: nil, data: nil, result: .failure(error), - rateLimit: nil) + rateLimit: nil + ) ) } return self @@ -49,9 +49,9 @@ public struct TwitterAPIFailedTask: TwitterAPISessionJSONTask, TwitterAPISession response: nil, data: nil, result: .failure(error), - rateLimit: nil) + rateLimit: nil + ) ) - } return self } @@ -65,8 +65,8 @@ public struct TwitterAPIFailedTask: TwitterAPISessionJSONTask, TwitterAPISession @discardableResult public func responseDecodable( - type: T.Type, - decoder: JSONDecoder, + type _: T.Type, + decoder _: JSONDecoder, queue: DispatchQueue, _ block: @escaping (TwitterAPIResponse) -> Void ) -> TwitterAPIFailedTask where T: Decodable { @@ -77,9 +77,9 @@ public struct TwitterAPIFailedTask: TwitterAPISessionJSONTask, TwitterAPISession response: nil, data: nil, result: .failure(error), - rateLimit: nil) + rateLimit: nil + ) ) - } return self } @@ -136,11 +136,13 @@ public struct TwitterAPIFailedTask: TwitterAPISessionJSONTask, TwitterAPISession response: nil, data: nil, result: .failure(error), - rateLimit: nil) + rateLimit: nil + ) block(response) } return self } + @discardableResult public func streamResponse( _ block: @escaping (TwitterAPIResponse) -> Void diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDataTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDataTask.swift index ca6c4a53..55400fb5 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDataTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDataTask.swift @@ -1,7 +1,6 @@ import Foundation public protocol TwitterAPISessionDataTask: TwitterAPISessionTask { - @discardableResult func responseData( queue: DispatchQueue, diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedJSONTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedJSONTask.swift index 4874e0af..22949a63 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedJSONTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedJSONTask.swift @@ -5,7 +5,6 @@ protocol TwitterAPISessionDelegatedJSONTaskDelegate: AnyObject { } public class TwitterAPISessionDelegatedJSONTask: TwitterAPISessionJSONTask, TwitterAPISessionDelegatedTask { - public var taskIdentifier: Int { return task.taskIdentifier } @@ -29,12 +28,13 @@ public class TwitterAPISessionDelegatedJSONTask: TwitterAPISessionJSONTask, Twit guard completed else { return nil } return dataChunk } + public private(set) var completed = false let task: TwitterAPISessionTask private let taskQueue: DispatchQueue - private var dataChunk: Data = Data() + private var dataChunk: Data = .init() private let group = DispatchGroup() public init(task: TwitterAPISessionTask) { @@ -58,7 +58,7 @@ public class TwitterAPISessionDelegatedJSONTask: TwitterAPISessionJSONTask, Twit func complete(error: Error?) { self.error = error - self.completed = true + completed = true group.notify(queue: taskQueue) { [weak self] in guard let self = self else { return } @@ -68,8 +68,7 @@ public class TwitterAPISessionDelegatedJSONTask: TwitterAPISessionJSONTask, Twit } private func getResponse() -> TwitterAPIResponse { - - guard completed, let data = self.data else { + guard completed, let data = data else { fatalError("Request not completed yet.") } @@ -85,8 +84,7 @@ public class TwitterAPISessionDelegatedJSONTask: TwitterAPISessionJSONTask, Twit let rateLimit = TwitterRateLimit(header: httpResponse.allHeaderFields) - guard 200..<300 ~= httpResponse.statusCode else { - + guard 200 ..< 300 ~= httpResponse.statusCode else { return TwitterAPIResponse( request: currentRequest, response: httpResponse, @@ -94,7 +92,8 @@ public class TwitterAPISessionDelegatedJSONTask: TwitterAPISessionJSONTask, Twit result: .failure( .responseFailed( reason: .unacceptableStatusCode( - statusCode: httpResponse.statusCode, error: .init(data: data), rateLimit: rateLimit))), + statusCode: httpResponse.statusCode, error: .init(data: data), rateLimit: rateLimit + ))), rateLimit: rateLimit ) } @@ -113,7 +112,6 @@ public class TwitterAPISessionDelegatedJSONTask: TwitterAPISessionJSONTask, Twit flatMap transform: @escaping (Data) -> Result, response block: @escaping ((TwitterAPIResponse) -> Void) ) -> Self { - group.enter() taskQueue.async { [weak self] in guard let self = self else { return } diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift index 20b75096..530dc03c 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift @@ -2,13 +2,13 @@ import Foundation private let chunkSeparator = "\r\n".data(using: .utf8)! public class TwitterAPISessionDelegatedStreamTask: TwitterAPISessionStreamTask, TwitterAPISessionDelegatedTask { - public var taskIdentifier: Int { return task.taskIdentifier } public var currentRequest: URLRequest? { return task.currentRequest } public var originalRequest: URLRequest? { return task.originalRequest } public var httpResponse: HTTPURLResponse? { return task.httpResponse } + private let task: TwitterAPISessionTask private var dataBlocks = [(queue: DispatchQueue, block: (TwitterAPIResponse) -> Void)]() private lazy var taskQueue = DispatchQueue(label: "TwitterAPISessionDelegatedStreamTask_\(taskIdentifier)") @@ -50,7 +50,6 @@ public class TwitterAPISessionDelegatedStreamTask: TwitterAPISessionStreamTask, let rateLimit = TwitterRateLimit(header: httpResponse.allHeaderFields) guard httpResponse.statusCode < 300 else { - let error = TwitterAPIErrorResponse(data: chunk) self.notify( result: .failure( @@ -60,7 +59,8 @@ public class TwitterAPISessionDelegatedStreamTask: TwitterAPISessionStreamTask, error: error, rateLimit: rateLimit ) - )), rateLimit: rateLimit) + )), rateLimit: rateLimit + ) return } @@ -89,7 +89,7 @@ public class TwitterAPISessionDelegatedStreamTask: TwitterAPISessionStreamTask, rateLimit: rateLimit ) - dataBlocks.forEach { (queue, block) in + for (queue, block) in dataBlocks { queue.async { block(response) } diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionJSONTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionJSONTask.swift index 8825f377..41dce573 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionJSONTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionJSONTask.swift @@ -1,7 +1,6 @@ import Foundation public protocol TwitterAPISessionJSONTask: TwitterAPISessionDataTask { - @discardableResult func responseObject( queue: DispatchQueue, diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift index 9d2b95f0..be318033 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift @@ -10,13 +10,14 @@ protocol TwitterAPISessionSpecializedTask_: TwitterAPISessionDataTask { } public struct TwitterAPISessionSpecializedTask: TwitterAPISessionSpecializedTask_ { - public var taskIdentifier: Int { return innerTask.taskIdentifier } + public var currentRequest: URLRequest? { return innerTask.currentRequest } + public var originalRequest: URLRequest? { return innerTask.originalRequest } @@ -32,7 +33,7 @@ public struct TwitterAPISessionSpecializedTask: TwitterAPISessionSpecia task: TwitterAPISessionDataTask, transform: @escaping (Data) throws -> Success ) { - self.innerTask = task + innerTask = task self.transform = transform } @@ -72,18 +73,16 @@ public struct TwitterAPISessionSpecializedTask: TwitterAPISessionSpecia } extension Array where Element: TwitterAPISessionSpecializedTask_ { - func responseObject( queue: DispatchQueue = .main, _ block: @escaping ([TwitterAPIResponse]) -> Void ) { - let group = DispatchGroup() var responses = [TwitterAPIResponse]() let innerQueue = DispatchQueue(label: "TwitterAPISessionSpecializedTask.array") innerQueue.suspend() - self.forEach { task in + for task in self { group.enter() innerQueue.async { task.responseObject(queue: innerQueue) { diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionStreamTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionStreamTask.swift index daf1e6a2..dff4598f 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionStreamTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionStreamTask.swift @@ -1,7 +1,6 @@ import Foundation public protocol TwitterAPISessionStreamTask: TwitterAPISessionTask { - @discardableResult func streamResponse( queue: DispatchQueue, diff --git a/Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift b/Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift index 6272406d..a806a5a3 100644 --- a/Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift +++ b/Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift @@ -4,698 +4,856 @@ // swift-format-ignore-file import Foundation -extension TwitterAuthAPI { - +public extension TwitterAuthAPI { // MARK: - OAuth10aAPI - public func postOAuthRequestTokenData(_ request: PostOAuthRequestTokenRequestV1) -> TwitterAPISessionDataTask { + func postOAuthRequestTokenData(_ request: PostOAuthRequestTokenRequestV1) -> TwitterAPISessionDataTask { return oauth10a.postOAuthRequestTokenData(request) } - public func postOAuthRequestToken(_ request: PostOAuthRequestTokenRequestV1) -> TwitterAPISessionSpecializedTask { + + func postOAuthRequestToken(_ request: PostOAuthRequestTokenRequestV1) -> TwitterAPISessionSpecializedTask { return oauth10a.postOAuthRequestToken(request) } - public func makeOAuthAuthorizeURL(_ request: GetOAuthAuthorizeRequestV1) -> URL? { + + func makeOAuthAuthorizeURL(_ request: GetOAuthAuthorizeRequestV1) -> URL? { return oauth10a.makeOAuthAuthorizeURL(request) } - public func makeOAuthAuthenticateURL(_ request: GetOAuthAuthenticateRequestV1) -> URL? { + + func makeOAuthAuthenticateURL(_ request: GetOAuthAuthenticateRequestV1) -> URL? { return oauth10a.makeOAuthAuthenticateURL(request) } - public func postOAuthAccessTokenData(_ request: PostOAuthAccessTokenRequestV1) -> TwitterAPISessionDataTask { + + func postOAuthAccessTokenData(_ request: PostOAuthAccessTokenRequestV1) -> TwitterAPISessionDataTask { return oauth10a.postOAuthAccessTokenData(request) } - public func postOAuthAccessToken(_ request: PostOAuthAccessTokenRequestV1) -> TwitterAPISessionSpecializedTask { + + func postOAuthAccessToken(_ request: PostOAuthAccessTokenRequestV1) -> TwitterAPISessionSpecializedTask { return oauth10a.postOAuthAccessToken(request) } - public func postInvalidateAccessToken(_ request: PostOAuthInvalidateTokenRequestV1) -> TwitterAPISessionJSONTask { + + func postInvalidateAccessToken(_ request: PostOAuthInvalidateTokenRequestV1) -> TwitterAPISessionJSONTask { return oauth10a.postInvalidateAccessToken(request) } // MARK: - OAuth20API - public func postOAuth2BearerTokenData(_ request: PostOAuth2TokenRequestV1) -> TwitterAPISessionDataTask { + func postOAuth2BearerTokenData(_ request: PostOAuth2TokenRequestV1) -> TwitterAPISessionDataTask { return oauth20.postOAuth2BearerTokenData(request) } - public func postOAuth2BearerToken(_ request: PostOAuth2TokenRequestV1) -> TwitterAPISessionSpecializedTask { + + func postOAuth2BearerToken(_ request: PostOAuth2TokenRequestV1) -> TwitterAPISessionSpecializedTask { return oauth20.postOAuth2BearerToken(request) } - public func postInvalidateOAuth2BearerToken(_ request: PostOAuth2InvalidateTokenRequestV1) -> TwitterAPISessionJSONTask { + + func postInvalidateOAuth2BearerToken(_ request: PostOAuth2InvalidateTokenRequestV1) -> TwitterAPISessionJSONTask { return oauth20.postInvalidateOAuth2BearerToken(request) } - public func makeOAuth2AuthorizeURL(_ request: GetOAuth2AuthorizeRequestV1) -> URL? { + + func makeOAuth2AuthorizeURL(_ request: GetOAuth2AuthorizeRequestV1) -> URL? { return oauth20.makeOAuth2AuthorizeURL(request) } - public func postOAuth2AccessTokenData(_ request: PostOAuth2AccessTokenRequestV2) -> TwitterAPISessionDataTask { + + func postOAuth2AccessTokenData(_ request: PostOAuth2AccessTokenRequestV2) -> TwitterAPISessionDataTask { return oauth20.postOAuth2AccessTokenData(request) } - public func postOAuth2AccessToken(_ request: PostOAuth2AccessTokenRequestV2) -> TwitterAPISessionSpecializedTask { + + func postOAuth2AccessToken(_ request: PostOAuth2AccessTokenRequestV2) -> TwitterAPISessionSpecializedTask { return oauth20.postOAuth2AccessToken(request) } - public func postOAuth2RefreshTokenData(_ request: PostOAuth2RefreshTokenRequestV2) -> TwitterAPISessionDataTask { + + func postOAuth2RefreshTokenData(_ request: PostOAuth2RefreshTokenRequestV2) -> TwitterAPISessionDataTask { return oauth20.postOAuth2RefreshTokenData(request) } - public func postOAuth2RefreshToken(_ request: PostOAuth2RefreshTokenRequestV2) -> TwitterAPISessionSpecializedTask { + + func postOAuth2RefreshToken(_ request: PostOAuth2RefreshTokenRequestV2) -> TwitterAPISessionSpecializedTask { return oauth20.postOAuth2RefreshToken(request) } - public func postOAuth2RevokeToken(_ request: PostOAuth2RevokeTokenRequestV2) -> TwitterAPISessionDataTask { + + func postOAuth2RevokeToken(_ request: PostOAuth2RevokeTokenRequestV2) -> TwitterAPISessionDataTask { return oauth20.postOAuth2RevokeToken(request) } } -extension TwitterAPIv1 { - +public extension TwitterAPIv1 { // MARK: - AccountAPIv1 - public func getAccountSetting(_ request: GetAccountSettingsRequestV1) -> TwitterAPISessionJSONTask { + func getAccountSetting(_ request: GetAccountSettingsRequestV1) -> TwitterAPISessionJSONTask { return account.getAccountSetting(request) } - public func getAccountVerify(_ request: GetAccountVerifyCredentialsRequestV1) -> TwitterAPISessionJSONTask { + + func getAccountVerify(_ request: GetAccountVerifyCredentialsRequestV1) -> TwitterAPISessionJSONTask { return account.getAccountVerify(request) } - public func postRemoveProfileBanner(_ request: PostAccountRemoveProfileBannerRequestV1) -> TwitterAPISessionJSONTask { + + func postRemoveProfileBanner(_ request: PostAccountRemoveProfileBannerRequestV1) -> TwitterAPISessionJSONTask { return account.postRemoveProfileBanner(request) } - public func postAccountSettings(_ request: PostAccountSettingsRequestV1) -> TwitterAPISessionJSONTask { + + func postAccountSettings(_ request: PostAccountSettingsRequestV1) -> TwitterAPISessionJSONTask { return account.postAccountSettings(request) } - public func postAccountProfile(_ request: PostAccountUpdateProfileRequestV1) -> TwitterAPISessionJSONTask { + + func postAccountProfile(_ request: PostAccountUpdateProfileRequestV1) -> TwitterAPISessionJSONTask { return account.postAccountProfile(request) } - public func postProfileBanner(_ request: PostAccountUpdateProfileBannerRequestV1) -> TwitterAPISessionDataTask { + + func postProfileBanner(_ request: PostAccountUpdateProfileBannerRequestV1) -> TwitterAPISessionDataTask { return account.postProfileBanner(request) } - public func postProfileImage(_ request: PostAccountUpdateProfileImageRequestV1) -> TwitterAPISessionJSONTask { + + func postProfileImage(_ request: PostAccountUpdateProfileImageRequestV1) -> TwitterAPISessionJSONTask { return account.postProfileImage(request) } // MARK: - ApplicationAPIv1 - public func getRateLimit(_ request: GetApplicationRateLimitStatusRequestV1) -> TwitterAPISessionJSONTask { + func getRateLimit(_ request: GetApplicationRateLimitStatusRequestV1) -> TwitterAPISessionJSONTask { return application.getRateLimit(request) } // MARK: - BlockAndMuteAPIv1 - public func getBlockIDs(_ request: GetBlocksIDsRequestV1) -> TwitterAPISessionJSONTask { + func getBlockIDs(_ request: GetBlocksIDsRequestV1) -> TwitterAPISessionJSONTask { return blockAndMute.getBlockIDs(request) } - public func getBlockUsers(_ request: GetBlocksListRequestV1) -> TwitterAPISessionJSONTask { + + func getBlockUsers(_ request: GetBlocksListRequestV1) -> TwitterAPISessionJSONTask { return blockAndMute.getBlockUsers(request) } - public func getMuteIDs(_ request: GetMutesUsersIDsRequestV1) -> TwitterAPISessionJSONTask { + + func getMuteIDs(_ request: GetMutesUsersIDsRequestV1) -> TwitterAPISessionJSONTask { return blockAndMute.getMuteIDs(request) } - public func getMuteUsers(_ request: GetMutesUsersListRequestV1) -> TwitterAPISessionJSONTask { + + func getMuteUsers(_ request: GetMutesUsersListRequestV1) -> TwitterAPISessionJSONTask { return blockAndMute.getMuteUsers(request) } - public func postBlockUser(_ request: PostBlocksCreateRequestV1) -> TwitterAPISessionJSONTask { + + func postBlockUser(_ request: PostBlocksCreateRequestV1) -> TwitterAPISessionJSONTask { return blockAndMute.postBlockUser(request) } - public func postUnblockUser(_ request: PostBlocksDestroyRequestV1) -> TwitterAPISessionJSONTask { + + func postUnblockUser(_ request: PostBlocksDestroyRequestV1) -> TwitterAPISessionJSONTask { return blockAndMute.postUnblockUser(request) } - public func postMuteUser(_ request: PostMutesUsersCreateRequestV1) -> TwitterAPISessionJSONTask { + + func postMuteUser(_ request: PostMutesUsersCreateRequestV1) -> TwitterAPISessionJSONTask { return blockAndMute.postMuteUser(request) } - public func postUnmuteUser(_ request: PostMutesUsersDestroyRequestV1) -> TwitterAPISessionJSONTask { + + func postUnmuteUser(_ request: PostMutesUsersDestroyRequestV1) -> TwitterAPISessionJSONTask { return blockAndMute.postUnmuteUser(request) } - public func postReportSpam(_ request: PostUsersReportSpamRequestV1) -> TwitterAPISessionJSONTask { + + func postReportSpam(_ request: PostUsersReportSpamRequestV1) -> TwitterAPISessionJSONTask { return blockAndMute.postReportSpam(request) } // MARK: - CollectionAPIv1 - public func getCollectionEntries(_ request: GetCollectionsEntriesRequestV1) -> TwitterAPISessionJSONTask { + func getCollectionEntries(_ request: GetCollectionsEntriesRequestV1) -> TwitterAPISessionJSONTask { return collection.getCollectionEntries(request) } - public func getCollections(_ request: GetCollectionsListRequestV1) -> TwitterAPISessionJSONTask { + + func getCollections(_ request: GetCollectionsListRequestV1) -> TwitterAPISessionJSONTask { return collection.getCollections(request) } - public func getCollection(_ request: GetCollectionsShowRequestV1) -> TwitterAPISessionJSONTask { + + func getCollection(_ request: GetCollectionsShowRequestV1) -> TwitterAPISessionJSONTask { return collection.getCollection(request) } - public func postCreateCollection(_ request: PostCollectionsCreateRequestV1) -> TwitterAPISessionJSONTask { + + func postCreateCollection(_ request: PostCollectionsCreateRequestV1) -> TwitterAPISessionJSONTask { return collection.postCreateCollection(request) } - public func postDestroyCollection(_ request: PostCollectionsDestroyRequestV1) -> TwitterAPISessionJSONTask { + + func postDestroyCollection(_ request: PostCollectionsDestroyRequestV1) -> TwitterAPISessionJSONTask { return collection.postDestroyCollection(request) } - public func postCollectionAddEntry(_ request: PostCollectionsEntriesAddRequestV1) -> TwitterAPISessionJSONTask { + + func postCollectionAddEntry(_ request: PostCollectionsEntriesAddRequestV1) -> TwitterAPISessionJSONTask { return collection.postCollectionAddEntry(request) } - public func postCollectionCurate(_ request: PostCollectionsEntriesCurateRequestV1) -> TwitterAPISessionJSONTask { + + func postCollectionCurate(_ request: PostCollectionsEntriesCurateRequestV1) -> TwitterAPISessionJSONTask { return collection.postCollectionCurate(request) } - public func postCollectionMoveEntry(_ request: PostCollectionsEntriesMoveRequestV1) -> TwitterAPISessionJSONTask { + + func postCollectionMoveEntry(_ request: PostCollectionsEntriesMoveRequestV1) -> TwitterAPISessionJSONTask { return collection.postCollectionMoveEntry(request) } - public func postCollectionRemoveEntry(_ request: PostCollectionsEntriesRemoveRequestV1) -> TwitterAPISessionJSONTask { + + func postCollectionRemoveEntry(_ request: PostCollectionsEntriesRemoveRequestV1) -> TwitterAPISessionJSONTask { return collection.postCollectionRemoveEntry(request) } - public func postCollectionUpdate(_ request: PostCollectionsUpdateRequestV1) -> TwitterAPISessionJSONTask { + + func postCollectionUpdate(_ request: PostCollectionsUpdateRequestV1) -> TwitterAPISessionJSONTask { return collection.postCollectionUpdate(request) } // MARK: - DirectMessageAPIv1 - public func postDirectMessage(_ request: PostDirectMessageRequestV1) -> TwitterAPISessionJSONTask { + func postDirectMessage(_ request: PostDirectMessageRequestV1) -> TwitterAPISessionJSONTask { return directMessage.postDirectMessage(request) } - public func deleteDirectMessage(_ request: DeleteDirectMessageRequestV1) -> TwitterAPISessionDataTask { + + func deleteDirectMessage(_ request: DeleteDirectMessageRequestV1) -> TwitterAPISessionDataTask { return directMessage.deleteDirectMessage(request) } - public func getDirectMessage(_ request: GetDirectMessageRequestV1) -> TwitterAPISessionJSONTask { + + func getDirectMessage(_ request: GetDirectMessageRequestV1) -> TwitterAPISessionJSONTask { return directMessage.getDirectMessage(request) } - public func getDirectMessageList(_ request: GetDirectMessageListRequestV1) -> TwitterAPISessionJSONTask { + + func getDirectMessageList(_ request: GetDirectMessageListRequestV1) -> TwitterAPISessionJSONTask { return directMessage.getDirectMessageList(request) } - public func postDirectMessageMarkRead(_ request: PostDirectMessagesMarkReadRequestV1) -> TwitterAPISessionDataTask { + + func postDirectMessageMarkRead(_ request: PostDirectMessagesMarkReadRequestV1) -> TwitterAPISessionDataTask { return directMessage.postDirectMessageMarkRead(request) } - public func postDirectMessageTypingIndicator(_ request: PostDirectMessagesIndicateTypingRequestV1) -> TwitterAPISessionDataTask { + + func postDirectMessageTypingIndicator(_ request: PostDirectMessagesIndicateTypingRequestV1) -> TwitterAPISessionDataTask { return directMessage.postDirectMessageTypingIndicator(request) } // MARK: - FavoriteAPIv1 - public func postFavorite(_ request: PostFavoriteRequestV1) -> TwitterAPISessionJSONTask { + func postFavorite(_ request: PostFavoriteRequestV1) -> TwitterAPISessionJSONTask { return favorite.postFavorite(request) } - public func postUnFavorite(_ request: PostUnFavoriteRequestV1) -> TwitterAPISessionJSONTask { + + func postUnFavorite(_ request: PostUnFavoriteRequestV1) -> TwitterAPISessionJSONTask { return favorite.postUnFavorite(request) } - public func getFavorites(_ request: GetFavoritesRequestV1) -> TwitterAPISessionJSONTask { + + func getFavorites(_ request: GetFavoritesRequestV1) -> TwitterAPISessionJSONTask { return favorite.getFavorites(request) } // MARK: - FriendshipsAPIv1 - public func getFollowerIDs(_ request: GetFollowersIDsRequestV1) -> TwitterAPISessionJSONTask { + func getFollowerIDs(_ request: GetFollowersIDsRequestV1) -> TwitterAPISessionJSONTask { return friendships.getFollowerIDs(request) } - public func getFollowers(_ request: GetFollowersListRequestV1) -> TwitterAPISessionJSONTask { + + func getFollowers(_ request: GetFollowersListRequestV1) -> TwitterAPISessionJSONTask { return friendships.getFollowers(request) } - public func getFriendIDs(_ request: GetFriendsIDsRequestV1) -> TwitterAPISessionJSONTask { + + func getFriendIDs(_ request: GetFriendsIDsRequestV1) -> TwitterAPISessionJSONTask { return friendships.getFriendIDs(request) } - public func getFriends(_ request: GetFriendsListRequestV1) -> TwitterAPISessionJSONTask { + + func getFriends(_ request: GetFriendsListRequestV1) -> TwitterAPISessionJSONTask { return friendships.getFriends(request) } - public func getFriendshipsIncoming(_ request: GetFriendshipsIncomingRequestV1) -> TwitterAPISessionJSONTask { + + func getFriendshipsIncoming(_ request: GetFriendshipsIncomingRequestV1) -> TwitterAPISessionJSONTask { return friendships.getFriendshipsIncoming(request) } - public func getFriendshipsLookup(_ request: GetFriendshipsLookupRequestV1) -> TwitterAPISessionJSONTask { + + func getFriendshipsLookup(_ request: GetFriendshipsLookupRequestV1) -> TwitterAPISessionJSONTask { return friendships.getFriendshipsLookup(request) } - public func getFriendshipsNoRetweetsIDs(_ request: GetFriendshipsNoRetweetsIDsRequestV1) -> TwitterAPISessionJSONTask { + + func getFriendshipsNoRetweetsIDs(_ request: GetFriendshipsNoRetweetsIDsRequestV1) -> TwitterAPISessionJSONTask { return friendships.getFriendshipsNoRetweetsIDs(request) } - public func getFriendshipsOutgoing(_ request: GetFriendshipsOutgoingRequestV1) -> TwitterAPISessionJSONTask { + + func getFriendshipsOutgoing(_ request: GetFriendshipsOutgoingRequestV1) -> TwitterAPISessionJSONTask { return friendships.getFriendshipsOutgoing(request) } - public func getFriendships(_ request: GetFriendshipsShowRequestV1) -> TwitterAPISessionJSONTask { + + func getFriendships(_ request: GetFriendshipsShowRequestV1) -> TwitterAPISessionJSONTask { return friendships.getFriendships(request) } - public func postFollowUser(_ request: PostFriendshipsCreateRequestV1) -> TwitterAPISessionJSONTask { + + func postFollowUser(_ request: PostFriendshipsCreateRequestV1) -> TwitterAPISessionJSONTask { return friendships.postFollowUser(request) } - public func postUnfollowUser(_ request: PostFriendshipsDestroyRequestV1) -> TwitterAPISessionJSONTask { + + func postUnfollowUser(_ request: PostFriendshipsDestroyRequestV1) -> TwitterAPISessionJSONTask { return friendships.postUnfollowUser(request) } - public func postFriendshipsUpdate(_ request: PostFriendshipsUpdateRequestV1) -> TwitterAPISessionJSONTask { + + func postFriendshipsUpdate(_ request: PostFriendshipsUpdateRequestV1) -> TwitterAPISessionJSONTask { return friendships.postFriendshipsUpdate(request) } // MARK: - GeoAPIv1 - public func getReverseGeocode(_ request: GetGeoReverseGeocodeRequestV1) -> TwitterAPISessionJSONTask { + func getReverseGeocode(_ request: GetGeoReverseGeocodeRequestV1) -> TwitterAPISessionJSONTask { return geo.getReverseGeocode(request) } - public func getGeoPlace(_ request: GetGeoPlaceIDRequestV1) -> TwitterAPISessionJSONTask { + + func getGeoPlace(_ request: GetGeoPlaceIDRequestV1) -> TwitterAPISessionJSONTask { return geo.getGeoPlace(request) } - public func searchGeo(_ request: GetGeoSearchRequestV1) -> TwitterAPISessionJSONTask { + + func searchGeo(_ request: GetGeoSearchRequestV1) -> TwitterAPISessionJSONTask { return geo.searchGeo(request) } // MARK: - HelpAPIv1 - public func getSupportedLanguages(_ request: GetHelpLanguagesRequestV1) -> TwitterAPISessionJSONTask { + func getSupportedLanguages(_ request: GetHelpLanguagesRequestV1) -> TwitterAPISessionJSONTask { return help.getSupportedLanguages(request) } // MARK: - ListAPIv1 - public func getLists(_ request: GetListsListRequestV1) -> TwitterAPISessionJSONTask { + func getLists(_ request: GetListsListRequestV1) -> TwitterAPISessionJSONTask { return list.getLists(request) } - public func getListMembers(_ request: GetListsMembersRequestV1) -> TwitterAPISessionJSONTask { + + func getListMembers(_ request: GetListsMembersRequestV1) -> TwitterAPISessionJSONTask { return list.getListMembers(request) } - public func getListMember(_ request: GetListsMembersShowRequestV1) -> TwitterAPISessionJSONTask { + + func getListMember(_ request: GetListsMembersShowRequestV1) -> TwitterAPISessionJSONTask { return list.getListMember(request) } - public func getListMemberships(_ request: GetListsMembershipsRequestV1) -> TwitterAPISessionJSONTask { + + func getListMemberships(_ request: GetListsMembershipsRequestV1) -> TwitterAPISessionJSONTask { return list.getListMemberships(request) } - public func getListOwnerships(_ request: GetListsOwnershipsRequestV1) -> TwitterAPISessionJSONTask { + + func getListOwnerships(_ request: GetListsOwnershipsRequestV1) -> TwitterAPISessionJSONTask { return list.getListOwnerships(request) } - public func getList(_ request: GetListsShowRequestV1) -> TwitterAPISessionJSONTask { + + func getList(_ request: GetListsShowRequestV1) -> TwitterAPISessionJSONTask { return list.getList(request) } - public func getListStatuses(_ request: GetListsStatusesRequestV1) -> TwitterAPISessionJSONTask { + + func getListStatuses(_ request: GetListsStatusesRequestV1) -> TwitterAPISessionJSONTask { return list.getListStatuses(request) } - public func getListSubscribers(_ request: GetListsSubscribersRequestV1) -> TwitterAPISessionJSONTask { + + func getListSubscribers(_ request: GetListsSubscribersRequestV1) -> TwitterAPISessionJSONTask { return list.getListSubscribers(request) } - public func getListSubscriber(_ request: GetListsSubscribersShowRequestV1) -> TwitterAPISessionJSONTask { + + func getListSubscriber(_ request: GetListsSubscribersShowRequestV1) -> TwitterAPISessionJSONTask { return list.getListSubscriber(request) } - public func getListSubscriptions(_ request: GetListsSubscriptionsRequestV1) -> TwitterAPISessionJSONTask { + + func getListSubscriptions(_ request: GetListsSubscriptionsRequestV1) -> TwitterAPISessionJSONTask { return list.getListSubscriptions(request) } - public func postCreateList(_ request: PostListsCreateRequestV1) -> TwitterAPISessionJSONTask { + + func postCreateList(_ request: PostListsCreateRequestV1) -> TwitterAPISessionJSONTask { return list.postCreateList(request) } - public func postDestroyList(_ request: PostListsDestroyRequestV1) -> TwitterAPISessionJSONTask { + + func postDestroyList(_ request: PostListsDestroyRequestV1) -> TwitterAPISessionJSONTask { return list.postDestroyList(request) } - public func postAddListMember(_ request: PostListsMembersCreateRequestV1) -> TwitterAPISessionJSONTask { + + func postAddListMember(_ request: PostListsMembersCreateRequestV1) -> TwitterAPISessionJSONTask { return list.postAddListMember(request) } - public func postAddListMembers(_ request: PostListsMembersCreateAllRequestV1) -> TwitterAPISessionJSONTask { + + func postAddListMembers(_ request: PostListsMembersCreateAllRequestV1) -> TwitterAPISessionJSONTask { return list.postAddListMembers(request) } - public func postRemoveListMember(_ request: PostListsMembersDestroyRequestV1) -> TwitterAPISessionJSONTask { + + func postRemoveListMember(_ request: PostListsMembersDestroyRequestV1) -> TwitterAPISessionJSONTask { return list.postRemoveListMember(request) } - public func postRemoveListMembers(_ request: PostListsMembersDestroyAllRequestV1) -> TwitterAPISessionJSONTask { + + func postRemoveListMembers(_ request: PostListsMembersDestroyAllRequestV1) -> TwitterAPISessionJSONTask { return list.postRemoveListMembers(request) } - public func postSubscribeList(_ request: PostListsSubscribersCreateRequestV1) -> TwitterAPISessionJSONTask { + + func postSubscribeList(_ request: PostListsSubscribersCreateRequestV1) -> TwitterAPISessionJSONTask { return list.postSubscribeList(request) } - public func postUnsubscribeList(_ request: PostListsSubscribersDestroyRequestV1) -> TwitterAPISessionJSONTask { + + func postUnsubscribeList(_ request: PostListsSubscribersDestroyRequestV1) -> TwitterAPISessionJSONTask { return list.postUnsubscribeList(request) } - public func postUpdateList(_ request: PostListsUpdateRequestV1) -> TwitterAPISessionJSONTask { + + func postUpdateList(_ request: PostListsUpdateRequestV1) -> TwitterAPISessionJSONTask { return list.postUpdateList(request) } // MARK: - MediaAPIv1 - public func getUploadMediaStatus(_ request: GetUploadMediaStatusRequestV1) -> TwitterAPISessionJSONTask { + func getUploadMediaStatus(_ request: GetUploadMediaStatusRequestV1) -> TwitterAPISessionJSONTask { return media.getUploadMediaStatus(request) } - public func uploadMediaInit(_ request: UploadMediaInitRequestV1) -> TwitterAPISessionJSONTask { + + func uploadMediaInit(_ request: UploadMediaInitRequestV1) -> TwitterAPISessionJSONTask { return media.uploadMediaInit(request) } - public func uploadMediaAppend(_ request: UploadMediaAppendRequestV1) -> TwitterAPISessionJSONTask { + + func uploadMediaAppend(_ request: UploadMediaAppendRequestV1) -> TwitterAPISessionJSONTask { return media.uploadMediaAppend(request) } - public func uploadMediaAppendSplitChunks(_ request: UploadMediaAppendRequestV1, maxBytes: Int = 5_242_880) -> [TwitterAPISessionSpecializedTask] { + + func uploadMediaAppendSplitChunks(_ request: UploadMediaAppendRequestV1, maxBytes: Int = 5_242_880) -> [TwitterAPISessionSpecializedTask] { return media.uploadMediaAppendSplitChunks(request, maxBytes: maxBytes) } - public func uploadMediaFinalize(_ request: UploadMediaFinalizeRequestV1) -> TwitterAPISessionJSONTask { + + func uploadMediaFinalize(_ request: UploadMediaFinalizeRequestV1) -> TwitterAPISessionJSONTask { return media.uploadMediaFinalize(request) } - public func uploadMedia(_ parameters: UploadMediaRequestParameters, completionHandler: @escaping (TwitterAPIResponse) -> Void) { + + func uploadMedia(_ parameters: UploadMediaRequestParameters, completionHandler: @escaping (TwitterAPIResponse) -> Void) { media.uploadMedia(parameters, completionHandler: completionHandler) } - public func waitMediaProcessing(mediaID: String, initialWaitSec: Int, completionHandler: @escaping (TwitterAPIResponse) -> Void) { + + func waitMediaProcessing(mediaID: String, initialWaitSec: Int, completionHandler: @escaping (TwitterAPIResponse) -> Void) { media.waitMediaProcessing(mediaID: mediaID, initialWaitSec: initialWaitSec, completionHandler: completionHandler) } - public func waitMediaProcessing(mediaID: String, completionHandler: @escaping (TwitterAPIResponse) -> Void) { + + func waitMediaProcessing(mediaID: String, completionHandler: @escaping (TwitterAPIResponse) -> Void) { media.waitMediaProcessing(mediaID: mediaID, completionHandler: completionHandler) } - public func createMediaMetadata(_ request: PostMediaMetadataCreateRequestV1) -> TwitterAPISessionDataTask { + + func createMediaMetadata(_ request: PostMediaMetadataCreateRequestV1) -> TwitterAPISessionDataTask { return media.createMediaMetadata(request) } - public func createSubtitle(_ request: PostMediaSubtitlesCreateRequestV1) -> TwitterAPISessionDataTask { + + func createSubtitle(_ request: PostMediaSubtitlesCreateRequestV1) -> TwitterAPISessionDataTask { return media.createSubtitle(request) } - public func deleteSubtitle(_ request: PostMediaSubtitlesDeleteRequestV1) -> TwitterAPISessionDataTask { + + func deleteSubtitle(_ request: PostMediaSubtitlesDeleteRequestV1) -> TwitterAPISessionDataTask { return media.deleteSubtitle(request) } // MARK: - RetweetAPIv1 - public func postRetweet(_ request: PostRetweetRequestV1) -> TwitterAPISessionJSONTask { + func postRetweet(_ request: PostRetweetRequestV1) -> TwitterAPISessionJSONTask { return retweet.postRetweet(request) } - public func postUnRetweet(_ request: PostUnRetweetRequestV1) -> TwitterAPISessionJSONTask { + + func postUnRetweet(_ request: PostUnRetweetRequestV1) -> TwitterAPISessionJSONTask { return retweet.postUnRetweet(request) } - public func getRetweets(_ request: GetRetweetsRequestV1) -> TwitterAPISessionJSONTask { + + func getRetweets(_ request: GetRetweetsRequestV1) -> TwitterAPISessionJSONTask { return retweet.getRetweets(request) } - public func getRetweetsOfMe(_ request: GetRetweetsOfMeRequestV1) -> TwitterAPISessionJSONTask { + + func getRetweetsOfMe(_ request: GetRetweetsOfMeRequestV1) -> TwitterAPISessionJSONTask { return retweet.getRetweetsOfMe(request) } - public func getRetweeters(_ request: GetRetweetersRequestV1) -> TwitterAPISessionJSONTask { + + func getRetweeters(_ request: GetRetweetersRequestV1) -> TwitterAPISessionJSONTask { return retweet.getRetweeters(request) } // MARK: - SearchAPIv1 - public func searchTweets(_ request: GetSearchTweetsRequestV1) -> TwitterAPISessionJSONTask { + func searchTweets(_ request: GetSearchTweetsRequestV1) -> TwitterAPISessionJSONTask { return search.searchTweets(request) } - public func getSavedSearches(_ request: GetSavedSearchesListRequestV1) -> TwitterAPISessionJSONTask { + + func getSavedSearches(_ request: GetSavedSearchesListRequestV1) -> TwitterAPISessionJSONTask { return search.getSavedSearches(request) } - public func postCreateSavedSearch(_ request: PostSavedSearchesCreateRequestV1) -> TwitterAPISessionJSONTask { + + func postCreateSavedSearch(_ request: PostSavedSearchesCreateRequestV1) -> TwitterAPISessionJSONTask { return search.postCreateSavedSearch(request) } - public func postDestroySavedSearch(_ request: PostSavedSearchesCreateRequestV1) -> TwitterAPISessionJSONTask { + + func postDestroySavedSearch(_ request: PostSavedSearchesCreateRequestV1) -> TwitterAPISessionJSONTask { return search.postDestroySavedSearch(request) } // MARK: - TimelineAPIv1 - public func getHomeTimeline(_ request: GetStatusesHomeTimelineRequestV1) -> TwitterAPISessionJSONTask { + func getHomeTimeline(_ request: GetStatusesHomeTimelineRequestV1) -> TwitterAPISessionJSONTask { return timeline.getHomeTimeline(request) } - public func getMentionsTimeline(_ request: GetStatusesMentionsTimelineRequestV1) -> TwitterAPISessionJSONTask { + + func getMentionsTimeline(_ request: GetStatusesMentionsTimelineRequestV1) -> TwitterAPISessionJSONTask { return timeline.getMentionsTimeline(request) } - public func getUserTimeline(_ request: GetStatusesUserTimelineRequestV1) -> TwitterAPISessionJSONTask { + + func getUserTimeline(_ request: GetStatusesUserTimelineRequestV1) -> TwitterAPISessionJSONTask { return timeline.getUserTimeline(request) } // MARK: - TrendAPIv1 - public func getTrendsAvailable(_ request: GetTrendsAvailableRequestV1) -> TwitterAPISessionJSONTask { + func getTrendsAvailable(_ request: GetTrendsAvailableRequestV1) -> TwitterAPISessionJSONTask { return trend.getTrendsAvailable(request) } - public func getTrendsClosest(_ request: GetTrendsClosestRequestV1) -> TwitterAPISessionJSONTask { + + func getTrendsClosest(_ request: GetTrendsClosestRequestV1) -> TwitterAPISessionJSONTask { return trend.getTrendsClosest(request) } - public func getTrends(_ request: GetTrendsPlaceRequestV1) -> TwitterAPISessionJSONTask { + + func getTrends(_ request: GetTrendsPlaceRequestV1) -> TwitterAPISessionJSONTask { return trend.getTrends(request) } // MARK: - TweetAPIv1 - public func postUpdateStatus(_ request: PostStatusesUpdateRequestV1) -> TwitterAPISessionJSONTask { + func postUpdateStatus(_ request: PostStatusesUpdateRequestV1) -> TwitterAPISessionJSONTask { return tweet.postUpdateStatus(request) } - public func postDestroyStatus(_ request: PostStatusesDestroyRequestV1) -> TwitterAPISessionJSONTask { + + func postDestroyStatus(_ request: PostStatusesDestroyRequestV1) -> TwitterAPISessionJSONTask { return tweet.postDestroyStatus(request) } - public func getShowStatus(_ request: GetStatusesShowRequestV1) -> TwitterAPISessionJSONTask { + + func getShowStatus(_ request: GetStatusesShowRequestV1) -> TwitterAPISessionJSONTask { return tweet.getShowStatus(request) } - public func getLookupStatuses(_ request: GetStatusesLookupRequestV1) -> TwitterAPISessionJSONTask { + + func getLookupStatuses(_ request: GetStatusesLookupRequestV1) -> TwitterAPISessionJSONTask { return tweet.getLookupStatuses(request) } // MARK: - UserAPIv1 - public func getUsers(_ request: GetUsersLookupRequestV1) -> TwitterAPISessionJSONTask { + func getUsers(_ request: GetUsersLookupRequestV1) -> TwitterAPISessionJSONTask { return user.getUsers(request) } - public func getUser(_ request: GetUsersShowRequestV1) -> TwitterAPISessionJSONTask { + + func getUser(_ request: GetUsersShowRequestV1) -> TwitterAPISessionJSONTask { return user.getUser(request) } - public func searchUser(_ request: GetUsersShowRequestV1) -> TwitterAPISessionJSONTask { + + func searchUser(_ request: GetUsersShowRequestV1) -> TwitterAPISessionJSONTask { return user.searchUser(request) } - public func getUserProfileBanner(_ request: GetUsersProfileBannerRequestV1) -> TwitterAPISessionJSONTask { + + func getUserProfileBanner(_ request: GetUsersProfileBannerRequestV1) -> TwitterAPISessionJSONTask { return user.getUserProfileBanner(request) } } -extension TwitterAPIv2 { - +public extension TwitterAPIv2 { // MARK: - BlockAndMuteAPIv2 - public func getBlockUsers(_ request: GetUsersBlockingRequestV2) -> TwitterAPISessionJSONTask { + func getBlockUsers(_ request: GetUsersBlockingRequestV2) -> TwitterAPISessionJSONTask { return blockAndMute.getBlockUsers(request) } - public func blockUser(_ request: PostUsersBlockingRequestV2) -> TwitterAPISessionJSONTask { + + func blockUser(_ request: PostUsersBlockingRequestV2) -> TwitterAPISessionJSONTask { return blockAndMute.blockUser(request) } - public func unblockUser(_ request: DeleteUsersBlockingRequestV2) -> TwitterAPISessionJSONTask { + + func unblockUser(_ request: DeleteUsersBlockingRequestV2) -> TwitterAPISessionJSONTask { return blockAndMute.unblockUser(request) } - public func getMuteUsers(_ request: GetUsersMutingRequestV2) -> TwitterAPISessionJSONTask { + + func getMuteUsers(_ request: GetUsersMutingRequestV2) -> TwitterAPISessionJSONTask { return blockAndMute.getMuteUsers(request) } - public func muteUser(_ request: PostUsersMutingRequestV2) -> TwitterAPISessionJSONTask { + + func muteUser(_ request: PostUsersMutingRequestV2) -> TwitterAPISessionJSONTask { return blockAndMute.muteUser(request) } - public func unmuteUser(_ request: DeleteUsersMutingRequestV2) -> TwitterAPISessionJSONTask { + + func unmuteUser(_ request: DeleteUsersMutingRequestV2) -> TwitterAPISessionJSONTask { return blockAndMute.unmuteUser(request) } // MARK: - BookmarksAPIv2 - public func getBookmarks(_ request: GetUsersBookmarksRequestV2) -> TwitterAPISessionJSONTask { + func getBookmarks(_ request: GetUsersBookmarksRequestV2) -> TwitterAPISessionJSONTask { return bookmarks.getBookmarks(request) } - public func createBookmark(_ request: PostUsersBookmarksRequestV2) -> TwitterAPISessionJSONTask { + + func createBookmark(_ request: PostUsersBookmarksRequestV2) -> TwitterAPISessionJSONTask { return bookmarks.createBookmark(request) } - public func deleteBookmark(_ request: DeleteUsersBookmarksRequestV2) -> TwitterAPISessionJSONTask { + + func deleteBookmark(_ request: DeleteUsersBookmarksRequestV2) -> TwitterAPISessionJSONTask { return bookmarks.deleteBookmark(request) } // MARK: - ComplianceAPIv2 - public func getComplianceJob(_ request: GetComplianceJobRequestV2) -> TwitterAPISessionJSONTask { + func getComplianceJob(_ request: GetComplianceJobRequestV2) -> TwitterAPISessionJSONTask { return compliance.getComplianceJob(request) } - public func getComplianceJobj(_ request: GetComplianceJobsRequestV2) -> TwitterAPISessionJSONTask { + + func getComplianceJobj(_ request: GetComplianceJobsRequestV2) -> TwitterAPISessionJSONTask { return compliance.getComplianceJobj(request) } - public func createComplianceJob(_ request: PostComplianceJobsRequestV2) -> TwitterAPISessionJSONTask { + + func createComplianceJob(_ request: PostComplianceJobsRequestV2) -> TwitterAPISessionJSONTask { return compliance.createComplianceJob(request) } // MARK: - FriendshipsAPIv2 - public func getFollowing(_ request: GetUsersFollowingRequestV2) -> TwitterAPISessionJSONTask { + func getFollowing(_ request: GetUsersFollowingRequestV2) -> TwitterAPISessionJSONTask { return friendships.getFollowing(request) } - public func getFollowers(_ request: GetUsersFollowersRequestV2) -> TwitterAPISessionJSONTask { + + func getFollowers(_ request: GetUsersFollowersRequestV2) -> TwitterAPISessionJSONTask { return friendships.getFollowers(request) } - public func follow(_ request: PostUsersFollowingRequestV2) -> TwitterAPISessionJSONTask { + + func follow(_ request: PostUsersFollowingRequestV2) -> TwitterAPISessionJSONTask { return friendships.follow(request) } - public func unfollow(_ request: DeleteUsersFollowingRequestV2) -> TwitterAPISessionJSONTask { + + func unfollow(_ request: DeleteUsersFollowingRequestV2) -> TwitterAPISessionJSONTask { return friendships.unfollow(request) } // MARK: - LikeAPIv2 - public func getLikingUsers(_ request: GetTweetsLikingUsersRequestV2) -> TwitterAPISessionJSONTask { + func getLikingUsers(_ request: GetTweetsLikingUsersRequestV2) -> TwitterAPISessionJSONTask { return like.getLikingUsers(request) } - public func getLikedTweets(_ request: GetUsersLikedTweetsRequestV2) -> TwitterAPISessionJSONTask { + + func getLikedTweets(_ request: GetUsersLikedTweetsRequestV2) -> TwitterAPISessionJSONTask { return like.getLikedTweets(request) } - public func postLike(_ request: PostUsersLikesRequestV2) -> TwitterAPISessionJSONTask { + + func postLike(_ request: PostUsersLikesRequestV2) -> TwitterAPISessionJSONTask { return like.postLike(request) } - public func deleteLike(_ request: DeleteUsersLikesRequestV2) -> TwitterAPISessionJSONTask { + + func deleteLike(_ request: DeleteUsersLikesRequestV2) -> TwitterAPISessionJSONTask { return like.deleteLike(request) } // MARK: - ListAPIv2 - public func getListTweets(_ request: GetListsTweetsRequestV2) -> TwitterAPISessionJSONTask { + func getListTweets(_ request: GetListsTweetsRequestV2) -> TwitterAPISessionJSONTask { return list.getListTweets(request) } - public func getList(_ request: GetListRequestV2) -> TwitterAPISessionJSONTask { + + func getList(_ request: GetListRequestV2) -> TwitterAPISessionJSONTask { return list.getList(request) } - public func getLists(_ request: GetUsersOwnedListsRequestV2) -> TwitterAPISessionJSONTask { + + func getLists(_ request: GetUsersOwnedListsRequestV2) -> TwitterAPISessionJSONTask { return list.getLists(request) } - public func followList(_ request: PostUsersFollowedListsRequestV2) -> TwitterAPISessionJSONTask { + + func followList(_ request: PostUsersFollowedListsRequestV2) -> TwitterAPISessionJSONTask { return list.followList(request) } - public func unfollowList(_ request: DeleteUsersFollowedListsRequestV2) -> TwitterAPISessionJSONTask { + + func unfollowList(_ request: DeleteUsersFollowedListsRequestV2) -> TwitterAPISessionJSONTask { return list.unfollowList(request) } - public func listFollowers(_ request: GetListsFollowersRequestV2) -> TwitterAPISessionJSONTask { + + func listFollowers(_ request: GetListsFollowersRequestV2) -> TwitterAPISessionJSONTask { return list.listFollowers(request) } - public func followedLists(_ request: GetUsersFollowedListsRequestV2) -> TwitterAPISessionJSONTask { + + func followedLists(_ request: GetUsersFollowedListsRequestV2) -> TwitterAPISessionJSONTask { return list.followedLists(request) } - public func addListMember(_ request: PostListsMembersRequestV2) -> TwitterAPISessionJSONTask { + + func addListMember(_ request: PostListsMembersRequestV2) -> TwitterAPISessionJSONTask { return list.addListMember(request) } - public func removeListMember(_ request: DeleteListsMembersRequestV2) -> TwitterAPISessionJSONTask { + + func removeListMember(_ request: DeleteListsMembersRequestV2) -> TwitterAPISessionJSONTask { return list.removeListMember(request) } - public func getListMemberships(_ request: GetUsersListMembershipsRequestV2) -> TwitterAPISessionJSONTask { + + func getListMemberships(_ request: GetUsersListMembershipsRequestV2) -> TwitterAPISessionJSONTask { return list.getListMemberships(request) } - public func getListMembers(_ request: GetListsMembersRequestV2) -> TwitterAPISessionJSONTask { + + func getListMembers(_ request: GetListsMembersRequestV2) -> TwitterAPISessionJSONTask { return list.getListMembers(request) } - public func createList(_ request: PostListsRequestV2) -> TwitterAPISessionJSONTask { + + func createList(_ request: PostListsRequestV2) -> TwitterAPISessionJSONTask { return list.createList(request) } - public func updateList(_ request: PutListRequestV2) -> TwitterAPISessionJSONTask { + + func updateList(_ request: PutListRequestV2) -> TwitterAPISessionJSONTask { return list.updateList(request) } - public func deleteList(_ request: DeleteListRequestV2) -> TwitterAPISessionJSONTask { + + func deleteList(_ request: DeleteListRequestV2) -> TwitterAPISessionJSONTask { return list.deleteList(request) } - public func pinnedList(_ request: GetUsersPinnedListsRequestV2) -> TwitterAPISessionJSONTask { + + func pinnedList(_ request: GetUsersPinnedListsRequestV2) -> TwitterAPISessionJSONTask { return list.pinnedList(request) } - public func pinList(_ request: PostUsersPinnedListsRequestV2) -> TwitterAPISessionJSONTask { + + func pinList(_ request: PostUsersPinnedListsRequestV2) -> TwitterAPISessionJSONTask { return list.pinList(request) } - public func unpinList(_ request: DeleteUsersPinnedListsRequestV2) -> TwitterAPISessionJSONTask { + + func unpinList(_ request: DeleteUsersPinnedListsRequestV2) -> TwitterAPISessionJSONTask { return list.unpinList(request) } // MARK: - RetweetAPIv2 - public func getRetweetedBy(_ request: GetTweetsRetweetedByRequestV2) -> TwitterAPISessionJSONTask { + func getRetweetedBy(_ request: GetTweetsRetweetedByRequestV2) -> TwitterAPISessionJSONTask { return retweet.getRetweetedBy(request) } - public func postRetweet(_ request: PostUsersRetweetsRequestV2) -> TwitterAPISessionJSONTask { + + func postRetweet(_ request: PostUsersRetweetsRequestV2) -> TwitterAPISessionJSONTask { return retweet.postRetweet(request) } - public func deleteRetweet(_ request: DeleteUsersRetweetsRequestV2) -> TwitterAPISessionJSONTask { + + func deleteRetweet(_ request: DeleteUsersRetweetsRequestV2) -> TwitterAPISessionJSONTask { return retweet.deleteRetweet(request) } // MARK: - SearchAPIv2 - public func searchTweetsRecent(_ request: GetTweetsSearchRecentRequestV2) -> TwitterAPISessionJSONTask { + func searchTweetsRecent(_ request: GetTweetsSearchRecentRequestV2) -> TwitterAPISessionJSONTask { return search.searchTweetsRecent(request) } - public func searchTweetsAll(_ request: GetTweetsSearchAllRequestV2) -> TwitterAPISessionJSONTask { + + func searchTweetsAll(_ request: GetTweetsSearchAllRequestV2) -> TwitterAPISessionJSONTask { return search.searchTweetsAll(request) } // MARK: - SpacesAPIv2 - public func getSpace(_ request: GetSpaceRequestV2) -> TwitterAPISessionJSONTask { + func getSpace(_ request: GetSpaceRequestV2) -> TwitterAPISessionJSONTask { return spaces.getSpace(request) } - public func getSpaces(_ request: GetSpacesRequestV2) -> TwitterAPISessionJSONTask { + + func getSpaces(_ request: GetSpacesRequestV2) -> TwitterAPISessionJSONTask { return spaces.getSpaces(request) } - public func getSpacesByCreators(_ request: GetSpacesByCreatorIDsRequestV2) -> TwitterAPISessionJSONTask { + + func getSpacesByCreators(_ request: GetSpacesByCreatorIDsRequestV2) -> TwitterAPISessionJSONTask { return spaces.getSpacesByCreators(request) } - public func getSpacesBuyers(_ request: GetSpacesBuyersRequestV2) -> TwitterAPISessionJSONTask { + + func getSpacesBuyers(_ request: GetSpacesBuyersRequestV2) -> TwitterAPISessionJSONTask { return spaces.getSpacesBuyers(request) } - public func getSPacesTweets(_ request: GetSpacesTweetsRequestV2) -> TwitterAPISessionJSONTask { + + func getSPacesTweets(_ request: GetSpacesTweetsRequestV2) -> TwitterAPISessionJSONTask { return spaces.getSPacesTweets(request) } - public func searchSpaces(_ request: GetSpacesSearchRequestV2) -> TwitterAPISessionJSONTask { + + func searchSpaces(_ request: GetSpacesSearchRequestV2) -> TwitterAPISessionJSONTask { return spaces.searchSpaces(request) } // MARK: - StreamAPIv2 - public func sampleStream(_ request: GetTweetsSampleStreamRequestV2) -> TwitterAPISessionStreamTask { + func sampleStream(_ request: GetTweetsSampleStreamRequestV2) -> TwitterAPISessionStreamTask { return stream.sampleStream(request) } - public func getSearchStreamRules(_ request: GetTweetsSearchStreamRulesRequestV2) -> TwitterAPISessionJSONTask { + + func getSearchStreamRules(_ request: GetTweetsSearchStreamRulesRequestV2) -> TwitterAPISessionJSONTask { return stream.getSearchStreamRules(request) } - public func postSearchStreamRules(_ request: PostTweetsSearchStreamRulesRequestV2) -> TwitterAPISessionJSONTask { + + func postSearchStreamRules(_ request: PostTweetsSearchStreamRulesRequestV2) -> TwitterAPISessionJSONTask { return stream.postSearchStreamRules(request) } - public func searchStream(_ request: GetTweetsSearchStreamRequestV2) -> TwitterAPISessionStreamTask { + + func searchStream(_ request: GetTweetsSearchStreamRequestV2) -> TwitterAPISessionStreamTask { return stream.searchStream(request) } // MARK: - TimelineAPIv2 - public func getUserTweets(_ request: GetUsersTweetsRequestV2) -> TwitterAPISessionJSONTask { + func getUserTweets(_ request: GetUsersTweetsRequestV2) -> TwitterAPISessionJSONTask { return timeline.getUserTweets(request) } - public func getUserMensions(_ request: GetUsersMentionsRequestV2) -> TwitterAPISessionJSONTask { + + func getUserMensions(_ request: GetUsersMentionsRequestV2) -> TwitterAPISessionJSONTask { return timeline.getUserMensions(request) } - public func getUserReverseChronological(_ request: GetUsersTimelinesReverseChronologicalRequestV2) -> TwitterAPISessionJSONTask { + + func getUserReverseChronological(_ request: GetUsersTimelinesReverseChronologicalRequestV2) -> TwitterAPISessionJSONTask { return timeline.getUserReverseChronological(request) } // MARK: - TweetAPIv2 - public func getTweets(_ request: GetTweetsRequestV2) -> TwitterAPISessionJSONTask { + func getTweets(_ request: GetTweetsRequestV2) -> TwitterAPISessionJSONTask { return tweet.getTweets(request) } - public func getTweet(_ request: GetTweetRequestV2) -> TwitterAPISessionJSONTask { + + func getTweet(_ request: GetTweetRequestV2) -> TwitterAPISessionJSONTask { return tweet.getTweet(request) } - public func getQuoteTweets(_ request: GetTweetsQuoteTweetsRequestV2) -> TwitterAPISessionJSONTask { + + func getQuoteTweets(_ request: GetTweetsQuoteTweetsRequestV2) -> TwitterAPISessionJSONTask { return tweet.getQuoteTweets(request) } - public func deleteTweet(_ request: DeleteTweetRequestV2) -> TwitterAPISessionJSONTask { + + func deleteTweet(_ request: DeleteTweetRequestV2) -> TwitterAPISessionJSONTask { return tweet.deleteTweet(request) } - public func postTweet(_ request: PostTweetsRequestV2) -> TwitterAPISessionJSONTask { + + func postTweet(_ request: PostTweetsRequestV2) -> TwitterAPISessionJSONTask { return tweet.postTweet(request) } - public func hideReply(_ request: PutTweetsHiddenRequestV2) -> TwitterAPISessionJSONTask { + + func hideReply(_ request: PutTweetsHiddenRequestV2) -> TwitterAPISessionJSONTask { return tweet.hideReply(request) } // MARK: - TweetCountAPIv2 - public func getTweetCountRecent(_ request: GetTweetsCountsRecentRequestV2) -> TwitterAPISessionJSONTask { + func getTweetCountRecent(_ request: GetTweetsCountsRecentRequestV2) -> TwitterAPISessionJSONTask { return tweetCount.getTweetCountRecent(request) } - public func getTweetCountAll(_ request: GetTweetsCountsAllRequestV2) -> TwitterAPISessionJSONTask { + + func getTweetCountAll(_ request: GetTweetsCountsAllRequestV2) -> TwitterAPISessionJSONTask { return tweetCount.getTweetCountAll(request) } // MARK: - UserAPIv2 - public func getUser(_ request: GetUserRequestV2) -> TwitterAPISessionJSONTask { + func getUser(_ request: GetUserRequestV2) -> TwitterAPISessionJSONTask { return user.getUser(request) } - public func getUsers(_ request: GetUsersRequestV2) -> TwitterAPISessionJSONTask { + + func getUsers(_ request: GetUsersRequestV2) -> TwitterAPISessionJSONTask { return user.getUsers(request) } - public func getUserByUsername(_ request: GetUsersByUsernameRequestV2) -> TwitterAPISessionJSONTask { + + func getUserByUsername(_ request: GetUsersByUsernameRequestV2) -> TwitterAPISessionJSONTask { return user.getUserByUsername(request) } - public func getUsersByUsernames(_ request: GetUsersByRequestV2) -> TwitterAPISessionJSONTask { + + func getUsersByUsernames(_ request: GetUsersByRequestV2) -> TwitterAPISessionJSONTask { return user.getUsersByUsernames(request) } - public func getMe(_ request: GetUsersMeRequestV2) -> TwitterAPISessionJSONTask { + + func getMe(_ request: GetUsersMeRequestV2) -> TwitterAPISessionJSONTask { return user.getMe(request) } // MARK: - DirectMessageAPIv2 - public func getDmEvents(_ request: GetDmEventsRequestV2) -> TwitterAPISessionJSONTask { + func getDmEvents(_ request: GetDmEventsRequestV2) -> TwitterAPISessionJSONTask { return dm.getDmEvents(request) } - public func getDmEventsWithParticipantId(_ request: GetDmConversationsWithParticipantIdDmEventsRequestV2) -> TwitterAPISessionJSONTask { + + func getDmEventsWithParticipantId(_ request: GetDmConversationsWithParticipantIdDmEventsRequestV2) -> TwitterAPISessionJSONTask { return dm.getDmEventsWithParticipantId(request) } - public func getDmEventsByConversationsId(_ request: GetDmConversationsIdDmEventsRequestV2) -> TwitterAPISessionJSONTask { + + func getDmEventsByConversationsId(_ request: GetDmConversationsIdDmEventsRequestV2) -> TwitterAPISessionJSONTask { return dm.getDmEventsByConversationsId(request) } - public func postDmConversationById(_ request: PostDmConversationByIdRequestV2) -> TwitterAPISessionJSONTask { + + func postDmConversationById(_ request: PostDmConversationByIdRequestV2) -> TwitterAPISessionJSONTask { return dm.postDmConversationById(request) } - public func postDmConversationWithUser(_ request: PostDmConversationWithUserRequestV2) -> TwitterAPISessionJSONTask { + + func postDmConversationWithUser(_ request: PostDmConversationWithUserRequestV2) -> TwitterAPISessionJSONTask { return dm.postDmConversationWithUser(request) } - public func postDmConversation(_ request: PostDmConversationRequestV2) -> TwitterAPISessionJSONTask { + + func postDmConversation(_ request: PostDmConversationRequestV2) -> TwitterAPISessionJSONTask { return dm.postDmConversation(request) } } diff --git a/Sources/TwitterAPIKit/TwitterAPIClient.swift b/Sources/TwitterAPIKit/TwitterAPIClient.swift index 521a766d..260c59ad 100644 --- a/Sources/TwitterAPIKit/TwitterAPIClient.swift +++ b/Sources/TwitterAPIKit/TwitterAPIClient.swift @@ -1,7 +1,6 @@ import Foundation open class TwitterAPIClient { - public static var defaultJSONDecoder: JSONDecoder = { let decoder = JSONDecoder() decoder.keyDecodingStrategy = .convertFromSnakeCase @@ -62,7 +61,7 @@ open class TwitterAPIClient { } /// for OAuth1.0a - convenience public init( + public convenience init( consumerKey: String, consumerSecret: String, oauthToken: String, @@ -83,15 +82,15 @@ open class TwitterAPIClient { // MARK: - Refresh OAuth2.0 token -extension TwitterAPIClient { - public typealias RefreshOAuth20TokenResultValue = (token: TwitterAuthenticationMethod.OAuth20, refreshed: Bool) +public extension TwitterAPIClient { + typealias RefreshOAuth20TokenResultValue = (token: TwitterAuthenticationMethod.OAuth20, refreshed: Bool) /// Refresh OAuth2.0 token - public func refreshOAuth20Token( + func refreshOAuth20Token( type: TwitterAuthenticationMethod.OAuth20WithPKCEClientType, forceRefresh: Bool = false, _ block: @escaping (Result) -> Void ) { - guard case .oauth20(let token) = apiAuth else { + guard case let .oauth20(token) = apiAuth else { block(.failure(.refreshOAuth20TokenFailed(reason: .invalidAuthenticationMethod(apiAuth)))) return } @@ -118,7 +117,7 @@ extension TwitterAPIClient { .responseObject { [weak self] response in guard let self = self else { return } switch response.result { - case .success(let refreshedToken): + case let .success(refreshedToken): var token = token token.refresh(token: refreshedToken) self.session.refreshOAuth20Token(token) @@ -128,7 +127,7 @@ extension TwitterAPIClient { object: self, userInfo: [TwitterAPIClient.tokenUserInfoKey: token] ) - case .failure(let error): + case let .failure(error): block(.failure(error)) } self.refreshOAuth20TokenClient = nil @@ -143,8 +142,8 @@ open class TwitterAPIBase { } } -extension TwitterAPIClient { +public extension TwitterAPIClient { // swift-format-ignore - public static let didRefreshOAuth20Token = Notification.Name(rawValue: "TwitterAPIKit.TwitterAPIClient.Notification.didRefreshOAuth20Token") - public static let tokenUserInfoKey = "TwitterAPIKit.TwitterAPIClient.UserInfoKey.tokenUser" + static let didRefreshOAuth20Token = Notification.Name(rawValue: "TwitterAPIKit.TwitterAPIClient.Notification.didRefreshOAuth20Token") + static let tokenUserInfoKey = "TwitterAPIKit.TwitterAPIClient.UserInfoKey.tokenUser" } diff --git a/Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift b/Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift index f650680f..b8ee6093 100644 --- a/Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift +++ b/Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift @@ -21,63 +21,61 @@ public enum TwitterAPIErrorResponse: Equatable { } } -extension TwitterAPIErrorResponse { - public var message: String { +public extension TwitterAPIErrorResponse { + var message: String { switch self { - case .v1(let twitterAPIErrorResponseV1): + case let .v1(twitterAPIErrorResponseV1): return twitterAPIErrorResponseV1.message - case .v2(let twitterAPIErrorResponseV2): + case let .v2(twitterAPIErrorResponseV2): return twitterAPIErrorResponseV2.detail - case .unknown(let data): + case let .unknown(data): return String(data: data, encoding: .utf8) ?? "Unknown" } } - public var code: Int? { - if case .v1(let v1) = self { + var code: Int? { + if case let .v1(v1) = self { return v1.code } return nil } - public var isV1: Bool { + var isV1: Bool { return v1 != nil } - public var v1: TwitterAPIErrorResponseV1? { + var v1: TwitterAPIErrorResponseV1? { if case let .v1(v1) = self { return v1 } return nil } - public var isV2: Bool { + var isV2: Bool { return v2 != nil } - public var v2: TwitterAPIErrorResponseV2? { + var v2: TwitterAPIErrorResponseV2? { if case let .v2(v2) = self { return v2 } return nil } - public var isUnknown: Bool { + var isUnknown: Bool { return unknownData != nil } - public var unknownData: Data? { + var unknownData: Data? { if case let .unknown(data) = self { return data } return nil } - } /// https://developer.twitter.com/ja/docs/basics/response-codes public struct TwitterAPIErrorResponseV1 { - /// first error message public let message: String /// first error code @@ -105,8 +103,8 @@ public struct TwitterAPIErrorResponseV1 { return nil } - self.message = tErrors[0].message - self.code = tErrors[0].code + message = tErrors[0].message + code = tErrors[0].code self.errors = tErrors } @@ -119,10 +117,9 @@ extension TwitterAPIErrorResponseV1: Equatable {} /// https://developer.twitter.com/en/support/twitter-api/error-troubleshooting public struct TwitterAPIErrorResponseV2 { - public struct Error: Equatable { public let message: String - public let parameters: [String /* paramter name */: [String] /* values */] + public let parameters: [String /* paramter name */: [String] /* values */ ] public init(message: String, parameters: [String: [String]]) { self.message = message @@ -153,10 +150,9 @@ public struct TwitterAPIErrorResponseV2 { } public init?(obj: [String: Any]) { - guard let title = obj["title"] as? String, - let detail = obj["detail"] as? String, - let type = obj["type"] as? String + let detail = obj["detail"] as? String, + let type = obj["type"] as? String else { return nil } diff --git a/Sources/TwitterAPIKit/TwitterAPIKitError.swift b/Sources/TwitterAPIKit/TwitterAPIKitError.swift index 44490a5a..4b993736 100644 --- a/Sources/TwitterAPIKit/TwitterAPIKitError.swift +++ b/Sources/TwitterAPIKit/TwitterAPIKitError.swift @@ -1,7 +1,6 @@ import Foundation public enum TwitterAPIKitError: Error { - case requestFailed(reason: RequestFailureReason) public enum RequestFailureReason { case invalidURL(url: String) @@ -46,55 +45,55 @@ public enum TwitterAPIKitError: Error { } } -extension TwitterAPIKitError { - public var isRequestFailed: Bool { +public extension TwitterAPIKitError { + var isRequestFailed: Bool { if case .requestFailed = self { return true } return false } - public var isResponseFailed: Bool { + var isResponseFailed: Bool { if case .responseFailed = self { return true } return false } - public var isResponseSerializeFailed: Bool { + var isResponseSerializeFailed: Bool { if case .responseSerializeFailed = self { return true } return false } - public var isUploadMediaFailed: Bool { + var isUploadMediaFailed: Bool { if case .uploadMediaFailed = self { return true } return false } - public var isRefreshOAuth20TokenFailed: Bool { + var isRefreshOAuth20TokenFailed: Bool { if case .refreshOAuth20TokenFailed = self { return true } return false } - public var isUnkonwn: Bool { + var isUnkonwn: Bool { if case .unkonwn = self { return true } return false } - public var underlyingError: Error? { + var underlyingError: Error? { switch self { - case .requestFailed(let reason): + case let .requestFailed(reason): return reason.underlyingError - case .responseFailed(let reason): + case let .responseFailed(reason): return reason.underlyingError - case .responseSerializeFailed(let reason): + case let .responseSerializeFailed(reason): return reason.underlyingError - case .uploadMediaFailed(let reason): + case let .uploadMediaFailed(reason): return reason.underlyingError - case .refreshOAuth20TokenFailed(let reason): + case let .refreshOAuth20TokenFailed(reason): return reason.underlyingError - case .unkonwn(let error): + case let .unkonwn(error): return error } } - public var isCancelled: Bool { + var isCancelled: Bool { guard let error = underlyingError as? URLError else { return false } @@ -102,8 +101,8 @@ extension TwitterAPIKitError { } } -extension TwitterAPIKitError { - public struct UploadMediaError: Decodable, Error { +public extension TwitterAPIKitError { + struct UploadMediaError: Decodable, Error { public let code: Int public let name: String public let message: String @@ -118,19 +117,18 @@ extension TwitterAPIKitError { extension TwitterAPIKitError: LocalizedError { public var errorDescription: String? { - switch self { - case .requestFailed(let reason): + case let .requestFailed(reason): return reason.localizedDescription - case .responseFailed(let reason): + case let .responseFailed(reason): return reason.localizedDescription - case .responseSerializeFailed(let reason): + case let .responseSerializeFailed(reason): return reason.localizedDescription - case .uploadMediaFailed(let reason): + case let .uploadMediaFailed(reason): return reason.localizedDescription - case .refreshOAuth20TokenFailed(let reason): + case let .refreshOAuth20TokenFailed(reason): return reason.localizedDescription - case .unkonwn(let error): + case let .unkonwn(error): return error.localizedDescription } } @@ -142,33 +140,33 @@ extension TwitterAPIKitError.UploadMediaError: LocalizedError { } } -extension TwitterAPIKitError.RequestFailureReason { - public var localizedDescription: String { +public extension TwitterAPIKitError.RequestFailureReason { + var localizedDescription: String { switch self { - case .invalidURL(let url): + case let .invalidURL(url): return "URL is not valid: \(url)" - case .invalidParameter(let parameter, let cause): + case let .invalidParameter(parameter, cause): return "Parameter is not valid: \(parameter), cause: \(cause)" - case .cannotEncodeStringToData(let string): + case let .cannotEncodeStringToData(string): return "Could not encode \"\(string)\"" - case .jsonSerializationFailed(let obj): + case let .jsonSerializationFailed(obj): return "JSON could not be serialized. May be invalid object \(String(describing: obj))" } } - public var underlyingError: Error? { + var underlyingError: Error? { switch self { case .invalidURL, - .invalidParameter, - .cannotEncodeStringToData, - .jsonSerializationFailed: + .invalidParameter, + .cannotEncodeStringToData, + .jsonSerializationFailed: return nil } } } -extension TwitterAPIKitError.ResponseFailureReason { - public var localizedDescription: String { +public extension TwitterAPIKitError.ResponseFailureReason { + var localizedDescription: String { switch self { case let .invalidResponse(error: error): if let error = error { @@ -180,7 +178,7 @@ extension TwitterAPIKitError.ResponseFailureReason { } } - public var underlyingError: Error? { + var underlyingError: Error? { switch self { case let .invalidResponse(error: error): return error @@ -190,7 +188,7 @@ extension TwitterAPIKitError.ResponseFailureReason { } /// A status code in the case of unacceptableStatusCode. - public var statusCode: Int? { + var statusCode: Int? { if case .unacceptableStatusCode(statusCode: let statusCode, error: _, rateLimit: _) = self { return statusCode } @@ -198,7 +196,7 @@ extension TwitterAPIKitError.ResponseFailureReason { } /// A rate limit in the case of unacceptableStatusCode. - public var rateLimit: TwitterRateLimit? { + var rateLimit: TwitterRateLimit? { if case .unacceptableStatusCode(statusCode: _, error: _, rateLimit: let rateLimit) = self { return rateLimit } @@ -206,22 +204,22 @@ extension TwitterAPIKitError.ResponseFailureReason { } } -extension TwitterAPIKitError.ResponseSerializationFailureReason { - public var localizedDescription: String { +public extension TwitterAPIKitError.ResponseSerializationFailureReason { + var localizedDescription: String { switch self { - case .jsonSerializationFailed(let error): + case let .jsonSerializationFailed(error): return "Response could not be serialized because of error:\n\(error.localizedDescription)" - case .jsonDecodeFailed(let error): + case let .jsonDecodeFailed(error): return "Response could not be decoded because of error:\n\(error.localizedDescription)" case .cannotConvert(data: _, let toTypeName): return "Response could not convert to \"\(toTypeName)\"" } } - public var underlyingError: Error? { + var underlyingError: Error? { switch self { case let .jsonSerializationFailed(error: error), - let .jsonDecodeFailed(error: error): + let .jsonDecodeFailed(error: error): return error case .cannotConvert: return nil @@ -229,15 +227,15 @@ extension TwitterAPIKitError.ResponseSerializationFailureReason { } } -extension TwitterAPIKitError.UploadMediaFailureReason { - public var localizedDescription: String { +public extension TwitterAPIKitError.UploadMediaFailureReason { + var localizedDescription: String { switch self { - case .processingFailed(let error): + case let .processingFailed(error): return error.message } } - public var underlyingError: Error? { + var underlyingError: Error? { switch self { case let .processingFailed(error: error): return error @@ -245,17 +243,18 @@ extension TwitterAPIKitError.UploadMediaFailureReason { } } -extension TwitterAPIKitError.RefreshOAuth20TokenFailureReason { - public var localizedDescription: String { +public extension TwitterAPIKitError.RefreshOAuth20TokenFailureReason { + var localizedDescription: String { switch self { - case .invalidAuthenticationMethod(let method): + case let .invalidAuthenticationMethod(method): return "Token refresh is possible only when TwitterAuthenticationMethod is .oauth20. You are currently \(method)." case .refreshTokenIsMissing: return "Refresh token is missing." } } - public var underlyingError: Error? { + + var underlyingError: Error? { switch self { case .invalidAuthenticationMethod, .refreshTokenIsMissing: return nil @@ -263,25 +262,24 @@ extension TwitterAPIKitError.RefreshOAuth20TokenFailureReason { } } -extension TwitterAPIKitError { - - public var requestFailureReason: RequestFailureReason? { - guard case .requestFailed(reason: let reason) = self else { return nil } +public extension TwitterAPIKitError { + var requestFailureReason: RequestFailureReason? { + guard case let .requestFailed(reason: reason) = self else { return nil } return reason } - public var responseFailureReason: ResponseFailureReason? { - guard case .responseFailed(let reason) = self else { return nil } + var responseFailureReason: ResponseFailureReason? { + guard case let .responseFailed(reason) = self else { return nil } return reason } - public var responseSerializationFailureReason: ResponseSerializationFailureReason? { - guard case .responseSerializeFailed(let reason) = self else { return nil } + var responseSerializationFailureReason: ResponseSerializationFailureReason? { + guard case let .responseSerializeFailed(reason) = self else { return nil } return reason } - public var refreshOAuth20TokenFailureReason: RefreshOAuth20TokenFailureReason? { - guard case .refreshOAuth20TokenFailed(let reason) = self else { return nil } + var refreshOAuth20TokenFailureReason: RefreshOAuth20TokenFailureReason? { + guard case let .refreshOAuth20TokenFailed(reason) = self else { return nil } return reason } } diff --git a/Sources/TwitterAPIKit/TwitterAPIRequest.swift b/Sources/TwitterAPIKit/TwitterAPIRequest.swift index 3bbbf392..e4de692e 100644 --- a/Sources/TwitterAPIKit/TwitterAPIRequest.swift +++ b/Sources/TwitterAPIKit/TwitterAPIRequest.swift @@ -26,14 +26,14 @@ public enum BodyContentType: String { } public enum MultipartFormDataPart { - case value(name: String, value: Any) // value is stringified with "String(describing:)" + case value(name: String, value: Any) // value is stringified with "String(describing:)" case data(name: String, value: Data, filename: String, mimeType: String) var name: String { switch self { - case .value(let name, _): + case let .value(name, _): return name - case .data(let name, _, _, _): + case let .data(name, _, _, _): return name } } @@ -68,27 +68,27 @@ public protocol TwitterAPIRequest { var bodyContentType: BodyContentType { get } } -extension TwitterAPIRequest { - public var baseURLType: TwitterBaseURLType { +public extension TwitterAPIRequest { + var baseURLType: TwitterBaseURLType { return .api } - public var bodyContentType: BodyContentType { + var bodyContentType: BodyContentType { return .wwwFormUrlEncoded } - public var parameters: [String: Any] { + var parameters: [String: Any] { return [:] } - public var queryParameters: [String: Any] { + var queryParameters: [String: Any] { if method.prefersQueryParameters { return parameters } return [:] } - public var bodyParameters: [String: Any] { + var bodyParameters: [String: Any] { if !method.prefersQueryParameters { return parameters } @@ -97,9 +97,7 @@ extension TwitterAPIRequest { } extension TwitterAPIRequest { - func buildRequest(environment: TwitterAPIEnvironment) throws -> URLRequest { - guard var urlComponent = URLComponents( url: requestURL(for: environment), @@ -111,15 +109,14 @@ extension TwitterAPIRequest { if !queryParameters.isEmpty { urlComponent.percentEncodedQueryItems = queryParameters - .sorted(by: { a, b in a.key < b.key }) - .map { .init(name: $0.urlEncodedString, value: "\($1)".urlEncodedString) } + .sorted(by: { a, b in a.key < b.key }) + .map { .init(name: $0.urlEncodedString, value: "\($1)".urlEncodedString) } } var request = URLRequest(url: urlComponent.url!) request.httpMethod = method.rawValue if !bodyParameters.isEmpty { - switch bodyContentType { case .wwwFormUrlEncoded: request.setValue(bodyContentType.rawValue, forHTTPHeaderField: "Content-Type") @@ -135,7 +132,7 @@ extension TwitterAPIRequest { reason: .invalidParameter( parameter: bodyParameters, cause: - "Parameter must be specified in `MultipartFormDataPart` for `BodyContentType.multipartFormData`." + "Parameter must be specified in `MultipartFormDataPart` for `BodyContentType.multipartFormData`." )) } @@ -144,9 +141,11 @@ extension TwitterAPIRequest { request.setValue(contentType, forHTTPHeaderField: "Content-Type") request.httpBody = try multipartFormData( - boundary: boundary, parts: parts.sorted(by: { $0.name < $1.name })) + boundary: boundary, parts: parts.sorted(by: { $0.name < $1.name }) + ) request.setValue( - String(request.httpBody?.count ?? 0), forHTTPHeaderField: "Content-Length") + String(request.httpBody?.count ?? 0), forHTTPHeaderField: "Content-Length" + ) case .json: let param = bodyParameters @@ -224,8 +223,8 @@ extension TwitterAPIRequest { } } -extension TwitterAPIEnvironment { - fileprivate func baseURL(for type: TwitterBaseURLType) -> URL { +private extension TwitterAPIEnvironment { + func baseURL(for type: TwitterBaseURLType) -> URL { switch type { case .twitter: return twitterURL case .api: return apiURL @@ -234,8 +233,8 @@ extension TwitterAPIEnvironment { } } -extension Data { - fileprivate mutating func appendBody(_ string: String) throws { +private extension Data { + mutating func appendBody(_ string: String) throws { if let data = string.data(using: .utf8) { append(data) } else { diff --git a/Sources/TwitterAPIKit/TwitterAPIResponse.swift b/Sources/TwitterAPIKit/TwitterAPIResponse.swift index 511c1b81..7e9ac903 100644 --- a/Sources/TwitterAPIKit/TwitterAPIResponse.swift +++ b/Sources/TwitterAPIKit/TwitterAPIResponse.swift @@ -27,9 +27,8 @@ public struct TwitterAPIResponse { } } -extension TwitterAPIResponse { - - public func map(_ transform: (Success) -> NewSuccess) -> TwitterAPIResponse { +public extension TwitterAPIResponse { + func map(_ transform: (Success) -> NewSuccess) -> TwitterAPIResponse { return .init( request: request, response: response, @@ -39,7 +38,7 @@ extension TwitterAPIResponse { ) } - public func flatMap(_ transform: (Success) -> Result) + func flatMap(_ transform: (Success) -> Result) -> TwitterAPIResponse { return .init( @@ -51,10 +50,10 @@ extension TwitterAPIResponse { ) } - public func tryMap(_ transform: (Success) throws -> NewSuccess) -> TwitterAPIResponse { + func tryMap(_ transform: (Success) throws -> NewSuccess) -> TwitterAPIResponse { let nextResult: Result = result.flatMap { data in let r: Result = .init { - return try transform(data) + try transform(data) } return r.mapError { TwitterAPIKitError(error: $0) } } @@ -67,7 +66,7 @@ extension TwitterAPIResponse { ) } - public func mapError(_ tranform: (TwitterAPIKitError) -> TwitterAPIKitError) -> TwitterAPIResponse { + func mapError(_ tranform: (TwitterAPIKitError) -> TwitterAPIKitError) -> TwitterAPIResponse { return .init( request: request, response: response, @@ -75,21 +74,18 @@ extension TwitterAPIResponse { result: result.mapError(tranform), rateLimit: rateLimit ) - } } -extension TwitterAPIResponse { - +public extension TwitterAPIResponse { /// for debug - public var prettyString: String { - + var prettyString: String { let body = data.map { data in // make pretty if let json = try? JSONSerialization.jsonObject(with: data, options: []), - let jsonData = try? JSONSerialization.data(withJSONObject: json, options: .prettyPrinted) + let jsonData = try? JSONSerialization.data(withJSONObject: json, options: .prettyPrinted) { return String(data: jsonData, encoding: .utf8) ?? "" } else { @@ -108,8 +104,8 @@ extension TwitterAPIResponse { let responseContentLength = "< Content-Length: \(response?.allHeaderFields["Content-Length"] ?? "No Content-Length")" - switch self.result { - case .failure(let error): + switch result { + case let .failure(error): return "-- Request failure --" + "\n\(request)" + "\n\(contentType)" @@ -136,13 +132,12 @@ extension TwitterAPIResponse { } } -extension String { - - fileprivate var unescapeSlash: String { +private extension String { + var unescapeSlash: String { return replacingOccurrences(of: #"\/"#, with: #"/"#) } - fileprivate var unescapingUnicodeCharacters: String { + var unescapingUnicodeCharacters: String { #if os(Linux) return self #else diff --git a/Sources/TwitterAPIKit/TwitterAPISession.swift b/Sources/TwitterAPIKit/TwitterAPISession.swift index fa9bdf14..2b6738e6 100644 --- a/Sources/TwitterAPIKit/TwitterAPISession.swift +++ b/Sources/TwitterAPIKit/TwitterAPISession.swift @@ -1,7 +1,6 @@ import Foundation open class TwitterAPISession { - public private(set) var auth: TwitterAuthenticationMethod public let session: URLSession public let environment: TwitterAPIEnvironment @@ -12,7 +11,7 @@ open class TwitterAPISession { environment: TwitterAPIEnvironment ) { self.auth = auth - self.session = URLSession(configuration: configuration, delegate: sessionDelegate, delegateQueue: nil) + session = URLSession(configuration: configuration, delegate: sessionDelegate, delegateQueue: nil) self.environment = environment } @@ -21,12 +20,11 @@ open class TwitterAPISession { } public func send(_ request: TwitterAPIRequest) -> TwitterAPISessionJSONTask { - do { let urlRequest: URLRequest = try tryBuildURLRequest(request) let task = session.dataTask(with: urlRequest) return sessionDelegate.appendAndResume(task: task) - } catch let error { + } catch { return TwitterAPIFailedTask(.init(error: error)) } } @@ -36,13 +34,12 @@ open class TwitterAPISession { let urlRequest: URLRequest = try tryBuildURLRequest(streamRequest) let task = session.dataTask(with: urlRequest) return sessionDelegate.appendAndResumeStream(task: task) - } catch let error { + } catch { return TwitterAPIFailedTask(.init(error: error)) } } private func tryBuildURLRequest(_ request: TwitterAPIRequest) throws -> URLRequest { - var urlRequest = try request.buildRequest(environment: environment) switch auth { @@ -79,7 +76,7 @@ open class TwitterAPISession { urlRequest.setValue("Bearer \(oauth20.accessToken)", forHTTPHeaderField: "Authorization") case let .requestOAuth20WithPKCE(.confidentialClient(clientID: apiKey, clientSecret: apiSecretKey)), - let .basic(apiKey: apiKey, apiSecretKey: apiSecretKey): + let .basic(apiKey: apiKey, apiSecretKey: apiSecretKey): let credential = "\(apiKey):\(apiSecretKey)" guard let credentialData = credential.data(using: .utf8) else { diff --git a/Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift b/Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift index 39ce654c..cab18b0b 100644 --- a/Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift +++ b/Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift @@ -1,7 +1,6 @@ import Foundation protocol TwitterAPISessionDelegatedTask { - var taskIdentifier: Int { get } func append(chunk: Data) @@ -10,11 +9,9 @@ protocol TwitterAPISessionDelegatedTask { } class TwitterAPISessionDelegate: NSObject, URLSessionDataDelegate { - private var tasks = [Int /* taskIdentifier */: TwitterAPISessionDelegatedTask]() func appendAndResume(task: URLSessionTask) -> TwitterAPISessionJSONTask { - let twTask = TwitterAPISessionDelegatedJSONTask(task: task) twTask.delegate = self tasks[task.taskIdentifier] = twTask @@ -31,13 +28,11 @@ class TwitterAPISessionDelegate: NSObject, URLSessionDataDelegate { return twTask } - func urlSession(_ session: URLSession, dataTask: URLSessionDataTask, didReceive data: Data) { - + func urlSession(_: URLSession, dataTask: URLSessionDataTask, didReceive data: Data) { tasks[dataTask.taskIdentifier]?.append(chunk: data) } - func urlSession(_ session: URLSession, task: URLSessionTask, didCompleteWithError error: Error?) { - + func urlSession(_: URLSession, task: URLSessionTask, didCompleteWithError error: Error?) { guard let task = tasks[task.taskIdentifier] else { return } task.complete(error: error) diff --git a/Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift b/Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift index 1a7b6096..0a592eba 100644 --- a/Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift +++ b/Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift @@ -25,8 +25,8 @@ public enum TwitterAuthenticationMethod { case bearer(String) } -extension TwitterAuthenticationMethod { - public struct OAuth10a: Codable { +public extension TwitterAuthenticationMethod { + struct OAuth10a: Codable { public var consumerKey: String public var consumerSecret: String public var oauthToken: String? @@ -45,7 +45,7 @@ extension TwitterAuthenticationMethod { } } - public struct OAuth20: Codable { + struct OAuth20: Codable { public var clientID: String public var scope: [String] public var tokenType: String @@ -97,17 +97,17 @@ extension TwitterAuthenticationMethod { ) } - mutating public func refresh(token: TwitterOAuth2AccessToken, refreshedAt: Date = Date()) { - self.scope = token.scope - self.tokenType = token.tokenType - self.expiresIn = token.expiresIn - self.accessToken = token.accessToken - self.refreshToken = token.refreshToken - self.createdAt = refreshedAt + public mutating func refresh(token: TwitterOAuth2AccessToken, refreshedAt: Date = Date()) { + scope = token.scope + tokenType = token.tokenType + expiresIn = token.expiresIn + accessToken = token.accessToken + refreshToken = token.refreshToken + createdAt = refreshedAt } } - public enum OAuth20WithPKCEClientType { + enum OAuth20WithPKCEClientType { case confidentialClient(clientID: String, clientSecret: String) case publicClient } diff --git a/Sources/TwitterAPIKit/TwitterRateLimit.swift b/Sources/TwitterAPIKit/TwitterRateLimit.swift index 96f78027..6dc161c3 100644 --- a/Sources/TwitterAPIKit/TwitterRateLimit.swift +++ b/Sources/TwitterAPIKit/TwitterRateLimit.swift @@ -11,10 +11,9 @@ public struct TwitterRateLimit { public let reset: TimeInterval public init?(header: [AnyHashable: Any]) { - guard let limit = parse(header, key: "x-rate-limit-limit"), - let remaining = parse(header, key: "x-rate-limit-remaining"), - let reset = parse(header, key: "x-rate-limit-reset") + let remaining = parse(header, key: "x-rate-limit-remaining"), + let reset = parse(header, key: "x-rate-limit-reset") else { return nil } @@ -24,8 +23,8 @@ public struct TwitterRateLimit { } } -extension TwitterRateLimit { - public var resetDate: Date { +public extension TwitterRateLimit { + var resetDate: Date { return Date(timeIntervalSince1970: reset) } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountSettingsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountSettingsRequestV1Tests.swift index bff2f3c2..87c7ea02 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountSettingsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountSettingsRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetAccountSettingsRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetAccountSettingsRequestV1() diff --git a/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountVerifyCredentialsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountVerifyCredentialsRequestV1Tests.swift index d76c2059..3ed815bd 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountVerifyCredentialsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountVerifyCredentialsRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetAccountVerifyCredentialsRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetAccountVerifyCredentialsRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountRemoveProfileBannerRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountRemoveProfileBannerRequestV1Tests.swift index 0d6f3955..56ee7f7a 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountRemoveProfileBannerRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountRemoveProfileBannerRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostAccountRemoveProfileBannerRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostAccountRemoveProfileBannerRequestV1() diff --git a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountSettingsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountSettingsRequestV1Tests.swift index 662a90c8..eae0323a 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountSettingsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountSettingsRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostAccountSettingsRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostAccountSettingsRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileBannerRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileBannerRequestV1Tests.swift index 6abd2a43..4340634d 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileBannerRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileBannerRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostAccountUpdateProfileBannerRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let banner = Data([0, 1, 2]) @@ -61,7 +59,7 @@ class PostAccountUpdateProfileBannerRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "banner": "AAE=" + "banner": "AAE=", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileImageRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileImageRequestV1Tests.swift index 889ab748..b7156492 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileImageRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileImageRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostAccountUpdateProfileImageRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let image = Data([0, 1, 2]) @@ -39,7 +37,7 @@ class PostAccountUpdateProfileImageRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "image": "AAEC" + "image": "AAEC", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileRequestV1Tests.swift index 4798b48c..4341308c 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostAccountUpdateProfileRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostAccountUpdateProfileRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/Application/GetApplicationRateLimitStatusRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Application/GetApplicationRateLimitStatusRequestV1Tests.swift index 623403b1..a6163977 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Application/GetApplicationRateLimitStatusRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Application/GetApplicationRateLimitStatusRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetApplicationRateLimitStatusRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetApplicationRateLimitStatusRequestV1( @@ -20,7 +18,7 @@ class GetApplicationRateLimitStatusRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "resources": "a,b" + "resources": "a,b", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksIDsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksIDsRequestV1Tests.swift index 6e0c1328..dae4714a 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksIDsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksIDsRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetBlocksIDsRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetBlocksIDsRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksListRequestV1Tests.swift index 172a0cdb..f0fd1919 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksListRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetBlocksListRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetBlocksListRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersIDsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersIDsRequestV1Tests.swift index ac52ec7a..1a37a8ea 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersIDsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersIDsRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetMutesUsersIDsRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetMutesUsersIDsRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersListRequestV1Tests.swift index 786cc56a..a840d7ae 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersListRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetMutesUsersListRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetMutesUsersListRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksCreateRequestV1Tests.swift index c1c19be2..8689eed2 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksCreateRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostBlocksCreateRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostBlocksCreateRequestV1( @@ -37,7 +35,7 @@ class PostBlocksCreateRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "screen_name": "s" + "screen_name": "s", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksDestroyRequestV1Tests.swift index 751ab063..58483ff0 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksDestroyRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostBlocksDestroyRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostBlocksDestroyRequestV1( @@ -37,7 +35,7 @@ class PostBlocksDestroyRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "screen_name": "s" + "screen_name": "s", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersCreateRequestV1Tests.swift index 1628e86d..b9f024ee 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersCreateRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostMutesUsersCreateRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostMutesUsersCreateRequestV1( @@ -20,7 +18,7 @@ class PostMutesUsersCreateRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "user_id": "uid" + "user_id": "uid", ] ) } @@ -33,7 +31,7 @@ class PostMutesUsersCreateRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "screen_name": "s" + "screen_name": "s", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersDestroyRequestV1Tests.swift index 689e37b5..11b0df6d 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersDestroyRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostMutesUsersDestroyRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostMutesUsersDestroyRequestV1( @@ -20,7 +18,7 @@ class PostMutesUsersDestroyRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "user_id": "uid" + "user_id": "uid", ] ) } @@ -33,7 +31,7 @@ class PostMutesUsersDestroyRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "screen_name": "s" + "screen_name": "s", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostUsersReportSpamRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostUsersReportSpamRequestV1Tests.swift index 21d4eff4..55e174b6 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostUsersReportSpamRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostUsersReportSpamRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostUsersReportSpamRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostUsersReportSpamRequestV1( @@ -35,7 +33,7 @@ class PostUsersReportSpamRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "screen_name": "s" + "screen_name": "s", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsEntriesRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsEntriesRequestV1Tests.swift index 935cd0aa..dd041759 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsEntriesRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsEntriesRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetCollectionsEntriesRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetCollectionsEntriesRequestV1( @@ -39,7 +37,7 @@ class GetCollectionsEntriesRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "id": "i" + "id": "i", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsListRequestV1Tests.swift index 11ae145b..94314084 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsListRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetCollectionsListRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetCollectionsListRequestV1( @@ -39,7 +37,7 @@ class GetCollectionsListRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "screen_name": "s" + "screen_name": "s", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsShowRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsShowRequestV1Tests.swift index 675de248..5285c7af 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsShowRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsShowRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetCollectionsShowRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetCollectionsShowRequestV1( @@ -20,7 +18,7 @@ class GetCollectionsShowRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "id": "_i_" + "id": "_i_", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsCreateRequestV1Tests.swift index 7e3546dc..ff87e380 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsCreateRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostCollectionsCreateRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostCollectionsCreateRequestV1( @@ -39,7 +37,7 @@ class PostCollectionsCreateRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "name": "n" + "name": "n", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsDestroyRequestV1Tests.swift index 85a4bd83..e4946932 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsDestroyRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostCollectionsDestroyRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostCollectionsDestroyRequestV1( @@ -20,7 +18,7 @@ class PostCollectionsDestroyRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "id": "_i_" + "id": "_i_", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesAddRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesAddRequestV1Tests.swift index 8d4c917f..b475c2a0 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesAddRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesAddRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostCollectionsEntriesAddRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostCollectionsEntriesAddRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesCurateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesCurateRequestV1Tests.swift index 1b2e07b3..97c77fba 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesCurateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesCurateRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostCollectionsEntriesCurateRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostCollectionsEntriesCurateRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesMoveRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesMoveRequestV1Tests.swift index 0ae12a67..96677b8b 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesMoveRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesMoveRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostCollectionsEntriesMoveRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostCollectionsEntriesMoveRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesRemoveRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesRemoveRequestV1Tests.swift index 62b4016d..79c58747 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesRemoveRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesRemoveRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostCollectionsEntriesRemoveRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostCollectionsEntriesRemoveRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsUpdateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsUpdateRequestV1Tests.swift index d8ae22df..65ef764f 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsUpdateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsUpdateRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostCollectionsUpdateRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostCollectionsUpdateRequestV1( @@ -39,7 +37,7 @@ class PostCollectionsUpdateRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "id": "i" + "id": "i", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/DeleteDirectMessageRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/DeleteDirectMessageRequestV1Tests.swift index 53535e7c..86f9c272 100644 --- a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/DeleteDirectMessageRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/DeleteDirectMessageRequestV1Tests.swift @@ -2,12 +2,9 @@ import TwitterAPIKit import XCTest class DeleteDirectMessageRequestV1Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = DeleteDirectMessageRequestV1(id: "15") diff --git a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageListRequestV1Tests.swift index be035caf..6801bde3 100644 --- a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageListRequestV1Tests.swift @@ -2,12 +2,9 @@ import TwitterAPIKit import XCTest class GetDirectMessageListRequestV1Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetDirectMessageListRequestV1( @@ -23,8 +20,8 @@ class GetDirectMessageListRequestV1Tests: XCTestCase { [ "count": 100, "cursor": "cursor_str", - ]) + ] + ) XCTAssertTrue(req.bodyParameters.isEmpty) } - } diff --git a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageRequestV1Tests.swift index 7364d389..87690197 100644 --- a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageRequestV1Tests.swift @@ -2,12 +2,9 @@ import TwitterAPIKit import XCTest class GetDirectMessageRequestV1Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetDirectMessageRequestV1(id: "dm_id") diff --git a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessageRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessageRequestV1Tests.swift index de2f6b21..9439914b 100644 --- a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessageRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessageRequestV1Tests.swift @@ -2,12 +2,9 @@ import TwitterAPIKit import XCTest class PostDirectMessageRequestV1Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func testText() throws { let req = PostDirectMessageRequestV1( @@ -27,8 +24,9 @@ class PostDirectMessageRequestV1Tests: XCTestCase { "message_data": ["text": "msg"], "target": ["recipient_id": "target"], ], - ] - ]) + ], + ] + ) } func testQuickReplyOptions() throws { @@ -62,8 +60,9 @@ class PostDirectMessageRequestV1Tests: XCTestCase { ], ], ], - ] - ]) + ], + ] + ) } func testAttachMedia() throws { @@ -87,14 +86,15 @@ class PostDirectMessageRequestV1Tests: XCTestCase { "attachment": [ "type": "media", "media": [ - "id": "media_id" + "id": "media_id", ], ], ], "target": ["recipient_id": "target"], ], - ] - ]) + ], + ] + ) } func testAttachLocation() throws { @@ -124,15 +124,16 @@ class PostDirectMessageRequestV1Tests: XCTestCase { "coordinates": [ "type": "Point", "coordinates": [10, 20], - ] + ], ], ], ], ], "target": ["recipient_id": "target"], ], - ] - ]) + ], + ] + ) } XCTContext.runActivity(named: "place") { _ in @@ -159,16 +160,17 @@ class PostDirectMessageRequestV1Tests: XCTestCase { "type": "shared_place", "shared_place": [ "place": [ - "id": "place_id" - ] + "id": "place_id", + ], ], ], ], ], "target": ["recipient_id": "target"], ], - ] - ]) + ], + ] + ) } } } diff --git a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesIndicateTypingRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesIndicateTypingRequestV1Tests.swift index b7d12cdc..e4d96087 100644 --- a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesIndicateTypingRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesIndicateTypingRequestV1Tests.swift @@ -2,12 +2,9 @@ import TwitterAPIKit import XCTest class PostDirectMessagesIndicateTypingRequestV1Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostDirectMessagesIndicateTypingRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesMarkReadRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesMarkReadRequestV1Tests.swift index 33458666..f1368a24 100644 --- a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesMarkReadRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesMarkReadRequestV1Tests.swift @@ -2,12 +2,9 @@ import TwitterAPIKit import XCTest class PostDirectMessagesMarkReadRequestV1Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostDirectMessagesMarkReadRequestV1(lastReadEventID: "ev_id", recipientID: "r_id") @@ -20,6 +17,7 @@ class PostDirectMessagesMarkReadRequestV1Tests: XCTestCase { [ "last_read_event_id": "ev_id", "recipient_id": "r_id", - ]) + ] + ) } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Favorite/GetFavoritesRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Favorite/GetFavoritesRequestV1Tests.swift index e981d5fb..5601f1e8 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Favorite/GetFavoritesRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Favorite/GetFavoritesRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetFavoritesRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetFavoritesRequestV1( @@ -41,7 +39,7 @@ class GetFavoritesRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "screen_name": "s" + "screen_name": "s", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Favorite/PostFavoriteRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Favorite/PostFavoriteRequestV1Tests.swift index cdf0fe0b..c346cf0d 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Favorite/PostFavoriteRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Favorite/PostFavoriteRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostFavoriteRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostFavoriteRequestV1( @@ -35,7 +33,7 @@ class PostFavoriteRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "id": "_i_" + "id": "_i_", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Favorite/PostUnFavoriteRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Favorite/PostUnFavoriteRequestV1Tests.swift index bd96a116..b8df1cd9 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Favorite/PostUnFavoriteRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Favorite/PostUnFavoriteRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostUnFavoriteRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostUnFavoriteRequestV1( @@ -35,7 +33,7 @@ class PostUnFavoriteRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "id": "_i_" + "id": "_i_", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersIDsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersIDsRequestV1Tests.swift index edfbba11..5162785d 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersIDsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersIDsRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetFollowersIDsRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetFollowersIDsRequestV1( @@ -39,7 +37,7 @@ class GetFollowersIDsRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "screen_name": "s" + "screen_name": "s", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersListRequestV1Tests.swift index b96ab74f..15836992 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersListRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetFollowersListRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetFollowersListRequestV1( @@ -41,7 +39,7 @@ class GetFollowersListRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "screen_name": "s" + "screen_name": "s", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsIDsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsIDsRequestV1Tests.swift index 02a240af..424686ae 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsIDsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsIDsRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetFriendsIDsRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetFriendsIDsRequestV1( @@ -39,7 +37,7 @@ class GetFriendsIDsRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "screen_name": "s" + "screen_name": "s", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsListRequestV1Tests.swift index 072c6ca5..fc1968f1 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsListRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetFriendsListRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetFriendsListRequestV1( @@ -41,7 +39,7 @@ class GetFriendsListRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "screen_name": "s" + "screen_name": "s", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsIncomingRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsIncomingRequestV1Tests.swift index e0ff4692..fbdcd0e6 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsIncomingRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsIncomingRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetFriendshipsIncomingRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetFriendshipsIncomingRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsLookupRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsLookupRequestV1Tests.swift index 5748418a..a03d84be 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsLookupRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsLookupRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetFriendshipsLookupRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetFriendshipsLookupRequestV1( @@ -20,7 +18,7 @@ class GetFriendshipsLookupRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "user_id": "uid1,uid2" + "user_id": "uid1,uid2", ] ) } @@ -34,7 +32,7 @@ class GetFriendshipsLookupRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "screen_name": "s1,s2" + "screen_name": "s1,s2", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsNoRetweetsIDsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsNoRetweetsIDsRequestV1Tests.swift index a5952993..a7e63977 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsNoRetweetsIDsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsNoRetweetsIDsRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetFriendshipsNoRetweetsIDsRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetFriendshipsNoRetweetsIDsRequestV1( @@ -20,7 +18,7 @@ class GetFriendshipsNoRetweetsIDsRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "stringify_ids": true + "stringify_ids": true, ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsOutgoingRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsOutgoingRequestV1Tests.swift index ae0ba96e..4a557a85 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsOutgoingRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsOutgoingRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetFriendshipsOutgoingRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetFriendshipsOutgoingRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsShowRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsShowRequestV1Tests.swift index c765feed..8377ab0b 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsShowRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsShowRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetFriendshipsShowRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetFriendshipsShowRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsCreateRequestV1Tests.swift index 1e6ec859..f6174bd7 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsCreateRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostFriendshipsCreateRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostFriendshipsCreateRequestV1( @@ -35,7 +33,7 @@ class PostFriendshipsCreateRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "screen_name": "s" + "screen_name": "s", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsDestroyRequestV1Tests.swift index 0e117f81..b08e78e1 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsDestroyRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostFriendshipsDestroyRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostFriendshipsDestroyRequestV1( @@ -20,7 +18,7 @@ class PostFriendshipsDestroyRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "user_id": "uid" + "user_id": "uid", ] ) } @@ -33,7 +31,7 @@ class PostFriendshipsDestroyRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "screen_name": "s" + "screen_name": "s", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsUpdateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsUpdateRequestV1Tests.swift index 202e8433..356679dd 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsUpdateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsUpdateRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostFriendshipsUpdateRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostFriendshipsUpdateRequestV1( @@ -37,7 +35,7 @@ class PostFriendshipsUpdateRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "screen_name": "s" + "screen_name": "s", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoPlaceIDRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoPlaceIDRequestV1Tests.swift index 822e0e7b..625f7a1e 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoPlaceIDRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoPlaceIDRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetGeoPlaceIDRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetGeoPlaceIDRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoReverseGeocodeRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoReverseGeocodeRequestV1Tests.swift index ed74b9fb..e46bcbe3 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoReverseGeocodeRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoReverseGeocodeRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetGeoReverseGeocodeRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func testAccuracy() throws { XCTContext.runActivity(named: "ft") { _ in diff --git a/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoSearchRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoSearchRequestV1Tests.swift index b71dca04..53264dc5 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoSearchRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoSearchRequestV1Tests.swift @@ -2,14 +2,11 @@ import TwitterAPIKit import XCTest class GetGeoSearchRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { - XCTContext.runActivity(named: "coordinate") { _ in let req = GetGeoSearchRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/Help/GetHelpLanguagesRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Help/GetHelpLanguagesRequestV1Tests.swift index f54e973b..8c762d6f 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Help/GetHelpLanguagesRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Help/GetHelpLanguagesRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetHelpLanguagesRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetHelpLanguagesRequestV1() diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsListRequestV1Tests.swift index 253c31d6..3d982ae5 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsListRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetListsListRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetListsListRequestV1( @@ -35,7 +33,7 @@ class GetListsListRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "screen_name": "s" + "screen_name": "s", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersRequestV1Tests.swift index a4959bf2..f653bf82 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetListsMembersRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetListsMembersRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersShowRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersShowRequestV1Tests.swift index 4fe47adf..7a59e2b3 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersShowRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersShowRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetListsMembersShowRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetListsMembersShowRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembershipsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembershipsRequestV1Tests.swift index 810fe93f..15ec8a2c 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembershipsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembershipsRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetListsMembershipsRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetListsMembershipsRequestV1( @@ -39,7 +37,7 @@ class GetListsMembershipsRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "screen_name": "name" + "screen_name": "name", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsOwnershipsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsOwnershipsRequestV1Tests.swift index dfda054d..f218d2b9 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsOwnershipsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsOwnershipsRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetListsOwnershipsRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetListsOwnershipsRequestV1( @@ -37,7 +35,7 @@ class GetListsOwnershipsRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "screen_name": "name" + "screen_name": "name", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsShowRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsShowRequestV1Tests.swift index 8edfacc4..84fd409a 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsShowRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsShowRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetListsShowRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetListsShowRequestV1( @@ -20,7 +18,7 @@ class GetListsShowRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "list_id": "lid" + "list_id": "lid", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsStatusesRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsStatusesRequestV1Tests.swift index 8c6443a9..3c2c9d67 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsStatusesRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsStatusesRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetListsStatusesRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetListsStatusesRequestV1( @@ -43,7 +41,7 @@ class GetListsStatusesRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "list_id": "lid" + "list_id": "lid", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersRequestV1Tests.swift index 7ed642b8..3f15d820 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetListsSubscribersRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetListsSubscribersRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersShowRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersShowRequestV1Tests.swift index 1105f0ae..018514fd 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersShowRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersShowRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetListsSubscribersShowRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetListsSubscribersShowRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscriptionsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscriptionsRequestV1Tests.swift index b08d0eb1..4ac1e0b7 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscriptionsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscriptionsRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetListsSubscriptionsRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetListsSubscriptionsRequestV1( @@ -37,7 +35,7 @@ class GetListsSubscriptionsRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "screen_name": "sn" + "screen_name": "sn", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift index 4208b2ec..88994dea 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift @@ -2,7 +2,6 @@ import TwitterAPIKit import XCTest class CustomListsListRequestV1: GetListsListRequestV1 { - let custom: String override var parameters: [String: Any] { @@ -24,16 +23,12 @@ class CapsuledListsListRequestV1: GetListsListRequestV1 { } class ListRequestV1Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} // https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-list func testGetListsListRequestV1() throws { - XCTContext.runActivity(named: "with only required parameters") { _ in let list = GetListsListRequestV1(user: .userID("1234")) diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsCreateRequestV1Tests.swift index f0719eda..dbc5eb74 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsCreateRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostListsCreateRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostListsCreateRequestV1( @@ -37,7 +35,7 @@ class PostListsCreateRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "name": "n" + "name": "n", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsDestroyRequestV1Tests.swift index 709cadd0..7ee86470 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsDestroyRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostListsDestroyRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostListsDestroyRequestV1( @@ -20,7 +18,7 @@ class PostListsDestroyRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "list_id": "lid" + "list_id": "lid", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateAllRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateAllRequestV1Tests.swift index 360af050..c013f44d 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateAllRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateAllRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostListsMembersCreateAllRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostListsMembersCreateAllRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateRequestV1Tests.swift index 28fa8456..175dc273 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostListsMembersCreateRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostListsMembersCreateRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyAllRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyAllRequestV1Tests.swift index c866a0e0..a55a9cac 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyAllRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyAllRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostListsMembersDestroyAllRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostListsMembersDestroyAllRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyRequestV1Tests.swift index 53d968d4..5f5068dd 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostListsMembersDestroyRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostListsMembersDestroyRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersCreateRequestV1Tests.swift index 74c6902a..ee279e55 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersCreateRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostListsSubscribersCreateRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostListsSubscribersCreateRequestV1( @@ -20,7 +18,7 @@ class PostListsSubscribersCreateRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "list_id": "lid" + "list_id": "lid", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersDestroyRequestV1Tests.swift index e0d1a8f0..c7795c9d 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersDestroyRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostListsSubscribersDestroyRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostListsSubscribersDestroyRequestV1( @@ -20,7 +18,7 @@ class PostListsSubscribersDestroyRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "list_id": "lid" + "list_id": "lid", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsUpdateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsUpdateRequestV1Tests.swift index 10fc6620..e69b9727 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsUpdateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsUpdateRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostListsUpdateRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostListsUpdateRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/GetUploadMediaStatusRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/GetUploadMediaStatusRequestV1Tests.swift index 182ee5fe..a6d716f6 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/GetUploadMediaStatusRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/GetUploadMediaStatusRequestV1Tests.swift @@ -2,12 +2,9 @@ import TwitterAPIKit import XCTest class GetUploadMediaStatusRequestV1Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetUploadMediaStatusRequestV1(mediaID: "m") @@ -20,7 +17,7 @@ class GetUploadMediaStatusRequestV1Tests: XCTestCase { [ "command": "STATUS", "media_id": "m", - ]) + ] + ) } - } diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaMetadataCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaMetadataCreateRequestV1Tests.swift index 6edef5ec..6a8b2a7b 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaMetadataCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaMetadataCreateRequestV1Tests.swift @@ -2,12 +2,9 @@ import TwitterAPIKit import XCTest class PostMediaMetadataCreateRequestV1Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostMediaMetadataCreateRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesCreateRequestV1Tests.swift index 3bb26875..64601bc4 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesCreateRequestV1Tests.swift @@ -2,12 +2,9 @@ import TwitterAPIKit import XCTest class PostMediaSubtitlesCreateRequestV1Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostMediaSubtitlesCreateRequestV1( @@ -18,7 +15,7 @@ class PostMediaSubtitlesCreateRequestV1Tests: XCTestCase { mediaID: "subtitleMediaID", languageCode: "l", displayName: "d" - ) + ), ] ) @@ -37,9 +34,10 @@ class PostMediaSubtitlesCreateRequestV1Tests: XCTestCase { "media_id": "subtitleMediaID", "language_code": "l", "display_name": "d", - ] - ] + ], + ], ], - ]) + ] + ) } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesDeleteRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesDeleteRequestV1Tests.swift index 7c7d41e9..79fd322a 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesDeleteRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesDeleteRequestV1Tests.swift @@ -2,12 +2,9 @@ import TwitterAPIKit import XCTest class PostMediaSubtitlesDeleteRequestV1Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostMediaSubtitlesDeleteRequestV1( @@ -28,7 +25,7 @@ class PostMediaSubtitlesDeleteRequestV1Tests: XCTestCase { "subtitles": [ ["language_code": "l1"], ["language_code": "l2"], - ] + ], ], ] ) diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaAppendRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaAppendRequestV1Tests.swift index 709dd507..4b9f06e8 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaAppendRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaAppendRequestV1Tests.swift @@ -2,12 +2,9 @@ import TwitterAPIKit import XCTest class UploadMediaAppendRequestV1Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let data = Data() @@ -30,11 +27,11 @@ class UploadMediaAppendRequestV1Tests: XCTestCase { "media_id": MultipartFormDataPart.value(name: "media_id", value: "m"), "media": MultipartFormDataPart.data(name: "media", value: data, filename: "f", mimeType: "m"), "segment_index": MultipartFormDataPart.value(name: "segment_index", value: 1), - ]) + ] + ) } func testSegments() throws { - let data = Data([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]) let req = UploadMediaAppendRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaFinalizeRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaFinalizeRequestV1Tests.swift index 08f13e0b..6d1cdbc2 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaFinalizeRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaFinalizeRequestV1Tests.swift @@ -2,12 +2,9 @@ import TwitterAPIKit import XCTest class UploadMediaFinalizeRequestV1Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = UploadMediaFinalizeRequestV1(mediaID: "m") @@ -21,7 +18,7 @@ class UploadMediaFinalizeRequestV1Tests: XCTestCase { [ "command": "FINALIZE", "media_id": "m", - ]) + ] + ) } - } diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaInitRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaInitRequestV1Tests.swift index 44f84afc..cd2ac29a 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaInitRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaInitRequestV1Tests.swift @@ -2,12 +2,9 @@ import TwitterAPIKit import XCTest class UploadMediaInitRequestV1Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = UploadMediaInitRequestV1( @@ -29,6 +26,7 @@ class UploadMediaInitRequestV1Tests: XCTestCase { "media_type": "image/jpg", "media_category": "c", "additional_owners": "1,2", - ]) + ] + ) } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift index 06a92340..0fbe428a 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift @@ -2,16 +2,13 @@ import TwitterAPIKit import XCTest class UploadMediaUtilTests: XCTestCase { - - override func setUpWithError() throws { - } + override func setUpWithError() throws {} override func tearDownWithError() throws { MockURLProtocol.cleanup() } func testWithProcessing() throws { - let config = URLSessionConfiguration.default config.protocolClasses = [MockURLProtocol.self] @@ -33,7 +30,7 @@ class UploadMediaUtilTests: XCTestCase { } var data = Data() switch requestCount { - case 0: // INIT + case 0: // INIT XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") XCTAssertTrue(requestBodyString!.contains("command=INIT")) @@ -41,15 +38,15 @@ class UploadMediaUtilTests: XCTestCase { withJSONObject: [ "media_id_string": "123", "expires_after_secs": 1000, - ], options: []) - - case 1: // APPEND + ], options: [] + ) + case 1: // APPEND XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") XCTAssertTrue(requestBodyString!.contains("\r\nAPPEND\r\n")) - case 2: // APPEND + case 2: // APPEND XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") XCTAssertTrue(requestBodyString!.contains("\r\nAPPEND\r\n")) - case 3: // FINALIZE + case 3: // FINALIZE XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") XCTAssertTrue(requestBodyString!.contains("command=FINALIZE")) @@ -62,7 +59,8 @@ class UploadMediaUtilTests: XCTestCase { "state": "pending", "check_after_secs": 0, ], - ], options: []) + ], options: [] + ) case 4: XCTAssertEqual(request.httpMethod, "GET") @@ -89,7 +87,7 @@ class UploadMediaUtilTests: XCTestCase { withJSONObject: [ "media_id_string": "123", "video": [ - "video_type": "video/mp4" + "video_type": "video/mp4", ], "processing_info": [ "state": "succeeded", @@ -120,7 +118,6 @@ class UploadMediaUtilTests: XCTestCase { } func testInitError() throws { - let config = URLSessionConfiguration.default config.protocolClasses = [MockURLProtocol.self] @@ -143,7 +140,7 @@ class UploadMediaUtilTests: XCTestCase { let data = Data("{}".utf8) var statusCode = 200 switch requestCount { - case 0: // INIT + case 0: // INIT XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") XCTAssertTrue(requestBodyString!.contains("command=INIT")) @@ -168,7 +165,6 @@ class UploadMediaUtilTests: XCTestCase { if case .responseFailed(reason: .unacceptableStatusCode(statusCode: 404, error: _, rateLimit: _)) = response .error { - } else { XCTFail(response.prettyString) } @@ -180,7 +176,6 @@ class UploadMediaUtilTests: XCTestCase { } func testAppendError() throws { - let config = URLSessionConfiguration.default config.protocolClasses = [MockURLProtocol.self] @@ -203,7 +198,7 @@ class UploadMediaUtilTests: XCTestCase { var data = Data() var statusCode = 200 switch requestCount { - case 0: // INIT + case 0: // INIT XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") XCTAssertTrue(requestBodyString!.contains("command=INIT")) @@ -211,13 +206,13 @@ class UploadMediaUtilTests: XCTestCase { withJSONObject: [ "media_id_string": "123", "expires_after_secs": 1000, - ], options: []) - - case 1: // APPEND + ], options: [] + ) + case 1: // APPEND XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") XCTAssertTrue(requestBodyString!.contains("\r\nAPPEND\r\n")) statusCode = 400 - case 2: // APPEND + case 2: // APPEND XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") XCTAssertTrue(requestBodyString!.contains("\r\nAPPEND\r\n")) statusCode = 200 @@ -240,7 +235,6 @@ class UploadMediaUtilTests: XCTestCase { if case .responseFailed(reason: .unacceptableStatusCode(statusCode: 400, error: _, rateLimit: _)) = response .error { - } else { XCTFail(response.prettyString) } @@ -252,7 +246,6 @@ class UploadMediaUtilTests: XCTestCase { } func testFinalizeError() throws { - let config = URLSessionConfiguration.default config.protocolClasses = [MockURLProtocol.self] @@ -275,7 +268,7 @@ class UploadMediaUtilTests: XCTestCase { } var data = Data() switch requestCount { - case 0: // INIT + case 0: // INIT XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") XCTAssertTrue(requestBodyString!.contains("command=INIT")) @@ -283,15 +276,15 @@ class UploadMediaUtilTests: XCTestCase { withJSONObject: [ "media_id_string": "123", "expires_after_secs": 1000, - ], options: []) - - case 1: // APPEND + ], options: [] + ) + case 1: // APPEND XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") XCTAssertTrue(requestBodyString!.contains("\r\nAPPEND\r\n")) - case 2: // APPEND + case 2: // APPEND XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") XCTAssertTrue(requestBodyString!.contains("\r\nAPPEND\r\n")) - case 3: // FINALIZE + case 3: // FINALIZE XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") XCTAssertTrue(requestBodyString!.contains("command=FINALIZE")) statusCode = 500 @@ -314,7 +307,6 @@ class UploadMediaUtilTests: XCTestCase { if case .responseFailed(reason: .unacceptableStatusCode(statusCode: 500, error: _, rateLimit: _)) = response .error { - } else { XCTFail(response.prettyString) } @@ -325,7 +317,6 @@ class UploadMediaUtilTests: XCTestCase { } func testWithProcessingError() throws { - let config = URLSessionConfiguration.default config.protocolClasses = [MockURLProtocol.self] @@ -347,7 +338,7 @@ class UploadMediaUtilTests: XCTestCase { } var data = Data() switch requestCount { - case 0: // INIT + case 0: // INIT XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") XCTAssertTrue(requestBodyString!.contains("command=INIT")) @@ -355,15 +346,15 @@ class UploadMediaUtilTests: XCTestCase { withJSONObject: [ "media_id_string": "123", "expires_after_secs": 1000, - ], options: []) - - case 1: // APPEND + ], options: [] + ) + case 1: // APPEND XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") XCTAssertTrue(requestBodyString!.contains("\r\nAPPEND\r\n")) - case 2: // APPEND + case 2: // APPEND XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") XCTAssertTrue(requestBodyString!.contains("\r\nAPPEND\r\n")) - case 3: // FINALIZE + case 3: // FINALIZE XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") XCTAssertTrue(requestBodyString!.contains("command=FINALIZE")) @@ -376,7 +367,8 @@ class UploadMediaUtilTests: XCTestCase { "state": "pending", "check_after_secs": 0, ], - ], options: []) + ], options: [] + ) case 4: XCTAssertEqual(request.httpMethod, "GET") @@ -435,7 +427,6 @@ class UploadMediaUtilTests: XCTestCase { } func testWithoutProcessing() throws { - let config = URLSessionConfiguration.default config.protocolClasses = [MockURLProtocol.self] @@ -457,7 +448,7 @@ class UploadMediaUtilTests: XCTestCase { } var data = Data() switch requestCount { - case 0: // INIT + case 0: // INIT XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") XCTAssertTrue(requestBodyString!.contains("command=INIT")) @@ -465,12 +456,14 @@ class UploadMediaUtilTests: XCTestCase { withJSONObject: [ "media_id_string": "123", "expires_after_secs": 1000, - ], options: []) + ], options: [] + ) - case 1: // APPEND + case 1: // APPEND XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") XCTAssertTrue(requestBodyString!.contains("\r\nAPPEND\r\n")) - case 2: // FINALIZE + + case 2: // FINALIZE XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") XCTAssertTrue(requestBodyString!.contains("command=FINALIZE")) @@ -479,7 +472,8 @@ class UploadMediaUtilTests: XCTestCase { "media_id_string": "123", "size": 10, "expires_after_secs": 200, - ], options: []) + ], options: [] + ) default: XCTFail() diff --git a/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetersRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetersRequestV1Tests.swift index ad223e8a..b5758d5d 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetersRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetersRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetRetweetersRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetRetweetersRequestV1( @@ -39,7 +37,7 @@ class GetRetweetersRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "id": "_i_" + "id": "_i_", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsOfMeRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsOfMeRequestV1Tests.swift index ac2badd4..b35215df 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsOfMeRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsOfMeRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetRetweetsOfMeRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetRetweetsOfMeRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsRequestV1Tests.swift index 943fb194..2cc43848 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetRetweetsRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetRetweetsRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/Retweet/PostRetweetRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Retweet/PostRetweetRequestV1Tests.swift index 4dd75c38..78d1ef2a 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Retweet/PostRetweetRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Retweet/PostRetweetRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostRetweetRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostRetweetRequestV1( @@ -21,7 +19,7 @@ class PostRetweetRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "trim_user": true + "trim_user": true, ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Retweet/PostUnRetweetRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Retweet/PostUnRetweetRequestV1Tests.swift index 54247f8f..674723e8 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Retweet/PostUnRetweetRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Retweet/PostUnRetweetRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostUnRetweetRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostUnRetweetRequestV1( @@ -21,7 +19,7 @@ class PostUnRetweetRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "trim_user": true + "trim_user": true, ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Search/GetSavedSearchesListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Search/GetSavedSearchesListRequestV1Tests.swift index a03ba4a6..4109bea0 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Search/GetSavedSearchesListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Search/GetSavedSearchesListRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetSavedSearchesListRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetSavedSearchesListRequestV1() diff --git a/Tests/TwitterAPIKitTests/APIv1/Search/GetSearchTweetsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Search/GetSearchTweetsRequestV1Tests.swift index fadb2635..308ab8f2 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Search/GetSearchTweetsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Search/GetSearchTweetsRequestV1Tests.swift @@ -2,15 +2,11 @@ import TwitterAPIKit import XCTest class GetSearchTweetsRequestV1Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { - let req = GetSearchTweetsRequestV1( q: "あああ", lang: "lang", @@ -40,7 +36,8 @@ class GetSearchTweetsRequestV1Tests: XCTestCase { "count": 20, "max_id": "100", "locale": "locale", - ]) + ] + ) } func testDefaultArg() throws { @@ -51,7 +48,7 @@ class GetSearchTweetsRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "q": "_q_" + "q": "_q_", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesCreateRequestV1Tests.swift index fc135ae1..33608d4a 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesCreateRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostSavedSearchesCreateRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostSavedSearchesCreateRequestV1( @@ -20,7 +18,7 @@ class PostSavedSearchesCreateRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "query": "_q_" + "query": "_q_", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesDestroyRequestV1Tests.swift index 4caab937..95e647f9 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesDestroyRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostSavedSearchesDestroyRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostSavedSearchesDestroyRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesHomeTimelineRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesHomeTimelineRequestV1Tests.swift index 839b5d3c..e43dfd6f 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesHomeTimelineRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesHomeTimelineRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetStatusesHomeTimelineRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetStatusesHomeTimelineRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesMentionsTimelineRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesMentionsTimelineRequestV1Tests.swift index de4e5376..fcdf8609 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesMentionsTimelineRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesMentionsTimelineRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetStatusesMentionsTimelineRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetStatusesMentionsTimelineRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesUserTimelineRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesUserTimelineRequestV1Tests.swift index 7ebf2d54..a8c35663 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesUserTimelineRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesUserTimelineRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetStatusesUserTimelineRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetStatusesUserTimelineRequestV1( @@ -45,7 +43,7 @@ class GetStatusesUserTimelineRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "screen_name": "s" + "screen_name": "s", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsAvailableRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsAvailableRequestV1Tests.swift index a9ad42ad..a99ee5a1 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsAvailableRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsAvailableRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetTrendsAvailableRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetTrendsAvailableRequestV1() diff --git a/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsClosestRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsClosestRequestV1Tests.swift index 32f24cd0..907c3fad 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsClosestRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsClosestRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetTrendsClosestRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetTrendsClosestRequestV1( diff --git a/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsPlaceRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsPlaceRequestV1Tests.swift index 3ebe4126..e6dfbf4a 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsPlaceRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsPlaceRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetTrendsPlaceRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetTrendsPlaceRequestV1( @@ -35,7 +33,7 @@ class GetTrendsPlaceRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "woeid": "_w_" + "woeid": "_w_", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesLookupRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesLookupRequestV1Tests.swift index 85599f1e..26c620bd 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesLookupRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesLookupRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetStatusesLookupRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetStatusesLookupRequestV1( @@ -43,7 +41,7 @@ class GetStatusesLookupRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "id": "a" + "id": "a", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesShowRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesShowRequestV1Tests.swift index fdfd00f7..993c05c1 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesShowRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesShowRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetStatusesShowRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetStatusesShowRequestV1( @@ -43,7 +41,7 @@ class GetStatusesShowRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "id": "_i_" + "id": "_i_", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesDestroyRequestV1Tests.swift index 9c819514..2500b7fb 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesDestroyRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostStatusesDestroyRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostStatusesDestroyRequestV1( @@ -21,7 +19,7 @@ class PostStatusesDestroyRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "trim_user": true + "trim_user": true, ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesUpdateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesUpdateRequestV1Tests.swift index 07383ef3..788929ea 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesUpdateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesUpdateRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostStatusesUpdateRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostStatusesUpdateRequestV1( @@ -60,7 +58,7 @@ class PostStatusesUpdateRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "status": "_s_" + "status": "_s_", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersLookupRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersLookupRequestV1Tests.swift index 50980dc4..6a932a76 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersLookupRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersLookupRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetUsersLookupRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetUsersLookupRequestV1( @@ -37,7 +35,7 @@ class GetUsersLookupRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "screen_name": "s1,s2" + "screen_name": "s1,s2", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersProfileBannerRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersProfileBannerRequestV1Tests.swift index 6d8d65cd..4bccd501 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersProfileBannerRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersProfileBannerRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetUsersProfileBannerRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetUsersProfileBannerRequestV1( @@ -20,7 +18,7 @@ class GetUsersProfileBannerRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "user_id": "uid" + "user_id": "uid", ] ) } @@ -37,7 +35,7 @@ class GetUsersProfileBannerRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "screen_name": "s" + "screen_name": "s", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersSearchRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersSearchRequestV1Tests.swift index 847efba6..e5f381bf 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersSearchRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersSearchRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetUsersSearchRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetUsersSearchRequestV1( @@ -39,7 +37,7 @@ class GetUsersSearchRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "q": "qq" + "q": "qq", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersShowRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersShowRequestV1Tests.swift index 878ddf7c..892f2c1b 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersShowRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersShowRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetUsersShowRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetUsersShowRequestV1( @@ -35,7 +33,7 @@ class GetUsersShowRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "screen_name": "s" + "screen_name": "s", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersBlockingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersBlockingRequestV2Tests.swift index fe01f86e..85e3b470 100644 --- a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersBlockingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersBlockingRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class DeleteUsersBlockingRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = DeleteUsersBlockingRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersMutingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersMutingRequestV2Tests.swift index 532ef6cd..ec3f82d5 100644 --- a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersMutingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersMutingRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class DeleteUsersMutingRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = DeleteUsersMutingRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersBlockingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersBlockingRequestV2Tests.swift index f8cf17d9..3627251f 100644 --- a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersBlockingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersBlockingRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetUsersBlockingRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetUsersBlockingRequestV2( @@ -30,7 +28,8 @@ class GetUsersBlockingRequestV2Tests: XCTestCase { "pagination_token": "token", "tweet.fields": "context_annotations,entities,geo", "user.fields": "profile_image_url,protected,public_metrics", - ]) + ] + ) } func testDefaultArg() throws { diff --git a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersMutingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersMutingRequestV2Tests.swift index fb7dfc0a..e45baeee 100644 --- a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersMutingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersMutingRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetUsersMutingRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetUsersMutingRequestV2( @@ -30,7 +28,8 @@ class GetUsersMutingRequestV2Tests: XCTestCase { "pagination_token": "t", "tweet.fields": "conversation_id,id,in_reply_to_user_id", "user.fields": "created_at,username,verified", - ]) + ] + ) } func testDefaultArg() throws { diff --git a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersBlockingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersBlockingRequestV2Tests.swift index 9f9344fc..54a71a85 100644 --- a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersBlockingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersBlockingRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostUsersBlockingRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostUsersBlockingRequestV2( @@ -21,7 +19,8 @@ class PostUsersBlockingRequestV2Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "target_user_id": "_targetUserID_" - ]) + "target_user_id": "_targetUserID_", + ] + ) } } diff --git a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersMutingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersMutingRequestV2Tests.swift index adc65a7b..6f0423c0 100644 --- a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersMutingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersMutingRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostUsersMutingRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostUsersMutingRequestV2( @@ -21,7 +19,7 @@ class PostUsersMutingRequestV2Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "target_user_id": "_targetUserID_" + "target_user_id": "_targetUserID_", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv2/Bookmarks/DeleteUsersBookmarksRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Bookmarks/DeleteUsersBookmarksRequestV2Tests.swift index feec5469..8b239b8f 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Bookmarks/DeleteUsersBookmarksRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Bookmarks/DeleteUsersBookmarksRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class DeleteUsersBookmarksRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = DeleteUsersBookmarksRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/Bookmarks/GetUsersBookmarksRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Bookmarks/GetUsersBookmarksRequestV2Tests.swift index 9568292f..739b0e17 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Bookmarks/GetUsersBookmarksRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Bookmarks/GetUsersBookmarksRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetUsersBookmarksRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetUsersBookmarksRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/Bookmarks/PostUsersBookmarksRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Bookmarks/PostUsersBookmarksRequestV2Tests.swift index b80831d0..02261569 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Bookmarks/PostUsersBookmarksRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Bookmarks/PostUsersBookmarksRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostUsersBookmarksRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostUsersBookmarksRequestV2( @@ -21,7 +19,7 @@ class PostUsersBookmarksRequestV2Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "tweet_id": "_t_" + "tweet_id": "_t_", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobRequestV2Tests.swift index f4b29d50..7f9eba8b 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetComplianceJobRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetComplianceJobRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobsRequestV2Tests.swift index 0efc6550..bef2b1ba 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobsRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetComplianceJobsRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetComplianceJobsRequestV2( @@ -23,7 +21,8 @@ class GetComplianceJobsRequestV2Tests: XCTestCase { [ "type": "tweets", "status": "complete", - ]) + ] + ) } func testDefaultArg() throws { @@ -34,7 +33,8 @@ class GetComplianceJobsRequestV2Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "type": "users" - ]) + "type": "users", + ] + ) } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Compliance/PostComplianceJobsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Compliance/PostComplianceJobsRequestV2Tests.swift index 2f4ce6f2..7c7e61c7 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Compliance/PostComplianceJobsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Compliance/PostComplianceJobsRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostComplianceJobsRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostComplianceJobsRequestV2( @@ -25,7 +23,8 @@ class PostComplianceJobsRequestV2Tests: XCTestCase { "type": "tweets", "name": "n", "resumable": true, - ]) + ] + ) } func testDefaultArg() throws { @@ -36,7 +35,8 @@ class PostComplianceJobsRequestV2Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "type": "users" - ]) + "type": "users", + ] + ) } } diff --git a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsIdDmEventsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsIdDmEventsRequestV2Tests.swift index 192f10f1..b22ceac4 100644 --- a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsIdDmEventsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsIdDmEventsRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetDmConversationsIdDmEventsRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetDmConversationsIdDmEventsRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsWithParticipantIdDmEventsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsWithParticipantIdDmEventsRequestV2Tests.swift index 1c3b4f98..d60387a2 100644 --- a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsWithParticipantIdDmEventsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsWithParticipantIdDmEventsRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetDmConversationsWithParticipantIdDmEventsRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetDmConversationsWithParticipantIdDmEventsRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmEventsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmEventsRequestV2Tests.swift index 14f7f575..6d1c3d1f 100644 --- a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmEventsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmEventsRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetDmEventsRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetDmEventsRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationByIdRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationByIdRequestV2Tests.swift index 839463a2..5c51e874 100644 --- a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationByIdRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationByIdRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostDmConversationByIdRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostDmConversationByIdRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationRequestV2Tests.swift index 7edf056a..ce982906 100644 --- a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostDmConversationRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostDmConversationRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationWithUserRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationWithUserRequestV2Tests.swift index 41aaa055..f2ec9dad 100644 --- a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationWithUserRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationWithUserRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostDmConversationWithUserRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostDmConversationWithUserRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/ExpansionsV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/ExpansionsV2Tests.swift index 2683e7f1..fb2f8525 100644 --- a/Tests/TwitterAPIKitTests/APIv2/ExpansionsV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/ExpansionsV2Tests.swift @@ -3,12 +3,9 @@ import XCTest @testable import TwitterAPIKit class ExpansionsV2Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func testTwitterTweetExpansionsV2() throws { let allCases: [TwitterTweetExpansionsV2] = [ @@ -35,7 +32,6 @@ class ExpansionsV2Tests: XCTestCase { } func testTwitterUserExpansionsV2() throws { - let allCases: [TwitterUserExpansionsV2] = [ .pinnedTweetID, .other("~~~"), diff --git a/Tests/TwitterAPIKitTests/APIv2/FieldsV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/FieldsV2Tests.swift index ea56727f..25ac9cab 100644 --- a/Tests/TwitterAPIKitTests/APIv2/FieldsV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/FieldsV2Tests.swift @@ -3,14 +3,11 @@ import XCTest @testable import TwitterAPIKit class FieldsV2Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } + override func tearDownWithError() throws {} - override func tearDownWithError() throws { - } func testTwitterTweetFieldsV2() throws { - let allCases: [TwitterTweetFieldsV2] = [ .attachments, .authorID, @@ -116,6 +113,7 @@ class FieldsV2Tests: XCTestCase { "duration_minutes,end_datetime,id,options,voting_status,~~" ) } + func testTwitterPollFieldsV2All() throws { XCTAssertEqual(TwitterPollFieldsV2.all.count, 5) } @@ -157,7 +155,7 @@ class FieldsV2Tests: XCTestCase { .createdAt, .followerCount, .memberCount, - .`private`, + .private, .description, .id, .name, @@ -171,6 +169,7 @@ class FieldsV2Tests: XCTestCase { "created_at,description,follower_count,id,member_count,name,owner_id,private,~" ) } + func testTwitterListFieldsV2All() throws { XCTAssertEqual(TwitterListFieldsV2.all.count, 8) } diff --git a/Tests/TwitterAPIKitTests/APIv2/Friendships/DeleteUsersFollowingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Friendships/DeleteUsersFollowingRequestV2Tests.swift index 947b37c8..2b8a4f0d 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Friendships/DeleteUsersFollowingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Friendships/DeleteUsersFollowingRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class DeleteUsersFollowingRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = DeleteUsersFollowingRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowersRequestV2Tests.swift index 20bb49ea..c25fd455 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowersRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetUsersFollowersRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetUsersFollowersRequestV2( @@ -30,7 +28,8 @@ class GetUsersFollowersRequestV2Tests: XCTestCase { "pagination_token": "token", "tweet.fields": "conversation_id", "user.fields": "username", - ]) + ] + ) } func testDefaultArg() throws { diff --git a/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowingRequestV2Tests.swift index e767c69e..8bc31201 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowingRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetUsersFollowingRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetUsersFollowingRequestV2( @@ -30,7 +28,8 @@ class GetUsersFollowingRequestV2Tests: XCTestCase { "pagination_token": "t", "tweet.fields": "text", "user.fields": "name", - ]) + ] + ) } func testDefaultArg() throws { diff --git a/Tests/TwitterAPIKitTests/APIv2/Friendships/PostUsersFollowingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Friendships/PostUsersFollowingRequestV2Tests.swift index 3b0c0544..23d2a9f0 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Friendships/PostUsersFollowingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Friendships/PostUsersFollowingRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostUsersFollowingRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostUsersFollowingRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/Like/DeleteUsersLikesRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Like/DeleteUsersLikesRequestV2Tests.swift index 0e50c4c7..7c1a8e92 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Like/DeleteUsersLikesRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Like/DeleteUsersLikesRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class DeleteUsersLikesRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = DeleteUsersLikesRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/Like/GetTweetsLikingUsersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Like/GetTweetsLikingUsersRequestV2Tests.swift index 839b518f..83c58af9 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Like/GetTweetsLikingUsersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Like/GetTweetsLikingUsersRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetTweetsLikingUsersRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetTweetsLikingUsersRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/Like/GetUsersLikedTweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Like/GetUsersLikedTweetsRequestV2Tests.swift index 9c2bc14b..f84e7a39 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Like/GetUsersLikedTweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Like/GetUsersLikedTweetsRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetUsersLikedTweetsRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetUsersLikedTweetsRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/Like/PostUsersLikesRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Like/PostUsersLikesRequestV2Tests.swift index deb016de..f570df00 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Like/PostUsersLikesRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Like/PostUsersLikesRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostUsersLikesRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostUsersLikesRequestV2( @@ -21,7 +19,7 @@ class PostUsersLikesRequestV2Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "tweet_id": "_tweetID_" + "tweet_id": "_tweetID_", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv2/List/DeleteListRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/DeleteListRequestV2Tests.swift index d25edd9f..c79ce6b3 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/DeleteListRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/DeleteListRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class DeleteListRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = DeleteListRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/List/DeleteListsMembersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/DeleteListsMembersRequestV2Tests.swift index 5df0d59e..7c77fcfc 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/DeleteListsMembersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/DeleteListsMembersRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class DeleteListsMembersRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = DeleteListsMembersRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersFollowedListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersFollowedListsRequestV2Tests.swift index 6d2af544..2e43fa81 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersFollowedListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersFollowedListsRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class DeleteUsersFollowedListsRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = DeleteUsersFollowedListsRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersPinnedListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersPinnedListsRequestV2Tests.swift index 3e8339c6..c6d1ed99 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersPinnedListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersPinnedListsRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class DeleteUsersPinnedListsRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = DeleteUsersPinnedListsRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetListRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetListRequestV2Tests.swift index 4505f091..afbb39db 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetListRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetListRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetListRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetListRequestV2( @@ -26,7 +24,8 @@ class GetListRequestV2Tests: XCTestCase { "expansions": "owner_id", "list.fields": "description,owner_id", "user.fields": "username", - ]) + ] + ) } func testDefaultArg() throws { diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetListsFollowersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetListsFollowersRequestV2Tests.swift index 8c7a40c0..5ef73c15 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetListsFollowersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetListsFollowersRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetListsFollowersRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetListsFollowersRequestV2( @@ -30,7 +28,8 @@ class GetListsFollowersRequestV2Tests: XCTestCase { "pagination_token": "t", "tweet.fields": "entities", "user.fields": "verified", - ]) + ] + ) } func testDefaultArg() throws { diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetListsMembersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetListsMembersRequestV2Tests.swift index 374b771b..c81c8fc3 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetListsMembersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetListsMembersRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetListsMembersRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetListsMembersRequestV2( @@ -30,7 +28,8 @@ class GetListsMembersRequestV2Tests: XCTestCase { "pagination_token": "t", "tweet.fields": "created_at", "user.fields": "protected", - ]) + ] + ) } func testDefaultArg() throws { diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetListsTweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetListsTweetsRequestV2Tests.swift index 71e2ac6b..674dc06f 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetListsTweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetListsTweetsRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetListsTweetsRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetListsTweetsRequestV2( @@ -30,8 +28,8 @@ class GetListsTweetsRequestV2Tests: XCTestCase { "pagination_token": "t", "tweet.fields": "text", "user.fields": "profile_image_url", - - ]) + ] + ) } func testDefaultArg() throws { diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersFollowedListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersFollowedListsRequestV2Tests.swift index 11991bc7..9fe04c54 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersFollowedListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersFollowedListsRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetUsersFollowedListsRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetUsersFollowedListsRequestV2( @@ -30,7 +28,8 @@ class GetUsersFollowedListsRequestV2Tests: XCTestCase { "max_results": 10, "pagination_token": "t", "user.fields": "entities", - ]) + ] + ) } func testDefaultArg() throws { diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersListMembershipsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersListMembershipsRequestV2Tests.swift index 27848efd..eaa6b93e 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersListMembershipsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersListMembershipsRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetUsersListMembershipsRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetUsersListMembershipsRequestV2( @@ -30,7 +28,8 @@ class GetUsersListMembershipsRequestV2Tests: XCTestCase { "max_results": 10, "pagination_token": "t", "user.fields": "protected", - ]) + ] + ) } func testDefaultArg() throws { diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersOwnedListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersOwnedListsRequestV2Tests.swift index 20889c01..96897bb2 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersOwnedListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersOwnedListsRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetUsersOwnedListsRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetUsersOwnedListsRequestV2( @@ -30,8 +28,8 @@ class GetUsersOwnedListsRequestV2Tests: XCTestCase { "max_results": 11, "pagination_token": "t", "user.fields": "created_at", - - ]) + ] + ) } func testDefaultArg() throws { diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersPinnedListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersPinnedListsRequestV2Tests.swift index 60889066..c67a049d 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersPinnedListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersPinnedListsRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetUsersPinnedListsRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetUsersPinnedListsRequestV2( @@ -26,7 +24,8 @@ class GetUsersPinnedListsRequestV2Tests: XCTestCase { "expansions": "owner_id", "list.fields": "id", "user.fields": "username", - ]) + ] + ) } func testDefaultArg() throws { diff --git a/Tests/TwitterAPIKitTests/APIv2/List/PostListsMembersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/PostListsMembersRequestV2Tests.swift index 03025998..6bd178ab 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/PostListsMembersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/PostListsMembersRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostListsMembersRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostListsMembersRequestV2( @@ -21,7 +19,8 @@ class PostListsMembersRequestV2Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "user_id": "_userID_" - ]) + "user_id": "_userID_", + ] + ) } } diff --git a/Tests/TwitterAPIKitTests/APIv2/List/PostListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/PostListsRequestV2Tests.swift index 0a676658..d1cc61b9 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/PostListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/PostListsRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostListsRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostListsRequestV2( @@ -37,7 +35,7 @@ class PostListsRequestV2Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "name": "n" + "name": "n", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv2/List/PostUsersFollowedListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/PostUsersFollowedListsRequestV2Tests.swift index c9ec300a..3efa9906 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/PostUsersFollowedListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/PostUsersFollowedListsRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostUsersFollowedListsRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostUsersFollowedListsRequestV2( @@ -21,7 +19,7 @@ class PostUsersFollowedListsRequestV2Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "list_id": "_listID_" + "list_id": "_listID_", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv2/List/PostUsersPinnedListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/PostUsersPinnedListsRequestV2Tests.swift index 90f01272..8db0ebaa 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/PostUsersPinnedListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/PostUsersPinnedListsRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostUsersPinnedListsRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostUsersPinnedListsRequestV2( @@ -21,7 +19,7 @@ class PostUsersPinnedListsRequestV2Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "list_id": "_listID_" + "list_id": "_listID_", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv2/List/PutListRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/PutListRequestV2Tests.swift index 9cbd992e..6a6e51f0 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/PutListRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/PutListRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PutListRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PutListRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/Retweet/DeleteUsersRetweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Retweet/DeleteUsersRetweetsRequestV2Tests.swift index 66553608..765acb9f 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Retweet/DeleteUsersRetweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Retweet/DeleteUsersRetweetsRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class DeleteUsersRetweetsRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = DeleteUsersRetweetsRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/Retweet/GetTweetsRetweetedByRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Retweet/GetTweetsRetweetedByRequestV2Tests.swift index 3b98ee1b..0ba3e650 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Retweet/GetTweetsRetweetedByRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Retweet/GetTweetsRetweetedByRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetTweetsRetweetedByRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetTweetsRetweetedByRequestV2( @@ -36,7 +34,8 @@ class GetTweetsRetweetedByRequestV2Tests: XCTestCase { "poll.fields": "end_datetime,options", "tweet.fields": "context_annotations,non_public_metrics", "user.fields": "username,withheld", - ]) + ] + ) } func testDefaultArg() throws { diff --git a/Tests/TwitterAPIKitTests/APIv2/Retweet/PostUsersRetweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Retweet/PostUsersRetweetsRequestV2Tests.swift index 89516c32..95b4eea6 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Retweet/PostUsersRetweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Retweet/PostUsersRetweetsRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostUsersRetweetsRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostUsersRetweetsRequestV2( @@ -21,7 +19,8 @@ class PostUsersRetweetsRequestV2Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "tweet_id": "_tweetID_" - ]) + "tweet_id": "_tweetID_", + ] + ) } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchAllRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchAllRequestV2Tests.swift index 177a3429..3394167a 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchAllRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchAllRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetTweetsSearchAllRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetTweetsSearchAllRequestV2( @@ -59,7 +57,7 @@ class GetTweetsSearchAllRequestV2Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "query": "_q1_" + "query": "_q1_", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchRecentRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchRecentRequestV2Tests.swift index 66c15e14..5650434b 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchRecentRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchRecentRequestV2Tests.swift @@ -2,15 +2,11 @@ import TwitterAPIKit import XCTest class GetTweetsSearchRecentRequestV2Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { - let req = GetTweetsSearchRecentRequestV2( query: "Q", endTime: Date(timeIntervalSince1970: 100), @@ -51,5 +47,4 @@ class GetTweetsSearchRecentRequestV2Tests: XCTestCase { ] ) } - } diff --git a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpaceRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpaceRequestV2Tests.swift index 601c64a8..67024f84 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpaceRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpaceRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetSpaceRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetSpaceRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesBuyersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesBuyersRequestV2Tests.swift index ad34df1f..71cf91a4 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesBuyersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesBuyersRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetSpacesBuyersRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetSpacesBuyersRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesByCreatorIDsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesByCreatorIDsRequestV2Tests.swift index 43a4a24c..bee1c373 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesByCreatorIDsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesByCreatorIDsRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetSpacesByCreatorIDsRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetSpacesByCreatorIDsRequestV2( @@ -41,7 +39,7 @@ class GetSpacesByCreatorIDsRequestV2Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "user_ids": "a,b,c" + "user_ids": "a,b,c", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesRequestV2Tests.swift index 321fa0bd..444e094f 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetSpacesRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetSpacesRequestV2( @@ -41,7 +39,7 @@ class GetSpacesRequestV2Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "ids": "a,b,あ" + "ids": "a,b,あ", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesSearchRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesSearchRequestV2Tests.swift index caf3b621..18718b06 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesSearchRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesSearchRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetSpacesSearchRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetSpacesSearchRequestV2( @@ -43,7 +41,7 @@ class GetSpacesSearchRequestV2Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "query": "あ" + "query": "あ", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesTweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesTweetsRequestV2Tests.swift index 968503ad..fbcc9d92 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesTweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesTweetsRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetSpacesTweetsRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetSpacesTweetsRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSampleStreamRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSampleStreamRequestV2Tests.swift index cc6eb04c..5cdf4a84 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSampleStreamRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSampleStreamRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetTweetsSampleStreamRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetTweetsSampleStreamRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRequestV2Tests.swift index 00c6b506..e5361c2f 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetTweetsSearchStreamRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetTweetsSearchStreamRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRulesRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRulesRequestV2Tests.swift index c02e7250..abba48b3 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRulesRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRulesRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetTweetsSearchStreamRulesRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetTweetsSearchStreamRulesRequestV2( @@ -20,7 +18,7 @@ class GetTweetsSearchStreamRulesRequestV2Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "ids": "10,20" + "ids": "10,20", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv2/Stream/PostTweetsSearchStreamRulesRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Stream/PostTweetsSearchStreamRulesRequestV2Tests.swift index af0486db..a47357b3 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Stream/PostTweetsSearchStreamRulesRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Stream/PostTweetsSearchStreamRulesRequestV2Tests.swift @@ -2,15 +2,11 @@ import TwitterAPIKit import XCTest class PostTweetsSearchStreamRulesRequestV2Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { - XCTContext.runActivity(named: "add") { _ in let add = PostTweetsSearchStreamRulesRequestV2( @@ -30,8 +26,9 @@ class PostTweetsSearchStreamRulesRequestV2Tests: XCTestCase { "add": [ ["value": "value", "tag": "tag"], ["value": "hoge"], - ] - ]) + ], + ] + ) AssertEqualAnyDict(add.queryParameters, [:]) } @@ -48,20 +45,21 @@ class PostTweetsSearchStreamRulesRequestV2Tests: XCTestCase { delete.bodyParameters, [ "delete": [ - "ids": ["1", "20"] - ] - ]) + "ids": ["1", "20"], + ], + ] + ) AssertEqualAnyDict(delete.queryParameters, [:]) } } func testDryRun() throws { - let add = PostTweetsSearchStreamRulesRequestV2( operation: .add([ .init(value: "value", tag: "tag"), .init(value: "hoge"), - ]), dryRun: true) + ]), dryRun: true + ) XCTAssertEqual(add.method, .post) XCTAssertEqual(add.path, "/2/tweets/search/stream/rules") @@ -74,10 +72,10 @@ class PostTweetsSearchStreamRulesRequestV2Tests: XCTestCase { "add": [ ["value": "value", "tag": "tag"], ["value": "hoge"], - ] - ]) + ], + ] + ) AssertEqualAnyDict(add.queryParameters, ["dry_run": true]) } - } diff --git a/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersMentionsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersMentionsRequestV2Tests.swift index 6e6db4cf..812b4663 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersMentionsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersMentionsRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetUsersMentionsRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetUsersMentionsRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTimelinesReverseChronologicalRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTimelinesReverseChronologicalRequestV2Tests.swift index 4248b32f..8ebc9e1b 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTimelinesReverseChronologicalRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTimelinesReverseChronologicalRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetUsersTimelinesReverseChronologicalRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetUsersTimelinesReverseChronologicalRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTweetsRequestV2Tests.swift index 7b544fd6..d1084435 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTweetsRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetUsersTweetsRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetUsersTweetsRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/Tweet/DeleteTweetRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Tweet/DeleteTweetRequestV2Tests.swift index 0550358a..4ca976e5 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Tweet/DeleteTweetRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Tweet/DeleteTweetRequestV2Tests.swift @@ -2,12 +2,9 @@ import TwitterAPIKit import XCTest class DeleteTweetRequestV2Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let request = DeleteTweetRequestV2(id: "123") diff --git a/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetRequestV2Tests.swift index cc41f0f4..43b2cc12 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetRequestV2Tests.swift @@ -2,15 +2,11 @@ import TwitterAPIKit import XCTest class GetTweetRequestV2Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { - XCTContext.runActivity(named: "with only required parameters") { _ in let tweet = GetTweetRequestV2(id: "123") @@ -41,8 +37,8 @@ class GetTweetRequestV2Tests: XCTestCase { "poll.fields": "id", "tweet.fields": "id,text", "user.fields": "entities", - ]) + ] + ) } } - } diff --git a/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsQuoteTweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsQuoteTweetsRequestV2Tests.swift index 05c6e806..a29e515b 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsQuoteTweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsQuoteTweetsRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetTweetsQuoteTweetsRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetTweetsQuoteTweetsRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsRequestV2Tests.swift index dad21667..8d2e2d5f 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsRequestV2Tests.swift @@ -2,15 +2,11 @@ import TwitterAPIKit import XCTest class GetTweetsRequestV2Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { - XCTContext.runActivity(named: "with only required parameters") { _ in let tweet = GetTweetsRequestV2(ids: ["123", "abc"]) @@ -42,8 +38,8 @@ class GetTweetsRequestV2Tests: XCTestCase { "poll.fields": "id", "tweet.fields": "id,text", "user.fields": "entities", - ]) + ] + ) } } - } diff --git a/Tests/TwitterAPIKitTests/APIv2/Tweet/PostTweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Tweet/PostTweetsRequestV2Tests.swift index e082e7f1..080ba62e 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Tweet/PostTweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Tweet/PostTweetsRequestV2Tests.swift @@ -2,22 +2,19 @@ import TwitterAPIKit import XCTest class PostTweetsRequestV2Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { - let request = PostTweetsRequestV2( directMessageDeepLink: "deep_link", forSuperFollowersOnly: true, geo: .init(placeID: "place"), media: .init( mediaIDs: ["media_1", "media_2"], - taggedUserIDs: ["user_1", "user_2"]), + taggedUserIDs: ["user_1", "user_2"] + ), poll: .init(durationMinutes: 100, options: ["o1", "o2"]), quoteTweetID: "quote_id", reply: .init(excludeReplyUserIDs: ["r_1", "r_2"], inReplyToTweetID: "t_1"), @@ -41,6 +38,7 @@ class PostTweetsRequestV2Tests: XCTestCase { "reply": ["in_reply_to_tweet_id": "t_1", "exclude_reply_user_ids": ["r_1", "r_2"]], "reply_settings": "following", "text": "text", - ]) + ] + ) } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Tweet/PutTweetsHiddenRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Tweet/PutTweetsHiddenRequestV2Tests.swift index 409d3edb..abf66a31 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Tweet/PutTweetsHiddenRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Tweet/PutTweetsHiddenRequestV2Tests.swift @@ -2,15 +2,11 @@ import TwitterAPIKit import XCTest class PutTweetsHiddenRequestV2Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { - let req = PutTweetsHiddenRequestV2(id: "12", hidden: true) XCTAssertEqual(req.method, .put) XCTAssertEqual(req.path, "/2/tweets/12/hidden") diff --git a/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsAllRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsAllRequestV2Tests.swift index f42ef400..09e8e6ad 100644 --- a/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsAllRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsAllRequestV2Tests.swift @@ -2,12 +2,9 @@ import TwitterAPIKit import XCTest class GetTweetsCountsAllRequestV2Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetTweetsCountsAllRequestV2( @@ -33,6 +30,7 @@ class GetTweetsCountsAllRequestV2Tests: XCTestCase { "since_id": "s", "start_time": "1970-01-01T00:00:05Z", "until_id": "u", - ]) + ] + ) } } diff --git a/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsRecentRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsRecentRequestV2Tests.swift index de343f6d..56ab07c8 100644 --- a/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsRecentRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsRecentRequestV2Tests.swift @@ -2,12 +2,9 @@ import TwitterAPIKit import XCTest class GetTweetsCountsRecentRequestV2Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetTweetsCountsRecentRequestV2( @@ -31,6 +28,7 @@ class GetTweetsCountsRecentRequestV2Tests: XCTestCase { "since_id": "s", "start_time": "1970-01-01T00:02:00Z", "until_id": "u", - ]) + ] + ) } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Users/GetUserRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Users/GetUserRequestV2Tests.swift index d247be4e..2f6080b2 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Users/GetUserRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Users/GetUserRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetUserRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetUserRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByRequestV2Tests.swift index 86490bdd..1a7ab31b 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetUsersByRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetUsersByRequestV2( @@ -39,7 +37,7 @@ class GetUsersByRequestV2Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "usernames": "a,b" + "usernames": "a,b", ] ) } diff --git a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByUsernameRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByUsernameRequestV2Tests.swift index b5e12a6b..b0d30db3 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByUsernameRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByUsernameRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetUsersByUsernameRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetUsersByUsernameRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersMeRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersMeRequestV2Tests.swift index 5abf22fb..917394e4 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersMeRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersMeRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetUsersMeRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetUsersMeRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersRequestV2Tests.swift index 70b1a17b..b9e00825 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetUsersRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetUsersRequestV2( @@ -39,7 +37,7 @@ class GetUsersRequestV2Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "ids": "a,b" + "ids": "a,b", ] ) } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/GetOAuth2AuthorizeRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/GetOAuth2AuthorizeRequestV1Tests.swift index 5f32c4f8..873b7c99 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/GetOAuth2AuthorizeRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/GetOAuth2AuthorizeRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetOAuth2AuthorizeRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetOAuth2AuthorizeRequestV1( diff --git a/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthenticateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthenticateRequestV1Tests.swift index 263b7946..98a27f0d 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthenticateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthenticateRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetOAuthAuthenticateRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetOAuthAuthenticateRequestV1( @@ -37,8 +35,7 @@ class GetOAuthAuthenticateRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "oauth_token": "_o_" - + "oauth_token": "_o_", ] ) } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthorizeRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthorizeRequestV1Tests.swift index 473ccd89..fa142580 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthorizeRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthorizeRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class GetOAuthAuthorizeRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = GetOAuthAuthorizeRequestV1( @@ -37,7 +35,7 @@ class GetOAuthAuthorizeRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "oauth_token": "_o_" + "oauth_token": "_o_", ] ) } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2AccessTokenRequestV2Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2AccessTokenRequestV2Tests.swift index 72cb94ac..0a1bff9b 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2AccessTokenRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2AccessTokenRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostOAuth2AccessTokenRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostOAuth2AccessTokenRequestV2( diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2InvalidateTokenRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2InvalidateTokenRequestV1Tests.swift index 6ea17bc9..d280cd93 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2InvalidateTokenRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2InvalidateTokenRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostOAuth2InvalidateTokenRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostOAuth2InvalidateTokenRequestV1( @@ -20,7 +18,7 @@ class PostOAuth2InvalidateTokenRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "access_token": "_a_" + "access_token": "_a_", ] ) } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RefreshTokenRequestV2Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RefreshTokenRequestV2Tests.swift index 2d8329d8..8803a4b5 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RefreshTokenRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RefreshTokenRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostOAuth2RefreshTokenRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostOAuth2RefreshTokenRequestV2( diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RevokeTokenRequestV2Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RevokeTokenRequestV2Tests.swift index 041293a5..f037eaac 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RevokeTokenRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RevokeTokenRequestV2Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostOAuth2RevokeTokenRequestV2Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostOAuth2RevokeTokenRequestV2( @@ -37,7 +35,7 @@ class PostOAuth2RevokeTokenRequestV2Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "token": "_tt_" + "token": "_tt_", ] ) } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2TokenRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2TokenRequestV1Tests.swift index be03019a..4d1e5d6e 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2TokenRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2TokenRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostOAuth2TokenRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostOAuth2TokenRequestV1( @@ -20,7 +18,7 @@ class PostOAuth2TokenRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "grant_type": "_g_" + "grant_type": "_g_", ] ) } @@ -31,7 +29,7 @@ class PostOAuth2TokenRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "grant_type": "client_credentials" + "grant_type": "client_credentials", ] ) } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthAccessTokenRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthAccessTokenRequestV1Tests.swift index bc63ff75..76408d73 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthAccessTokenRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthAccessTokenRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostOAuthAccessTokenRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostOAuthAccessTokenRequestV1( diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthInvalidateTokenRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthInvalidateTokenRequestV1Tests.swift index a96eeac8..3c72ce63 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthInvalidateTokenRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthInvalidateTokenRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostOAuthInvalidateTokenRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostOAuthInvalidateTokenRequestV1() diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthRequestTokenRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthRequestTokenRequestV1Tests.swift index a1f9799b..cb68ee64 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthRequestTokenRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthRequestTokenRequestV1Tests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class PostOAuthRequestTokenRequestV1Tests: XCTestCase { - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { let req = PostOAuthRequestTokenRequestV1( @@ -35,7 +33,7 @@ class PostOAuthRequestTokenRequestV1Tests: XCTestCase { AssertEqualAnyDict( req.parameters, [ - "oauth_callback": "_o_" + "oauth_callback": "_o_", ] ) } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift b/Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift index f93d04e3..1636a903 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift @@ -2,11 +2,9 @@ import TwitterAPIKit import XCTest class TwitterAuthAPITests: XCTestCase { - var client: TwitterAuthAPI! override func setUpWithError() throws { - let config = URLSessionConfiguration.default config.protocolClasses = [MockURLProtocol.self] @@ -27,7 +25,8 @@ class TwitterAuthAPITests: XCTestCase { ) XCTAssertEqual( url?.absoluteString, - "https://api.twitter.com/oauth/authorize?force_login=true&oauth_token=token&screen_name=name") + "https://api.twitter.com/oauth/authorize?force_login=true&oauth_token=token&screen_name=name" + ) } func testMakeOAuthAuthenticateURL() throws { @@ -36,7 +35,8 @@ class TwitterAuthAPITests: XCTestCase { ) XCTAssertEqual( url?.absoluteString, - "https://api.twitter.com/oauth/authenticate?force_login=true&oauth_token=token&screen_name=name") + "https://api.twitter.com/oauth/authenticate?force_login=true&oauth_token=token&screen_name=name" + ) } func testMakeOAuth2AuthorizeURL() throws { @@ -49,7 +49,8 @@ class TwitterAuthAPITests: XCTestCase { codeChallengeMethod: "plain", scopes: [ "users.read", "tweet.read", - ]) + ] + ) ) XCTAssertEqual( diff --git a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift index 781fc946..7e462afb 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift @@ -3,7 +3,6 @@ import XCTest @testable import TwitterAPIKit class TwitterOAuth2AccessTokenTests: XCTestCase { - func test() throws { try XCTContext.runActivity(named: "without refresh_token") { _ in @@ -46,7 +45,6 @@ class TwitterOAuth2AccessTokenTests: XCTestCase { } func testError() throws { - try XCTContext.runActivity(named: "Not json") { _ in XCTAssertThrowsError(try TwitterOAuth2AccessToken.fromResponse(data: Data("aa".utf8))) { error in XCTAssertTrue((error as! TwitterAPIKitError).isResponseSerializeFailed) diff --git a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2BearerTokenTests.swift b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2BearerTokenTests.swift index 10c0e2fe..04e0ecfc 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2BearerTokenTests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2BearerTokenTests.swift @@ -2,15 +2,11 @@ import TwitterAPIKit import XCTest class TwitterOAuth2BearerTokenTests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func testJsonData() throws { - let data = Data(#"{"token_type":"bearer","access_token":"token"}"#.utf8) let token = try TwitterOAuth2BearerToken(jsonData: data)! diff --git a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthAccessTokenV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthAccessTokenV1Tests.swift index 393e495b..6b1bb0a0 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthAccessTokenV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthAccessTokenV1Tests.swift @@ -2,17 +2,14 @@ import TwitterAPIKit import XCTest class TwitterOAuthAccessTokenV1Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { - let token = TwitterOAuthAccessTokenV1( - oauthToken: "token", oauthTokenSecret: "secret", userID: "uid", screenName: "sn") + oauthToken: "token", oauthTokenSecret: "secret", userID: "uid", screenName: "sn" + ) XCTAssertEqual(token.oauthToken, "token") XCTAssertEqual(token.oauthTokenSecret, "secret") XCTAssertEqual(token.userID, "uid") diff --git a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift index bfd53bc1..7c9b4869 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift @@ -2,15 +2,11 @@ import TwitterAPIKit import XCTest class TwitterOAuthTokenV1Tests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { - let token = TwitterOAuthTokenV1(oauthToken: "token", oauthTokenSecret: "secret", oauthCallbackConfirmed: true) XCTAssertEqual(token.oauthToken, "token") XCTAssertEqual(token.oauthTokenSecret, "secret") @@ -18,7 +14,6 @@ class TwitterOAuthTokenV1Tests: XCTestCase { } func testQueryStringData() { - let data = Data("oauth_token=token&oauth_token_secret=secret&oauth_callback_confirmed=true".utf8) let token = TwitterOAuthTokenV1(queryStringData: data)! diff --git a/Tests/TwitterAPIKitTests/Extensions/ConcurrencyTests.swift b/Tests/TwitterAPIKitTests/Extensions/ConcurrencyTests.swift index 56dd0302..016a71cb 100644 --- a/Tests/TwitterAPIKitTests/Extensions/ConcurrencyTests.swift +++ b/Tests/TwitterAPIKitTests/Extensions/ConcurrencyTests.swift @@ -6,12 +6,9 @@ import XCTest @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) class ConcurrencyTests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() async throws { let mockTask = MockTwitterAPISessionTask(taskIdentifier: 1) @@ -25,7 +22,8 @@ import XCTest task.append(chunk: Data(":\"value\"}".utf8)) mockTask.httpResponse = .init( - url: URL(string: "http://example.com")!, statusCode: 200, httpVersion: "1.1", headerFields: [:]) + url: URL(string: "http://example.com")!, statusCode: 200, httpVersion: "1.1", headerFields: [:] + ) task.complete(error: nil) } @@ -101,7 +99,6 @@ import XCTest } func testTaskCancel() async throws { - let mockTask = MockTwitterAPISessionTask(taskIdentifier: 1) let task = TwitterAPISessionDelegatedJSONTask( @@ -153,7 +150,6 @@ import XCTest var count = 0 for await response in stream { - switch count { case 0: XCTAssertEqual(response.success.map { String(data: $0, encoding: .utf8) }, "aaaa") @@ -175,7 +171,6 @@ import XCTest } func testStreamCancel() async throws { - let mockTask = MockTwitterAPISessionTask( taskIdentifier: 1, currentRequest: nil, @@ -203,7 +198,6 @@ import XCTest } func testStreamError() async throws { - let mockTask = MockTwitterAPISessionTask( taskIdentifier: 1, currentRequest: nil, @@ -214,12 +208,11 @@ import XCTest ) let task = TwitterAPISessionDelegatedStreamTask(task: mockTask) - let stream = task.streamResponse(queue: .main).map({ resp in resp.map { String(data: $0, encoding: .utf8)! } - }) + let stream = task.streamResponse(queue: .main).map { resp in resp.map { String(data: $0, encoding: .utf8)! } + } let asyncTask = Task { var count = 0 for await resp in stream { - switch count { case 0: XCTAssertEqual(resp.success, "aaaa") diff --git a/Tests/TwitterAPIKitTests/Extensions/DataTests.swift b/Tests/TwitterAPIKitTests/Extensions/DataTests.swift index 82bd3d9d..536dab26 100644 --- a/Tests/TwitterAPIKitTests/Extensions/DataTests.swift +++ b/Tests/TwitterAPIKitTests/Extensions/DataTests.swift @@ -3,12 +3,9 @@ import XCTest @testable import TwitterAPIKit class DataTests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func testSerialize() throws { XCTContext.runActivity(named: "success") { _ in diff --git a/Tests/TwitterAPIKitTests/Extensions/StringTests.swift b/Tests/TwitterAPIKitTests/Extensions/StringTests.swift index dfc36282..88293ccc 100644 --- a/Tests/TwitterAPIKitTests/Extensions/StringTests.swift +++ b/Tests/TwitterAPIKitTests/Extensions/StringTests.swift @@ -3,21 +3,16 @@ import XCTest @testable import TwitterAPIKit class StringTests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} /// https://developer.twitter.com/en/docs/authentication/oauth-1-0a/percent-encoding-parameters func testEncode() throws { - XCTAssertEqual("Ladies + Gentlemen".urlEncodedString, "Ladies%20%2B%20Gentlemen") XCTAssertEqual("An encoded string!".urlEncodedString, "An%20encoded%20string%21") XCTAssertEqual("Dogs, Cats & Mice".urlEncodedString, "Dogs%2C%20Cats%20%26%20Mice") XCTAssertEqual("☃".urlEncodedString, "%E2%98%83") XCTAssertEqual("1970-01-01T00:01:00Z".urlEncodedString, "1970-01-01T00%3A01%3A00Z") } - } diff --git a/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift b/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift index 3220f283..dc08b29d 100644 --- a/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift +++ b/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift @@ -13,17 +13,17 @@ public struct CombinationsSequence { /// The collection to iterate over for combinations. @usableFromInline - internal let base: Base + let base: Base @usableFromInline - internal let baseCount: Int + let baseCount: Int /// The range of accepted sizes of combinations. /// /// - Note: This may be `nil` if the attempted range entirely exceeds the /// upper bounds of the size of the `base` collection. @usableFromInline - internal let kRange: Range? + let kRange: Range? /// Initializes a `CombinationsSequence` for all combinations of `base` of /// size `k`. @@ -32,8 +32,8 @@ public struct CombinationsSequence { /// - base: The collection to iterate over for combinations. /// - k: The expected size of each combination. @inlinable - internal init(_ base: Base, k: Int) { - self.init(base, kRange: k...k) + init(_ base: Base, k: Int) { + self.init(base, kRange: k ... k) } /// Initializes a `CombinationsSequence` for all combinations of `base` of @@ -43,7 +43,7 @@ public struct CombinationsSequence { /// - base: The collection to iterate over for combinations. /// - kRange: The range of accepted sizes of combinations. @inlinable - internal init( + init( _ base: Base, kRange: R ) where R.Bound == Int { let range = kRange.relative(to: 0 ..< .max) @@ -53,16 +53,16 @@ public struct CombinationsSequence { let upperBound = baseCount + 1 self.kRange = range.lowerBound < upperBound - ? range.clamped(to: 0.. + var kRange: Range /// Whether or not iteration is finished (`kRange` is empty) @inlinable - internal var isFinished: Bool { + var isFinished: Bool { return kRange.isEmpty } @usableFromInline - internal var indexes: [Base.Index] + var indexes: [Base.Index] @inlinable - internal init(_ combinations: CombinationsSequence) { - self.base = combinations.base - self.kRange = combinations.kRange ?? 0..<0 - self.indexes = Array(combinations.base.indices.prefix(kRange.lowerBound)) + init(_ combinations: CombinationsSequence) { + base = combinations.base + kRange = combinations.kRange ?? 0 ..< 0 + indexes = Array(combinations.base.indices.prefix(kRange.lowerBound)) } /// Advances the current indices to the next set of combinations. If @@ -130,13 +130,13 @@ extension CombinationsSequence: Sequence { /// // Can't advance without needing to go past `base.endIndex`, /// // so the iteration is finished. @inlinable - internal mutating func advance() { + mutating func advance() { /// Advances `kRange` by incrementing its `lowerBound` until the range is /// empty, when iteration is finished. func advanceKRange() { if kRange.lowerBound < kRange.upperBound { let advancedLowerBound = kRange.lowerBound + 1 - kRange = advancedLowerBound..( + func combinations( ofCount kRange: R ) -> CombinationsSequence where R.Bound == Int { CombinationsSequence(self, kRange: kRange) @@ -293,7 +293,7 @@ extension Collection { /// is the number of elements in the base collection, since /// `CombinationsSequence` accesses the `count` of the base collection. @inlinable - public func combinations(ofCount k: Int) -> CombinationsSequence { + func combinations(ofCount k: Int) -> CombinationsSequence { precondition(k >= 0, "Can't have combinations with a negative number of elements.") return CombinationsSequence(self, k: k) } diff --git a/Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift b/Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift index 2ee46f92..77acdea3 100644 --- a/Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift +++ b/Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift @@ -1,11 +1,10 @@ import Foundation class MockURLProtocol: URLProtocol { - static var requestHandler: ((URLRequest) throws -> (HTTPURLResponse, Data?))? static var requestAssert: ((URLRequest) throws -> Void)? - override class func canInit(with request: URLRequest) -> Bool { + override class func canInit(with _: URLRequest) -> Bool { return true } @@ -19,20 +18,18 @@ class MockURLProtocol: URLProtocol { } override func startLoading() { - - let handler: ((URLRequest) throws -> (HTTPURLResponse, Data?)) + let handler: (URLRequest) throws -> (HTTPURLResponse, Data?) if let h = MockURLProtocol.requestHandler { handler = h } else { handler = { request in - return ( + ( HTTPURLResponse(url: request.url!, statusCode: 200, httpVersion: "2.0", headerFields: nil)!, Data() ) } } do { - try MockURLProtocol.requestAssert?(request) let (response, data): (URLResponse, Data?) = try handler(request) @@ -48,7 +45,5 @@ class MockURLProtocol: URLProtocol { } } - override func stopLoading() { - - } + override func stopLoading() {} } diff --git a/Tests/TwitterAPIKitTests/MultipartFormDataPartTests.swift b/Tests/TwitterAPIKitTests/MultipartFormDataPartTests.swift index 927b6139..31adf1e5 100644 --- a/Tests/TwitterAPIKitTests/MultipartFormDataPartTests.swift +++ b/Tests/TwitterAPIKitTests/MultipartFormDataPartTests.swift @@ -2,21 +2,17 @@ import TwitterAPIKit import XCTest class MultipartFormDataPartTests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func testEqualValue() throws { - let a = MultipartFormDataPart.value(name: "n", value: 1) let b = MultipartFormDataPart.value(name: "n", value: "1") let c = MultipartFormDataPart.value(name: "n", value: Float(1)) let d = MultipartFormDataPart.value(name: "m", value: 1) - [a, b, c, d].combinations(ofCount: 2).forEach { combo in + for combo in [a, b, c, d].combinations(ofCount: 2) { XCTAssertNotEqual(combo[0], combo[1]) } } @@ -32,7 +28,7 @@ class MultipartFormDataPartTests: XCTestCase { let a1 = MultipartFormDataPart.data(name: "n", value: Data(), filename: "f", mimeType: "m") - [a, b, c, d, e, f].combinations(ofCount: 2).forEach { combo in + for combo in [a, b, c, d, e, f].combinations(ofCount: 2) { XCTAssertNotEqual(combo[0], combo[1]) } diff --git a/Tests/TwitterAPIKitTests/OAuthHelperTests.swift b/Tests/TwitterAPIKitTests/OAuthHelperTests.swift index de4343ca..a93da16b 100644 --- a/Tests/TwitterAPIKitTests/OAuthHelperTests.swift +++ b/Tests/TwitterAPIKitTests/OAuthHelperTests.swift @@ -3,7 +3,6 @@ import XCTest @testable import TwitterAPIKit class OAuthHelperTests: XCTestCase { - override func setUpWithError() throws { // Put setup code here. This method is called before the invocation of each test method in the class. } @@ -15,7 +14,6 @@ class OAuthHelperTests: XCTestCase { // https://developer.twitter.com/en/docs/authentication/oauth-1-0a/authorizing-a-request // https://developer.twitter.com/en/docs/authentication/oauth-1-0a/creating-a-signature func test() throws { - let header = authorizationHeader( for: .post, url: URL(string: "https://api.twitter.com/1.1/statuses/update.json")!, @@ -32,6 +30,5 @@ class OAuthHelperTests: XCTestCase { header, #"OAuth oauth_consumer_key="xvz1evFS4wEEPTGEFPHBog", oauth_nonce="kYjzVBB8Y0ZFabxSWbWovY3uYSQ2pTgmZeNu2VS4cg", oauth_signature="hCtSmYh%2BiHYCEqBWrE7C7hYmtUk%3D", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1318622958", oauth_token="370773112-GmHxMAgYyLbNEtIKZeRNFsMKPR9EyMZeS9weJAEb", oauth_version="1.0""# ) - } } diff --git a/Tests/TwitterAPIKitTests/SessionTask/MockTwitterAPISessionTask.swift b/Tests/TwitterAPIKitTests/SessionTask/MockTwitterAPISessionTask.swift index 92376d4c..4f2693eb 100644 --- a/Tests/TwitterAPIKitTests/SessionTask/MockTwitterAPISessionTask.swift +++ b/Tests/TwitterAPIKitTests/SessionTask/MockTwitterAPISessionTask.swift @@ -2,7 +2,6 @@ import Foundation import TwitterAPIKit class MockTwitterAPISessionTask: TwitterAPISessionTask { - var taskIdentifier: Int var currentRequest: URLRequest? var originalRequest: URLRequest? @@ -27,7 +26,6 @@ class MockTwitterAPISessionTask: TwitterAPISessionTask { } class MockTwitterAPISessionDataTask: MockTwitterAPISessionTask, TwitterAPISessionDataTask { - var data: Data init( @@ -40,11 +38,11 @@ class MockTwitterAPISessionDataTask: MockTwitterAPISessionTask, TwitterAPISessio self.data = data super.init( taskIdentifier: taskIdentifier, currentRequest: currentRequest, originalRequest: originalRequest, - httpResponse: httpResponse) + httpResponse: httpResponse + ) } func responseData(queue: DispatchQueue, _ block: @escaping (TwitterAPIResponse) -> Void) -> Self { - queue.async { [weak self] in guard let self = self else { return } block( diff --git a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPIFailedTaskTests.swift b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPIFailedTaskTests.swift index 82c547d7..e2cea585 100644 --- a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPIFailedTaskTests.swift +++ b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPIFailedTaskTests.swift @@ -2,15 +2,11 @@ import TwitterAPIKit import XCTest class TwitterAPIFailedTaskTests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { - let task = TwitterAPIFailedTask(.responseFailed(reason: .invalidResponse(error: nil))) XCTAssertTrue(task.error.isResponseFailed) diff --git a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift index fddfff60..5a9a4832 100644 --- a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift +++ b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift @@ -7,12 +7,9 @@ struct DecodableObj: Decodable, Equatable { } class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func testSuccess() throws { let mockTask = MockTwitterAPISessionTask(taskIdentifier: 1) @@ -130,7 +127,6 @@ class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { } func testCompleteWithError() throws { - let mockTask = MockTwitterAPISessionTask(taskIdentifier: 1) let task = TwitterAPISessionDelegatedJSONTask( @@ -157,16 +153,16 @@ class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { task.append(chunk: Data(":\"value\"}".utf8)) mockTask.httpResponse = .init( - url: URL(string: "http://example.com")!, statusCode: 200, httpVersion: "1.1", headerFields: [:]) + url: URL(string: "http://example.com")!, statusCode: 200, httpVersion: "1.1", headerFields: [:] + ) - task.complete(error: URLError.init(.badServerResponse)) + task.complete(error: URLError(.badServerResponse)) } wait(for: [exp], timeout: 10) } func testCancel() throws { - let mockTask = MockTwitterAPISessionTask(taskIdentifier: 1) let task = TwitterAPISessionDelegatedJSONTask( @@ -193,9 +189,10 @@ class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { task.append(chunk: Data(":\"value\"}".utf8)) mockTask.httpResponse = .init( - url: URL(string: "http://example.com")!, statusCode: 200, httpVersion: "1.1", headerFields: [:]) + url: URL(string: "http://example.com")!, statusCode: 200, httpVersion: "1.1", headerFields: [:] + ) - task.complete(error: URLError.init(.cancelled)) + task.complete(error: URLError(.cancelled)) } task.cancel() diff --git a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift index d8b2e094..e8d667b2 100644 --- a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift +++ b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift @@ -3,12 +3,9 @@ import XCTest @testable import TwitterAPIKit class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func testProps() throws { let cReq = URLRequest(url: URL(string: "http://example.com/current")!) @@ -31,11 +28,9 @@ class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { XCTAssertEqual(mockTask.currentRequest, cReq) XCTAssertEqual(mockTask.originalRequest, oReq) XCTAssertEqual(task.httpResponse, resp) - } func test() throws { - let mockTask = MockTwitterAPISessionTask( taskIdentifier: 1, currentRequest: nil, @@ -55,7 +50,6 @@ class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { let task = TwitterAPISessionDelegatedStreamTask(task: mockTask) DispatchQueue.main.async { - task.append(chunk: Data("aaaa\r\nbbbb".utf8)) task.append(chunk: Data("🥓🥓\r\nあ".utf8)) task.complete(error: nil) @@ -118,7 +112,6 @@ class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { let task = TwitterAPISessionDelegatedStreamTask(task: mockTask) DispatchQueue.main.async { - task.append( chunk: Data( "{\"detail\":\"Authenticating with OAuth 1.0a User Context is forbidden for this endpoint. Supported authentication types are [OAuth 2.0 Application-Only].\",\"title\":\"Unsupported Authentication\",\"status\":403,\"type\":\"https://api.twitter.com/2/problems/unsupported-authentication\"}" @@ -159,7 +152,6 @@ class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { } func testNilResponse() throws { - let mockTask = MockTwitterAPISessionTask( taskIdentifier: 1, currentRequest: nil, @@ -198,11 +190,9 @@ class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { wait(for: [exp], timeout: 10) XCTAssertEqual(count, 1) - } func testError() throws { - let mockTask = MockTwitterAPISessionTask( taskIdentifier: 1, currentRequest: nil, diff --git a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionSpecializedTaskTests.swift b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionSpecializedTaskTests.swift index 9397fadd..7b173aed 100644 --- a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionSpecializedTaskTests.swift +++ b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionSpecializedTaskTests.swift @@ -3,21 +3,17 @@ import XCTest @testable import TwitterAPIKit class TwitterAPISessionSpecializedTaskTests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { - let mockTask = MockTwitterAPISessionDataTask( data: Data("hoge".utf8), taskIdentifier: 10, currentRequest: nil, originalRequest: nil, httpResponse: nil ) let task = TwitterAPISessionSpecializedTask(task: mockTask) { data in - return String(data: data, encoding: .utf8)! + String(data: data, encoding: .utf8)! } let exp = expectation(description: "") @@ -34,7 +30,6 @@ class TwitterAPISessionSpecializedTaskTests: XCTestCase { } func testArray() throws { - let mockTask1 = MockTwitterAPISessionDataTask( data: Data("hoge1".utf8), taskIdentifier: 10, currentRequest: nil, originalRequest: nil, httpResponse: nil ) @@ -43,11 +38,11 @@ class TwitterAPISessionSpecializedTaskTests: XCTestCase { ) let task1 = TwitterAPISessionSpecializedTask(task: mockTask1) { data in - return String(data: data, encoding: .utf8)! + String(data: data, encoding: .utf8)! } let task2 = TwitterAPISessionSpecializedTask(task: mockTask2) { data in - return String(data: data, encoding: .utf8)! + String(data: data, encoding: .utf8)! } let exp = expectation(description: "") diff --git a/Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift index b823f891..d1d24b1a 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift @@ -2,16 +2,13 @@ import TwitterAPIKit import XCTest class TwitterAPIClientTests: XCTestCase { - - override func setUpWithError() throws { - } + override func setUpWithError() throws {} override func tearDownWithError() throws { MockURLProtocol.cleanup() } func testJSONDecoder() throws { - let decoder = TwitterAPIClient.defaultJSONDecoder let dateV1 = try decoder.decode(Date.self, from: Data("\"Sun Jul 03 04:32:05 +0000 2022\"".utf8)) @@ -124,6 +121,7 @@ class TwitterAPIClientTests: XCTestCase { XCTFail() } } + func testRefreshToken_invalidAuthenticationMethod() throws { let client = TwitterAPIClient(.none) let exp = expectation(description: "") @@ -180,7 +178,7 @@ class TwitterAPIClientTests: XCTestCase { let exp = expectation(description: "") client.refreshOAuth20Token(type: .publicClient) { result in switch result { - case .success(let newToken): + case let .success(newToken): XCTAssertFalse(newToken.refreshed) XCTAssertEqual(newToken.token.clientID, "c") XCTAssertEqual(newToken.token.refreshToken, "r") diff --git a/Tests/TwitterAPIKitTests/TwitterAPIErrorResponseTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIErrorResponseTests.swift index cdf5a9fc..b50a1c67 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIErrorResponseTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIErrorResponseTests.swift @@ -1,24 +1,16 @@ import TwitterAPIKit import XCTest -class TwitterAPIErrorResponseTests: XCTestCase { - - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } - - func testTwitterAPIErrorResponseV1() throws { - +internal class TwitterAPIErrorResponseTests: XCTestCase { + public func testTwitterAPIErrorResponseV1() throws { XCTContext.runActivity(named: "") { _ in - let v1 = TwitterAPIErrorResponseV1(message: "_message_", code: 100, errors: []) - XCTAssertEqual(v1.message, "_message_") - XCTAssertEqual(v1.code, 100) - XCTAssertEqual(v1.errors, [TwitterAPIErrorResponseV1]()) - XCTAssertTrue(v1.contains(code: 100)) - XCTAssertFalse(v1.contains(code: 1)) + let v1Response = TwitterAPIErrorResponseV1(message: "_message_", code: 100, errors: []) + XCTAssertEqual(v1Response.message, "_message_") + XCTAssertEqual(v1Response.code, 100) + XCTAssertEqual(v1Response.errors, [TwitterAPIErrorResponseV1]()) + XCTAssertTrue(v1Response.contains(code: 100)) + XCTAssertFalse(v1Response.contains(code: 1)) } XCTContext.runActivity(named: "from obj") { _ in @@ -33,30 +25,32 @@ class TwitterAPIErrorResponseTests: XCTestCase { "message": "message2", "code": 2, ], - ] - + ], ] - let v1 = TwitterAPIErrorResponseV1(obj: obj)! - XCTAssertEqual(v1.message, "message1") - XCTAssertEqual(v1.code, 1) + let v1Response = TwitterAPIErrorResponseV1(obj: obj)! + XCTAssertEqual(v1Response.message, "message1") + XCTAssertEqual(v1Response.code, 1) XCTAssertEqual( - v1.errors, + v1Response.errors, [ .init(message: "message1", code: 1, errors: []), .init(message: "message2", code: 2, errors: []), - ]) - XCTAssertTrue(v1.contains(code: 1)) - XCTAssertFalse(v1.contains(code: 100)) + ] + ) + XCTAssertTrue(v1Response.contains(code: 1)) + XCTAssertFalse(v1Response.contains(code: 100)) XCTAssertEqual( - v1, + v1Response, .init( message: "message1", code: 1, errors: [ .init(message: "message1", code: 1, errors: []), .init(message: "message2", code: 2, errors: []), - ])) + ] + ) + ) } XCTContext.runActivity(named: "Invalid") { _ in @@ -64,15 +58,14 @@ class TwitterAPIErrorResponseTests: XCTestCase { } } - func testTwitterAPIErrorResponseV2() throws { - + public func testTwitterAPIErrorResponseV2() throws { XCTContext.runActivity(named: "") { _ in - let v2 = TwitterAPIErrorResponseV2(title: "t", detail: "d", type: "ty", errors: []) - XCTAssertEqual(v2.title, "t") - XCTAssertEqual(v2.detail, "d") - XCTAssertEqual(v2.type, "ty") - XCTAssertEqual(v2.errors, []) + let v2Response = TwitterAPIErrorResponseV2(title: "t", detail: "d", type: "ty", errors: []) + XCTAssertEqual(v2Response.title, "t") + XCTAssertEqual(v2Response.detail, "d") + XCTAssertEqual(v2Response.type, "ty") + XCTAssertEqual(v2Response.errors, []) } XCTContext.runActivity(named: "from obj") { _ in @@ -81,22 +74,24 @@ class TwitterAPIErrorResponseTests: XCTestCase { "detail": "_detail_", "type": "_type_", "errors": [ - ["message": "_message_", "parameters": ["param": ["b"]]] + ["message": "_message_", "parameters": ["param": ["b"]]], ], ] - let v2 = TwitterAPIErrorResponseV2(obj: obj)! - XCTAssertEqual(v2.title, "_title_") - XCTAssertEqual(v2.detail, "_detail_") - XCTAssertEqual(v2.type, "_type_") - XCTAssertEqual(v2.errors.first?.message, "_message_") - XCTAssertEqual(v2.errors.first?.parameters["param"], ["b"]) + let v2Response = TwitterAPIErrorResponseV2(obj: obj)! + XCTAssertEqual(v2Response.title, "_title_") + XCTAssertEqual(v2Response.detail, "_detail_") + XCTAssertEqual(v2Response.type, "_type_") + XCTAssertEqual(v2Response.errors.first?.message, "_message_") + XCTAssertEqual(v2Response.errors.first?.parameters["param"], ["b"]) XCTAssertEqual( - v2, + v2Response, TwitterAPIErrorResponseV2( title: "_title_", detail: "_detail_", type: "_type_", - errors: [.init(message: "_message_", parameters: ["param": ["b"]])])) + errors: [.init(message: "_message_", parameters: ["param": ["b"]])] + ) + ) } XCTContext.runActivity(named: "Invalid") { _ in @@ -104,8 +99,7 @@ class TwitterAPIErrorResponseTests: XCTestCase { } } - func testTwitterAPIErrorResponse() throws { - + public func testTwitterAPIErrorResponse() throws { try XCTContext.runActivity(named: "V1") { _ in let obj: [String: Any] = [ "errors": [ @@ -117,7 +111,7 @@ class TwitterAPIErrorResponseTests: XCTestCase { "message": "message2", "code": 2, ], - ] + ], ] let data = try JSONSerialization.data(withJSONObject: obj, options: []) @@ -142,7 +136,7 @@ class TwitterAPIErrorResponseTests: XCTestCase { "detail": "_detail_", "type": "_type_", "errors": [ - ["message": "_message_", "parameters": ["param": ["b"]]] + ["message": "_message_", "parameters": ["param": ["b"]]], ], ] @@ -182,4 +176,8 @@ class TwitterAPIErrorResponseTests: XCTestCase { } } } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/TwitterAPIKitErrorTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIKitErrorTests.swift index 0b2b38ff..d9b3aafa 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIKitErrorTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIKitErrorTests.swift @@ -2,12 +2,9 @@ import TwitterAPIKit import XCTest class TwitterAPIKitErrorTests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func testInit() throws { XCTContext.runActivity(named: "unknown") { _ in @@ -52,7 +49,8 @@ class TwitterAPIKitErrorTests: XCTestCase { TwitterAPIKitError.responseSerializeFailed( reason: .jsonDecodeFailed( error: DecodingError.typeMismatch( - Any.self, .init(codingPath: [], debugDescription: "", underlyingError: nil))) + Any.self, .init(codingPath: [], debugDescription: "", underlyingError: nil) + )) ).isResponseSerializeFailed) XCTAssertTrue( TwitterAPIKitError.responseSerializeFailed(reason: .cannotConvert(data: Data(), toTypeName: "")) diff --git a/Tests/TwitterAPIKitTests/TwitterAPIKitTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIKitTests.swift index d09b1608..2c2aeadd 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIKitTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIKitTests.swift @@ -2,6 +2,5 @@ import TwitterAPIKit import XCTest final class TwitterAPIKitTests: XCTestCase { - func testExample() throws { - } + func testExample() throws {} } diff --git a/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift index 1af35f93..eb7e8cbe 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift @@ -3,7 +3,6 @@ import XCTest @testable import TwitterAPIKit class TwitterAPIRequestTests: XCTestCase { - private struct MockTwitterAPIRequest: TwitterAPIRequest { var method: HTTPMethod = .get var path: String = "/mock" @@ -26,14 +25,11 @@ class TwitterAPIRequestTests: XCTestCase { uploadURL: .init(string: "https://upload.example.com")! ) - override func setUpWithError() throws { - } + override func setUpWithError() throws {} - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func testRequestURL() throws { - XCTContext.runActivity(named: "api") { _ in let req = MockTwitterAPIRequest(parameters: ["key": "value"], baseURLType: .api) XCTAssertEqual(req.requestURL(for: env).absoluteString, "https://api.example.com/mock") @@ -46,7 +42,6 @@ class TwitterAPIRequestTests: XCTestCase { } func testParameterForOAuth() throws { - XCTContext.runActivity(named: "wwwFormUrlEncoded") { _ in let req = MockTwitterAPIRequest(parameters: ["key": "value"], bodyContentType: .wwwFormUrlEncoded) XCTAssertEqual(req.parameterForOAuth as! [String: String], ["key": "value"]) @@ -64,7 +59,6 @@ class TwitterAPIRequestTests: XCTestCase { } func testParameterByMethods() throws { - // 🥓 = F0 9F A5 93 try XCTContext.runActivity(named: "GET") { _ in @@ -133,7 +127,6 @@ class TwitterAPIRequestTests: XCTestCase { } func testURLQueryPercentEncode() throws { - let req = MockTwitterAPIRequest( method: .get, parameters: [ @@ -169,7 +162,6 @@ class TwitterAPIRequestTests: XCTestCase { } func testBodyContentType() throws { - try XCTContext.runActivity(named: "wwwFormUrlEncoded") { _ in let req = try MockTwitterAPIRequest( @@ -244,7 +236,6 @@ class TwitterAPIRequestTests: XCTestCase { ).buildRequest(environment: env) ) { error in if case .jsonSerializationFailed(obj: _) = (error as! TwitterAPIKitError).requestFailureReason { - } else { XCTFail() } @@ -260,21 +251,19 @@ class TwitterAPIRequestTests: XCTestCase { method: .post, parameters: [ String(bytes: [0xD8, 0x00] as [UInt8], encoding: String.Encoding.utf16BigEndian)!: - String(bytes: [0xD8, 0x00] as [UInt8], encoding: String.Encoding.utf16BigEndian)! + String(bytes: [0xD8, 0x00] as [UInt8], encoding: String.Encoding.utf16BigEndian)!, ], bodyContentType: .json ).buildRequest(environment: env) ) { error in if case .jsonSerializationFailed(obj: _) = (error as! TwitterAPIKitError).requestFailureReason { - } else { XCTFail() } } } ) - } } } diff --git a/Tests/TwitterAPIKitTests/TwitterAPIResponseTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIResponseTests.swift index f29d0bd8..840b19b5 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIResponseTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIResponseTests.swift @@ -2,15 +2,11 @@ import TwitterAPIKit import XCTest class TwitterAPIResponseTests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { - let rateLimit = TwitterRateLimit(header: [ "x-rate-limit-limit": "10", "x-rate-limit-remaining": "1", @@ -37,14 +33,14 @@ class TwitterAPIResponseTests: XCTestCase { XCTContext.runActivity(named: "map") { _ in let mapped = response.map { data in - return try! JSONSerialization.jsonObject(with: data, options: []) + try! JSONSerialization.jsonObject(with: data, options: []) } XCTAssertEqual(mapped.success as! [String: String], [:]) } XCTContext.runActivity(named: "tryMap") { _ in let mapped = response.tryMap { data in - return try JSONSerialization.jsonObject(with: data, options: []) + try JSONSerialization.jsonObject(with: data, options: []) } XCTAssertEqual(mapped.success as! [String: String], [:]) } @@ -58,8 +54,8 @@ class TwitterAPIResponseTests: XCTestCase { XCTAssertTrue(mapped.prettyString.hasPrefix("-- Request failure --")) XCTContext.runActivity(named: "mapError") { _ in - let errored = mapped.mapError { error in - return .responseFailed(reason: .invalidResponse(error: nil)) + let errored = mapped.mapError { _ in + .responseFailed(reason: .invalidResponse(error: nil)) } XCTAssertTrue(errored.error!.isResponseFailed) diff --git a/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift b/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift index a1f9493e..e8e713d5 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift @@ -6,7 +6,7 @@ private class GetTwitterReqeust: TwitterAPIRequest { var method: HTTPMethod { return .get } var path: String { return "/get.json" } var parameters: [String: Any] { - return ["hoge": "😀"] //= %F0%9F%98%80 + return ["hoge": "😀"] // = %F0%9F%98%80 } } @@ -14,7 +14,7 @@ private class PostTwitterReqeust: TwitterAPIRequest { var method: HTTPMethod { return .post } var path: String { return "/post.json" } var parameters: [String: Any] { - return ["hoge": "😀"] //= %F0%9F%98%80 + return ["hoge": "😀"] // = %F0%9F%98%80 } } @@ -27,35 +27,30 @@ private class EmptyRequest: TwitterAPIRequest { } class TwitterAPISessionTests: XCTestCase { - private let environment = TwitterAPIEnvironment( twitterURL: URL(string: "https://twitter.example.com")!, apiURL: URL(string: "https://api.example.com")!, uploadURL: URL(string: "https://upload.example.com")! ) - lazy var session: TwitterAPISession = - ({ - - let config = URLSessionConfiguration.default - config.protocolClasses = [MockURLProtocol.self] + lazy var session: TwitterAPISession = { + let config = URLSessionConfiguration.default + config.protocolClasses = [MockURLProtocol.self] - return TwitterAPISession( - auth: .oauth10a(.init(consumerKey: "", consumerSecret: "", oauthToken: "", oauthTokenSecret: "")), - configuration: config, - environment: environment - ) - })() + return TwitterAPISession( + auth: .oauth10a(.init(consumerKey: "", consumerSecret: "", oauthToken: "", oauthTokenSecret: "")), + configuration: config, + environment: environment + ) + }() - override func setUpWithError() throws { - } + override func setUpWithError() throws {} override func tearDownWithError() throws { MockURLProtocol.cleanup() } func testGET() throws { - MockURLProtocol.requestAssert = { request in XCTAssertEqual(request.httpMethod, "GET") XCTAssertEqual(request.url?.absoluteString, "https://api.example.com/get.json?hoge=%F0%9F%98%80") @@ -101,7 +96,6 @@ class TwitterAPISessionTests: XCTestCase { } func testStream() throws { - let config = URLSessionConfiguration.default config.protocolClasses = [MockURLProtocol.self] @@ -127,9 +121,9 @@ class TwitterAPISessionTests: XCTestCase { let exp = expectation(description: "") exp.expectedFulfillmentCount = 4 session.send(streamRequest: GetTwitterReqeust()) - .streamResponse(queue: .global(qos: .default)) { response in + .streamResponse(queue: .global(qos: .default)) { _ in exp.fulfill() - }.streamResponse { response in + }.streamResponse { _ in XCTAssertTrue(Thread.isMainThread) exp.fulfill() } @@ -307,13 +301,13 @@ extension Data { while input.hasBytesAvailable { let read = input.read(buffer, maxLength: bufferSize) if read < 0 { - //Stream error occured + // Stream error occured throw input.streamError! } else if read == 0 { - //EOF + // EOF break } - self.append(buffer, count: read) + append(buffer, count: read) } } } diff --git a/Tests/TwitterAPIKitTests/TwitterAuthenticationMethodTests.swift b/Tests/TwitterAPIKitTests/TwitterAuthenticationMethodTests.swift index 1dcf6559..0686bc98 100644 --- a/Tests/TwitterAPIKitTests/TwitterAuthenticationMethodTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAuthenticationMethodTests.swift @@ -2,17 +2,13 @@ import TwitterAPIKit import XCTest final class TwitterAuthenticationMethodTests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} // MARK: - OAuth10a func testOAuth10aInit() throws { - let oauth10 = TwitterAuthenticationMethod.OAuth10a( consumerKey: "ck", consumerSecret: "cs", @@ -24,13 +20,11 @@ final class TwitterAuthenticationMethodTests: XCTestCase { XCTAssertEqual(oauth10.consumerSecret, "cs") XCTAssertEqual(oauth10.oauthToken, "t") XCTAssertEqual(oauth10.oauthTokenSecret, "ts") - } // MARK: - OAuth20 func testOAuth20Init() throws { - do { let createdAt = Date(timeIntervalSince1970: 2) diff --git a/Tests/TwitterAPIKitTests/TwitterRateLimitTests.swift b/Tests/TwitterAPIKitTests/TwitterRateLimitTests.swift index 101e988a..be37578a 100644 --- a/Tests/TwitterAPIKitTests/TwitterRateLimitTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterRateLimitTests.swift @@ -2,15 +2,11 @@ import TwitterAPIKit import XCTest class TwitterRateLimitTests: XCTestCase { + override func setUpWithError() throws {} - override func setUpWithError() throws { - } - - override func tearDownWithError() throws { - } + override func tearDownWithError() throws {} func test() throws { - XCTContext.runActivity(named: "from int") { _ in let header = [ "x-rate-limit-limit": 15, @@ -39,7 +35,6 @@ class TwitterRateLimitTests: XCTestCase { XCTAssertEqual(rateLimit.remaining, 3) XCTAssertEqual(rateLimit.reset, 1_644_417_524) } - } func testNil() throws { @@ -68,7 +63,5 @@ class TwitterRateLimitTests: XCTestCase { XCTAssertNil(TwitterRateLimit(header: header)) } - } - } diff --git a/scripts/gen_init_params.swift b/scripts/gen_init_params.swift index 6e4736ae..77d54cb3 100644 --- a/scripts/gen_init_params.swift +++ b/scripts/gen_init_params.swift @@ -29,8 +29,8 @@ func initializer(input: String) -> String { return nil } - let firstRange: Range = Range(match.range(at: 1), in: line)! - let secondRange: Range = Range(match.range(at: 2), in: line)! + let firstRange = Range(match.range(at: 1), in: line)! + let secondRange = Range(match.range(at: 2), in: line)! let name = String(line[firstRange]) let type = String(line[secondRange]) return (name: name, type: type) @@ -43,17 +43,17 @@ func initializer(input: String) -> String { return "\(name): \(type)" } - let initBody: [String] = pairs.map { (name: String, type: String) in - return "self.\(name) = \(name)" + let initBody: [String] = pairs.map { (name: String, _: String) in + "self.\(name) = \(name)" } let body = """ - public init( - \(initArgs.joined(separator: ",\n ")) - ) { - \(initBody.joined(separator: "\n ")) - } - """ + public init( + \(initArgs.joined(separator: ",\n ")) + ) { + \(initBody.joined(separator: "\n ")) + } + """ return body } @@ -63,8 +63,8 @@ extension String { func camelCaseToSnakeCase() -> String { let acronymPattern = "([A-Z]+)([A-Z][a-z]|[0-9])" let normalPattern = "([a-z0-9])([A-Z])" - return self.processCamalCaseRegex(pattern: acronymPattern)? - .processCamalCaseRegex(pattern: normalPattern)?.lowercased() ?? self.lowercased() + return processCamalCaseRegex(pattern: acronymPattern)? + .processCamalCaseRegex(pattern: normalPattern)?.lowercased() ?? lowercased() } fileprivate func processCamalCaseRegex(pattern: String) -> String? { @@ -80,7 +80,7 @@ extension String { let pattern = "([A-Z]{2})(s)$" let regex = try? NSRegularExpression(pattern: pattern, options: []) guard let match = regex?.firstMatch(in: self, options: [], range: NSRange(location: 0, length: count)), - let range = Range(match.range, in: self) + let range = Range(match.range, in: self) else { return self } return replacingCharacters(in: range, with: self[range].uppercased()) } @@ -98,12 +98,12 @@ extension NSRegularExpression { } /* -public let hoge: String -public let fooBar: String? - ↓ ↓ ↓ ↓ -p["hoge"] = hoge -fooBar.map { p["foo_bar"] = $0 } -*/ + public let hoge: String + public let fooBar: String? + ↓ ↓ ↓ ↓ + p["hoge"] = hoge + fooBar.map { p["foo_bar"] = $0 } + */ func body(input: String) -> String { let primitiveTypes = [": Int", ": String", ": Bool"] @@ -137,12 +137,12 @@ func body(input: String) -> String { } } let body = """ - open var parameters: [String: Any] { - var p = [String: Any]() - \(params.joined(separator: "\n ")) - return p - } - """ + open var parameters: [String: Any] { + var p = [String: Any]() + \(params.joined(separator: "\n ")) + return p + } + """ return body } From ea619326ce45a4ae91424a85e3a90989a39748d3 Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Sat, 10 May 2025 05:36:36 -0600 Subject: [PATCH 02/26] chore: update submodules --- .dotfiles | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.dotfiles b/.dotfiles index 1e22a870..299f326b 160000 --- a/.dotfiles +++ b/.dotfiles @@ -1 +1 @@ -Subproject commit 1e22a87058799e7d103b74a02663b37eaf0b85af +Subproject commit 299f326b362213891b556541801014b34b6fb704 From 9a24f7861a7d38cb78b064237cb9b98a17f139d8 Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Sat, 10 May 2025 06:05:46 -0600 Subject: [PATCH 03/26] fix: fix all public-class-deinit issues (50% of the errors resolved) --- .../GetAccountSettingsRequestV1Tests.swift | 12 ++-- ...countVerifyCredentialsRequestV1Tests.swift | 14 ++--- ...untRemoveProfileBannerRequestV1Tests.swift | 12 ++-- .../PostAccountSettingsRequestV1Tests.swift | 14 ++--- ...untUpdateProfileBannerRequestV1Tests.swift | 14 ++--- ...ountUpdateProfileImageRequestV1Tests.swift | 14 ++--- ...stAccountUpdateProfileRequestV1Tests.swift | 14 ++--- ...icationRateLimitStatusRequestV1Tests.swift | 14 ++--- .../GetBlocksIDsRequestV1Tests.swift | 14 ++--- .../GetBlocksListRequestV1Tests.swift | 14 ++--- .../GetMutesUsersIDsRequestV1Tests.swift | 14 ++--- .../GetMutesUsersListRequestV1Tests.swift | 14 ++--- .../PostBlocksCreateRequestV1Tests.swift | 14 ++--- .../PostBlocksDestroyRequestV1Tests.swift | 14 ++--- .../PostMutesUsersCreateRequestV1Tests.swift | 14 ++--- .../PostMutesUsersDestroyRequestV1Tests.swift | 14 ++--- .../PostUsersReportSpamRequestV1Tests.swift | 14 ++--- .../GetCollectionsEntriesRequestV1Tests.swift | 14 ++--- .../GetCollectionsListRequestV1Tests.swift | 14 ++--- .../GetCollectionsShowRequestV1Tests.swift | 12 ++-- .../PostCollectionsCreateRequestV1Tests.swift | 12 ++-- ...PostCollectionsDestroyRequestV1Tests.swift | 12 ++-- ...tCollectionsEntriesAddRequestV1Tests.swift | 14 ++--- ...llectionsEntriesCurateRequestV1Tests.swift | 12 ++-- ...CollectionsEntriesMoveRequestV1Tests.swift | 14 ++--- ...llectionsEntriesRemoveRequestV1Tests.swift | 12 ++-- .../PostCollectionsUpdateRequestV1Tests.swift | 14 ++--- .../DeleteDirectMessageRequestV1Tests.swift | 12 ++-- .../GetDirectMessageListRequestV1Tests.swift | 12 ++-- .../GetDirectMessageRequestV1Tests.swift | 12 ++-- .../PostDirectMessageRequestV1Tests.swift | 18 +++--- ...MessagesIndicateTypingRequestV1Tests.swift | 12 ++-- ...DirectMessagesMarkReadRequestV1Tests.swift | 12 ++-- .../Favorite/GetFavoritesRequestV1Tests.swift | 14 ++--- .../Favorite/PostFavoriteRequestV1Tests.swift | 14 ++--- .../PostUnFavoriteRequestV1Tests.swift | 14 ++--- .../GetFollowersIDsRequestV1Tests.swift | 14 ++--- .../GetFollowersListRequestV1Tests.swift | 14 ++--- .../GetFriendsIDsRequestV1Tests.swift | 14 ++--- .../GetFriendsListRequestV1Tests.swift | 14 ++--- ...GetFriendshipsIncomingRequestV1Tests.swift | 14 ++--- .../GetFriendshipsLookupRequestV1Tests.swift | 14 ++--- ...iendshipsNoRetweetsIDsRequestV1Tests.swift | 14 ++--- ...GetFriendshipsOutgoingRequestV1Tests.swift | 14 ++--- .../GetFriendshipsShowRequestV1Tests.swift | 14 ++--- .../PostFriendshipsCreateRequestV1Tests.swift | 14 ++--- ...PostFriendshipsDestroyRequestV1Tests.swift | 14 ++--- .../PostFriendshipsUpdateRequestV1Tests.swift | 14 ++--- .../Geo/GetGeoPlaceIDRequestV1Tests.swift | 12 ++-- .../GetGeoReverseGeocodeRequestV1Tests.swift | 16 +++--- .../Geo/GetGeoSearchRequestV1Tests.swift | 12 ++-- .../Help/GetHelpLanguagesRequestV1Tests.swift | 12 ++-- .../List/GetListsListRequestV1Tests.swift | 14 ++--- .../List/GetListsMembersRequestV1Tests.swift | 16 +++--- .../GetListsMembersShowRequestV1Tests.swift | 18 +++--- .../GetListsMembershipsRequestV1Tests.swift | 14 ++--- .../GetListsOwnershipsRequestV1Tests.swift | 14 ++--- .../List/GetListsShowRequestV1Tests.swift | 16 +++--- .../List/GetListsStatusesRequestV1Tests.swift | 14 ++--- .../GetListsSubscribersRequestV1Tests.swift | 14 ++--- ...etListsSubscribersShowRequestV1Tests.swift | 14 ++--- .../GetListsSubscriptionsRequestV1Tests.swift | 14 ++--- .../APIv1/List/ListRequestV1Tests.swift | 26 ++++----- .../List/PostListsCreateRequestV1Tests.swift | 14 ++--- .../List/PostListsDestroyRequestV1Tests.swift | 14 ++--- ...tListsMembersCreateAllRequestV1Tests.swift | 12 ++-- ...PostListsMembersCreateRequestV1Tests.swift | 14 ++--- ...ListsMembersDestroyAllRequestV1Tests.swift | 14 ++--- ...ostListsMembersDestroyRequestV1Tests.swift | 14 ++--- ...ListsSubscribersCreateRequestV1Tests.swift | 14 ++--- ...istsSubscribersDestroyRequestV1Tests.swift | 14 ++--- .../List/PostListsUpdateRequestV1Tests.swift | 14 ++--- .../GetUploadMediaStatusRequestV1Tests.swift | 12 ++-- ...ostMediaMetadataCreateRequestV1Tests.swift | 12 ++-- ...stMediaSubtitlesCreateRequestV1Tests.swift | 12 ++-- ...stMediaSubtitlesDeleteRequestV1Tests.swift | 12 ++-- .../UploadMediaAppendRequestV1Tests.swift | 16 +++--- .../UploadMediaFinalizeRequestV1Tests.swift | 12 ++-- .../Media/UploadMediaInitRequestV1Tests.swift | 12 ++-- .../APIv1/Media/UploadMediaUtilTests.swift | 34 +++++------ .../Retweet/GetRetweetersRequestV1Tests.swift | 14 ++--- .../GetRetweetsOfMeRequestV1Tests.swift | 14 ++--- .../Retweet/GetRetweetsRequestV1Tests.swift | 14 ++--- .../Retweet/PostRetweetRequestV1Tests.swift | 14 ++--- .../Retweet/PostUnRetweetRequestV1Tests.swift | 14 ++--- .../GetSavedSearchesListRequestV1Tests.swift | 12 ++-- .../GetSearchTweetsRequestV1Tests.swift | 14 ++--- ...ostSavedSearchesCreateRequestV1Tests.swift | 12 ++-- ...stSavedSearchesDestroyRequestV1Tests.swift | 12 ++-- ...etStatusesHomeTimelineRequestV1Tests.swift | 14 ++--- ...atusesMentionsTimelineRequestV1Tests.swift | 14 ++--- ...etStatusesUserTimelineRequestV1Tests.swift | 14 ++--- .../GetTrendsAvailableRequestV1Tests.swift | 12 ++-- .../GetTrendsClosestRequestV1Tests.swift | 12 ++-- .../Trend/GetTrendsPlaceRequestV1Tests.swift | 14 ++--- .../GetStatusesLookupRequestV1Tests.swift | 14 ++--- .../Tweet/GetStatusesShowRequestV1Tests.swift | 14 ++--- .../PostStatusesDestroyRequestV1Tests.swift | 14 ++--- .../PostStatusesUpdateRequestV1Tests.swift | 14 ++--- .../Users/GetUsersLookupRequestV1Tests.swift | 14 ++--- .../GetUsersProfileBannerRequestV1Tests.swift | 14 ++--- .../Users/GetUsersSearchRequestV1Tests.swift | 14 ++--- .../Users/GetUsersShowRequestV1Tests.swift | 14 ++--- .../DeleteUsersBlockingRequestV2Tests.swift | 12 ++-- .../DeleteUsersMutingRequestV2Tests.swift | 12 ++-- .../GetUsersBlockingRequestV2Tests.swift | 14 ++--- .../GetUsersMutingRequestV2Tests.swift | 14 ++--- .../PostUsersBlockingRequestV2Tests.swift | 12 ++-- .../PostUsersMutingRequestV2Tests.swift | 12 ++-- .../DeleteUsersBookmarksRequestV2Tests.swift | 12 ++-- .../GetUsersBookmarksRequestV2Tests.swift | 14 ++--- .../PostUsersBookmarksRequestV2Tests.swift | 12 ++-- .../GetComplianceJobRequestV2Tests.swift | 12 ++-- .../GetComplianceJobsRequestV2Tests.swift | 14 ++--- .../PostComplianceJobsRequestV2Tests.swift | 14 ++--- ...onversationsIdDmEventsRequestV2Tests.swift | 14 ++--- ...hParticipantIdDmEventsRequestV2Tests.swift | 14 ++--- .../GetDmEventsRequestV2Tests.swift | 10 ++-- ...PostDmConversationByIdRequestV2Tests.swift | 17 +++--- .../PostDmConversationRequestV2Tests.swift | 14 ++--- ...DmConversationWithUserRequestV2Tests.swift | 14 ++--- .../APIv2/ExpansionsV2Tests.swift | 30 +++++----- .../APIv2/FieldsV2Tests.swift | 50 ++++++++--------- .../DeleteUsersFollowingRequestV2Tests.swift | 12 ++-- .../GetUsersFollowersRequestV2Tests.swift | 14 ++--- .../GetUsersFollowingRequestV2Tests.swift | 14 ++--- .../PostUsersFollowingRequestV2Tests.swift | 12 ++-- .../Like/DeleteUsersLikesRequestV2Tests.swift | 12 ++-- .../GetTweetsLikingUsersRequestV2Tests.swift | 14 ++--- .../GetUsersLikedTweetsRequestV2Tests.swift | 14 ++--- .../Like/PostUsersLikesRequestV2Tests.swift | 12 ++-- .../APIv2/List/DeleteListRequestV2Tests.swift | 12 ++-- .../DeleteListsMembersRequestV2Tests.swift | 14 ++--- ...leteUsersFollowedListsRequestV2Tests.swift | 12 ++-- ...DeleteUsersPinnedListsRequestV2Tests.swift | 14 ++--- .../APIv2/List/GetListRequestV2Tests.swift | 14 ++--- .../GetListsFollowersRequestV2Tests.swift | 14 ++--- .../List/GetListsMembersRequestV2Tests.swift | 14 ++--- .../List/GetListsTweetsRequestV2Tests.swift | 14 ++--- .../GetUsersFollowedListsRequestV2Tests.swift | 14 ++--- ...etUsersListMembershipsRequestV2Tests.swift | 14 ++--- .../GetUsersOwnedListsRequestV2Tests.swift | 14 ++--- .../GetUsersPinnedListsRequestV2Tests.swift | 14 ++--- .../List/PostListsMembersRequestV2Tests.swift | 12 ++-- .../APIv2/List/PostListsRequestV2Tests.swift | 14 ++--- ...PostUsersFollowedListsRequestV2Tests.swift | 12 ++-- .../PostUsersPinnedListsRequestV2Tests.swift | 12 ++-- .../APIv2/List/PutListRequestV2Tests.swift | 14 ++--- .../DeleteUsersRetweetsRequestV2Tests.swift | 12 ++-- .../GetTweetsRetweetedByRequestV2Tests.swift | 14 ++--- .../PostUsersRetweetsRequestV2Tests.swift | 12 ++-- .../GetTweetsSearchAllRequestV2Tests.swift | 14 ++--- .../GetTweetsSearchRecentRequestV2Tests.swift | 12 ++-- .../APIv2/Spaces/GetSpaceRequestV2Tests.swift | 14 ++--- .../GetSpacesBuyersRequestV2Tests.swift | 14 ++--- .../GetSpacesByCreatorIDsRequestV2Tests.swift | 14 ++--- .../Spaces/GetSpacesRequestV2Tests.swift | 14 ++--- .../GetSpacesSearchRequestV2Tests.swift | 14 ++--- .../GetSpacesTweetsRequestV2Tests.swift | 14 ++--- .../GetTweetsSampleStreamRequestV2Tests.swift | 14 ++--- .../GetTweetsSearchStreamRequestV2Tests.swift | 14 ++--- ...weetsSearchStreamRulesRequestV2Tests.swift | 14 ++--- ...weetsSearchStreamRulesRequestV2Tests.swift | 14 ++--- .../GetUsersMentionsRequestV2Tests.swift | 14 ++--- ...esReverseChronologicalRequestV2Tests.swift | 14 ++--- .../GetUsersTweetsRequestV2Tests.swift | 14 ++--- .../Tweet/DeleteTweetRequestV2Tests.swift | 12 ++-- .../APIv2/Tweet/GetTweetRequestV2Tests.swift | 12 ++-- .../GetTweetsQuoteTweetsRequestV2Tests.swift | 14 ++--- .../APIv2/Tweet/GetTweetsRequestV2Tests.swift | 12 ++-- .../Tweet/PostTweetsRequestV2Tests.swift | 12 ++-- .../Tweet/PutTweetsHiddenRequestV2Tests.swift | 12 ++-- .../GetTweetsCountsAllRequestV2Tests.swift | 12 ++-- .../GetTweetsCountsRecentRequestV2Tests.swift | 12 ++-- .../APIv2/Users/GetUserRequestV2Tests.swift | 14 ++--- .../Users/GetUsersByRequestV2Tests.swift | 14 ++--- .../GetUsersByUsernameRequestV2Tests.swift | 14 ++--- .../Users/GetUsersMeRequestV2Tests.swift | 14 ++--- .../APIv2/Users/GetUsersRequestV2Tests.swift | 14 ++--- .../GetOAuth2AuthorizeRequestV1Tests.swift | 14 ++--- .../GetOAuthAuthenticateRequestV1Tests.swift | 14 ++--- .../GetOAuthAuthorizeRequestV1Tests.swift | 14 ++--- .../PostOAuth2AccessTokenRequestV2Tests.swift | 14 ++--- ...tOAuth2InvalidateTokenRequestV1Tests.swift | 12 ++-- ...PostOAuth2RefreshTokenRequestV2Tests.swift | 14 ++--- .../PostOAuth2RevokeTokenRequestV2Tests.swift | 14 ++--- .../PostOAuth2TokenRequestV1Tests.swift | 14 ++--- .../PostOAuthAccessTokenRequestV1Tests.swift | 12 ++-- ...stOAuthInvalidateTokenRequestV1Tests.swift | 12 ++-- .../PostOAuthRequestTokenRequestV1Tests.swift | 14 ++--- .../AuthAPI/TwitterAuthAPITests.swift | 18 +++--- .../TwitterOAuth2AccessTokenTests.swift | 10 +++- .../TwitterOAuth2BearerTokenTests.swift | 16 +++--- .../TwitterOAuthAccessTokenV1Tests.swift | 16 +++--- .../AuthAPI/TwitterOAuthTokenV1Tests.swift | 16 +++--- .../Extensions/ConcurrencyTests.swift | 22 ++++---- .../Extensions/DataTests.swift | 14 ++--- .../Extensions/StringTests.swift | 12 ++-- .../Helper/CombinationsSequence.swift | 15 ++--- .../MultipartFormDataPartTests.swift | 14 ++--- .../TwitterAPIKitTests/OAuthHelperTests.swift | 16 +++--- .../TwitterAPIClientTests.swift | 32 ++++++----- .../TwitterAPIErrorResponseTests.swift | 19 +++++-- .../TwitterAPIKitErrorTests.swift | 22 ++++---- .../TwitterAPIKitTests.swift | 8 ++- .../TwitterAPIRequestTests.swift | 22 ++++---- .../TwitterAPIResponseTests.swift | 12 ++-- .../TwitterAPISessionTests.swift | 56 ++++++++++--------- .../TwitterAuthenticationMethodTests.swift | 20 +++---- .../TwitterRateLimitTests.swift | 14 ++--- 210 files changed, 1525 insertions(+), 1496 deletions(-) diff --git a/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountSettingsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountSettingsRequestV1Tests.swift index 87c7ea02..84f917e5 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountSettingsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountSettingsRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetAccountSettingsRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetAccountSettingsRequestV1Tests: XCTestCase { + public func test() throws { let req = GetAccountSettingsRequestV1() XCTAssertEqual(req.method, .get) @@ -18,4 +14,8 @@ class GetAccountSettingsRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountVerifyCredentialsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountVerifyCredentialsRequestV1Tests.swift index 3ed815bd..24075270 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountVerifyCredentialsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountVerifyCredentialsRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetAccountVerifyCredentialsRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetAccountVerifyCredentialsRequestV1Tests: XCTestCase { + public func test() throws { let req = GetAccountVerifyCredentialsRequestV1( skipStatus: true, includeEmail: true, @@ -27,7 +23,7 @@ class GetAccountVerifyCredentialsRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetAccountVerifyCredentialsRequestV1() AssertEqualAnyDict( @@ -35,4 +31,8 @@ class GetAccountVerifyCredentialsRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountRemoveProfileBannerRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountRemoveProfileBannerRequestV1Tests.swift index 56ee7f7a..b2323525 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountRemoveProfileBannerRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountRemoveProfileBannerRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostAccountRemoveProfileBannerRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostAccountRemoveProfileBannerRequestV1Tests: XCTestCase { + public func test() throws { let req = PostAccountRemoveProfileBannerRequestV1() XCTAssertEqual(req.method, .post) @@ -18,4 +14,8 @@ class PostAccountRemoveProfileBannerRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountSettingsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountSettingsRequestV1Tests.swift index eae0323a..c0d67e5e 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountSettingsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountSettingsRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostAccountSettingsRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostAccountSettingsRequestV1Tests: XCTestCase { + public func test() throws { let req = PostAccountSettingsRequestV1( lang: "_l_", timeZone: "_t_", @@ -33,7 +29,7 @@ class PostAccountSettingsRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostAccountSettingsRequestV1() AssertEqualAnyDict( @@ -41,4 +37,8 @@ class PostAccountSettingsRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileBannerRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileBannerRequestV1Tests.swift index 4340634d..1ba74534 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileBannerRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileBannerRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostAccountUpdateProfileBannerRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostAccountUpdateProfileBannerRequestV1Tests: XCTestCase { + public func test() throws { let banner = Data([0, 1, 2]) let req = PostAccountUpdateProfileBannerRequestV1( banner: banner, @@ -42,7 +38,7 @@ class PostAccountUpdateProfileBannerRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let banner = Data([0, 1]) let req = PostAccountUpdateProfileBannerRequestV1( banner: banner @@ -63,4 +59,8 @@ class PostAccountUpdateProfileBannerRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileImageRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileImageRequestV1Tests.swift index b7156492..072fa9c2 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileImageRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileImageRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostAccountUpdateProfileImageRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostAccountUpdateProfileImageRequestV1Tests: XCTestCase { + public func test() throws { let image = Data([0, 1, 2]) let req = PostAccountUpdateProfileImageRequestV1( image: image, @@ -28,7 +24,7 @@ class PostAccountUpdateProfileImageRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let image = Data([0, 1, 2]) let req = PostAccountUpdateProfileImageRequestV1( image: image @@ -41,4 +37,8 @@ class PostAccountUpdateProfileImageRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileRequestV1Tests.swift index 4341308c..594c61fc 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostAccountUpdateProfileRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostAccountUpdateProfileRequestV1Tests: XCTestCase { + public func test() throws { let req = PostAccountUpdateProfileRequestV1( url: "_u_", name: "_n_", @@ -35,7 +31,7 @@ class PostAccountUpdateProfileRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostAccountUpdateProfileRequestV1() AssertEqualAnyDict( @@ -43,4 +39,8 @@ class PostAccountUpdateProfileRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Application/GetApplicationRateLimitStatusRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Application/GetApplicationRateLimitStatusRequestV1Tests.swift index a6163977..49bdf837 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Application/GetApplicationRateLimitStatusRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Application/GetApplicationRateLimitStatusRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetApplicationRateLimitStatusRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetApplicationRateLimitStatusRequestV1Tests: XCTestCase { + public func test() throws { let req = GetApplicationRateLimitStatusRequestV1( resources: ["a", "b"] ) @@ -23,7 +19,7 @@ class GetApplicationRateLimitStatusRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetApplicationRateLimitStatusRequestV1() AssertEqualAnyDict( @@ -31,4 +27,8 @@ class GetApplicationRateLimitStatusRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksIDsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksIDsRequestV1Tests.swift index dae4714a..f74685ed 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksIDsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksIDsRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetBlocksIDsRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetBlocksIDsRequestV1Tests: XCTestCase { + public func test() throws { let req = GetBlocksIDsRequestV1( stringifyIDs: true, cursor: "_c_" @@ -25,7 +21,7 @@ class GetBlocksIDsRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetBlocksIDsRequestV1() AssertEqualAnyDict( @@ -33,4 +29,8 @@ class GetBlocksIDsRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksListRequestV1Tests.swift index f0fd1919..b3ccde60 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksListRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetBlocksListRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetBlocksListRequestV1Tests: XCTestCase { + public func test() throws { let req = GetBlocksListRequestV1( includeEntities: true, skipStatus: true, @@ -27,7 +23,7 @@ class GetBlocksListRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetBlocksListRequestV1() AssertEqualAnyDict( @@ -35,4 +31,8 @@ class GetBlocksListRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersIDsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersIDsRequestV1Tests.swift index 1a37a8ea..951aadae 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersIDsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersIDsRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetMutesUsersIDsRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetMutesUsersIDsRequestV1Tests: XCTestCase { + public func test() throws { let req = GetMutesUsersIDsRequestV1( stringifyIDs: true, cursor: "_c_" @@ -25,7 +21,7 @@ class GetMutesUsersIDsRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetMutesUsersIDsRequestV1() AssertEqualAnyDict( @@ -33,4 +29,8 @@ class GetMutesUsersIDsRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersListRequestV1Tests.swift index a840d7ae..782172ca 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersListRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetMutesUsersListRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetMutesUsersListRequestV1Tests: XCTestCase { + public func test() throws { let req = GetMutesUsersListRequestV1( cursor: "_c_", includeEntities: true, @@ -27,7 +23,7 @@ class GetMutesUsersListRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetMutesUsersListRequestV1() AssertEqualAnyDict( @@ -35,4 +31,8 @@ class GetMutesUsersListRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksCreateRequestV1Tests.swift index 8689eed2..0b1cd6ff 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksCreateRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostBlocksCreateRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostBlocksCreateRequestV1Tests: XCTestCase { + public func test() throws { let req = PostBlocksCreateRequestV1( user: .userID("uid"), includeEntities: true, @@ -27,7 +23,7 @@ class PostBlocksCreateRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostBlocksCreateRequestV1( user: .screenName("s") ) @@ -39,4 +35,8 @@ class PostBlocksCreateRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksDestroyRequestV1Tests.swift index 58483ff0..212160d8 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksDestroyRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostBlocksDestroyRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostBlocksDestroyRequestV1Tests: XCTestCase { + public func test() throws { let req = PostBlocksDestroyRequestV1( user: .userID("uid"), includeEntities: true, @@ -27,7 +23,7 @@ class PostBlocksDestroyRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostBlocksDestroyRequestV1( user: .screenName("s") ) @@ -39,4 +35,8 @@ class PostBlocksDestroyRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersCreateRequestV1Tests.swift index b9f024ee..1327cd8e 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersCreateRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostMutesUsersCreateRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostMutesUsersCreateRequestV1Tests: XCTestCase { + public func test() throws { let req = PostMutesUsersCreateRequestV1( user: .userID("uid") ) @@ -23,7 +19,7 @@ class PostMutesUsersCreateRequestV1Tests: XCTestCase { ) } - func testScreenName() throws { + public func testScreenName() throws { let req = PostMutesUsersCreateRequestV1( user: .screenName("s") ) @@ -35,4 +31,8 @@ class PostMutesUsersCreateRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersDestroyRequestV1Tests.swift index 11b0df6d..0cdc2b30 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersDestroyRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostMutesUsersDestroyRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostMutesUsersDestroyRequestV1Tests: XCTestCase { + public func test() throws { let req = PostMutesUsersDestroyRequestV1( user: .userID("uid") ) @@ -23,7 +19,7 @@ class PostMutesUsersDestroyRequestV1Tests: XCTestCase { ) } - func testScreenName() throws { + public func testScreenName() throws { let req = PostMutesUsersDestroyRequestV1( user: .screenName("s") ) @@ -35,4 +31,8 @@ class PostMutesUsersDestroyRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostUsersReportSpamRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostUsersReportSpamRequestV1Tests.swift index 55e174b6..97a92861 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostUsersReportSpamRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostUsersReportSpamRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostUsersReportSpamRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostUsersReportSpamRequestV1Tests: XCTestCase { + public func test() throws { let req = PostUsersReportSpamRequestV1( user: .userID("uid"), performBlock: true @@ -25,7 +21,7 @@ class PostUsersReportSpamRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostUsersReportSpamRequestV1( user: .screenName("s") ) @@ -37,4 +33,8 @@ class PostUsersReportSpamRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsEntriesRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsEntriesRequestV1Tests.swift index dd041759..1d6554b7 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsEntriesRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsEntriesRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetCollectionsEntriesRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetCollectionsEntriesRequestV1Tests: XCTestCase { + public func test() throws { let req = GetCollectionsEntriesRequestV1( id: "_i_", count: 12, @@ -29,7 +25,7 @@ class GetCollectionsEntriesRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetCollectionsEntriesRequestV1( id: "i" ) @@ -41,4 +37,8 @@ class GetCollectionsEntriesRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsListRequestV1Tests.swift index 94314084..1238f114 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsListRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetCollectionsListRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetCollectionsListRequestV1Tests: XCTestCase { + public func test() throws { let req = GetCollectionsListRequestV1( user: .userID("uid"), count: 14, @@ -29,7 +25,7 @@ class GetCollectionsListRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetCollectionsListRequestV1( user: .screenName("s") ) @@ -41,4 +37,8 @@ class GetCollectionsListRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsShowRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsShowRequestV1Tests.swift index 5285c7af..beaf1c99 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsShowRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsShowRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetCollectionsShowRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetCollectionsShowRequestV1Tests: XCTestCase { + public func test() throws { let req = GetCollectionsShowRequestV1( id: "_i_" ) @@ -22,4 +18,8 @@ class GetCollectionsShowRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsCreateRequestV1Tests.swift index ff87e380..ca5b8881 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsCreateRequestV1Tests.swift @@ -2,11 +2,7 @@ import TwitterAPIKit import XCTest class PostCollectionsCreateRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { + public func test() throws { let req = PostCollectionsCreateRequestV1( name: "_n_", url: "_u_", @@ -29,7 +25,7 @@ class PostCollectionsCreateRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostCollectionsCreateRequestV1( name: "n" ) @@ -41,4 +37,8 @@ class PostCollectionsCreateRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsDestroyRequestV1Tests.swift index e4946932..4028e84b 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsDestroyRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostCollectionsDestroyRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostCollectionsDestroyRequestV1Tests: XCTestCase { + public func test() throws { let req = PostCollectionsDestroyRequestV1( id: "_i_" ) @@ -22,4 +18,8 @@ class PostCollectionsDestroyRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesAddRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesAddRequestV1Tests.swift index b475c2a0..4e5d3286 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesAddRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesAddRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostCollectionsEntriesAddRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostCollectionsEntriesAddRequestV1Tests: XCTestCase { + public func test() throws { let req = PostCollectionsEntriesAddRequestV1( id: "_i_", tweetID: "_t_", @@ -29,7 +25,7 @@ class PostCollectionsEntriesAddRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostCollectionsEntriesAddRequestV1( id: "_i_", tweetID: "_t_" @@ -43,4 +39,8 @@ class PostCollectionsEntriesAddRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesCurateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesCurateRequestV1Tests.swift index 97c77fba..841185e6 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesCurateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesCurateRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostCollectionsEntriesCurateRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostCollectionsEntriesCurateRequestV1Tests: XCTestCase { + public func test() throws { let req = PostCollectionsEntriesCurateRequestV1( id: "_i_", changes: [ @@ -30,4 +26,8 @@ class PostCollectionsEntriesCurateRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesMoveRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesMoveRequestV1Tests.swift index 96677b8b..5dd24ec6 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesMoveRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesMoveRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostCollectionsEntriesMoveRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostCollectionsEntriesMoveRequestV1Tests: XCTestCase { + public func test() throws { let req = PostCollectionsEntriesMoveRequestV1( id: "_i_", tweetID: "_t_", @@ -29,7 +25,7 @@ class PostCollectionsEntriesMoveRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostCollectionsEntriesMoveRequestV1( id: "_i_", tweetID: "_t_", @@ -45,4 +41,8 @@ class PostCollectionsEntriesMoveRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesRemoveRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesRemoveRequestV1Tests.swift index 79c58747..f74222a4 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesRemoveRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesRemoveRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostCollectionsEntriesRemoveRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostCollectionsEntriesRemoveRequestV1Tests: XCTestCase { + public func test() throws { let req = PostCollectionsEntriesRemoveRequestV1( id: "_i_", tweetID: "_t_" @@ -24,4 +20,8 @@ class PostCollectionsEntriesRemoveRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsUpdateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsUpdateRequestV1Tests.swift index 65ef764f..222eab5b 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsUpdateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsUpdateRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostCollectionsUpdateRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostCollectionsUpdateRequestV1Tests: XCTestCase { + public func test() throws { let req = PostCollectionsUpdateRequestV1( id: "_i_", url: "_u_", @@ -29,7 +25,7 @@ class PostCollectionsUpdateRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostCollectionsUpdateRequestV1( id: "i" ) @@ -41,4 +37,8 @@ class PostCollectionsUpdateRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/DeleteDirectMessageRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/DeleteDirectMessageRequestV1Tests.swift index 86f9c272..f2596f5f 100644 --- a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/DeleteDirectMessageRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/DeleteDirectMessageRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class DeleteDirectMessageRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class DeleteDirectMessageRequestV1Tests: XCTestCase { + public func test() throws { let req = DeleteDirectMessageRequestV1(id: "15") XCTAssertEqual(req.method, .delete) XCTAssertEqual(req.path, "/1.1/direct_messages/events/destroy.json") @@ -14,4 +10,8 @@ class DeleteDirectMessageRequestV1Tests: XCTestCase { AssertEqualAnyDict(req.parameters, ["id": "15"]) AssertEqualAnyDict(req.queryParameters, ["id": "15"]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageListRequestV1Tests.swift index 6801bde3..2c6ec976 100644 --- a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageListRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetDirectMessageListRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetDirectMessageListRequestV1Tests: XCTestCase { + public func test() throws { let req = GetDirectMessageListRequestV1( count: 100, cursor: "cursor_str" @@ -24,4 +20,8 @@ class GetDirectMessageListRequestV1Tests: XCTestCase { ) XCTAssertTrue(req.bodyParameters.isEmpty) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageRequestV1Tests.swift index 87690197..49eb02a5 100644 --- a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetDirectMessageRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetDirectMessageRequestV1Tests: XCTestCase { + public func test() throws { let req = GetDirectMessageRequestV1(id: "dm_id") XCTAssertEqual(req.method, .get) @@ -14,4 +10,8 @@ class GetDirectMessageRequestV1Tests: XCTestCase { XCTAssertEqual(req.bodyContentType, .wwwFormUrlEncoded) AssertEqualAnyDict(req.parameters, ["id": "dm_id"]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessageRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessageRequestV1Tests.swift index 9439914b..6c6f4745 100644 --- a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessageRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessageRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostDirectMessageRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func testText() throws { +internal class PostDirectMessageRequestV1Tests: XCTestCase { + public func testText() throws { let req = PostDirectMessageRequestV1( targetUserID: "target", message: "msg" @@ -29,7 +25,7 @@ class PostDirectMessageRequestV1Tests: XCTestCase { ) } - func testQuickReplyOptions() throws { + public func testQuickReplyOptions() throws { let req = PostDirectMessageRequestV1( targetUserID: "target", message: "msg", @@ -65,7 +61,7 @@ class PostDirectMessageRequestV1Tests: XCTestCase { ) } - func testAttachMedia() throws { + public func testAttachMedia() throws { let req = PostDirectMessageRequestV1( targetUserID: "target", message: "msg with media", @@ -97,7 +93,7 @@ class PostDirectMessageRequestV1Tests: XCTestCase { ) } - func testAttachLocation() throws { + public func testAttachLocation() throws { XCTContext.runActivity(named: "coordinate") { _ in let req = PostDirectMessageRequestV1( targetUserID: "target", @@ -173,4 +169,8 @@ class PostDirectMessageRequestV1Tests: XCTestCase { ) } } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesIndicateTypingRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesIndicateTypingRequestV1Tests.swift index e4d96087..7e9f79a9 100644 --- a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesIndicateTypingRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesIndicateTypingRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostDirectMessagesIndicateTypingRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostDirectMessagesIndicateTypingRequestV1Tests: XCTestCase { + public func test() throws { let req = PostDirectMessagesIndicateTypingRequestV1( recipientID: "234" ) @@ -16,4 +12,8 @@ class PostDirectMessagesIndicateTypingRequestV1Tests: XCTestCase { XCTAssertEqual(req.bodyContentType, .wwwFormUrlEncoded) AssertEqualAnyDict(req.parameters, ["recipient_id": "234"]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesMarkReadRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesMarkReadRequestV1Tests.swift index f1368a24..db4e1ae6 100644 --- a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesMarkReadRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesMarkReadRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostDirectMessagesMarkReadRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostDirectMessagesMarkReadRequestV1Tests: XCTestCase { + public func test() throws { let req = PostDirectMessagesMarkReadRequestV1(lastReadEventID: "ev_id", recipientID: "r_id") XCTAssertEqual(req.method, .post) @@ -20,4 +16,8 @@ class PostDirectMessagesMarkReadRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Favorite/GetFavoritesRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Favorite/GetFavoritesRequestV1Tests.swift index 5601f1e8..2fe6c347 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Favorite/GetFavoritesRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Favorite/GetFavoritesRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetFavoritesRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetFavoritesRequestV1Tests: XCTestCase { + public func test() throws { let req = GetFavoritesRequestV1( target: .userID("uid"), count: 100, @@ -31,7 +27,7 @@ class GetFavoritesRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetFavoritesRequestV1( target: .screenName("s") ) @@ -43,4 +39,8 @@ class GetFavoritesRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Favorite/PostFavoriteRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Favorite/PostFavoriteRequestV1Tests.swift index c346cf0d..20c4f115 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Favorite/PostFavoriteRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Favorite/PostFavoriteRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostFavoriteRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostFavoriteRequestV1Tests: XCTestCase { + public func test() throws { let req = PostFavoriteRequestV1( id: "_i_", includeEntities: true @@ -25,7 +21,7 @@ class PostFavoriteRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostFavoriteRequestV1( id: "_i_" ) @@ -37,4 +33,8 @@ class PostFavoriteRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Favorite/PostUnFavoriteRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Favorite/PostUnFavoriteRequestV1Tests.swift index b8df1cd9..99587d1c 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Favorite/PostUnFavoriteRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Favorite/PostUnFavoriteRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostUnFavoriteRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostUnFavoriteRequestV1Tests: XCTestCase { + public func test() throws { let req = PostUnFavoriteRequestV1( id: "_i_", includeEntities: true @@ -25,7 +21,7 @@ class PostUnFavoriteRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostUnFavoriteRequestV1( id: "_i_" ) @@ -37,4 +33,8 @@ class PostUnFavoriteRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersIDsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersIDsRequestV1Tests.swift index 5162785d..75995331 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersIDsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersIDsRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetFollowersIDsRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetFollowersIDsRequestV1Tests: XCTestCase { + public func test() throws { let req = GetFollowersIDsRequestV1( user: .userID("uid"), count: 10, @@ -29,7 +25,7 @@ class GetFollowersIDsRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetFollowersIDsRequestV1( user: .screenName("s") ) @@ -41,4 +37,8 @@ class GetFollowersIDsRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersListRequestV1Tests.swift index 15836992..28b6684f 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersListRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetFollowersListRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetFollowersListRequestV1Tests: XCTestCase { + public func test() throws { let req = GetFollowersListRequestV1( user: .userID("uid"), count: 1, @@ -31,7 +27,7 @@ class GetFollowersListRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetFollowersListRequestV1( user: .screenName("s") ) @@ -43,4 +39,8 @@ class GetFollowersListRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsIDsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsIDsRequestV1Tests.swift index 424686ae..010ecfcf 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsIDsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsIDsRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetFriendsIDsRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetFriendsIDsRequestV1Tests: XCTestCase { + public func test() throws { let req = GetFriendsIDsRequestV1( user: .userID("uid"), count: 11, @@ -29,7 +25,7 @@ class GetFriendsIDsRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetFriendsIDsRequestV1( user: .screenName("s") ) @@ -41,4 +37,8 @@ class GetFriendsIDsRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsListRequestV1Tests.swift index fc1968f1..7e4a70ca 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsListRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetFriendsListRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetFriendsListRequestV1Tests: XCTestCase { + public func test() throws { let req = GetFriendsListRequestV1( user: .userID("uid"), count: 1, @@ -31,7 +27,7 @@ class GetFriendsListRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetFriendsListRequestV1( user: .screenName("s") ) @@ -43,4 +39,8 @@ class GetFriendsListRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsIncomingRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsIncomingRequestV1Tests.swift index fbdcd0e6..315fa997 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsIncomingRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsIncomingRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetFriendshipsIncomingRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetFriendshipsIncomingRequestV1Tests: XCTestCase { + public func test() throws { let req = GetFriendshipsIncomingRequestV1( cursor: "_c_", stringifyIDs: true @@ -25,7 +21,7 @@ class GetFriendshipsIncomingRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetFriendshipsIncomingRequestV1() AssertEqualAnyDict( @@ -33,4 +29,8 @@ class GetFriendshipsIncomingRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsLookupRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsLookupRequestV1Tests.swift index a03d84be..d7b05204 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsLookupRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsLookupRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetFriendshipsLookupRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetFriendshipsLookupRequestV1Tests: XCTestCase { + public func test() throws { let req = GetFriendshipsLookupRequestV1( users: .userIDs(["uid1", "uid2"]) ) @@ -23,7 +19,7 @@ class GetFriendshipsLookupRequestV1Tests: XCTestCase { ) } - func testScreenName() throws { + public func testScreenName() throws { let req = GetFriendshipsLookupRequestV1( users: .screenNames(["s1", "s2"]) ) @@ -36,4 +32,8 @@ class GetFriendshipsLookupRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsNoRetweetsIDsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsNoRetweetsIDsRequestV1Tests.swift index a7e63977..93d404ba 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsNoRetweetsIDsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsNoRetweetsIDsRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetFriendshipsNoRetweetsIDsRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetFriendshipsNoRetweetsIDsRequestV1Tests: XCTestCase { + public func test() throws { let req = GetFriendshipsNoRetweetsIDsRequestV1( stringifyIDs: true ) @@ -23,7 +19,7 @@ class GetFriendshipsNoRetweetsIDsRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetFriendshipsNoRetweetsIDsRequestV1() AssertEqualAnyDict( @@ -31,4 +27,8 @@ class GetFriendshipsNoRetweetsIDsRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsOutgoingRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsOutgoingRequestV1Tests.swift index 4a557a85..cd78209d 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsOutgoingRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsOutgoingRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetFriendshipsOutgoingRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetFriendshipsOutgoingRequestV1Tests: XCTestCase { + public func test() throws { let req = GetFriendshipsOutgoingRequestV1( cursor: "_c_", stringifyIDs: true @@ -25,7 +21,7 @@ class GetFriendshipsOutgoingRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetFriendshipsOutgoingRequestV1() AssertEqualAnyDict( @@ -33,4 +29,8 @@ class GetFriendshipsOutgoingRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsShowRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsShowRequestV1Tests.swift index 8377ab0b..fc41c9bc 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsShowRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsShowRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetFriendshipsShowRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetFriendshipsShowRequestV1Tests: XCTestCase { + public func test() throws { let req = GetFriendshipsShowRequestV1( sourceUser: .userID("suid"), targetUser: .userID("tuid") @@ -25,7 +21,7 @@ class GetFriendshipsShowRequestV1Tests: XCTestCase { ) } - func testScreenName() throws { + public func testScreenName() throws { let req = GetFriendshipsShowRequestV1( sourceUser: .screenName("s"), targetUser: .screenName("t") @@ -39,4 +35,8 @@ class GetFriendshipsShowRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsCreateRequestV1Tests.swift index f6174bd7..1b66f185 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsCreateRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostFriendshipsCreateRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostFriendshipsCreateRequestV1Tests: XCTestCase { + public func test() throws { let req = PostFriendshipsCreateRequestV1( user: .userID("uid"), follow: true @@ -25,7 +21,7 @@ class PostFriendshipsCreateRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostFriendshipsCreateRequestV1( user: .screenName("s") ) @@ -37,4 +33,8 @@ class PostFriendshipsCreateRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsDestroyRequestV1Tests.swift index b08e78e1..f670e372 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsDestroyRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostFriendshipsDestroyRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostFriendshipsDestroyRequestV1Tests: XCTestCase { + public func test() throws { let req = PostFriendshipsDestroyRequestV1( user: .userID("uid") ) @@ -23,7 +19,7 @@ class PostFriendshipsDestroyRequestV1Tests: XCTestCase { ) } - func testScreenName() throws { + public func testScreenName() throws { let req = PostFriendshipsDestroyRequestV1( user: .screenName("s") ) @@ -35,4 +31,8 @@ class PostFriendshipsDestroyRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsUpdateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsUpdateRequestV1Tests.swift index 356679dd..80266827 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsUpdateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsUpdateRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostFriendshipsUpdateRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostFriendshipsUpdateRequestV1Tests: XCTestCase { + public func test() throws { let req = PostFriendshipsUpdateRequestV1( user: .userID("uid"), device: true, @@ -27,7 +23,7 @@ class PostFriendshipsUpdateRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostFriendshipsUpdateRequestV1( user: .screenName("s") ) @@ -39,4 +35,8 @@ class PostFriendshipsUpdateRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoPlaceIDRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoPlaceIDRequestV1Tests.swift index 625f7a1e..eaadb6a6 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoPlaceIDRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoPlaceIDRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetGeoPlaceIDRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetGeoPlaceIDRequestV1Tests: XCTestCase { + public func test() throws { let req = GetGeoPlaceIDRequestV1( placeID: "_p_" ) @@ -20,4 +16,8 @@ class GetGeoPlaceIDRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoReverseGeocodeRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoReverseGeocodeRequestV1Tests.swift index e46bcbe3..610f5ba3 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoReverseGeocodeRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoReverseGeocodeRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetGeoReverseGeocodeRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func testAccuracy() throws { +internal class GetGeoReverseGeocodeRequestV1Tests: XCTestCase { + public func testAccuracy() throws { XCTContext.runActivity(named: "ft") { _ in let req = GetGeoReverseGeocodeRequestV1( location: .init(lat: 1, long: 2.5), @@ -52,7 +48,7 @@ class GetGeoReverseGeocodeRequestV1Tests: XCTestCase { } } - func testGranularity() throws { + public func testGranularity() throws { XCTContext.runActivity(named: "neighborhood") { _ in let req = GetGeoReverseGeocodeRequestV1( location: .init(lat: 1, long: 2.5), @@ -131,7 +127,7 @@ class GetGeoReverseGeocodeRequestV1Tests: XCTestCase { } } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetGeoReverseGeocodeRequestV1( location: .init(lat: -10, long: 100) ) @@ -144,4 +140,8 @@ class GetGeoReverseGeocodeRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoSearchRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoSearchRequestV1Tests.swift index 53264dc5..a6ef3237 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoSearchRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoSearchRequestV1Tests.swift @@ -2,11 +2,7 @@ import TwitterAPIKit import XCTest class GetGeoSearchRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { + public func test() throws { XCTContext.runActivity(named: "coordinate") { _ in let req = GetGeoSearchRequestV1( @@ -63,7 +59,7 @@ class GetGeoSearchRequestV1Tests: XCTestCase { } } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetGeoSearchRequestV1( location: .coordinate(.init(lat: 10.123, long: -20.1)) ) @@ -76,4 +72,8 @@ class GetGeoSearchRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Help/GetHelpLanguagesRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Help/GetHelpLanguagesRequestV1Tests.swift index 8c762d6f..8c9b86ee 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Help/GetHelpLanguagesRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Help/GetHelpLanguagesRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetHelpLanguagesRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetHelpLanguagesRequestV1Tests: XCTestCase { + public func test() throws { let req = GetHelpLanguagesRequestV1() XCTAssertEqual(req.method, .get) @@ -18,4 +14,8 @@ class GetHelpLanguagesRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsListRequestV1Tests.swift index 3d982ae5..c0584b74 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsListRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetListsListRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetListsListRequestV1Tests: XCTestCase { + public func test() throws { let req = GetListsListRequestV1( user: .userID("uid"), reverse: true @@ -25,7 +21,7 @@ class GetListsListRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetListsListRequestV1( user: .screenName("s") ) @@ -37,4 +33,8 @@ class GetListsListRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersRequestV1Tests.swift index f653bf82..b16eb160 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetListsMembersRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetListsMembersRequestV1Tests: XCTestCase { + public func test() throws { let req = GetListsMembersRequestV1( list: .listID("lid"), count: 10, @@ -31,7 +27,7 @@ class GetListsMembersRequestV1Tests: XCTestCase { ) } - func testSlugUserID() throws { + public func testSlugUserID() throws { let req = GetListsMembersRequestV1( list: .slug(slug: "s", owner: .userID("uid")) ) @@ -45,7 +41,7 @@ class GetListsMembersRequestV1Tests: XCTestCase { ) } - func testSlugScreenName() throws { + public func testSlugScreenName() throws { let req = GetListsMembersRequestV1( list: .slug(slug: "s", owner: .screenName("s")) ) @@ -58,4 +54,8 @@ class GetListsMembersRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersShowRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersShowRequestV1Tests.swift index 7a59e2b3..2179d1d6 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersShowRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersShowRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetListsMembersShowRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetListsMembersShowRequestV1Tests: XCTestCase { + public func test() throws { let req = GetListsMembersShowRequestV1( list: .listID("lid"), user: .userID("uid"), @@ -29,7 +25,7 @@ class GetListsMembersShowRequestV1Tests: XCTestCase { ) } - func testScreenName() throws { + public func testScreenName() throws { let req = GetListsMembersShowRequestV1( list: .listID("lid"), user: .screenName("s") @@ -44,7 +40,7 @@ class GetListsMembersShowRequestV1Tests: XCTestCase { ) } - func testSlugUserID() throws { + public func testSlugUserID() throws { let req = GetListsMembersShowRequestV1( list: .slug(slug: "s", owner: .userID("ouid")), user: .userID("uid") @@ -60,7 +56,7 @@ class GetListsMembersShowRequestV1Tests: XCTestCase { ) } - func testSlugScreenName() throws { + public func testSlugScreenName() throws { let req = GetListsMembersShowRequestV1( list: .slug(slug: "s", owner: .screenName("os")), user: .userID("uid") @@ -75,4 +71,8 @@ class GetListsMembersShowRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembershipsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembershipsRequestV1Tests.swift index 15ec8a2c..a792db8a 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembershipsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembershipsRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetListsMembershipsRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetListsMembershipsRequestV1Tests: XCTestCase { + public func test() throws { let req = GetListsMembershipsRequestV1( user: .userID("uid"), count: 11, @@ -29,7 +25,7 @@ class GetListsMembershipsRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetListsMembershipsRequestV1( user: .screenName("name") ) @@ -41,4 +37,8 @@ class GetListsMembershipsRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsOwnershipsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsOwnershipsRequestV1Tests.swift index f218d2b9..9f5e5636 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsOwnershipsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsOwnershipsRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetListsOwnershipsRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetListsOwnershipsRequestV1Tests: XCTestCase { + public func test() throws { let req = GetListsOwnershipsRequestV1( user: .userID("uid"), count: 21, @@ -27,7 +23,7 @@ class GetListsOwnershipsRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetListsOwnershipsRequestV1( user: .screenName("name") ) @@ -39,4 +35,8 @@ class GetListsOwnershipsRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsShowRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsShowRequestV1Tests.swift index 84fd409a..5feb60f3 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsShowRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsShowRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetListsShowRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetListsShowRequestV1Tests: XCTestCase { + public func test() throws { let req = GetListsShowRequestV1( list: .listID("lid") ) @@ -23,7 +19,7 @@ class GetListsShowRequestV1Tests: XCTestCase { ) } - func testSlugUserID() throws { + public func testSlugUserID() throws { let req = GetListsShowRequestV1( list: .slug(slug: "sl", owner: .userID("uid")) ) @@ -36,7 +32,7 @@ class GetListsShowRequestV1Tests: XCTestCase { ) } - func testSlugScreenName() throws { + public func testSlugScreenName() throws { let req = GetListsShowRequestV1( list: .slug(slug: "sl", owner: .screenName("sname")) ) @@ -48,4 +44,8 @@ class GetListsShowRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsStatusesRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsStatusesRequestV1Tests.swift index 3c2c9d67..16325133 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsStatusesRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsStatusesRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetListsStatusesRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetListsStatusesRequestV1Tests: XCTestCase { + public func test() throws { let req = GetListsStatusesRequestV1( list: .listID("lid"), count: 15, @@ -33,7 +29,7 @@ class GetListsStatusesRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetListsStatusesRequestV1( list: .listID("lid") ) @@ -45,4 +41,8 @@ class GetListsStatusesRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersRequestV1Tests.swift index 3f15d820..62e9651d 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetListsSubscribersRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetListsSubscribersRequestV1Tests: XCTestCase { + public func test() throws { let req = GetListsSubscribersRequestV1( list: .listID("lid"), count: 17, @@ -31,7 +27,7 @@ class GetListsSubscribersRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetListsSubscribersRequestV1( list: .slug(slug: "sl", owner: .userID("uid")) ) @@ -44,4 +40,8 @@ class GetListsSubscribersRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersShowRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersShowRequestV1Tests.swift index 018514fd..98444db1 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersShowRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersShowRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetListsSubscribersShowRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetListsSubscribersShowRequestV1Tests: XCTestCase { + public func test() throws { let req = GetListsSubscribersShowRequestV1( list: .listID("lid"), user: .userID("uid"), @@ -29,7 +25,7 @@ class GetListsSubscribersShowRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetListsSubscribersShowRequestV1( list: .slug(slug: "sl", owner: .screenName("sn")), user: .userID("uid") @@ -44,4 +40,8 @@ class GetListsSubscribersShowRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscriptionsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscriptionsRequestV1Tests.swift index 4ac1e0b7..ece82aa0 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscriptionsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscriptionsRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetListsSubscriptionsRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetListsSubscriptionsRequestV1Tests: XCTestCase { + public func test() throws { let req = GetListsSubscriptionsRequestV1( user: .userID("uid"), count: 19, @@ -27,7 +23,7 @@ class GetListsSubscriptionsRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetListsSubscriptionsRequestV1( user: .screenName("sn") ) @@ -39,4 +35,8 @@ class GetListsSubscriptionsRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift index 88994dea..fc3e69f2 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift @@ -1,34 +1,30 @@ import TwitterAPIKit import XCTest -class CustomListsListRequestV1: GetListsListRequestV1 { - let custom: String +internal internal class CustomListsListRequestV1: GetListsListRequestV1 { + public let custom: String - override var parameters: [String: Any] { + override public var parameters: [String: Any] { var p = super.parameters p["custom"] = custom return p } - init(custom: String, user: TwitterUserIdentifierV1, reverse: Bool? = .none) { + public init(custom: String, user: TwitterUserIdentifierV1, reverse: Bool? = .none) { self.custom = custom super.init(user: user, reverse: reverse) } } -class CapsuledListsListRequestV1: GetListsListRequestV1 { +internal internal class CapsuledListsListRequestV1: GetListsListRequestV1 { init() { super.init(user: .userID("100"), reverse: true) } } -class ListRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - +internal internal class ListRequestV1Tests: XCTestCase { // https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-list - func testGetListsListRequestV1() throws { + public func testGetListsListRequestV1() throws { XCTContext.runActivity(named: "with only required parameters") { _ in let list = GetListsListRequestV1(user: .userID("1234")) @@ -43,17 +39,21 @@ class ListRequestV1Tests: XCTestCase { } } - func testCustomListsListRequestV1() throws { + public func testCustomListsListRequestV1() throws { let list = CustomListsListRequestV1(custom: "_custom_", user: .userID("12")) XCTAssertEqual(list.method, .get) XCTAssertEqual(list.path, "/1.1/lists/list.json") AssertEqualAnyDict(list.parameters, ["user_id": "12", "custom": "_custom_"]) } - func testCapsuledListsListRequestV1() throws { + public func testCapsuledListsListRequestV1() throws { let list = CapsuledListsListRequestV1() XCTAssertEqual(list.method, .get) XCTAssertEqual(list.path, "/1.1/lists/list.json") AssertEqualAnyDict(list.parameters, ["user_id": "100", "reverse": true]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsCreateRequestV1Tests.swift index dbc5eb74..201de217 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsCreateRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostListsCreateRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostListsCreateRequestV1Tests: XCTestCase { + public func test() throws { let req = PostListsCreateRequestV1( name: "_n_", mode: .private, @@ -27,7 +23,7 @@ class PostListsCreateRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostListsCreateRequestV1( name: "n" ) @@ -39,4 +35,8 @@ class PostListsCreateRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsDestroyRequestV1Tests.swift index 7ee86470..2a96b712 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsDestroyRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostListsDestroyRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostListsDestroyRequestV1Tests: XCTestCase { + public func test() throws { let req = PostListsDestroyRequestV1( list: .listID("lid") ) @@ -23,7 +19,7 @@ class PostListsDestroyRequestV1Tests: XCTestCase { ) } - func testSlug() throws { + public func testSlug() throws { let req = PostListsDestroyRequestV1( list: .slug(slug: "sl", owner: .screenName("sname")) ) @@ -36,4 +32,8 @@ class PostListsDestroyRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateAllRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateAllRequestV1Tests.swift index c013f44d..8cb2c288 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateAllRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateAllRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostListsMembersCreateAllRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostListsMembersCreateAllRequestV1Tests: XCTestCase { + public func test() throws { let req = PostListsMembersCreateAllRequestV1( list: .listID("lid"), users: .userIDs(["uid1", "uid2"]) @@ -24,4 +20,8 @@ class PostListsMembersCreateAllRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateRequestV1Tests.swift index 175dc273..b7ad0b32 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostListsMembersCreateRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostListsMembersCreateRequestV1Tests: XCTestCase { + public func test() throws { let req = PostListsMembersCreateRequestV1( list: .listID("lid"), user: .userID("uid") @@ -25,7 +21,7 @@ class PostListsMembersCreateRequestV1Tests: XCTestCase { ) } - func testScreenName() throws { + public func testScreenName() throws { let req = PostListsMembersCreateRequestV1( list: .slug(slug: "sl", owner: .screenName("osname")), user: .screenName("sname") @@ -40,4 +36,8 @@ class PostListsMembersCreateRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyAllRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyAllRequestV1Tests.swift index a55a9cac..354975b4 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyAllRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyAllRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostListsMembersDestroyAllRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostListsMembersDestroyAllRequestV1Tests: XCTestCase { + public func test() throws { let req = PostListsMembersDestroyAllRequestV1( list: .listID("lid"), users: .userIDs(["uid1", "uid2"]) @@ -25,7 +21,7 @@ class PostListsMembersDestroyAllRequestV1Tests: XCTestCase { ) } - func testScreenName() throws { + public func testScreenName() throws { let req = PostListsMembersDestroyAllRequestV1( list: .slug(slug: "sl", owner: .screenName("oname")), users: .screenNames(["s1", "s2"]) @@ -40,4 +36,8 @@ class PostListsMembersDestroyAllRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyRequestV1Tests.swift index 5f5068dd..5eb380fb 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostListsMembersDestroyRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostListsMembersDestroyRequestV1Tests: XCTestCase { + public func test() throws { let req = PostListsMembersDestroyRequestV1( list: .listID("lid"), user: .userID("uid") @@ -25,7 +21,7 @@ class PostListsMembersDestroyRequestV1Tests: XCTestCase { ) } - func testScreenName() throws { + public func testScreenName() throws { let req = PostListsMembersDestroyRequestV1( list: .slug(slug: "sl", owner: .screenName("sc")), user: .screenName("name") @@ -40,4 +36,8 @@ class PostListsMembersDestroyRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersCreateRequestV1Tests.swift index ee279e55..eda478c2 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersCreateRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostListsSubscribersCreateRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostListsSubscribersCreateRequestV1Tests: XCTestCase { + public func test() throws { let req = PostListsSubscribersCreateRequestV1( list: .listID("lid") ) @@ -23,7 +19,7 @@ class PostListsSubscribersCreateRequestV1Tests: XCTestCase { ) } - func testScreenName() throws { + public func testScreenName() throws { let req = PostListsSubscribersCreateRequestV1( list: .slug(slug: "sl", owner: .screenName("name")) ) @@ -36,4 +32,8 @@ class PostListsSubscribersCreateRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersDestroyRequestV1Tests.swift index c7795c9d..228afa28 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersDestroyRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostListsSubscribersDestroyRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostListsSubscribersDestroyRequestV1Tests: XCTestCase { + public func test() throws { let req = PostListsSubscribersDestroyRequestV1( list: .listID("lid") ) @@ -23,7 +19,7 @@ class PostListsSubscribersDestroyRequestV1Tests: XCTestCase { ) } - func testScreenName() throws { + public func testScreenName() throws { let req = PostListsSubscribersDestroyRequestV1( list: .slug(slug: "sl", owner: .screenName("name")) ) @@ -36,4 +32,8 @@ class PostListsSubscribersDestroyRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsUpdateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsUpdateRequestV1Tests.swift index e69b9727..6639b305 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsUpdateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsUpdateRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostListsUpdateRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostListsUpdateRequestV1Tests: XCTestCase { + public func test() throws { let req = PostListsUpdateRequestV1( list: .listID("lid"), name: "_n_", @@ -29,7 +25,7 @@ class PostListsUpdateRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostListsUpdateRequestV1( list: .slug(slug: "sl", owner: .screenName("name")) ) @@ -42,4 +38,8 @@ class PostListsUpdateRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/GetUploadMediaStatusRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/GetUploadMediaStatusRequestV1Tests.swift index a6d716f6..76af47d5 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/GetUploadMediaStatusRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/GetUploadMediaStatusRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetUploadMediaStatusRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetUploadMediaStatusRequestV1Tests: XCTestCase { + public func test() throws { let req = GetUploadMediaStatusRequestV1(mediaID: "m") XCTAssertEqual(req.method, .get) @@ -20,4 +16,8 @@ class GetUploadMediaStatusRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaMetadataCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaMetadataCreateRequestV1Tests.swift index 6a8b2a7b..7a7f69bd 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaMetadataCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaMetadataCreateRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostMediaMetadataCreateRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostMediaMetadataCreateRequestV1Tests: XCTestCase { + public func test() throws { let req = PostMediaMetadataCreateRequestV1( mediaID: "m", altText: "alt" @@ -24,4 +20,8 @@ class PostMediaMetadataCreateRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesCreateRequestV1Tests.swift index 64601bc4..bd9e7f62 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesCreateRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostMediaSubtitlesCreateRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostMediaSubtitlesCreateRequestV1Tests: XCTestCase { + public func test() throws { let req = PostMediaSubtitlesCreateRequestV1( mediaID: "mediaID", mediaCategory: "c", @@ -40,4 +36,8 @@ class PostMediaSubtitlesCreateRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesDeleteRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesDeleteRequestV1Tests.swift index 79fd322a..fc535533 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesDeleteRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesDeleteRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostMediaSubtitlesDeleteRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostMediaSubtitlesDeleteRequestV1Tests: XCTestCase { + public func test() throws { let req = PostMediaSubtitlesDeleteRequestV1( mediaID: "m", mediaCategory: "c", @@ -30,4 +26,8 @@ class PostMediaSubtitlesDeleteRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaAppendRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaAppendRequestV1Tests.swift index 4b9f06e8..25813a9a 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaAppendRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaAppendRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class UploadMediaAppendRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class UploadMediaAppendRequestV1Tests: XCTestCase { + public func test() throws { let data = Data() let req = UploadMediaAppendRequestV1( mediaID: "m", @@ -31,7 +27,7 @@ class UploadMediaAppendRequestV1Tests: XCTestCase { ) } - func testSegments() throws { + public func testSegments() throws { let data = Data([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]) let req = UploadMediaAppendRequestV1( @@ -62,7 +58,7 @@ class UploadMediaAppendRequestV1Tests: XCTestCase { XCTAssertEqual(reqs[3].segmentIndex, 3) } - func testSegumentsMiddle() throws { + public func testSegumentsMiddle() throws { // | 0 | 1 | 2 | 3 | 4 | 5 let data = Data([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]) @@ -94,4 +90,8 @@ class UploadMediaAppendRequestV1Tests: XCTestCase { XCTAssertEqual(reqs[3].media, Data([10])) XCTAssertEqual(reqs[3].segmentIndex, 5) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaFinalizeRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaFinalizeRequestV1Tests.swift index 6d1cdbc2..89c95183 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaFinalizeRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaFinalizeRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class UploadMediaFinalizeRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class UploadMediaFinalizeRequestV1Tests: XCTestCase { + public func test() throws { let req = UploadMediaFinalizeRequestV1(mediaID: "m") XCTAssertEqual(req.method, .post) @@ -21,4 +17,8 @@ class UploadMediaFinalizeRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaInitRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaInitRequestV1Tests.swift index cd2ac29a..8e219644 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaInitRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaInitRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class UploadMediaInitRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class UploadMediaInitRequestV1Tests: XCTestCase { + public func test() throws { let req = UploadMediaInitRequestV1( totalBytes: 10, mediaType: "image/jpg", @@ -29,4 +25,8 @@ class UploadMediaInitRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift index 0fbe428a..4e2c88ab 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift @@ -1,16 +1,14 @@ import TwitterAPIKit import XCTest -class UploadMediaUtilTests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws { +internal class UploadMediaUtilTests: XCTestCase { + override public func tearDownWithError() throws { MockURLProtocol.cleanup() } - func testWithProcessing() throws { + public func testWithProcessing() throws { let config = URLSessionConfiguration.default - config.protocolClasses = [MockURLProtocol.self] + config.protocolinternal classes = [MockURLProtocol.self] let client = TwitterAPIClient( .oauth10a(.init(consumerKey: "", consumerSecret: "", oauthToken: "", oauthTokenSecret: "")), @@ -117,9 +115,9 @@ class UploadMediaUtilTests: XCTestCase { wait(for: [exp], timeout: 10) } - func testInitError() throws { + public func testInitError() throws { let config = URLSessionConfiguration.default - config.protocolClasses = [MockURLProtocol.self] + config.protocolinternal classes = [MockURLProtocol.self] let client = TwitterAPIClient( .oauth10a(.init(consumerKey: "", consumerSecret: "", oauthToken: "", oauthTokenSecret: "")), @@ -175,9 +173,9 @@ class UploadMediaUtilTests: XCTestCase { wait(for: [exp], timeout: 10) } - func testAppendError() throws { + public func testAppendError() throws { let config = URLSessionConfiguration.default - config.protocolClasses = [MockURLProtocol.self] + config.protocolinternal classes = [MockURLProtocol.self] let client = TwitterAPIClient( .oauth10a(.init(consumerKey: "", consumerSecret: "", oauthToken: "", oauthTokenSecret: "")), @@ -245,9 +243,9 @@ class UploadMediaUtilTests: XCTestCase { wait(for: [exp], timeout: 10) } - func testFinalizeError() throws { + public func testFinalizeError() throws { let config = URLSessionConfiguration.default - config.protocolClasses = [MockURLProtocol.self] + config.protocolinternal classes = [MockURLProtocol.self] let client = TwitterAPIClient( .oauth10a(.init(consumerKey: "", consumerSecret: "", oauthToken: "", oauthTokenSecret: "")), @@ -316,9 +314,9 @@ class UploadMediaUtilTests: XCTestCase { wait(for: [exp], timeout: 10) } - func testWithProcessingError() throws { + public func testWithProcessingError() throws { let config = URLSessionConfiguration.default - config.protocolClasses = [MockURLProtocol.self] + config.protocolinternal classes = [MockURLProtocol.self] let client = TwitterAPIClient( .oauth10a(.init(consumerKey: "", consumerSecret: "", oauthToken: "", oauthTokenSecret: "")), @@ -426,9 +424,9 @@ class UploadMediaUtilTests: XCTestCase { wait(for: [exp], timeout: 10) } - func testWithoutProcessing() throws { + public func testWithoutProcessing() throws { let config = URLSessionConfiguration.default - config.protocolClasses = [MockURLProtocol.self] + config.protocolinternal classes = [MockURLProtocol.self] let client = TwitterAPIClient( .oauth10a(.init(consumerKey: "", consumerSecret: "", oauthToken: "", oauthTokenSecret: "")), @@ -495,4 +493,8 @@ class UploadMediaUtilTests: XCTestCase { wait(for: [exp], timeout: 10) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetersRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetersRequestV1Tests.swift index b5758d5d..82490d08 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetersRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetersRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetRetweetersRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetRetweetersRequestV1Tests: XCTestCase { + public func test() throws { let req = GetRetweetersRequestV1( id: "_i_", count: 100, @@ -29,7 +25,7 @@ class GetRetweetersRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetRetweetersRequestV1( id: "_i_" ) @@ -41,4 +37,8 @@ class GetRetweetersRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsOfMeRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsOfMeRequestV1Tests.swift index b35215df..1997e58f 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsOfMeRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsOfMeRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetRetweetsOfMeRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetRetweetsOfMeRequestV1Tests: XCTestCase { + public func test() throws { let req = GetRetweetsOfMeRequestV1( count: 10, sinceID: "_s_", @@ -33,7 +29,7 @@ class GetRetweetsOfMeRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetRetweetsOfMeRequestV1() AssertEqualAnyDict( @@ -41,4 +37,8 @@ class GetRetweetsOfMeRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsRequestV1Tests.swift index 2cc43848..3327f3b3 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetRetweetsRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetRetweetsRequestV1Tests: XCTestCase { + public func test() throws { let req = GetRetweetsRequestV1( id: "_i_", count: 12, @@ -26,7 +22,7 @@ class GetRetweetsRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetRetweetsRequestV1( id: "_i_" ) @@ -36,4 +32,8 @@ class GetRetweetsRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Retweet/PostRetweetRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Retweet/PostRetweetRequestV1Tests.swift index 78d1ef2a..27af3d9f 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Retweet/PostRetweetRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Retweet/PostRetweetRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostRetweetRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostRetweetRequestV1Tests: XCTestCase { + public func test() throws { let req = PostRetweetRequestV1( id: "_i_", trimUser: true @@ -24,7 +20,7 @@ class PostRetweetRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostRetweetRequestV1( id: "_i_" ) @@ -34,4 +30,8 @@ class PostRetweetRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Retweet/PostUnRetweetRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Retweet/PostUnRetweetRequestV1Tests.swift index 674723e8..d20db2f2 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Retweet/PostUnRetweetRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Retweet/PostUnRetweetRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostUnRetweetRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostUnRetweetRequestV1Tests: XCTestCase { + public func test() throws { let req = PostUnRetweetRequestV1( id: "_i_", trimUser: true @@ -24,7 +20,7 @@ class PostUnRetweetRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostUnRetweetRequestV1( id: "_i_" ) @@ -34,4 +30,8 @@ class PostUnRetweetRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Search/GetSavedSearchesListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Search/GetSavedSearchesListRequestV1Tests.swift index 4109bea0..3945fe68 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Search/GetSavedSearchesListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Search/GetSavedSearchesListRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetSavedSearchesListRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetSavedSearchesListRequestV1Tests: XCTestCase { + public func test() throws { let req = GetSavedSearchesListRequestV1() XCTAssertEqual(req.method, .get) @@ -18,4 +14,8 @@ class GetSavedSearchesListRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Search/GetSearchTweetsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Search/GetSearchTweetsRequestV1Tests.swift index 308ab8f2..97e92a04 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Search/GetSearchTweetsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Search/GetSearchTweetsRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetSearchTweetsRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetSearchTweetsRequestV1Tests: XCTestCase { + public func test() throws { let req = GetSearchTweetsRequestV1( q: "あああ", lang: "lang", @@ -40,7 +36,7 @@ class GetSearchTweetsRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetSearchTweetsRequestV1( q: "_q_" ) @@ -52,4 +48,8 @@ class GetSearchTweetsRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesCreateRequestV1Tests.swift index 33608d4a..d812c7e9 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesCreateRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostSavedSearchesCreateRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostSavedSearchesCreateRequestV1Tests: XCTestCase { + public func test() throws { let req = PostSavedSearchesCreateRequestV1( query: "_q_" ) @@ -22,4 +18,8 @@ class PostSavedSearchesCreateRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesDestroyRequestV1Tests.swift index 95e647f9..91fcf2f5 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesDestroyRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostSavedSearchesDestroyRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostSavedSearchesDestroyRequestV1Tests: XCTestCase { + public func test() throws { let req = PostSavedSearchesDestroyRequestV1( id: "_i_" ) @@ -20,4 +16,8 @@ class PostSavedSearchesDestroyRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesHomeTimelineRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesHomeTimelineRequestV1Tests.swift index e43dfd6f..c5a32b28 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesHomeTimelineRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesHomeTimelineRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetStatusesHomeTimelineRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetStatusesHomeTimelineRequestV1Tests: XCTestCase { + public func test() throws { let req = GetStatusesHomeTimelineRequestV1( count: 11, maxID: "_m_", @@ -33,7 +29,7 @@ class GetStatusesHomeTimelineRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetStatusesHomeTimelineRequestV1() AssertEqualAnyDict( @@ -41,4 +37,8 @@ class GetStatusesHomeTimelineRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesMentionsTimelineRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesMentionsTimelineRequestV1Tests.swift index fcdf8609..a13e2543 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesMentionsTimelineRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesMentionsTimelineRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetStatusesMentionsTimelineRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetStatusesMentionsTimelineRequestV1Tests: XCTestCase { + public func test() throws { let req = GetStatusesMentionsTimelineRequestV1( count: 100, maxID: "_m_", @@ -31,7 +27,7 @@ class GetStatusesMentionsTimelineRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetStatusesMentionsTimelineRequestV1() AssertEqualAnyDict( @@ -39,4 +35,8 @@ class GetStatusesMentionsTimelineRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesUserTimelineRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesUserTimelineRequestV1Tests.swift index a8c35663..0cc4e757 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesUserTimelineRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesUserTimelineRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetStatusesUserTimelineRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetStatusesUserTimelineRequestV1Tests: XCTestCase { + public func test() throws { let req = GetStatusesUserTimelineRequestV1( user: .userID("uid"), count: 12, @@ -35,7 +31,7 @@ class GetStatusesUserTimelineRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetStatusesUserTimelineRequestV1( user: .screenName("s") ) @@ -47,4 +43,8 @@ class GetStatusesUserTimelineRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsAvailableRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsAvailableRequestV1Tests.swift index a99ee5a1..489f118f 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsAvailableRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsAvailableRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetTrendsAvailableRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetTrendsAvailableRequestV1Tests: XCTestCase { + public func test() throws { let req = GetTrendsAvailableRequestV1() XCTAssertEqual(req.method, .get) @@ -18,4 +14,8 @@ class GetTrendsAvailableRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsClosestRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsClosestRequestV1Tests.swift index 907c3fad..f61ac6ed 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsClosestRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsClosestRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetTrendsClosestRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetTrendsClosestRequestV1Tests: XCTestCase { + public func test() throws { let req = GetTrendsClosestRequestV1( location: TwitterCoordinateV1(lat: 37.7, long: -122.4) ) @@ -23,4 +19,8 @@ class GetTrendsClosestRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsPlaceRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsPlaceRequestV1Tests.swift index e6dfbf4a..ee1937f8 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsPlaceRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsPlaceRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetTrendsPlaceRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetTrendsPlaceRequestV1Tests: XCTestCase { + public func test() throws { let req = GetTrendsPlaceRequestV1( woeid: "_w_", exclude: true @@ -25,7 +21,7 @@ class GetTrendsPlaceRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetTrendsPlaceRequestV1( woeid: "_w_" ) @@ -37,4 +33,8 @@ class GetTrendsPlaceRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesLookupRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesLookupRequestV1Tests.swift index 26c620bd..0f96d3ee 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesLookupRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesLookupRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetStatusesLookupRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetStatusesLookupRequestV1Tests: XCTestCase { + public func test() throws { let req = GetStatusesLookupRequestV1( ids: ["a", "b"], map: true, @@ -33,7 +29,7 @@ class GetStatusesLookupRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetStatusesLookupRequestV1( ids: ["a"] ) @@ -45,4 +41,8 @@ class GetStatusesLookupRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesShowRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesShowRequestV1Tests.swift index 993c05c1..665fa8db 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesShowRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesShowRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetStatusesShowRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetStatusesShowRequestV1Tests: XCTestCase { + public func test() throws { let req = GetStatusesShowRequestV1( id: "_i_", trimUser: true, @@ -33,7 +29,7 @@ class GetStatusesShowRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetStatusesShowRequestV1( id: "_i_" ) @@ -45,4 +41,8 @@ class GetStatusesShowRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesDestroyRequestV1Tests.swift index 2500b7fb..f66007f9 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesDestroyRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostStatusesDestroyRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostStatusesDestroyRequestV1Tests: XCTestCase { + public func test() throws { let req = PostStatusesDestroyRequestV1( id: "_i_", trimUser: true @@ -24,7 +20,7 @@ class PostStatusesDestroyRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostStatusesDestroyRequestV1( id: "_i_" ) @@ -34,4 +30,8 @@ class PostStatusesDestroyRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesUpdateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesUpdateRequestV1Tests.swift index 788929ea..d5c27b99 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesUpdateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesUpdateRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostStatusesUpdateRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostStatusesUpdateRequestV1Tests: XCTestCase { + public func test() throws { let req = PostStatusesUpdateRequestV1( status: "_s_", inReplyToStatusID: "_i_", @@ -50,7 +46,7 @@ class PostStatusesUpdateRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostStatusesUpdateRequestV1( status: "_s_" ) @@ -62,4 +58,8 @@ class PostStatusesUpdateRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersLookupRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersLookupRequestV1Tests.swift index 6a932a76..87664329 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersLookupRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersLookupRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetUsersLookupRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetUsersLookupRequestV1Tests: XCTestCase { + public func test() throws { let req = GetUsersLookupRequestV1( users: .userIDs(["uid1", "uid2"]), tweetMode: true, @@ -27,7 +23,7 @@ class GetUsersLookupRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetUsersLookupRequestV1( users: .screenNames(["s1", "s2"]) ) @@ -39,4 +35,8 @@ class GetUsersLookupRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersProfileBannerRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersProfileBannerRequestV1Tests.swift index 4bccd501..d59a13f7 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersProfileBannerRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersProfileBannerRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetUsersProfileBannerRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetUsersProfileBannerRequestV1Tests: XCTestCase { + public func test() throws { let req = GetUsersProfileBannerRequestV1( user: .userID("uid") ) @@ -23,7 +19,7 @@ class GetUsersProfileBannerRequestV1Tests: XCTestCase { ) } - func testScreenName() throws { + public func testScreenName() throws { let req = GetUsersProfileBannerRequestV1( user: .screenName("s") ) @@ -39,4 +35,8 @@ class GetUsersProfileBannerRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersSearchRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersSearchRequestV1Tests.swift index e5f381bf..dde8139a 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersSearchRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersSearchRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetUsersSearchRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetUsersSearchRequestV1Tests: XCTestCase { + public func test() throws { let req = GetUsersSearchRequestV1( q: "_q_", page: 11, @@ -29,7 +25,7 @@ class GetUsersSearchRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetUsersSearchRequestV1( q: "qq" ) @@ -41,4 +37,8 @@ class GetUsersSearchRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersShowRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersShowRequestV1Tests.swift index 892f2c1b..60db90f2 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersShowRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersShowRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetUsersShowRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetUsersShowRequestV1Tests: XCTestCase { + public func test() throws { let req = GetUsersShowRequestV1( user: .userID("uid"), includeEntities: true @@ -25,7 +21,7 @@ class GetUsersShowRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetUsersShowRequestV1( user: .screenName("s") ) @@ -37,4 +33,8 @@ class GetUsersShowRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersBlockingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersBlockingRequestV2Tests.swift index 85e3b470..ebde9ab1 100644 --- a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersBlockingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersBlockingRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class DeleteUsersBlockingRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class DeleteUsersBlockingRequestV2Tests: XCTestCase { + public func test() throws { let req = DeleteUsersBlockingRequestV2( sourceUserID: "_sourceUserID_", targetUserID: "_targetUserID_" @@ -18,4 +14,8 @@ class DeleteUsersBlockingRequestV2Tests: XCTestCase { XCTAssertEqual(req.bodyContentType, .wwwFormUrlEncoded) AssertEqualAnyDict(req.parameters, [:]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersMutingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersMutingRequestV2Tests.swift index ec3f82d5..96f5e42d 100644 --- a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersMutingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersMutingRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class DeleteUsersMutingRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class DeleteUsersMutingRequestV2Tests: XCTestCase { + public func test() throws { let req = DeleteUsersMutingRequestV2( sourceUserID: "_sourceUserID_", targetUserID: "_targetUserID_" @@ -18,4 +14,8 @@ class DeleteUsersMutingRequestV2Tests: XCTestCase { XCTAssertEqual(req.bodyContentType, .wwwFormUrlEncoded) AssertEqualAnyDict(req.parameters, [:]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersBlockingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersBlockingRequestV2Tests.swift index 3627251f..55839947 100644 --- a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersBlockingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersBlockingRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetUsersBlockingRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetUsersBlockingRequestV2Tests: XCTestCase { + public func test() throws { let req = GetUsersBlockingRequestV2( id: "_id_", expansions: [.pinnedTweetID], @@ -32,11 +28,15 @@ class GetUsersBlockingRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetUsersBlockingRequestV2( id: "_id_" ) AssertEqualAnyDict(req.parameters, [:]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersMutingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersMutingRequestV2Tests.swift index e45baeee..0a2a5301 100644 --- a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersMutingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersMutingRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetUsersMutingRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetUsersMutingRequestV2Tests: XCTestCase { + public func test() throws { let req = GetUsersMutingRequestV2( id: "_id_", expansions: [.pinnedTweetID], @@ -32,11 +28,15 @@ class GetUsersMutingRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetUsersMutingRequestV2( id: "_id_" ) AssertEqualAnyDict(req.parameters, [:]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersBlockingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersBlockingRequestV2Tests.swift index 54a71a85..ccd7a232 100644 --- a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersBlockingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersBlockingRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostUsersBlockingRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostUsersBlockingRequestV2Tests: XCTestCase { + public func test() throws { let req = PostUsersBlockingRequestV2( id: "_id_", targetUserID: "_targetUserID_" @@ -23,4 +19,8 @@ class PostUsersBlockingRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersMutingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersMutingRequestV2Tests.swift index 6f0423c0..bf6f5441 100644 --- a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersMutingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersMutingRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostUsersMutingRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostUsersMutingRequestV2Tests: XCTestCase { + public func test() throws { let req = PostUsersMutingRequestV2( id: "_id_", targetUserID: "_targetUserID_" @@ -23,4 +19,8 @@ class PostUsersMutingRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Bookmarks/DeleteUsersBookmarksRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Bookmarks/DeleteUsersBookmarksRequestV2Tests.swift index 8b239b8f..67ca72bb 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Bookmarks/DeleteUsersBookmarksRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Bookmarks/DeleteUsersBookmarksRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class DeleteUsersBookmarksRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class DeleteUsersBookmarksRequestV2Tests: XCTestCase { + public func test() throws { let req = DeleteUsersBookmarksRequestV2( id: "_i_", tweetID: "_t_" @@ -21,4 +17,8 @@ class DeleteUsersBookmarksRequestV2Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Bookmarks/GetUsersBookmarksRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Bookmarks/GetUsersBookmarksRequestV2Tests.swift index 739b0e17..db8db44f 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Bookmarks/GetUsersBookmarksRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Bookmarks/GetUsersBookmarksRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetUsersBookmarksRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetUsersBookmarksRequestV2Tests: XCTestCase { + public func test() throws { let req = GetUsersBookmarksRequestV2( id: "_i_", expansions: [.authorID], @@ -38,7 +34,7 @@ class GetUsersBookmarksRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetUsersBookmarksRequestV2( id: "_i_" ) @@ -48,4 +44,8 @@ class GetUsersBookmarksRequestV2Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Bookmarks/PostUsersBookmarksRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Bookmarks/PostUsersBookmarksRequestV2Tests.swift index 02261569..67b78c3d 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Bookmarks/PostUsersBookmarksRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Bookmarks/PostUsersBookmarksRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostUsersBookmarksRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostUsersBookmarksRequestV2Tests: XCTestCase { + public func test() throws { let req = PostUsersBookmarksRequestV2( id: "_i_", tweetID: "_t_" @@ -23,4 +19,8 @@ class PostUsersBookmarksRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobRequestV2Tests.swift index 7f9eba8b..4041f568 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetComplianceJobRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetComplianceJobRequestV2Tests: XCTestCase { + public func test() throws { let req = GetComplianceJobRequestV2( id: 1 ) @@ -17,4 +13,8 @@ class GetComplianceJobRequestV2Tests: XCTestCase { XCTAssertEqual(req.bodyContentType, .wwwFormUrlEncoded) AssertEqualAnyDict(req.parameters, [:]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobsRequestV2Tests.swift index bef2b1ba..b68d8b22 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetComplianceJobsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetComplianceJobsRequestV2Tests: XCTestCase { + public func test() throws { let req = GetComplianceJobsRequestV2( type: .tweets, status: .complete @@ -25,7 +21,7 @@ class GetComplianceJobsRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetComplianceJobsRequestV2( type: .users ) @@ -37,4 +33,8 @@ class GetComplianceJobsRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Compliance/PostComplianceJobsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Compliance/PostComplianceJobsRequestV2Tests.swift index 7c7e61c7..10ff38d4 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Compliance/PostComplianceJobsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Compliance/PostComplianceJobsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostComplianceJobsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostComplianceJobsRequestV2Tests: XCTestCase { + public func test() throws { let req = PostComplianceJobsRequestV2( type: .tweets, name: "n", @@ -27,7 +23,7 @@ class PostComplianceJobsRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostComplianceJobsRequestV2( type: .users ) @@ -39,4 +35,8 @@ class PostComplianceJobsRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsIdDmEventsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsIdDmEventsRequestV2Tests.swift index b22ceac4..09fd67d6 100644 --- a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsIdDmEventsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsIdDmEventsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetDmConversationsIdDmEventsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetDmConversationsIdDmEventsRequestV2Tests: XCTestCase { + public func test() throws { let req = GetDmConversationsIdDmEventsRequestV2( id: "_i_", maxResults: 11, @@ -38,7 +34,7 @@ class GetDmConversationsIdDmEventsRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetDmConversationsIdDmEventsRequestV2( id: "i" ) @@ -48,4 +44,8 @@ class GetDmConversationsIdDmEventsRequestV2Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsWithParticipantIdDmEventsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsWithParticipantIdDmEventsRequestV2Tests.swift index d60387a2..122637d0 100644 --- a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsWithParticipantIdDmEventsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsWithParticipantIdDmEventsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetDmConversationsWithParticipantIdDmEventsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetDmConversationsWithParticipantIdDmEventsRequestV2Tests: XCTestCase { + public func test() throws { let req = GetDmConversationsWithParticipantIdDmEventsRequestV2( participantID: "_p_id", maxResults: 12, @@ -38,7 +34,7 @@ class GetDmConversationsWithParticipantIdDmEventsRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetDmConversationsWithParticipantIdDmEventsRequestV2( participantID: "p" ) @@ -49,4 +45,8 @@ class GetDmConversationsWithParticipantIdDmEventsRequestV2Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmEventsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmEventsRequestV2Tests.swift index 6d1c3d1f..3f0ebe25 100644 --- a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmEventsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmEventsRequestV2Tests.swift @@ -2,11 +2,7 @@ import TwitterAPIKit import XCTest class GetDmEventsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { + public func test() throws { let req = GetDmEventsRequestV2( maxResults: 10, paginationToken: "_p_", @@ -36,4 +32,8 @@ class GetDmEventsRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationByIdRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationByIdRequestV2Tests.swift index 5c51e874..55ad826b 100644 --- a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationByIdRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationByIdRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostDmConversationByIdRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal internal class PostDmConversationByIdRequestV2Tests: XCTestCase { + public public func test() throws { let req = PostDmConversationByIdRequestV2( dmConversationID: "_d_id", attachments: ["1", "2"], @@ -26,7 +22,7 @@ class PostDmConversationByIdRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public public func testDefaultArg() throws { let req = PostDmConversationByIdRequestV2( dmConversationID: "_d_" ) @@ -37,4 +33,9 @@ class PostDmConversationByIdRequestV2Tests: XCTestCase { [:] ) } -} + + deinit { + // De-init Logic Here + } + + deinit { \ No newline at end of file diff --git a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationRequestV2Tests.swift index ce982906..578bb650 100644 --- a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostDmConversationRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostDmConversationRequestV2Tests: XCTestCase { + public func test() throws { let req = PostDmConversationRequestV2( conversationType: .group, participantIDs: ["a", "b"], @@ -31,7 +27,7 @@ class PostDmConversationRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostDmConversationRequestV2( conversationType: .group, participantIDs: ["a", "b", "c"] @@ -46,4 +42,8 @@ class PostDmConversationRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationWithUserRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationWithUserRequestV2Tests.swift index f2ec9dad..1f2c5fd9 100644 --- a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationWithUserRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationWithUserRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostDmConversationWithUserRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostDmConversationWithUserRequestV2Tests: XCTestCase { + public func test() throws { let req = PostDmConversationWithUserRequestV2( participantID: "_p_", attachments: ["10"], @@ -26,7 +22,7 @@ class PostDmConversationWithUserRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostDmConversationWithUserRequestV2( participantID: "_p_id" ) @@ -37,4 +33,8 @@ class PostDmConversationWithUserRequestV2Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/ExpansionsV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/ExpansionsV2Tests.swift index fb2f8525..fcd271c5 100644 --- a/Tests/TwitterAPIKitTests/APIv2/ExpansionsV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/ExpansionsV2Tests.swift @@ -2,12 +2,8 @@ import XCTest @testable import TwitterAPIKit -class ExpansionsV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func testTwitterTweetExpansionsV2() throws { +internal class ExpansionsV2Tests: XCTestCase { + public func testTwitterTweetExpansionsV2() throws { let allCases: [TwitterTweetExpansionsV2] = [ .attachmentsPollIDs, .attachmentsMediaKeys, @@ -27,11 +23,11 @@ class ExpansionsV2Tests: XCTestCase { ) } - func testTwitterTweetExpansionsV2All() throws { + public func testTwitterTweetExpansionsV2All() throws { XCTAssertEqual(TwitterTweetExpansionsV2.all.count, 8) } - func testTwitterUserExpansionsV2() throws { + public func testTwitterUserExpansionsV2() throws { let allCases: [TwitterUserExpansionsV2] = [ .pinnedTweetID, .other("~~~"), @@ -44,11 +40,11 @@ class ExpansionsV2Tests: XCTestCase { ) } - func testTwitterUserExpansionsV2All() throws { + public func testTwitterUserExpansionsV2All() throws { XCTAssertEqual(TwitterUserExpansionsV2.all.count, 1) } - func testTwitterListExpansionsV2() throws { + public func testTwitterListExpansionsV2() throws { let allCases: [TwitterListExpansionsV2] = [ .ownerID, .other("~~~"), @@ -61,11 +57,11 @@ class ExpansionsV2Tests: XCTestCase { ) } - func testTwitterListExpansionsV2All() throws { + public func testTwitterListExpansionsV2All() throws { XCTAssertEqual(TwitterListExpansionsV2.all.count, 1) } - func testTwitterSpaceExpansionsV2() throws { + public func testTwitterSpaceExpansionsV2() throws { let allCases: [TwitterSpaceExpansionsV2] = [ .invitedUserIDs, .speakerIDs, @@ -82,11 +78,11 @@ class ExpansionsV2Tests: XCTestCase { ) } - func testTwitterSpaceExpansionsV2All() throws { + public func testTwitterSpaceExpansionsV2All() throws { XCTAssertEqual(TwitterSpaceExpansionsV2.all.count, 5) } - func testTwitterDmEventExpansionsV2() throws { + public func testTwitterDmEventExpansionsV2() throws { let allCases: [TwitterDmEventExpansionsV2] = [ .attachmentsMediaKeys, .participantIDs, @@ -102,7 +98,11 @@ class ExpansionsV2Tests: XCTestCase { ) } - func testTwitterDmEventExpansionsV2All() throws { + public func testTwitterDmEventExpansionsV2All() throws { XCTAssertEqual(TwitterDmEventExpansionsV2.all.count, 4) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/FieldsV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/FieldsV2Tests.swift index 25ac9cab..6328b064 100644 --- a/Tests/TwitterAPIKitTests/APIv2/FieldsV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/FieldsV2Tests.swift @@ -2,12 +2,8 @@ import XCTest @testable import TwitterAPIKit -class FieldsV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func testTwitterTweetFieldsV2() throws { +internal class FieldsV2Tests: XCTestCase { + public func testTwitterTweetFieldsV2() throws { let allCases: [TwitterTweetFieldsV2] = [ .attachments, .authorID, @@ -39,11 +35,11 @@ class FieldsV2Tests: XCTestCase { ) } - func testTwitterTweetFieldsV2All() throws { + public func testTwitterTweetFieldsV2All() throws { XCTAssertEqual(TwitterTweetFieldsV2.all.count, 20) } - func testTwitterUserFieldsV2() throws { + public func testTwitterUserFieldsV2() throws { let allCases: [TwitterUserFieldsV2] = [ .createdAt, .description, @@ -69,11 +65,11 @@ class FieldsV2Tests: XCTestCase { ) } - func testTwitterUserFieldsV2All() throws { + public func testTwitterUserFieldsV2All() throws { XCTAssertEqual(TwitterUserFieldsV2.all.count, 14) } - func testTwitterPlaceFieldsV2() throws { + public func testTwitterPlaceFieldsV2() throws { let allCases: [TwitterPlaceFieldsV2] = [ .containedWithin, .country, @@ -93,11 +89,11 @@ class FieldsV2Tests: XCTestCase { ) } - func testTwitterPlaceFieldsV2All() throws { + public func testTwitterPlaceFieldsV2All() throws { XCTAssertEqual(TwitterPlaceFieldsV2.all.count, 8) } - func testTwitterPollFieldsV2() throws { + public func testTwitterPollFieldsV2() throws { let allCases: [TwitterPollFieldsV2] = [ .durationMinutes, .endDatetime, @@ -114,11 +110,11 @@ class FieldsV2Tests: XCTestCase { ) } - func testTwitterPollFieldsV2All() throws { + public func testTwitterPollFieldsV2All() throws { XCTAssertEqual(TwitterPollFieldsV2.all.count, 5) } - func testTwitterMediaFieldsV2() throws { + public func testTwitterMediaFieldsV2() throws { let allCases: [TwitterMediaFieldsV2] = [ .durationMs, .height, @@ -146,11 +142,11 @@ class FieldsV2Tests: XCTestCase { ) } - func testTwitterMediaFieldsV2All() throws { + public func testTwitterMediaFieldsV2All() throws { XCTAssertEqual(TwitterMediaFieldsV2.all.count, 13) } - func testTwitterListFieldsV2() throws { + public func testTwitterListFieldsV2() throws { let allCases: [TwitterListFieldsV2] = [ .createdAt, .followerCount, @@ -170,11 +166,11 @@ class FieldsV2Tests: XCTestCase { ) } - func testTwitterListFieldsV2All() throws { + public func testTwitterListFieldsV2All() throws { XCTAssertEqual(TwitterListFieldsV2.all.count, 8) } - func testTwitterSpaceFieldsV2() throws { + public func testTwitterSpaceFieldsV2() throws { let allCases: [TwitterSpaceFieldsV2] = [ .id, .state, @@ -203,11 +199,11 @@ class FieldsV2Tests: XCTestCase { ) } - func testTwitterSpaceFieldsV2All() throws { + public func testTwitterSpaceFieldsV2All() throws { XCTAssertEqual(TwitterSpaceFieldsV2.all.count, 17) } - func testTwitterTopicFieldsV2() throws { + public func testTwitterTopicFieldsV2() throws { let allCases: [TwitterTopicFieldsV2] = [ .id, .name, @@ -222,11 +218,11 @@ class FieldsV2Tests: XCTestCase { ) } - func testTwitterTopicFieldsV2All() throws { + public func testTwitterTopicFieldsV2All() throws { XCTAssertEqual(TwitterTopicFieldsV2.all.count, 3) } - func testTwitterDmEventFieldsV2() throws { + public func testTwitterDmEventFieldsV2() throws { let allCases: [TwitterDmEventFieldsV2] = [ .attachments, .createdAt, @@ -246,11 +242,11 @@ class FieldsV2Tests: XCTestCase { ) } - func testTwitterDmEventFieldsV2All() throws { + public func testTwitterDmEventFieldsV2All() throws { XCTAssertEqual(TwitterDmEventFieldsV2.all.count, 9) } - func testTwitterDmConversationFieldsV2() throws { + public func testTwitterDmConversationFieldsV2() throws { let allCases: [TwitterDmConversationFieldsV2] = [ .id, .other("~"), @@ -258,7 +254,11 @@ class FieldsV2Tests: XCTestCase { XCTAssertEqual(allCases.commaSeparatedString, "id,~") } - func testTwitterDmConversationFieldsV2All() throws { + public func testTwitterDmConversationFieldsV2All() throws { XCTAssertEqual(TwitterDmConversationFieldsV2.all.count, 1) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Friendships/DeleteUsersFollowingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Friendships/DeleteUsersFollowingRequestV2Tests.swift index 2b8a4f0d..7e196b48 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Friendships/DeleteUsersFollowingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Friendships/DeleteUsersFollowingRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class DeleteUsersFollowingRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class DeleteUsersFollowingRequestV2Tests: XCTestCase { + public func test() throws { let req = DeleteUsersFollowingRequestV2( sourceUserID: "_sourceUserID_", targetUserID: "_targetUserID_" @@ -18,4 +14,8 @@ class DeleteUsersFollowingRequestV2Tests: XCTestCase { XCTAssertEqual(req.bodyContentType, .wwwFormUrlEncoded) AssertEqualAnyDict(req.parameters, [:]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowersRequestV2Tests.swift index c25fd455..ac66a923 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowersRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetUsersFollowersRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetUsersFollowersRequestV2Tests: XCTestCase { + public func test() throws { let req = GetUsersFollowersRequestV2( id: "_id_", expansions: [.pinnedTweetID], @@ -32,11 +28,15 @@ class GetUsersFollowersRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetUsersFollowersRequestV2( id: "_id_" ) AssertEqualAnyDict(req.parameters, [:]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowingRequestV2Tests.swift index 8bc31201..e077c014 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowingRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetUsersFollowingRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetUsersFollowingRequestV2Tests: XCTestCase { + public func test() throws { let req = GetUsersFollowingRequestV2( id: "_id_", expansions: [.pinnedTweetID], @@ -32,11 +28,15 @@ class GetUsersFollowingRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetUsersFollowingRequestV2( id: "_id_" ) AssertEqualAnyDict(req.parameters, [:]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Friendships/PostUsersFollowingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Friendships/PostUsersFollowingRequestV2Tests.swift index 23d2a9f0..2c92f833 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Friendships/PostUsersFollowingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Friendships/PostUsersFollowingRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostUsersFollowingRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostUsersFollowingRequestV2Tests: XCTestCase { + public func test() throws { let req = PostUsersFollowingRequestV2( id: "_id_", targetUserID: "_targetUserID_" @@ -18,4 +14,8 @@ class PostUsersFollowingRequestV2Tests: XCTestCase { XCTAssertEqual(req.bodyContentType, .json) AssertEqualAnyDict(req.parameters, ["target_user_id": "_targetUserID_"]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Like/DeleteUsersLikesRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Like/DeleteUsersLikesRequestV2Tests.swift index 7c1a8e92..4f9568c8 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Like/DeleteUsersLikesRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Like/DeleteUsersLikesRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class DeleteUsersLikesRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class DeleteUsersLikesRequestV2Tests: XCTestCase { + public func test() throws { let req = DeleteUsersLikesRequestV2( id: "_id_", tweetID: "_tweetID_" @@ -21,4 +17,8 @@ class DeleteUsersLikesRequestV2Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Like/GetTweetsLikingUsersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Like/GetTweetsLikingUsersRequestV2Tests.swift index 83c58af9..22c0dfb8 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Like/GetTweetsLikingUsersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Like/GetTweetsLikingUsersRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetTweetsLikingUsersRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetTweetsLikingUsersRequestV2Tests: XCTestCase { + public func test() throws { let req = GetTweetsLikingUsersRequestV2( id: "_id_", expansions: [.pinnedTweetID], @@ -38,7 +34,7 @@ class GetTweetsLikingUsersRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetTweetsLikingUsersRequestV2( id: "_id_" ) @@ -48,4 +44,8 @@ class GetTweetsLikingUsersRequestV2Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Like/GetUsersLikedTweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Like/GetUsersLikedTweetsRequestV2Tests.swift index f84e7a39..d0b9bae6 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Like/GetUsersLikedTweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Like/GetUsersLikedTweetsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetUsersLikedTweetsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetUsersLikedTweetsRequestV2Tests: XCTestCase { + public func test() throws { let req = GetUsersLikedTweetsRequestV2( id: "_id_", expansions: [.authorID], @@ -38,7 +34,7 @@ class GetUsersLikedTweetsRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetUsersLikedTweetsRequestV2( id: "_id_" ) @@ -48,4 +44,8 @@ class GetUsersLikedTweetsRequestV2Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Like/PostUsersLikesRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Like/PostUsersLikesRequestV2Tests.swift index f570df00..c78df7d1 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Like/PostUsersLikesRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Like/PostUsersLikesRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostUsersLikesRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostUsersLikesRequestV2Tests: XCTestCase { + public func test() throws { let req = PostUsersLikesRequestV2( id: "_id_", tweetID: "_tweetID_" @@ -23,4 +19,8 @@ class PostUsersLikesRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/List/DeleteListRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/DeleteListRequestV2Tests.swift index c79ce6b3..bcd06446 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/DeleteListRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/DeleteListRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class DeleteListRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class DeleteListRequestV2Tests: XCTestCase { + public func test() throws { let req = DeleteListRequestV2( id: "_id_" ) @@ -17,4 +13,8 @@ class DeleteListRequestV2Tests: XCTestCase { XCTAssertEqual(req.bodyContentType, .wwwFormUrlEncoded) AssertEqualAnyDict(req.parameters, [:]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/List/DeleteListsMembersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/DeleteListsMembersRequestV2Tests.swift index 7c77fcfc..57126fb6 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/DeleteListsMembersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/DeleteListsMembersRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class DeleteListsMembersRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class DeleteListsMembersRequestV2Tests: XCTestCase { + public func test() throws { let req = DeleteListsMembersRequestV2( id: "_id_", userID: "_userID_" @@ -18,4 +14,8 @@ class DeleteListsMembersRequestV2Tests: XCTestCase { XCTAssertEqual(req.bodyContentType, .wwwFormUrlEncoded) AssertEqualAnyDict(req.parameters, [:]) } -} + + deinit { + // De-init Logic Here + } +} \ No newline at end of file diff --git a/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersFollowedListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersFollowedListsRequestV2Tests.swift index 2e43fa81..eac74e27 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersFollowedListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersFollowedListsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class DeleteUsersFollowedListsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class DeleteUsersFollowedListsRequestV2Tests: XCTestCase { + public func test() throws { let req = DeleteUsersFollowedListsRequestV2( id: "_id_", listID: "_listID_" @@ -18,4 +14,8 @@ class DeleteUsersFollowedListsRequestV2Tests: XCTestCase { XCTAssertEqual(req.bodyContentType, .wwwFormUrlEncoded) AssertEqualAnyDict(req.parameters, [:]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersPinnedListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersPinnedListsRequestV2Tests.swift index c6d1ed99..97f15d20 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersPinnedListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersPinnedListsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class DeleteUsersPinnedListsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class DeleteUsersPinnedListsRequestV2Tests: XCTestCase { + public func test() throws { let req = DeleteUsersPinnedListsRequestV2( id: "_id_", listID: "_listID_" @@ -18,4 +14,8 @@ class DeleteUsersPinnedListsRequestV2Tests: XCTestCase { XCTAssertEqual(req.bodyContentType, .wwwFormUrlEncoded) AssertEqualAnyDict(req.parameters, [:]) } -} + + deinit { + // De-init Logic Here + } +} \ No newline at end of file diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetListRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetListRequestV2Tests.swift index afbb39db..7415eaeb 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetListRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetListRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetListRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetListRequestV2Tests: XCTestCase { + public func test() throws { let req = GetListRequestV2( id: "_id_", expansions: [.ownerID], @@ -28,11 +24,15 @@ class GetListRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetListRequestV2( id: "_id_" ) AssertEqualAnyDict(req.parameters, [:]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetListsFollowersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetListsFollowersRequestV2Tests.swift index 5ef73c15..5991e886 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetListsFollowersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetListsFollowersRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetListsFollowersRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetListsFollowersRequestV2Tests: XCTestCase { + public func test() throws { let req = GetListsFollowersRequestV2( id: "_id_", expansions: [.pinnedTweetID], @@ -32,11 +28,15 @@ class GetListsFollowersRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetListsFollowersRequestV2( id: "_id_" ) AssertEqualAnyDict(req.parameters, [:]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetListsMembersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetListsMembersRequestV2Tests.swift index c81c8fc3..ea2e2e1a 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetListsMembersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetListsMembersRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetListsMembersRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetListsMembersRequestV2Tests: XCTestCase { + public func test() throws { let req = GetListsMembersRequestV2( id: "_id_", expansions: [.pinnedTweetID], @@ -32,11 +28,15 @@ class GetListsMembersRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetListsMembersRequestV2( id: "_id_" ) AssertEqualAnyDict(req.parameters, [:]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetListsTweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetListsTweetsRequestV2Tests.swift index 674dc06f..64ce4026 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetListsTweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetListsTweetsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetListsTweetsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetListsTweetsRequestV2Tests: XCTestCase { + public func test() throws { let req = GetListsTweetsRequestV2( id: "_id_", expansions: [.referencedTweetsIDAuthorID], @@ -32,11 +28,15 @@ class GetListsTweetsRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetListsTweetsRequestV2( id: "_id_" ) AssertEqualAnyDict(req.parameters, [:]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersFollowedListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersFollowedListsRequestV2Tests.swift index 9fe04c54..cf64dee3 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersFollowedListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersFollowedListsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetUsersFollowedListsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetUsersFollowedListsRequestV2Tests: XCTestCase { + public func test() throws { let req = GetUsersFollowedListsRequestV2( id: "_id_", expansions: [.ownerID], @@ -32,11 +28,15 @@ class GetUsersFollowedListsRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetUsersFollowedListsRequestV2( id: "_id_" ) AssertEqualAnyDict(req.parameters, [:]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersListMembershipsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersListMembershipsRequestV2Tests.swift index eaa6b93e..f9fa7258 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersListMembershipsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersListMembershipsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetUsersListMembershipsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetUsersListMembershipsRequestV2Tests: XCTestCase { + public func test() throws { let req = GetUsersListMembershipsRequestV2( id: "_id_", expansions: [.ownerID], @@ -32,11 +28,15 @@ class GetUsersListMembershipsRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetUsersListMembershipsRequestV2( id: "_id_" ) AssertEqualAnyDict(req.parameters, [:]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersOwnedListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersOwnedListsRequestV2Tests.swift index 96897bb2..11e5d2c3 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersOwnedListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersOwnedListsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetUsersOwnedListsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetUsersOwnedListsRequestV2Tests: XCTestCase { + public func test() throws { let req = GetUsersOwnedListsRequestV2( id: "_id_", expansions: [.ownerID], @@ -32,11 +28,15 @@ class GetUsersOwnedListsRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetUsersOwnedListsRequestV2( id: "_id_" ) AssertEqualAnyDict(req.parameters, [:]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersPinnedListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersPinnedListsRequestV2Tests.swift index c67a049d..40489531 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersPinnedListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersPinnedListsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetUsersPinnedListsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetUsersPinnedListsRequestV2Tests: XCTestCase { + public func test() throws { let req = GetUsersPinnedListsRequestV2( id: "_id_", expansions: [.ownerID], @@ -28,11 +24,15 @@ class GetUsersPinnedListsRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetUsersPinnedListsRequestV2( id: "_id_" ) AssertEqualAnyDict(req.parameters, [:]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/List/PostListsMembersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/PostListsMembersRequestV2Tests.swift index 6bd178ab..98ff82d9 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/PostListsMembersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/PostListsMembersRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostListsMembersRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostListsMembersRequestV2Tests: XCTestCase { + public func test() throws { let req = PostListsMembersRequestV2( id: "_id_", userID: "_userID_" @@ -23,4 +19,8 @@ class PostListsMembersRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/List/PostListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/PostListsRequestV2Tests.swift index d1cc61b9..3cb8b12a 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/PostListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/PostListsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostListsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostListsRequestV2Tests: XCTestCase { + public func test() throws { let req = PostListsRequestV2( name: "_name_", description: "d", @@ -27,7 +23,7 @@ class PostListsRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostListsRequestV2( name: "n" ) @@ -39,4 +35,8 @@ class PostListsRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/List/PostUsersFollowedListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/PostUsersFollowedListsRequestV2Tests.swift index 3efa9906..73df054b 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/PostUsersFollowedListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/PostUsersFollowedListsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostUsersFollowedListsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostUsersFollowedListsRequestV2Tests: XCTestCase { + public func test() throws { let req = PostUsersFollowedListsRequestV2( id: "_id_", listID: "_listID_" @@ -23,4 +19,8 @@ class PostUsersFollowedListsRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/List/PostUsersPinnedListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/PostUsersPinnedListsRequestV2Tests.swift index 8db0ebaa..9e3c25af 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/PostUsersPinnedListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/PostUsersPinnedListsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostUsersPinnedListsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostUsersPinnedListsRequestV2Tests: XCTestCase { + public func test() throws { let req = PostUsersPinnedListsRequestV2( id: "_id_", listID: "_listID_" @@ -23,4 +19,8 @@ class PostUsersPinnedListsRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/List/PutListRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/PutListRequestV2Tests.swift index 6a6e51f0..23c0197a 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/PutListRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/PutListRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PutListRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PutListRequestV2Tests: XCTestCase { + public func test() throws { let req = PutListRequestV2( id: "_id_", description: "d", @@ -28,7 +24,7 @@ class PutListRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PutListRequestV2( id: "_id_" ) @@ -38,4 +34,8 @@ class PutListRequestV2Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Retweet/DeleteUsersRetweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Retweet/DeleteUsersRetweetsRequestV2Tests.swift index 765acb9f..c132bc6a 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Retweet/DeleteUsersRetweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Retweet/DeleteUsersRetweetsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class DeleteUsersRetweetsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class DeleteUsersRetweetsRequestV2Tests: XCTestCase { + public func test() throws { let req = DeleteUsersRetweetsRequestV2( id: "_id_", sourceTweetID: "_sourceTweetID_" @@ -18,4 +14,8 @@ class DeleteUsersRetweetsRequestV2Tests: XCTestCase { XCTAssertEqual(req.bodyContentType, .wwwFormUrlEncoded) AssertEqualAnyDict(req.parameters, [:]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Retweet/GetTweetsRetweetedByRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Retweet/GetTweetsRetweetedByRequestV2Tests.swift index 0ba3e650..08eaa3bb 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Retweet/GetTweetsRetweetedByRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Retweet/GetTweetsRetweetedByRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetTweetsRetweetedByRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetTweetsRetweetedByRequestV2Tests: XCTestCase { + public func test() throws { let req = GetTweetsRetweetedByRequestV2( id: "_id_", expansions: [.pinnedTweetID], @@ -38,11 +34,15 @@ class GetTweetsRetweetedByRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetTweetsRetweetedByRequestV2( id: "_id_" ) AssertEqualAnyDict(req.parameters, [:]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Retweet/PostUsersRetweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Retweet/PostUsersRetweetsRequestV2Tests.swift index 95b4eea6..d1b16d44 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Retweet/PostUsersRetweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Retweet/PostUsersRetweetsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostUsersRetweetsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostUsersRetweetsRequestV2Tests: XCTestCase { + public func test() throws { let req = PostUsersRetweetsRequestV2( id: "_id_", tweetID: "_tweetID_" @@ -23,4 +19,8 @@ class PostUsersRetweetsRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchAllRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchAllRequestV2Tests.swift index 3394167a..97802bd8 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchAllRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchAllRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetTweetsSearchAllRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetTweetsSearchAllRequestV2Tests: XCTestCase { + public func test() throws { let req = GetTweetsSearchAllRequestV2( query: "_q_", endTime: Date(timeIntervalSince1970: 2), @@ -49,7 +45,7 @@ class GetTweetsSearchAllRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetTweetsSearchAllRequestV2( query: "_q1_" ) @@ -61,4 +57,8 @@ class GetTweetsSearchAllRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchRecentRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchRecentRequestV2Tests.swift index 5650434b..db5c9bf9 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchRecentRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchRecentRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetTweetsSearchRecentRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetTweetsSearchRecentRequestV2Tests: XCTestCase { + public func test() throws { let req = GetTweetsSearchRecentRequestV2( query: "Q", endTime: Date(timeIntervalSince1970: 100), @@ -47,4 +43,8 @@ class GetTweetsSearchRecentRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpaceRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpaceRequestV2Tests.swift index 67024f84..e6b41424 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpaceRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpaceRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetSpaceRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetSpaceRequestV2Tests: XCTestCase { + public func test() throws { let req = GetSpaceRequestV2( id: "_i_", expansions: [.hostIDs], @@ -30,7 +26,7 @@ class GetSpaceRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetSpaceRequestV2( id: "_i_" ) @@ -40,4 +36,8 @@ class GetSpaceRequestV2Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesBuyersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesBuyersRequestV2Tests.swift index 71cf91a4..db533c25 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesBuyersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesBuyersRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetSpacesBuyersRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetSpacesBuyersRequestV2Tests: XCTestCase { + public func test() throws { let req = GetSpacesBuyersRequestV2( id: "_i_", expansions: [.pinnedTweetID], @@ -34,7 +30,7 @@ class GetSpacesBuyersRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetSpacesBuyersRequestV2( id: "_i_" ) @@ -44,4 +40,8 @@ class GetSpacesBuyersRequestV2Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesByCreatorIDsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesByCreatorIDsRequestV2Tests.swift index bee1c373..c534ae7c 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesByCreatorIDsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesByCreatorIDsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetSpacesByCreatorIDsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetSpacesByCreatorIDsRequestV2Tests: XCTestCase { + public func test() throws { let req = GetSpacesByCreatorIDsRequestV2( userIDs: ["a", "b"], expansions: [.invitedUserIDs], @@ -31,7 +27,7 @@ class GetSpacesByCreatorIDsRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetSpacesByCreatorIDsRequestV2( userIDs: ["a", "b", "c"] ) @@ -43,4 +39,8 @@ class GetSpacesByCreatorIDsRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesRequestV2Tests.swift index 444e094f..1537d2f9 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetSpacesRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetSpacesRequestV2Tests: XCTestCase { + public func test() throws { let req = GetSpacesRequestV2( ids: ["a", "b"], expansions: [.speakerIDs], @@ -31,7 +27,7 @@ class GetSpacesRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetSpacesRequestV2( ids: ["a", "b", "あ"] ) @@ -43,4 +39,8 @@ class GetSpacesRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesSearchRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesSearchRequestV2Tests.swift index 18718b06..f490ba0f 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesSearchRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesSearchRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetSpacesSearchRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetSpacesSearchRequestV2Tests: XCTestCase { + public func test() throws { let req = GetSpacesSearchRequestV2( query: "_q_", expansions: [.creatorID], @@ -33,7 +29,7 @@ class GetSpacesSearchRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetSpacesSearchRequestV2( query: "あ" ) @@ -45,4 +41,8 @@ class GetSpacesSearchRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesTweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesTweetsRequestV2Tests.swift index fbcc9d92..348c1975 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesTweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesTweetsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetSpacesTweetsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetSpacesTweetsRequestV2Tests: XCTestCase { + public func test() throws { let req = GetSpacesTweetsRequestV2( id: "_i_", expansions: [.entitiesMentionsUsername], @@ -34,7 +30,7 @@ class GetSpacesTweetsRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetSpacesTweetsRequestV2( id: "_i_" ) @@ -44,4 +40,8 @@ class GetSpacesTweetsRequestV2Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSampleStreamRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSampleStreamRequestV2Tests.swift index 5cdf4a84..35ba6e8c 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSampleStreamRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSampleStreamRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetTweetsSampleStreamRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetTweetsSampleStreamRequestV2Tests: XCTestCase { + public func test() throws { let req = GetTweetsSampleStreamRequestV2( backfillMinutes: 2, expansions: [.entitiesMentionsUsername], @@ -35,7 +31,7 @@ class GetTweetsSampleStreamRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetTweetsSampleStreamRequestV2() AssertEqualAnyDict( @@ -43,4 +39,8 @@ class GetTweetsSampleStreamRequestV2Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRequestV2Tests.swift index e5361c2f..b9c5b59c 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetTweetsSearchStreamRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetTweetsSearchStreamRequestV2Tests: XCTestCase { + public func test() throws { let req = GetTweetsSearchStreamRequestV2( backfillMinutes: 1, expansions: [.referencedTweetsIDAuthorID], @@ -35,7 +31,7 @@ class GetTweetsSearchStreamRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetTweetsSearchStreamRequestV2() AssertEqualAnyDict( @@ -43,4 +39,8 @@ class GetTweetsSearchStreamRequestV2Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRulesRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRulesRequestV2Tests.swift index abba48b3..5cecf82d 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRulesRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRulesRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetTweetsSearchStreamRulesRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetTweetsSearchStreamRulesRequestV2Tests: XCTestCase { + public func test() throws { let req = GetTweetsSearchStreamRulesRequestV2( ids: ["10", "20"] ) @@ -23,7 +19,7 @@ class GetTweetsSearchStreamRulesRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetTweetsSearchStreamRulesRequestV2() AssertEqualAnyDict( @@ -31,4 +27,8 @@ class GetTweetsSearchStreamRulesRequestV2Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Stream/PostTweetsSearchStreamRulesRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Stream/PostTweetsSearchStreamRulesRequestV2Tests.swift index a47357b3..ff2d7b65 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Stream/PostTweetsSearchStreamRulesRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Stream/PostTweetsSearchStreamRulesRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostTweetsSearchStreamRulesRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostTweetsSearchStreamRulesRequestV2Tests: XCTestCase { + public func test() throws { XCTContext.runActivity(named: "add") { _ in let add = PostTweetsSearchStreamRulesRequestV2( @@ -53,7 +49,7 @@ class PostTweetsSearchStreamRulesRequestV2Tests: XCTestCase { } } - func testDryRun() throws { + public func testDryRun() throws { let add = PostTweetsSearchStreamRulesRequestV2( operation: .add([ .init(value: "value", tag: "tag"), @@ -78,4 +74,8 @@ class PostTweetsSearchStreamRulesRequestV2Tests: XCTestCase { AssertEqualAnyDict(add.queryParameters, ["dry_run": true]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersMentionsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersMentionsRequestV2Tests.swift index 812b4663..24e1d850 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersMentionsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersMentionsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetUsersMentionsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetUsersMentionsRequestV2Tests: XCTestCase { + public func test() throws { let req = GetUsersMentionsRequestV2( id: "_i_", endTime: Date(timeIntervalSince1970: 11), @@ -46,7 +42,7 @@ class GetUsersMentionsRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetUsersMentionsRequestV2( id: "_i_" ) @@ -56,4 +52,8 @@ class GetUsersMentionsRequestV2Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTimelinesReverseChronologicalRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTimelinesReverseChronologicalRequestV2Tests.swift index 8ebc9e1b..cd0138c9 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTimelinesReverseChronologicalRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTimelinesReverseChronologicalRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetUsersTimelinesReverseChronologicalRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetUsersTimelinesReverseChronologicalRequestV2Tests: XCTestCase { + public func test() throws { let req = GetUsersTimelinesReverseChronologicalRequestV2( id: "_i_", endTime: Date(timeIntervalSince1970: 50), @@ -48,7 +44,7 @@ class GetUsersTimelinesReverseChronologicalRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetUsersTimelinesReverseChronologicalRequestV2( id: "_i_" ) @@ -58,4 +54,8 @@ class GetUsersTimelinesReverseChronologicalRequestV2Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTweetsRequestV2Tests.swift index d1084435..af047dba 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTweetsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetUsersTweetsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetUsersTweetsRequestV2Tests: XCTestCase { + public func test() throws { let req = GetUsersTweetsRequestV2( id: "_i_", endTime: Date(timeIntervalSince1970: 10), @@ -48,7 +44,7 @@ class GetUsersTweetsRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetUsersTweetsRequestV2( id: "_i_" ) @@ -58,4 +54,8 @@ class GetUsersTweetsRequestV2Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Tweet/DeleteTweetRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Tweet/DeleteTweetRequestV2Tests.swift index 4ca976e5..9f68a379 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Tweet/DeleteTweetRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Tweet/DeleteTweetRequestV2Tests.swift @@ -1,16 +1,16 @@ import TwitterAPIKit import XCTest -class DeleteTweetRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class DeleteTweetRequestV2Tests: XCTestCase { + public func test() throws { let request = DeleteTweetRequestV2(id: "123") XCTAssertEqual(request.method, .delete) XCTAssertEqual(request.path, "/2/tweets/123") XCTAssertEqual(request.bodyContentType, .wwwFormUrlEncoded) XCTAssertTrue(request.parameters.isEmpty) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetRequestV2Tests.swift index 43b2cc12..dfc65770 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetTweetRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetTweetRequestV2Tests: XCTestCase { + public func test() throws { XCTContext.runActivity(named: "with only required parameters") { _ in let tweet = GetTweetRequestV2(id: "123") @@ -41,4 +37,8 @@ class GetTweetRequestV2Tests: XCTestCase { ) } } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsQuoteTweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsQuoteTweetsRequestV2Tests.swift index a29e515b..d27c16fb 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsQuoteTweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsQuoteTweetsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetTweetsQuoteTweetsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetTweetsQuoteTweetsRequestV2Tests: XCTestCase { + public func test() throws { let req = GetTweetsQuoteTweetsRequestV2( id: "_i_", expansions: [.attachmentsMediaKeys], @@ -38,7 +34,7 @@ class GetTweetsQuoteTweetsRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetTweetsQuoteTweetsRequestV2( id: "i" ) @@ -49,4 +45,8 @@ class GetTweetsQuoteTweetsRequestV2Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsRequestV2Tests.swift index 8d2e2d5f..d71b4aee 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetTweetsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetTweetsRequestV2Tests: XCTestCase { + public func test() throws { XCTContext.runActivity(named: "with only required parameters") { _ in let tweet = GetTweetsRequestV2(ids: ["123", "abc"]) @@ -42,4 +38,8 @@ class GetTweetsRequestV2Tests: XCTestCase { ) } } + + deinit { + // De-init Logic Her + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Tweet/PostTweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Tweet/PostTweetsRequestV2Tests.swift index 080ba62e..669cabca 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Tweet/PostTweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Tweet/PostTweetsRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostTweetsRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostTweetsRequestV2Tests: XCTestCase { + public func test() throws { let request = PostTweetsRequestV2( directMessageDeepLink: "deep_link", forSuperFollowersOnly: true, @@ -41,4 +37,8 @@ class PostTweetsRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Tweet/PutTweetsHiddenRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Tweet/PutTweetsHiddenRequestV2Tests.swift index abf66a31..a44bb710 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Tweet/PutTweetsHiddenRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Tweet/PutTweetsHiddenRequestV2Tests.swift @@ -1,16 +1,16 @@ import TwitterAPIKit import XCTest -class PutTweetsHiddenRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PutTweetsHiddenRequestV2Tests: XCTestCase { + public func test() throws { let req = PutTweetsHiddenRequestV2(id: "12", hidden: true) XCTAssertEqual(req.method, .put) XCTAssertEqual(req.path, "/2/tweets/12/hidden") XCTAssertEqual(req.bodyContentType, .json) AssertEqualAnyDict(req.parameters, ["hidden": true]) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsAllRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsAllRequestV2Tests.swift index 09e8e6ad..80f2348c 100644 --- a/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsAllRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsAllRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetTweetsCountsAllRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetTweetsCountsAllRequestV2Tests: XCTestCase { + public func test() throws { let req = GetTweetsCountsAllRequestV2( query: "a", endTime: Date(timeIntervalSince1970: 10), @@ -33,4 +29,8 @@ class GetTweetsCountsAllRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsRecentRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsRecentRequestV2Tests.swift index 56ab07c8..bb35b165 100644 --- a/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsRecentRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsRecentRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetTweetsCountsRecentRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetTweetsCountsRecentRequestV2Tests: XCTestCase { + public func test() throws { let req = GetTweetsCountsRecentRequestV2( query: "q", endTime: Date(timeIntervalSince1970: 0), @@ -31,4 +27,8 @@ class GetTweetsCountsRecentRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Users/GetUserRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Users/GetUserRequestV2Tests.swift index 2f6080b2..beef9225 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Users/GetUserRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Users/GetUserRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetUserRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetUserRequestV2Tests: XCTestCase { + public func test() throws { let req = GetUserRequestV2( id: "_id_", expansions: [.pinnedTweetID], @@ -28,7 +24,7 @@ class GetUserRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetUserRequestV2( id: "_id_" ) @@ -38,4 +34,8 @@ class GetUserRequestV2Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByRequestV2Tests.swift index 1a7ab31b..522b77bb 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetUsersByRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetUsersByRequestV2Tests: XCTestCase { + public func test() throws { let req = GetUsersByRequestV2( usernames: ["a", "b"], expansions: [.pinnedTweetID], @@ -29,7 +25,7 @@ class GetUsersByRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetUsersByRequestV2( usernames: ["a", "b"] ) @@ -41,4 +37,8 @@ class GetUsersByRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByUsernameRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByUsernameRequestV2Tests.swift index b0d30db3..bb077fe3 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByUsernameRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByUsernameRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetUsersByUsernameRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetUsersByUsernameRequestV2Tests: XCTestCase { + public func test() throws { let req = GetUsersByUsernameRequestV2( username: "_username_", expansions: [.pinnedTweetID], @@ -28,7 +24,7 @@ class GetUsersByUsernameRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetUsersByUsernameRequestV2( username: "_username_" ) @@ -38,4 +34,8 @@ class GetUsersByUsernameRequestV2Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersMeRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersMeRequestV2Tests.swift index 917394e4..dd714492 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersMeRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersMeRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetUsersMeRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetUsersMeRequestV2Tests: XCTestCase { + public func test() throws { let req = GetUsersMeRequestV2( expansions: [.pinnedTweetID], tweetFields: [.geo], @@ -27,7 +23,7 @@ class GetUsersMeRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetUsersMeRequestV2() AssertEqualAnyDict( @@ -35,4 +31,8 @@ class GetUsersMeRequestV2Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersRequestV2Tests.swift index b9e00825..cd645c4c 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetUsersRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetUsersRequestV2Tests: XCTestCase { + public func test() throws { let req = GetUsersRequestV2( ids: ["a", "b"], expansions: [.pinnedTweetID], @@ -29,7 +25,7 @@ class GetUsersRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetUsersRequestV2( ids: ["a", "b"] ) @@ -41,4 +37,8 @@ class GetUsersRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/GetOAuth2AuthorizeRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/GetOAuth2AuthorizeRequestV1Tests.swift index 873b7c99..af049d34 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/GetOAuth2AuthorizeRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/GetOAuth2AuthorizeRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetOAuth2AuthorizeRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetOAuth2AuthorizeRequestV1Tests: XCTestCase { + public func test() throws { let req = GetOAuth2AuthorizeRequestV1( responseType: "_r_", clientID: "_c_id_", @@ -35,7 +31,7 @@ class GetOAuth2AuthorizeRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetOAuth2AuthorizeRequestV1( clientID: "_ci_", redirectURI: "_r_", @@ -58,4 +54,8 @@ class GetOAuth2AuthorizeRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthenticateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthenticateRequestV1Tests.swift index 98a27f0d..2aa4ae1c 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthenticateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthenticateRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetOAuthAuthenticateRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetOAuthAuthenticateRequestV1Tests: XCTestCase { + public func test() throws { let req = GetOAuthAuthenticateRequestV1( oauthToken: "_o_", forceLogin: true, @@ -27,7 +23,7 @@ class GetOAuthAuthenticateRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetOAuthAuthenticateRequestV1( oauthToken: "_o_" ) @@ -39,4 +35,8 @@ class GetOAuthAuthenticateRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthorizeRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthorizeRequestV1Tests.swift index fa142580..a07a63ef 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthorizeRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthorizeRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class GetOAuthAuthorizeRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class GetOAuthAuthorizeRequestV1Tests: XCTestCase { + public func test() throws { let req = GetOAuthAuthorizeRequestV1( oauthToken: "_o_", forceLogin: true, @@ -27,7 +23,7 @@ class GetOAuthAuthorizeRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = GetOAuthAuthorizeRequestV1( oauthToken: "_o_" ) @@ -39,4 +35,8 @@ class GetOAuthAuthorizeRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2AccessTokenRequestV2Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2AccessTokenRequestV2Tests.swift index 0a1bff9b..36745bfa 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2AccessTokenRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2AccessTokenRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostOAuth2AccessTokenRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostOAuth2AccessTokenRequestV2Tests: XCTestCase { + public func test() throws { let req = PostOAuth2AccessTokenRequestV2( code: "_c_", grantType: "_g_", @@ -31,7 +27,7 @@ class PostOAuth2AccessTokenRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostOAuth2AccessTokenRequestV2( code: "_c_", redirectURI: "_r_", @@ -48,4 +44,8 @@ class PostOAuth2AccessTokenRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2InvalidateTokenRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2InvalidateTokenRequestV1Tests.swift index d280cd93..9835ee9e 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2InvalidateTokenRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2InvalidateTokenRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostOAuth2InvalidateTokenRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostOAuth2InvalidateTokenRequestV1Tests: XCTestCase { + public func test() throws { let req = PostOAuth2InvalidateTokenRequestV1( accessToken: "_a_" ) @@ -22,4 +18,8 @@ class PostOAuth2InvalidateTokenRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RefreshTokenRequestV2Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RefreshTokenRequestV2Tests.swift index 8803a4b5..1138524c 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RefreshTokenRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RefreshTokenRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostOAuth2RefreshTokenRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostOAuth2RefreshTokenRequestV2Tests: XCTestCase { + public func test() throws { let req = PostOAuth2RefreshTokenRequestV2( refreshToken: "_r_", grantType: "_g_", @@ -27,7 +23,7 @@ class PostOAuth2RefreshTokenRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostOAuth2RefreshTokenRequestV2( refreshToken: "_rt_" ) @@ -40,4 +36,8 @@ class PostOAuth2RefreshTokenRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RevokeTokenRequestV2Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RevokeTokenRequestV2Tests.swift index f037eaac..4cc1fcff 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RevokeTokenRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RevokeTokenRequestV2Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostOAuth2RevokeTokenRequestV2Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostOAuth2RevokeTokenRequestV2Tests: XCTestCase { + public func test() throws { let req = PostOAuth2RevokeTokenRequestV2( token: "_t_", clientID: "_c_", @@ -27,7 +23,7 @@ class PostOAuth2RevokeTokenRequestV2Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostOAuth2RevokeTokenRequestV2( token: "_tt_" ) @@ -39,4 +35,8 @@ class PostOAuth2RevokeTokenRequestV2Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2TokenRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2TokenRequestV1Tests.swift index 4d1e5d6e..6a75c2e3 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2TokenRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2TokenRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostOAuth2TokenRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostOAuth2TokenRequestV1Tests: XCTestCase { + public func test() throws { let req = PostOAuth2TokenRequestV1( grantType: "_g_" ) @@ -23,7 +19,7 @@ class PostOAuth2TokenRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostOAuth2TokenRequestV1() AssertEqualAnyDict( @@ -33,4 +29,8 @@ class PostOAuth2TokenRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthAccessTokenRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthAccessTokenRequestV1Tests.swift index 76408d73..540960ee 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthAccessTokenRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthAccessTokenRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostOAuthAccessTokenRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostOAuthAccessTokenRequestV1Tests: XCTestCase { + public func test() throws { let req = PostOAuthAccessTokenRequestV1( oauthToken: "_ot_", oauthVerifier: "_ov_" @@ -24,4 +20,8 @@ class PostOAuthAccessTokenRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthInvalidateTokenRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthInvalidateTokenRequestV1Tests.swift index 3c72ce63..18051538 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthInvalidateTokenRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthInvalidateTokenRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostOAuthInvalidateTokenRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostOAuthInvalidateTokenRequestV1Tests: XCTestCase { + public func test() throws { let req = PostOAuthInvalidateTokenRequestV1() XCTAssertEqual(req.method, .post) @@ -18,4 +14,8 @@ class PostOAuthInvalidateTokenRequestV1Tests: XCTestCase { [:] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthRequestTokenRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthRequestTokenRequestV1Tests.swift index cb68ee64..0c5f2169 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthRequestTokenRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthRequestTokenRequestV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class PostOAuthRequestTokenRequestV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class PostOAuthRequestTokenRequestV1Tests: XCTestCase { + public func test() throws { let req = PostOAuthRequestTokenRequestV1( oauthCallback: "_o_", xAuthAccessType: "_x_" @@ -25,7 +21,7 @@ class PostOAuthRequestTokenRequestV1Tests: XCTestCase { ) } - func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostOAuthRequestTokenRequestV1( oauthCallback: "_o_" ) @@ -37,4 +33,8 @@ class PostOAuthRequestTokenRequestV1Tests: XCTestCase { ] ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift b/Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift index 1636a903..a077e65f 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift @@ -1,12 +1,12 @@ import TwitterAPIKit import XCTest -class TwitterAuthAPITests: XCTestCase { +internal class TwitterAuthAPITests: XCTestCase { var client: TwitterAuthAPI! - override func setUpWithError() throws { + override public func setUpWithError() throws { let config = URLSessionConfiguration.default - config.protocolClasses = [MockURLProtocol.self] + config.protocolinternal classes = [MockURLProtocol.self] client = TwitterAPIClient( @@ -15,11 +15,11 @@ class TwitterAuthAPITests: XCTestCase { ).auth } - override func tearDownWithError() throws { + override public func tearDownWithError() throws { MockURLProtocol.cleanup() } - func testMakeOAuthAuthorizeURL() throws { + public func testMakeOAuthAuthorizeURL() throws { let url = client.oauth10a.makeOAuthAuthorizeURL( .init(oauthToken: "token", forceLogin: true, screenName: "name") ) @@ -29,7 +29,7 @@ class TwitterAuthAPITests: XCTestCase { ) } - func testMakeOAuthAuthenticateURL() throws { + public func testMakeOAuthAuthenticateURL() throws { let url = client.oauth10a.makeOAuthAuthenticateURL( .init(oauthToken: "token", forceLogin: true, screenName: "name") ) @@ -39,7 +39,7 @@ class TwitterAuthAPITests: XCTestCase { ) } - func testMakeOAuth2AuthorizeURL() throws { + public func testMakeOAuth2AuthorizeURL() throws { let url = client.oauth20.makeOAuth2AuthorizeURL( .init( clientID: "cid", @@ -58,4 +58,8 @@ class TwitterAuthAPITests: XCTestCase { "https://twitter.com/i/oauth2/authorize?client_id=cid&code_challenge=challenge&code_challenge_method=plain&redirect_uri=callback&response_type=code&scope=users.read%20tweet.read&state=state" ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift index 7e462afb..13c30c14 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift @@ -2,8 +2,8 @@ import XCTest @testable import TwitterAPIKit -class TwitterOAuth2AccessTokenTests: XCTestCase { - func test() throws { +internal class TwitterOAuth2AccessTokenTests: XCTestCase { + public func test() throws { try XCTContext.runActivity(named: "without refresh_token") { _ in let data = Data( @@ -44,7 +44,7 @@ class TwitterOAuth2AccessTokenTests: XCTestCase { } } - func testError() throws { + public func testError() throws { try XCTContext.runActivity(named: "Not json") { _ in XCTAssertThrowsError(try TwitterOAuth2AccessToken.fromResponse(data: Data("aa".utf8))) { error in XCTAssertTrue((error as! TwitterAPIKitError).isResponseSerializeFailed) @@ -57,4 +57,8 @@ class TwitterOAuth2AccessTokenTests: XCTestCase { } } } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2BearerTokenTests.swift b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2BearerTokenTests.swift index 04e0ecfc..9fc4201d 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2BearerTokenTests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2BearerTokenTests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class TwitterOAuth2BearerTokenTests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func testJsonData() throws { +internal class TwitterOAuth2BearerTokenTests: XCTestCase { + public func testJsonData() throws { let data = Data(#"{"token_type":"bearer","access_token":"token"}"#.utf8) let token = try TwitterOAuth2BearerToken(jsonData: data)! @@ -14,13 +10,17 @@ class TwitterOAuth2BearerTokenTests: XCTestCase { XCTAssertEqual(token.accessToken, "token") } - func testNil() throws { + public func testNil() throws { let data = Data("{}".utf8) XCTAssertNil(try TwitterOAuth2BearerToken(jsonData: data)) } - func testThrow() throws { + public func testThrow() throws { let data = Data("".utf8) XCTAssertThrowsError(try TwitterOAuth2BearerToken(jsonData: data)) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthAccessTokenV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthAccessTokenV1Tests.swift index 6b1bb0a0..41b6afad 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthAccessTokenV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthAccessTokenV1Tests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class TwitterOAuthAccessTokenV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class TwitterOAuthAccessTokenV1Tests: XCTestCase { + public func test() throws { let token = TwitterOAuthAccessTokenV1( oauthToken: "token", oauthTokenSecret: "secret", userID: "uid", screenName: "sn" ) @@ -16,7 +12,7 @@ class TwitterOAuthAccessTokenV1Tests: XCTestCase { XCTAssertEqual(token.screenName, "sn") } - func testQueryStringData() throws { + public func testQueryStringData() throws { let data = Data( "oauth_token=token&oauth_token_secret=secret&user_id=uid&screen_name=name" .utf8) @@ -29,8 +25,12 @@ class TwitterOAuthAccessTokenV1Tests: XCTestCase { XCTAssertEqual(token.screenName, "name") } - func testNil() throws { + public func testNil() throws { let data = Data("".utf8) XCTAssertNil(TwitterOAuthAccessTokenV1(queryStringData: data)) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift index 7c9b4869..2576cc71 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift @@ -1,19 +1,15 @@ import TwitterAPIKit import XCTest -class TwitterOAuthTokenV1Tests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class TwitterOAuthTokenV1Tests: XCTestCase { + public func test() throws { let token = TwitterOAuthTokenV1(oauthToken: "token", oauthTokenSecret: "secret", oauthCallbackConfirmed: true) XCTAssertEqual(token.oauthToken, "token") XCTAssertEqual(token.oauthTokenSecret, "secret") XCTAssertTrue(token.oauthCallbackConfirmed!) } - func testQueryStringData() { + public func testQueryStringData() { let data = Data("oauth_token=token&oauth_token_secret=secret&oauth_callback_confirmed=true".utf8) let token = TwitterOAuthTokenV1(queryStringData: data)! @@ -22,8 +18,12 @@ class TwitterOAuthTokenV1Tests: XCTestCase { XCTAssertTrue(token.oauthCallbackConfirmed!) } - func testNil() { + public func testNil() { let data = Data("".utf8) XCTAssertNil(TwitterOAuthTokenV1(queryStringData: data)) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/Extensions/ConcurrencyTests.swift b/Tests/TwitterAPIKitTests/Extensions/ConcurrencyTests.swift index 016a71cb..0fab3cc4 100644 --- a/Tests/TwitterAPIKitTests/Extensions/ConcurrencyTests.swift +++ b/Tests/TwitterAPIKitTests/Extensions/ConcurrencyTests.swift @@ -5,12 +5,8 @@ import XCTest #if compiler(>=5.5.2) && canImport(_Concurrency) @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) - class ConcurrencyTests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() async throws { + internal class ConcurrencyTests: XCTestCase { + public func test() async throws { let mockTask = MockTwitterAPISessionTask(taskIdentifier: 1) let task = TwitterAPISessionDelegatedJSONTask( @@ -54,7 +50,7 @@ import XCTest } } - func testCancel() async throws { + public func testCancel() async throws { let mockTask = MockTwitterAPISessionTask(taskIdentifier: 1) let task = TwitterAPISessionDelegatedJSONTask( @@ -98,7 +94,7 @@ import XCTest XCTAssertTrue(mockTask.cancelled) } - func testTaskCancel() async throws { + public func testTaskCancel() async throws { let mockTask = MockTwitterAPISessionTask(taskIdentifier: 1) let task = TwitterAPISessionDelegatedJSONTask( @@ -130,7 +126,7 @@ import XCTest } } - func testStream() async throws { + public func testStream() async throws { let mockTask = MockTwitterAPISessionTask( taskIdentifier: 1, currentRequest: nil, @@ -170,7 +166,7 @@ import XCTest XCTAssertEqual(count, 4) } - func testStreamCancel() async throws { + public func testStreamCancel() async throws { let mockTask = MockTwitterAPISessionTask( taskIdentifier: 1, currentRequest: nil, @@ -197,7 +193,7 @@ import XCTest XCTAssertTrue(mockTask.cancelled) } - func testStreamError() async throws { + public func testStreamError() async throws { let mockTask = MockTwitterAPISessionTask( taskIdentifier: 1, currentRequest: nil, @@ -237,5 +233,9 @@ import XCTest await asyncTask.value } + + deinit { + // De-init Logic Here + } } #endif diff --git a/Tests/TwitterAPIKitTests/Extensions/DataTests.swift b/Tests/TwitterAPIKitTests/Extensions/DataTests.swift index 536dab26..e1e3c3e7 100644 --- a/Tests/TwitterAPIKitTests/Extensions/DataTests.swift +++ b/Tests/TwitterAPIKitTests/Extensions/DataTests.swift @@ -2,12 +2,8 @@ import XCTest @testable import TwitterAPIKit -class DataTests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func testSerialize() throws { +internal class DataTests: XCTestCase { + public func testSerialize() throws { XCTContext.runActivity(named: "success") { _ in let data = Data("{\"a\":1}".utf8) let serialized = data.serialize() @@ -21,7 +17,7 @@ class DataTests: XCTestCase { } } - func testDecode() throws { + public func testDecode() throws { struct Obj: Decodable { let a: Int } @@ -37,4 +33,8 @@ class DataTests: XCTestCase { XCTAssertTrue(serialized.error!.isResponseSerializeFailed) } } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/Extensions/StringTests.swift b/Tests/TwitterAPIKitTests/Extensions/StringTests.swift index 88293ccc..f70a5ada 100644 --- a/Tests/TwitterAPIKitTests/Extensions/StringTests.swift +++ b/Tests/TwitterAPIKitTests/Extensions/StringTests.swift @@ -2,17 +2,17 @@ import XCTest @testable import TwitterAPIKit -class StringTests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - +internal class StringTests: XCTestCase { /// https://developer.twitter.com/en/docs/authentication/oauth-1-0a/percent-encoding-parameters - func testEncode() throws { + public func testEncode() throws { XCTAssertEqual("Ladies + Gentlemen".urlEncodedString, "Ladies%20%2B%20Gentlemen") XCTAssertEqual("An encoded string!".urlEncodedString, "An%20encoded%20string%21") XCTAssertEqual("Dogs, Cats & Mice".urlEncodedString, "Dogs%2C%20Cats%20%26%20Mice") XCTAssertEqual("☃".urlEncodedString, "%E2%98%83") XCTAssertEqual("1970-01-01T00:01:00Z".urlEncodedString, "1970-01-01T00%3A01%3A00Z") } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift b/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift index dc08b29d..ebe99c69 100644 --- a/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift +++ b/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift @@ -66,7 +66,7 @@ public struct CombinationsSequence { return 1 << n } - func binomial(n: Int, k: Int) -> Int { + public func binomial(n: Int, k: Int) -> Int { switch k { case n, 0: return 1 case n...: return 0 @@ -130,10 +130,10 @@ extension CombinationsSequence: Sequence { /// // Can't advance without needing to go past `base.endIndex`, /// // so the iteration is finished. @inlinable - mutating func advance() { + mutating public func advance() { /// Advances `kRange` by incrementing its `lowerBound` until the range is /// empty, when iteration is finished. - func advanceKRange() { + public func advanceKRange() { if kRange.lowerBound < kRange.upperBound { let advancedLowerBound = kRange.lowerBound + 1 kRange = advancedLowerBound ..< kRange.upperBound @@ -174,7 +174,7 @@ extension CombinationsSequence: Sequence { } @inlinable - public mutating func next() -> [Base.Element]? { + public mutating public func next() -> [Base.Element]? { guard !isFinished else { return nil } defer { advance() } return indexes.map { i in base[i] } @@ -182,7 +182,7 @@ extension CombinationsSequence: Sequence { } @inlinable - public func makeIterator() -> Iterator { + public public func makeIterator() -> Iterator { Iterator(self) } } @@ -257,7 +257,7 @@ public extension Collection { /// is the number of elements in the base collection, since /// `CombinationsSequence` accesses the `count` of the base collection. @inlinable - func combinations( + public func combinations( ofCount kRange: R ) -> CombinationsSequence where R.Bound == Int { CombinationsSequence(self, kRange: kRange) @@ -293,8 +293,9 @@ public extension Collection { /// is the number of elements in the base collection, since /// `CombinationsSequence` accesses the `count` of the base collection. @inlinable - func combinations(ofCount k: Int) -> CombinationsSequence { + public func combinations(ofCount k: Int) -> CombinationsSequence { precondition(k >= 0, "Can't have combinations with a negative number of elements.") return CombinationsSequence(self, k: k) + } } diff --git a/Tests/TwitterAPIKitTests/MultipartFormDataPartTests.swift b/Tests/TwitterAPIKitTests/MultipartFormDataPartTests.swift index 31adf1e5..d9a1a753 100644 --- a/Tests/TwitterAPIKitTests/MultipartFormDataPartTests.swift +++ b/Tests/TwitterAPIKitTests/MultipartFormDataPartTests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class MultipartFormDataPartTests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func testEqualValue() throws { +internal class MultipartFormDataPartTests: XCTestCase { + public func testEqualValue() throws { let a = MultipartFormDataPart.value(name: "n", value: 1) let b = MultipartFormDataPart.value(name: "n", value: "1") let c = MultipartFormDataPart.value(name: "n", value: Float(1)) @@ -17,7 +13,7 @@ class MultipartFormDataPartTests: XCTestCase { } } - func testEqualData() throws { + public func testEqualData() throws { let data = Data() let a = MultipartFormDataPart.data(name: "n", value: data, filename: "f", mimeType: "m") let b = MultipartFormDataPart.data(name: "m", value: data, filename: "f", mimeType: "m") @@ -34,4 +30,8 @@ class MultipartFormDataPartTests: XCTestCase { XCTAssertEqual(a, a1) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/OAuthHelperTests.swift b/Tests/TwitterAPIKitTests/OAuthHelperTests.swift index a93da16b..bc466859 100644 --- a/Tests/TwitterAPIKitTests/OAuthHelperTests.swift +++ b/Tests/TwitterAPIKitTests/OAuthHelperTests.swift @@ -2,18 +2,14 @@ import XCTest @testable import TwitterAPIKit -class OAuthHelperTests: XCTestCase { - override func setUpWithError() throws { - // Put setup code here. This method is called before the invocation of each test method in the class. - } - - override func tearDownWithError() throws { - // Put teardown code here. This method is called after the invocation of each test method in the class. +internal class OAuthHelperTests: XCTestCase { + override public func tearDownWithError() throws { + // Put teardown code here. This method is called after the invocation of each test method in the internal class. } // https://developer.twitter.com/en/docs/authentication/oauth-1-0a/authorizing-a-request // https://developer.twitter.com/en/docs/authentication/oauth-1-0a/creating-a-signature - func test() throws { + public func test() throws { let header = authorizationHeader( for: .post, url: URL(string: "https://api.twitter.com/1.1/statuses/update.json")!, @@ -31,4 +27,8 @@ class OAuthHelperTests: XCTestCase { #"OAuth oauth_consumer_key="xvz1evFS4wEEPTGEFPHBog", oauth_nonce="kYjzVBB8Y0ZFabxSWbWovY3uYSQ2pTgmZeNu2VS4cg", oauth_signature="hCtSmYh%2BiHYCEqBWrE7C7hYmtUk%3D", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1318622958", oauth_token="370773112-GmHxMAgYyLbNEtIKZeRNFsMKPR9EyMZeS9weJAEb", oauth_version="1.0""# ) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift index d1d24b1a..d07f4c12 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift @@ -1,14 +1,12 @@ import TwitterAPIKit import XCTest -class TwitterAPIClientTests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws { +internal class TwitterAPIClientTests: XCTestCase { + override public func tearDownWithError() throws { MockURLProtocol.cleanup() } - func testJSONDecoder() throws { + public func testJSONDecoder() throws { let decoder = TwitterAPIClient.defaultJSONDecoder let dateV1 = try decoder.decode(Date.self, from: Data("\"Sun Jul 03 04:32:05 +0000 2022\"".utf8)) @@ -16,9 +14,9 @@ class TwitterAPIClientTests: XCTestCase { XCTAssertEqual(dateV1, dateV2) } - func testRefreshToken() throws { + public func testRefreshToken() throws { let config = URLSessionConfiguration.default - config.protocolClasses = [MockURLProtocol.self] + config.protocolinternal classes = [MockURLProtocol.self] let client = TwitterAPIClient( .oauth20( @@ -72,9 +70,9 @@ class TwitterAPIClientTests: XCTestCase { } } - func testRefreshTokenForceRefresh() throws { + public func testRefreshTokenForceRefresh() throws { let config = URLSessionConfiguration.default - config.protocolClasses = [MockURLProtocol.self] + config.protocolinternal classes = [MockURLProtocol.self] let client = TwitterAPIClient( .oauth20( @@ -122,7 +120,7 @@ class TwitterAPIClientTests: XCTestCase { } } - func testRefreshToken_invalidAuthenticationMethod() throws { + public func testRefreshToken_invalidAuthenticationMethod() throws { let client = TwitterAPIClient(.none) let exp = expectation(description: "") client.refreshOAuth20Token(type: .publicClient) { result in @@ -137,7 +135,7 @@ class TwitterAPIClientTests: XCTestCase { wait(for: [exp], timeout: 10) } - func testRefreshToken_refreshTokenIsMissing() throws { + public func testRefreshToken_refreshTokenIsMissing() throws { let client = TwitterAPIClient( .oauth20( .init( @@ -161,7 +159,7 @@ class TwitterAPIClientTests: XCTestCase { wait(for: [exp], timeout: 10) } - func testRefreshTokenNotExpired() throws { + public func testRefreshTokenNotExpired() throws { let now = Date() let client = TwitterAPIClient( .oauth20( @@ -194,9 +192,9 @@ class TwitterAPIClientTests: XCTestCase { #if compiler(>=5.5.2) && canImport(_Concurrency) @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) - func testRefreshTokenAsync() async throws { + public func testRefreshTokenAsync() async throws { let config = URLSessionConfiguration.default - config.protocolClasses = [MockURLProtocol.self] + config.protocolinternal classes = [MockURLProtocol.self] let client = TwitterAPIClient( .oauth20( @@ -235,7 +233,7 @@ class TwitterAPIClientTests: XCTestCase { } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) - func testRefreshTokenInvalidAuthenticationMethodAsync() async throws { + public func testRefreshTokenInvalidAuthenticationMethodAsync() async throws { let client = TwitterAPIClient(.none) do { @@ -251,4 +249,8 @@ class TwitterAPIClientTests: XCTestCase { } } #endif + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/TwitterAPIErrorResponseTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIErrorResponseTests.swift index b50a1c67..0cf3b8be 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIErrorResponseTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIErrorResponseTests.swift @@ -28,7 +28,10 @@ internal class TwitterAPIErrorResponseTests: XCTestCase { ], ] - let v1Response = TwitterAPIErrorResponseV1(obj: obj)! + guard let v1Response = TwitterAPIErrorResponseV1(obj: obj) else { + return XCTFail("Failed to parse response") + } + XCTAssertEqual(v1Response.message, "message1") XCTAssertEqual(v1Response.code, 1) XCTAssertEqual( @@ -44,7 +47,8 @@ internal class TwitterAPIErrorResponseTests: XCTestCase { XCTAssertEqual( v1Response, .init( - message: "message1", code: 1, + message: "message1", + code: 1, errors: [ .init(message: "message1", code: 1, errors: []), .init(message: "message2", code: 2, errors: []), @@ -78,7 +82,10 @@ internal class TwitterAPIErrorResponseTests: XCTestCase { ], ] - let v2Response = TwitterAPIErrorResponseV2(obj: obj)! + guard let v2Response = TwitterAPIErrorResponseV2(obj: obj) else { + return XCTFail("Failed to parse response") + } + XCTAssertEqual(v2Response.title, "_title_") XCTAssertEqual(v2Response.detail, "_detail_") XCTAssertEqual(v2Response.type, "_type_") @@ -88,7 +95,9 @@ internal class TwitterAPIErrorResponseTests: XCTestCase { XCTAssertEqual( v2Response, TwitterAPIErrorResponseV2( - title: "_title_", detail: "_detail_", type: "_type_", + title: "_title_", + detail: "_detail_", + type: "_type_", errors: [.init(message: "_message_", parameters: ["param": ["b"]])] ) ) @@ -167,7 +176,7 @@ internal class TwitterAPIErrorResponseTests: XCTestCase { } XCTContext.runActivity(named: "invalid") { _ in - let data = "{}".data(using: .utf8)! + let data = Data("{}") let error = TwitterAPIErrorResponse(data: data) XCTAssertEqual(error, .unknown(data)) XCTAssertTrue(error.isUnknown) diff --git a/Tests/TwitterAPIKitTests/TwitterAPIKitErrorTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIKitErrorTests.swift index d9b3aafa..b4399afa 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIKitErrorTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIKitErrorTests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class TwitterAPIKitErrorTests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func testInit() throws { +internal class TwitterAPIKitErrorTests: XCTestCase { + public func testInit() throws { XCTContext.runActivity(named: "unknown") { _ in let error = TwitterAPIKitError(error: NSError(domain: "", code: 0, userInfo: nil)) @@ -21,7 +17,7 @@ class TwitterAPIKitErrorTests: XCTestCase { } } - func testRequestFailed() throws { + public func testRequestFailed() throws { XCTAssertTrue(TwitterAPIKitError.requestFailed(reason: .invalidURL(url: "")).isRequestFailed) XCTAssertTrue( TwitterAPIKitError.requestFailed(reason: .invalidParameter(parameter: [:], cause: "hoge")).isRequestFailed) @@ -32,7 +28,7 @@ class TwitterAPIKitErrorTests: XCTestCase { ).isRequestFailed) } - func testResponseFailed() throws { + public func testResponseFailed() throws { XCTAssertTrue(TwitterAPIKitError.responseFailed(reason: .invalidResponse(error: nil)).isResponseFailed) XCTAssertTrue( TwitterAPIKitError.responseFailed( @@ -40,7 +36,7 @@ class TwitterAPIKitErrorTests: XCTestCase { ).isResponseFailed) } - func testResponseSerializationFailure() throws { + public func testResponseSerializationFailure() throws { XCTAssertTrue( TwitterAPIKitError.responseSerializeFailed( reason: .jsonSerializationFailed(error: NSError(domain: "", code: 0, userInfo: nil)) @@ -57,14 +53,18 @@ class TwitterAPIKitErrorTests: XCTestCase { .isResponseSerializeFailed) } - func testUploadMediaFailure() throws { + public func testUploadMediaFailure() throws { XCTAssertTrue( TwitterAPIKitError.uploadMediaFailed( reason: .processingFailed(error: .init(code: 1, name: "n", message: "m")) ).isUploadMediaFailed) } - func testUnknown() throws { + public func testUnknown() throws { XCTAssertTrue(TwitterAPIKitError.unkonwn(error: NSError(domain: "", code: 0, userInfo: nil)).isUnkonwn) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/TwitterAPIKitTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIKitTests.swift index 2c2aeadd..4723e030 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIKitTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIKitTests.swift @@ -1,6 +1,10 @@ import TwitterAPIKit import XCTest -final class TwitterAPIKitTests: XCTestCase { - func testExample() throws {} +final internal class TwitterAPIKitTests: XCTestCase { + public func testExample() throws {} + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift index eb7e8cbe..3f6a60c8 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift @@ -2,7 +2,7 @@ import XCTest @testable import TwitterAPIKit -class TwitterAPIRequestTests: XCTestCase { +internal class TwitterAPIRequestTests: XCTestCase { private struct MockTwitterAPIRequest: TwitterAPIRequest { var method: HTTPMethod = .get var path: String = "/mock" @@ -25,11 +25,7 @@ class TwitterAPIRequestTests: XCTestCase { uploadURL: .init(string: "https://upload.example.com")! ) - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func testRequestURL() throws { + public func testRequestURL() throws { XCTContext.runActivity(named: "api") { _ in let req = MockTwitterAPIRequest(parameters: ["key": "value"], baseURLType: .api) XCTAssertEqual(req.requestURL(for: env).absoluteString, "https://api.example.com/mock") @@ -41,7 +37,7 @@ class TwitterAPIRequestTests: XCTestCase { } } - func testParameterForOAuth() throws { + public func testParameterForOAuth() throws { XCTContext.runActivity(named: "wwwFormUrlEncoded") { _ in let req = MockTwitterAPIRequest(parameters: ["key": "value"], bodyContentType: .wwwFormUrlEncoded) XCTAssertEqual(req.parameterForOAuth as! [String: String], ["key": "value"]) @@ -58,7 +54,7 @@ class TwitterAPIRequestTests: XCTestCase { } } - func testParameterByMethods() throws { + public func testParameterByMethods() throws { // 🥓 = F0 9F A5 93 try XCTContext.runActivity(named: "GET") { _ in @@ -126,7 +122,7 @@ class TwitterAPIRequestTests: XCTestCase { } } - func testURLQueryPercentEncode() throws { + public func testURLQueryPercentEncode() throws { let req = MockTwitterAPIRequest( method: .get, parameters: [ @@ -143,7 +139,7 @@ class TwitterAPIRequestTests: XCTestCase { ) } - func testBodyAndQueryParameter() throws { + public func testBodyAndQueryParameter() throws { let req = MockTwitterAPIQueryAndBodyRequest( method: .post, queryParameters: ["key": "value,🥓"], @@ -161,7 +157,7 @@ class TwitterAPIRequestTests: XCTestCase { XCTAssertEqual(String(data: urlReq.httpBody!, encoding: .utf8)!, "body=%E3%81%82") } - func testBodyContentType() throws { + public func testBodyContentType() throws { try XCTContext.runActivity(named: "wwwFormUrlEncoded") { _ in let req = try MockTwitterAPIRequest( @@ -266,4 +262,8 @@ class TwitterAPIRequestTests: XCTestCase { ) } } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/TwitterAPIResponseTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIResponseTests.swift index 840b19b5..21c94747 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIResponseTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIResponseTests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class TwitterAPIResponseTests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class TwitterAPIResponseTests: XCTestCase { + public func test() throws { let rateLimit = TwitterRateLimit(header: [ "x-rate-limit-limit": "10", "x-rate-limit-remaining": "1", @@ -71,4 +67,8 @@ class TwitterAPIResponseTests: XCTestCase { XCTAssertNotNil(mapped.success) } } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift b/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift index e8e713d5..fee279ec 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift @@ -2,7 +2,7 @@ import XCTest @testable import TwitterAPIKit -private class GetTwitterReqeust: TwitterAPIRequest { +private internal class GetTwitterReqeust: TwitterAPIRequest { var method: HTTPMethod { return .get } var path: String { return "/get.json" } var parameters: [String: Any] { @@ -10,7 +10,7 @@ private class GetTwitterReqeust: TwitterAPIRequest { } } -private class PostTwitterReqeust: TwitterAPIRequest { +private internal class PostTwitterReqeust: TwitterAPIRequest { var method: HTTPMethod { return .post } var path: String { return "/post.json" } var parameters: [String: Any] { @@ -18,7 +18,7 @@ private class PostTwitterReqeust: TwitterAPIRequest { } } -private class EmptyRequest: TwitterAPIRequest { +private internal class EmptyRequest: TwitterAPIRequest { var method: HTTPMethod { return .get } var path: String { return "/empty.json" } var parameters: [String: Any] { @@ -26,7 +26,7 @@ private class EmptyRequest: TwitterAPIRequest { } } -class TwitterAPISessionTests: XCTestCase { +internal class TwitterAPISessionTests: XCTestCase { private let environment = TwitterAPIEnvironment( twitterURL: URL(string: "https://twitter.example.com")!, apiURL: URL(string: "https://api.example.com")!, @@ -35,7 +35,7 @@ class TwitterAPISessionTests: XCTestCase { lazy var session: TwitterAPISession = { let config = URLSessionConfiguration.default - config.protocolClasses = [MockURLProtocol.self] + config.protocolinternal classes = [MockURLProtocol.self] return TwitterAPISession( auth: .oauth10a(.init(consumerKey: "", consumerSecret: "", oauthToken: "", oauthTokenSecret: "")), @@ -44,13 +44,11 @@ class TwitterAPISessionTests: XCTestCase { ) }() - override func setUpWithError() throws {} - - override func tearDownWithError() throws { + override public func tearDownWithError() throws { MockURLProtocol.cleanup() } - func testGET() throws { + public func testGET() throws { MockURLProtocol.requestAssert = { request in XCTAssertEqual(request.httpMethod, "GET") XCTAssertEqual(request.url?.absoluteString, "https://api.example.com/get.json?hoge=%F0%9F%98%80") @@ -64,7 +62,7 @@ class TwitterAPISessionTests: XCTestCase { wait(for: [exp], timeout: 10) } - func testPOST() throws { + public func testPOST() throws { MockURLProtocol.requestAssert = { request in XCTAssertEqual(request.httpMethod, "POST") XCTAssertEqual(request.url?.absoluteString, "https://api.example.com/post.json") @@ -81,7 +79,7 @@ class TwitterAPISessionTests: XCTestCase { wait(for: [exp], timeout: 10) } - func testEmpty() throws { + public func testEmpty() throws { MockURLProtocol.requestAssert = { request in XCTAssertEqual(request.httpMethod, "GET") XCTAssertEqual(request.url?.absoluteString, "https://api.example.com/empty.json") @@ -95,9 +93,9 @@ class TwitterAPISessionTests: XCTestCase { wait(for: [exp], timeout: 10) } - func testStream() throws { + public func testStream() throws { let config = URLSessionConfiguration.default - config.protocolClasses = [MockURLProtocol.self] + config.protocolinternal classes = [MockURLProtocol.self] let session = TwitterAPISession( auth: .bearer("bearer_token"), @@ -132,9 +130,9 @@ class TwitterAPISessionTests: XCTestCase { // MARK: - Auth - func testBasicAuth() throws { + public func testBasicAuth() throws { let config = URLSessionConfiguration.default - config.protocolClasses = [MockURLProtocol.self] + config.protocolinternal classes = [MockURLProtocol.self] let session = TwitterAPISession( auth: .basic(apiKey: "api_key", apiSecretKey: "api_secret_key"), @@ -153,9 +151,9 @@ class TwitterAPISessionTests: XCTestCase { wait(for: [exp], timeout: 10) } - func testBearerAuth() throws { + public func testBearerAuth() throws { let config = URLSessionConfiguration.default - config.protocolClasses = [MockURLProtocol.self] + config.protocolinternal classes = [MockURLProtocol.self] let session = TwitterAPISession( auth: .bearer("bearer_token"), @@ -174,9 +172,9 @@ class TwitterAPISessionTests: XCTestCase { wait(for: [exp], timeout: 10) } - func testNoneAuth() throws { + public func testNoneAuth() throws { let config = URLSessionConfiguration.default - config.protocolClasses = [MockURLProtocol.self] + config.protocolinternal classes = [MockURLProtocol.self] let session = TwitterAPISession( auth: .none, @@ -195,9 +193,9 @@ class TwitterAPISessionTests: XCTestCase { wait(for: [exp], timeout: 10) } - func testOAuth10aAuth() throws { + public func testOAuth10aAuth() throws { let config = URLSessionConfiguration.default - config.protocolClasses = [MockURLProtocol.self] + config.protocolinternal classes = [MockURLProtocol.self] let session = TwitterAPISession( auth: .oauth10a(.init(consumerKey: "", consumerSecret: "", oauthToken: "", oauthTokenSecret: "")), configuration: config, @@ -215,9 +213,9 @@ class TwitterAPISessionTests: XCTestCase { wait(for: [exp], timeout: 10) } - func testOAuth20() throws { + public func testOAuth20() throws { let config = URLSessionConfiguration.default - config.protocolClasses = [MockURLProtocol.self] + config.protocolinternal classes = [MockURLProtocol.self] let session = TwitterAPISession( auth: .oauth20( .init( @@ -244,9 +242,9 @@ class TwitterAPISessionTests: XCTestCase { wait(for: [exp], timeout: 10) } - func testRequestOAuth20WithPKCEConfidentialClient() throws { + public func testRequestOAuth20WithPKCEConfidentialClient() throws { let config = URLSessionConfiguration.default - config.protocolClasses = [MockURLProtocol.self] + config.protocolinternal classes = [MockURLProtocol.self] let session = TwitterAPISession( auth: .requestOAuth20WithPKCE(.confidentialClient(clientID: "client_id", clientSecret: "client_secret")), configuration: config, @@ -264,9 +262,9 @@ class TwitterAPISessionTests: XCTestCase { wait(for: [exp], timeout: 10) } - func testRequestOAuth20WithPKCEPublicClient() throws { + public func testRequestOAuth20WithPKCEPublicClient() throws { let config = URLSessionConfiguration.default - config.protocolClasses = [MockURLProtocol.self] + config.protocolinternal classes = [MockURLProtocol.self] let session = TwitterAPISession( auth: .requestOAuth20WithPKCE(.publicClient), configuration: config, @@ -283,6 +281,10 @@ class TwitterAPISessionTests: XCTestCase { } wait(for: [exp], timeout: 10) } + + deinit { + // De-init Logic Here + } } extension Data { diff --git a/Tests/TwitterAPIKitTests/TwitterAuthenticationMethodTests.swift b/Tests/TwitterAPIKitTests/TwitterAuthenticationMethodTests.swift index 0686bc98..3635c44c 100644 --- a/Tests/TwitterAPIKitTests/TwitterAuthenticationMethodTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAuthenticationMethodTests.swift @@ -1,14 +1,10 @@ import TwitterAPIKit import XCTest -final class TwitterAuthenticationMethodTests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - +final internal class TwitterAuthenticationMethodTests: XCTestCase { // MARK: - OAuth10a - func testOAuth10aInit() throws { + public func testOAuth10aInit() throws { let oauth10 = TwitterAuthenticationMethod.OAuth10a( consumerKey: "ck", consumerSecret: "cs", @@ -24,7 +20,7 @@ final class TwitterAuthenticationMethodTests: XCTestCase { // MARK: - OAuth20 - func testOAuth20Init() throws { + public func testOAuth20Init() throws { do { let createdAt = Date(timeIntervalSince1970: 2) @@ -76,7 +72,7 @@ final class TwitterAuthenticationMethodTests: XCTestCase { } } - func testOAuth20Refresh() throws { + public func testOAuth20Refresh() throws { let createdAt = Date(timeIntervalSince1970: 2) var oauth20 = TwitterAuthenticationMethod.OAuth20( @@ -116,7 +112,7 @@ final class TwitterAuthenticationMethodTests: XCTestCase { XCTAssertEqual(oauth20.createdAt, refreshedAt) } - func testOAuth20Expired() throws { + public func testOAuth20Expired() throws { let createdAt = Date(timeIntervalSince1970: 0) let oauth20 = TwitterAuthenticationMethod.OAuth20( clientID: "", @@ -132,7 +128,7 @@ final class TwitterAuthenticationMethodTests: XCTestCase { XCTAssertTrue(oauth20.expired) } - func testOAuth20NotExpired() throws { + public func testOAuth20NotExpired() throws { let createdAt = Date() let oauth20 = TwitterAuthenticationMethod.OAuth20( clientID: "", @@ -147,4 +143,8 @@ final class TwitterAuthenticationMethodTests: XCTestCase { XCTAssertEqual(oauth20.expiresAt, createdAt.addingTimeInterval(10)) XCTAssertFalse(oauth20.expired) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/TwitterRateLimitTests.swift b/Tests/TwitterAPIKitTests/TwitterRateLimitTests.swift index be37578a..256232b4 100644 --- a/Tests/TwitterAPIKitTests/TwitterRateLimitTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterRateLimitTests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class TwitterRateLimitTests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class TwitterRateLimitTests: XCTestCase { + public func test() throws { XCTContext.runActivity(named: "from int") { _ in let header = [ "x-rate-limit-limit": 15, @@ -37,7 +33,7 @@ class TwitterRateLimitTests: XCTestCase { } } - func testNil() throws { + public func testNil() throws { XCTContext.runActivity(named: "limit") { _ in let header = [ "x-rate-limit-remaining": "3", @@ -64,4 +60,8 @@ class TwitterRateLimitTests: XCTestCase { XCTAssertNil(TwitterRateLimit(header: header)) } } + + deinit { + // De-init Logic Here + } } From fc88cf06732fefa6f2ee4518bd2a7eca7ed223b2 Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Sun, 11 May 2025 05:10:54 -0600 Subject: [PATCH 04/26] fix: fix more linting issues fixed a bunch of linting issues in this iteratio as well --- .../AuthAPI/TwitterOAuthTokenV1.swift | 2 +- ...hParticipantIdDmEventsRequestV2Tests.swift | 1 + ...PostDmConversationByIdRequestV2Tests.swift | 9 +-- .../APIv2/FieldsV2Tests.swift | 49 ++++++++---- .../TwitterOAuthAccessTokenV1Tests.swift | 8 +- .../TwitterAPIRequestTests.swift | 76 ++++++++++++------- .../TwitterAPISessionTests.swift | 6 +- .../TwitterAuthenticationMethodTests.swift | 20 +++-- .../TwitterRateLimitTests.swift | 8 +- 9 files changed, 118 insertions(+), 61 deletions(-) diff --git a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift index daf80c6e..3d24a4a4 100644 --- a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift @@ -5,7 +5,7 @@ public struct TwitterOAuthTokenV1 { public let oauthTokenSecret: String public let oauthCallbackConfirmed: Bool? - /// from: oauth_token=zlgW3QAAAAAA2_NZAAABfxxxxxxk&oauth_token_secret=pBYEQzdbyMqIcyDzyn0X7LDxxxxxxxxx&oauth_callback_confirmed=true + /// from: oauth_token=zlgW32_NZAAABk&oauth_token_secret=pBYEQzdbyMqIcyDzyn0X7LD&oauth_callback_confirmed=true public init?(queryStringData: Data) { let query = String(data: queryStringData, encoding: .utf8) diff --git a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsWithParticipantIdDmEventsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsWithParticipantIdDmEventsRequestV2Tests.swift index 122637d0..aec23843 100644 --- a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsWithParticipantIdDmEventsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsWithParticipantIdDmEventsRequestV2Tests.swift @@ -1,6 +1,7 @@ import TwitterAPIKit import XCTest +// swiftlint:disable:next type_name internal class GetDmConversationsWithParticipantIdDmEventsRequestV2Tests: XCTestCase { public func test() throws { let req = GetDmConversationsWithParticipantIdDmEventsRequestV2( diff --git a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationByIdRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationByIdRequestV2Tests.swift index 55ad826b..1577377e 100644 --- a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationByIdRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationByIdRequestV2Tests.swift @@ -1,8 +1,8 @@ import TwitterAPIKit import XCTest -internal internal class PostDmConversationByIdRequestV2Tests: XCTestCase { - public public func test() throws { +internal class PostDmConversationByIdRequestV2Tests: XCTestCase { + public func test() throws { let req = PostDmConversationByIdRequestV2( dmConversationID: "_d_id", attachments: ["1", "2"], @@ -22,7 +22,7 @@ internal internal class PostDmConversationByIdRequestV2Tests: XCTestCase { ) } - public public func testDefaultArg() throws { + public func testDefaultArg() throws { let req = PostDmConversationByIdRequestV2( dmConversationID: "_d_" ) @@ -37,5 +37,4 @@ internal internal class PostDmConversationByIdRequestV2Tests: XCTestCase { deinit { // De-init Logic Here } - - deinit { \ No newline at end of file +} diff --git a/Tests/TwitterAPIKitTests/APIv2/FieldsV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/FieldsV2Tests.swift index 6328b064..91f436c7 100644 --- a/Tests/TwitterAPIKitTests/APIv2/FieldsV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/FieldsV2Tests.swift @@ -28,10 +28,15 @@ internal class FieldsV2Tests: XCTestCase { .other("~~~"), ].shuffled() - // curl https://api.twitter.com/2/openapi.json | jq '.components.parameters.TweetFieldsParameter.schema.items.enum | sort | join(",")' + // curl https://api.twitter.com/2/openapi.json | \ + // jq '.components.parameters.TweetFieldsParameter.schema.items.enum | sort | join(",")' XCTAssertEqual( allCases.commaSeparatedString, - "attachments,author_id,context_annotations,conversation_id,created_at,entities,geo,id,in_reply_to_user_id,lang,non_public_metrics,organic_metrics,possibly_sensitive,promoted_metrics,public_metrics,referenced_tweets,reply_settings,source,text,withheld,~~~" + "attachments,author_id,context_annotations," + + "conversation_id,created_at,entities,geo,id," + + "in_reply_to_user_id,lang,non_public_metrics," + + "organic_metrics,possibly_sensitive,promoted_metrics," + + "public_metrics,referenced_tweets,reply_settings,source,text,withheld,~~~" ) } @@ -58,10 +63,13 @@ internal class FieldsV2Tests: XCTestCase { .other("~~"), ].shuffled() - // curl https://api.twitter.com/2/openapi.json | jq '.components.parameters.UserFieldsParameter.schema.items.enum | sort | join(",")' + // curl https://api.twitter.com/2/openapi.json | \ + // jq '.components.parameters.UserFieldsParameter.schema.items.enum | sort | join(",")' XCTAssertEqual( allCases.commaSeparatedString, - "created_at,description,entities,id,location,name,pinned_tweet_id,profile_image_url,protected,public_metrics,url,username,verified,withheld,~~" + "created_at,description,entities," + + "id,location,name,pinned_tweet_id," + + "profile_image_url,protected,public_metrics,url,username,verified,withheld,~~" ) } @@ -82,7 +90,8 @@ internal class FieldsV2Tests: XCTestCase { .other("~~~"), ].shuffled() - // curl https://api.twitter.com/2/openapi.json | jq '.components.parameters.PlaceFieldsParameter.schema.items.enum | sort | join(",")' + // curl https://api.twitter.com/2/openapi.json | \ + // jq '.components.parameters.PlaceFieldsParameter.schema.items.enum | sort | join(",")' XCTAssertEqual( allCases.commaSeparatedString, "contained_within,country,country_code,full_name,geo,id,name,place_type,~~~" @@ -103,7 +112,8 @@ internal class FieldsV2Tests: XCTestCase { .other("~~"), ].shuffled() - // curl https://api.twitter.com/2/openapi.json | jq '.components.parameters.PollFieldsParameter.schema.items.enum | sort | join(",")' + // curl https://api.twitter.com/2/openapi.json | \ + // jq '.components.parameters.PollFieldsParameter.schema.items.enum | sort | join(",")' XCTAssertEqual( allCases.commaSeparatedString, "duration_minutes,end_datetime,id,options,voting_status,~~" @@ -132,13 +142,17 @@ internal class FieldsV2Tests: XCTestCase { .other("~~~"), ].shuffled() - // curl https://api.twitter.com/2/openapi.json | jq '.components.parameters.MediaFieldsParameter.schema.items.enum | sort | join(",")' + // curl https://api.twitter.com/2/openapi.json | \ + // jq '.components.parameters.MediaFieldsParameter.schema.items.enum | sort | join(",")' - // Note: `url` is missing in https://developer.twitter.com/en/docs/twitter-api/data-dictionary/object-model/media + // Note: `url` is missing in + // https://developer.twitter.com/en/docs/twitter-api/data-dictionary/object-model/media // https://twittercommunity.com/t/documentation-for-media-object-missing-url-field/163062 XCTAssertEqual( allCases.commaSeparatedString, - "alt_text,duration_ms,height,media_key,non_public_metrics,organic_metrics,preview_image_url,promoted_metrics,public_metrics,type,url,variants,width,~~~" + "alt_text,duration_ms,height,media_key" + + ",non_public_metrics,organic_metrics,preview_image_url" + + ",promoted_metrics,public_metrics,type,url,variants,width,~~~" ) } @@ -159,7 +173,8 @@ internal class FieldsV2Tests: XCTestCase { .other("~"), ].shuffled() - // curl https://api.twitter.com/2/openapi.json | jq '.components.parameters.ListFieldsParameter.schema.items.enum | sort | join(",")' + // curl https://api.twitter.com/2/openapi.json | \ + // jq '.components.parameters.ListFieldsParameter.schema.items.enum | sort | join(",")' XCTAssertEqual( allCases.commaSeparatedString, "created_at,description,follower_count,id,member_count,name,owner_id,private,~" @@ -192,10 +207,13 @@ internal class FieldsV2Tests: XCTestCase { .other("~~"), ].shuffled() - // curl https://api.twitter.com/2/openapi.json | jq '.components.parameters.SpaceFieldsParameter.schema.items.enum | sort | join(",")' + // curl https://api.twitter.com/2/openapi.json | \ + // jq '.components.parameters.SpaceFieldsParameter.schema.items.enum | sort | join(",")' XCTAssertEqual( allCases.commaSeparatedString, - "created_at,creator_id,ended_at,host_ids,id,invited_user_ids,is_ticketed,lang,participant_count,scheduled_start,speaker_ids,started_at,state,subscriber_count,title,topic_ids,updated_at,~~" + "created_at,creator_id,ended_at,host_ids," + + "id,invited_user_ids,is_ticketed,lang,participant_count," + + "scheduled_start,speaker_ids,started_at,state,subscriber_count,title,topic_ids,updated_at,~~" ) } @@ -211,7 +229,8 @@ internal class FieldsV2Tests: XCTestCase { .other("~"), ].shuffled() - // curl https://api.twitter.com/2/openapi.json | jq '.components.parameters.TopicFieldsParameter.schema.items.enum | sort | join(",")' + // curl https://api.twitter.com/2/openapi.json | \ + // jq '.components.parameters.TopicFieldsParameter.schema.items.enum | sort | join(",")' XCTAssertEqual( allCases.commaSeparatedString, "description,id,name,~" @@ -235,7 +254,9 @@ internal class FieldsV2Tests: XCTestCase { .text, .other("~"), ].shuffled() - // curl https://api.twitter.com/2/openapi.json | jq '.components.parameters.DmEventFieldsParameter.schema.items.enum | sort | join(",")' + + // curl https://api.twitter.com/2/openapi.json | \ + // jq '.components.parameters.DmEventFieldsParameter.schema.items.enum | sort | join(",")' XCTAssertEqual( allCases.commaSeparatedString, "attachments,created_at,dm_conversation_id,event_type,id,participant_ids,referenced_tweets,sender_id,text,~" diff --git a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthAccessTokenV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthAccessTokenV1Tests.swift index 41b6afad..da8a25b0 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthAccessTokenV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthAccessTokenV1Tests.swift @@ -14,10 +14,12 @@ internal class TwitterOAuthAccessTokenV1Tests: XCTestCase { public func testQueryStringData() throws { let data = Data( - "oauth_token=token&oauth_token_secret=secret&user_id=uid&screen_name=name" - .utf8) + "oauth_token=token&oauth_token_secret=secret&user_id=uid&screen_name=name".utf8 + ) - let token = TwitterOAuthAccessTokenV1(queryStringData: data)! + guard let token = TwitterOAuthAccessTokenV1(queryStringData: data) else { + XCTFail("Failed to decode token Response") + } XCTAssertEqual(token.oauthToken, "token") XCTAssertEqual(token.oauthTokenSecret, "secret") diff --git a/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift index 3f6a60c8..794a53d0 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift @@ -20,10 +20,21 @@ internal class TwitterAPIRequestTests: XCTestCase { var bodyContentType: BodyContentType = .wwwFormUrlEncoded } - private let env = TwitterAPIEnvironment( - apiURL: .init(string: "https://api.example.com")!, - uploadURL: .init(string: "https://upload.example.com")! - ) + private var env: TwitterAPIEnvironment + + override public init() { + let apiUrl = URL(string: "https://api.example.com") + let uploadUrl = URL(string: "https://upload.example.com") + + guard let apiUrl, let uploadUrl else { + XCTFail("apiUrl / uploadUrl isn't valid") + } + + env = .init( + apiURL: apiUrl, + uploadURL: uploadUrl + ) + } public func testRequestURL() throws { XCTContext.runActivity(named: "api") { _ in @@ -40,17 +51,17 @@ internal class TwitterAPIRequestTests: XCTestCase { public func testParameterForOAuth() throws { XCTContext.runActivity(named: "wwwFormUrlEncoded") { _ in let req = MockTwitterAPIRequest(parameters: ["key": "value"], bodyContentType: .wwwFormUrlEncoded) - XCTAssertEqual(req.parameterForOAuth as! [String: String], ["key": "value"]) + XCTAssertEqual(req.parameterForOAuth as? [String: String], ["key": "value"]) } XCTContext.runActivity(named: "json") { _ in let req = MockTwitterAPIRequest(parameters: ["key": "value"], bodyContentType: .json) - XCTAssertEqual(req.parameterForOAuth as! [String: String], [:]) + XCTAssertEqual(req.parameterForOAuth as? [String: String], [:]) } XCTContext.runActivity(named: "multipartFormData") { _ in let req = MockTwitterAPIRequest(parameters: ["key": "value"], bodyContentType: .multipartFormData) - XCTAssertEqual(req.parameterForOAuth as! [String: String], [:]) + XCTAssertEqual(req.parameterForOAuth as? [String: String], [:]) } } @@ -63,8 +74,8 @@ internal class TwitterAPIRequestTests: XCTestCase { parameters: ["key": "value,🥓"] ) - XCTAssertEqual(req.queryParameters as! [String: String], ["key": "value,🥓"]) - XCTAssertEqual(req.bodyParameters as! [String: String], [:]) + XCTAssertEqual(req.queryParameters as? [String: String], ["key": "value,🥓"]) + XCTAssertEqual(req.bodyParameters as? [String: String], [:]) let urlReq = try req.buildRequest(environment: env) @@ -79,8 +90,8 @@ internal class TwitterAPIRequestTests: XCTestCase { parameters: ["key": "value,🥓"] ) - XCTAssertEqual(req.queryParameters as! [String: String], [:]) - XCTAssertEqual(req.bodyParameters as! [String: String], ["key": "value,🥓"]) + XCTAssertEqual(req.queryParameters as? [String: String], [:]) + XCTAssertEqual(req.bodyParameters as? [String: String], ["key": "value,🥓"]) let urlReq = try req.buildRequest(environment: env) @@ -95,8 +106,8 @@ internal class TwitterAPIRequestTests: XCTestCase { parameters: ["key": "value,🥓"] ) - XCTAssertEqual(req.queryParameters as! [String: String], [:]) - XCTAssertEqual(req.bodyParameters as! [String: String], ["key": "value,🥓"]) + XCTAssertEqual(req.queryParameters as? [String: String], [:]) + XCTAssertEqual(req.bodyParameters as? [String: String], ["key": "value,🥓"]) let urlReq = try req.buildRequest(environment: env) @@ -111,8 +122,8 @@ internal class TwitterAPIRequestTests: XCTestCase { parameters: ["key": "value,🥓"] ) - XCTAssertEqual(req.queryParameters as! [String: String], ["key": "value,🥓"]) - XCTAssertEqual(req.bodyParameters as! [String: String], [:]) + XCTAssertEqual(req.queryParameters as? [String: String], ["key": "value,🥓"]) + XCTAssertEqual(req.bodyParameters as? [String: String], [:]) let urlReq = try req.buildRequest(environment: env) @@ -146,9 +157,9 @@ internal class TwitterAPIRequestTests: XCTestCase { bodyParameters: ["body": "あ"] ) - XCTAssertEqual(req.parameters as! [String: String], [:]) - XCTAssertEqual(req.queryParameters as! [String: String], ["key": "value,🥓"]) - XCTAssertEqual(req.bodyParameters as! [String: String], ["body": "あ"]) + XCTAssertEqual(req.parameters as? [String: String], [:]) + XCTAssertEqual(req.queryParameters as? [String: String], ["key": "value,🥓"]) + XCTAssertEqual(req.bodyParameters as? [String: String], ["body": "あ"]) let urlReq = try req.buildRequest(environment: env) @@ -191,8 +202,18 @@ internal class TwitterAPIRequestTests: XCTestCase { let body = String(data: req.httpBody!, encoding: .utf8)! - let expect = - "--\(boundary)\r\nContent-Disposition: form-data; name=\"a\"\r\n\r\nvalue\r\n--\(boundary)\r\nContent-Disposition: form-data; name=\"b\"; filename=\"hoge.txt\"\r\nContent-Type: plain/text\r\n\r\nab\r\n--\(boundary)--\r\n" + let expect = """ + --\(boundary)\r\n + Content-Disposition: form-data; name="a"\r\n + \r\n + value\r\n + --\(boundary)\r\n + Content-Disposition: form-data; name="b"; filename="hoge.txt"\r\n + Content-Type: plain/text\r\n + \r\n + ab\r\n + --\(boundary)--\r\n + """ XCTAssertEqual(body, expect) @@ -219,7 +240,7 @@ internal class TwitterAPIRequestTests: XCTestCase { let body = try JSONSerialization.jsonObject(with: req.httpBody!, options: []) - XCTAssertEqual(body as! [String: String], ["key": "value,🥓"]) + XCTAssertEqual(body as? [String: String], ["key": "value,🥓"]) try XCTContext.runActivity( named: "Invalid", @@ -231,9 +252,11 @@ internal class TwitterAPIRequestTests: XCTestCase { bodyContentType: .json ).buildRequest(environment: env) ) { error in - if case .jsonSerializationFailed(obj: _) = (error as! TwitterAPIKitError).requestFailureReason { + if + let error = error as? TwitterAPIKitError, + case .jsonSerializationFailed(obj: _) = error.requestFailureReason { } else { - XCTFail() + XCTFail("Unknown Error") } } } @@ -252,10 +275,11 @@ internal class TwitterAPIRequestTests: XCTestCase { bodyContentType: .json ).buildRequest(environment: env) ) { error in - - if case .jsonSerializationFailed(obj: _) = (error as! TwitterAPIKitError).requestFailureReason { + if + let error = error as? TwitterAPIKitError, + case .jsonSerializationFailed(obj: _) = error.requestFailureReason { } else { - XCTFail() + XCTFail("Unknown Error") } } } diff --git a/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift b/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift index fee279ec..d243c3da 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift @@ -2,7 +2,7 @@ import XCTest @testable import TwitterAPIKit -private internal class GetTwitterReqeust: TwitterAPIRequest { +private class GetTwitterReqeust: TwitterAPIRequest { var method: HTTPMethod { return .get } var path: String { return "/get.json" } var parameters: [String: Any] { @@ -10,7 +10,7 @@ private internal class GetTwitterReqeust: TwitterAPIRequest { } } -private internal class PostTwitterReqeust: TwitterAPIRequest { +private class PostTwitterReqeust: TwitterAPIRequest { var method: HTTPMethod { return .post } var path: String { return "/post.json" } var parameters: [String: Any] { @@ -18,7 +18,7 @@ private internal class PostTwitterReqeust: TwitterAPIRequest { } } -private internal class EmptyRequest: TwitterAPIRequest { +private class EmptyRequest: TwitterAPIRequest { var method: HTTPMethod { return .get } var path: String { return "/empty.json" } var parameters: [String: Any] { diff --git a/Tests/TwitterAPIKitTests/TwitterAuthenticationMethodTests.swift b/Tests/TwitterAPIKitTests/TwitterAuthenticationMethodTests.swift index 3635c44c..110b44ea 100644 --- a/Tests/TwitterAPIKitTests/TwitterAuthenticationMethodTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAuthenticationMethodTests.swift @@ -1,7 +1,7 @@ import TwitterAPIKit import XCTest -final internal class TwitterAuthenticationMethodTests: XCTestCase { +internal final class TwitterAuthenticationMethodTests: XCTestCase { // MARK: - OAuth10a public func testOAuth10aInit() throws { @@ -54,8 +54,11 @@ final internal class TwitterAuthenticationMethodTests: XCTestCase { "expires_in" : 7200, "access_token" : "" } - """.utf8) - let token = try TwitterOAuth2AccessToken(jsonData: tokenJSON)! + """.utf8 + ) + guard let token = try TwitterOAuth2AccessToken(jsonData: tokenJSON) else { + XCTFail("Failed to decode token Response") + } let oauth20 = TwitterAuthenticationMethod.OAuth20( clientID: "_client_id_", token: token, @@ -65,7 +68,7 @@ final internal class TwitterAuthenticationMethodTests: XCTestCase { XCTAssertEqual(oauth20.clientID, "_client_id_") XCTAssertEqual(oauth20.scope, ["tweet.write", "tweet.read", "offline.access"]) XCTAssertEqual(oauth20.tokenType, "bearer") - XCTAssertEqual(oauth20.expiresIn, 7200) + XCTAssertEqual(oauth20.expiresIn, 7_200) XCTAssertEqual(oauth20.accessToken, "") XCTAssertEqual(oauth20.refreshToken, "") XCTAssertEqual(oauth20.createdAt, createdAt) @@ -98,15 +101,18 @@ final internal class TwitterAuthenticationMethodTests: XCTestCase { "expires_in" : 7200, "access_token" : "" } - """.utf8) - let token = try TwitterOAuth2AccessToken(jsonData: tokenJSON)! + """.utf8 + ) + guard let token = try TwitterOAuth2AccessToken(jsonData: tokenJSON) else { + XCTFail("Failed to decode token Response") + } oauth20.refresh(token: token, refreshedAt: refreshedAt) XCTAssertEqual(oauth20.clientID, "client_id") XCTAssertEqual(oauth20.scope, ["tweet.write", "tweet.read", "offline.access"]) XCTAssertEqual(oauth20.tokenType, "bearer") - XCTAssertEqual(oauth20.expiresIn, 7200) + XCTAssertEqual(oauth20.expiresIn, 7_200) XCTAssertEqual(oauth20.accessToken, "") XCTAssertEqual(oauth20.refreshToken, "") XCTAssertEqual(oauth20.createdAt, refreshedAt) diff --git a/Tests/TwitterAPIKitTests/TwitterRateLimitTests.swift b/Tests/TwitterAPIKitTests/TwitterRateLimitTests.swift index 256232b4..4be21cee 100644 --- a/Tests/TwitterAPIKitTests/TwitterRateLimitTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterRateLimitTests.swift @@ -10,7 +10,9 @@ internal class TwitterRateLimitTests: XCTestCase { "x-rate-limit-reset": 1_644_417_523, ] - let rateLimit = TwitterRateLimit(header: header)! + guard let rateLimit = TwitterRateLimit(header: header) else { + XCTFail("Failed to decode rateLimit Response") + } XCTAssertEqual(rateLimit.limit, 15) XCTAssertEqual(rateLimit.remaining, 13) @@ -25,7 +27,9 @@ internal class TwitterRateLimitTests: XCTestCase { "x-rate-limit-reset": "1644417524", ] - let rateLimit = TwitterRateLimit(header: header)! + guard let rateLimit = TwitterRateLimit(header: header) else { + XCTFail("Failed to decode rateLimit Response") + } XCTAssertEqual(rateLimit.limit, 15) XCTAssertEqual(rateLimit.remaining, 3) From 30293edd987ac70a174a52efef8e1154ff341fe5 Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Sun, 11 May 2025 14:40:47 -0600 Subject: [PATCH 05/26] feat: fix more linting issues --- .../GetAccountSettingsRequestV1.swift | 4 ++ ...GetAccountVerifyCredentialsRequestV1.swift | 14 +++-- .../PostAccountSettingsRequestV1.swift | 4 ++ ...tAccountUpdateProfileBannerRequestV1.swift | 18 +++--- ...stAccountUpdateProfileImageRequestV1.swift | 14 +++-- .../PostAccountUpdateProfileRequestV1.swift | 22 ++++--- .../TwitterAPIKit/APIv1/Help/HelpAPIv1.swift | 4 ++ .../Requests/GetHelpLanguagesRequestV1.swift | 4 ++ .../APIv1/Media/MediaAPIv1.swift | 52 +++++++++------- .../GetUploadMediaStatusRequestV1.swift | 4 ++ .../PostMediaMetadataCreateRequestV1.swift | 12 ++-- .../PostMediaSubtitlesCreateRequestV1.swift | 14 +++-- .../PostMediaSubtitlesDeleteRequestV1.swift | 14 +++-- .../Requests/UploadMediaAppendRequestV1.swift | 10 ++-- .../UploadMediaFinalizeRequestV1.swift | 4 ++ .../Requests/UploadMediaInitRequestV1.swift | 18 +++--- .../APIv1/Media/UploadMediaEntity.swift | 6 +- .../TwitterAPIKit/AuthAPI/OAuth10aAPI.swift | 4 ++ .../TwitterAPIKit/AuthAPI/OAuth20API.swift | 7 ++- .../GetOAuth2AuthorizeRequestV1.swift | 22 ++++--- .../GetOAuthAuthenticateRequestV1.swift | 10 +++- .../Requests/GetOAuthAuthorizeRequestV1.swift | 14 +++-- .../PostOAuth2AccessTokenRequestV2.swift | 18 +++--- .../PostOAuth2InvalidateTokenRequestV1.swift | 10 +++- .../PostOAuth2RefreshTokenRequestV2.swift | 12 ++-- .../PostOAuth2RevokeTokenRequestV2.swift | 13 ++-- .../Requests/PostOAuth2TokenRequestV1.swift | 10 +++- .../PostOAuthAccessTokenRequestV1.swift | 12 ++-- .../PostOAuthInvalidateTokenRequestV1.swift | 4 ++ .../PostOAuthRequestTokenRequestV1.swift | 12 ++-- .../{AuthAPI.swift => TwitterAuthAPI.swift} | 4 ++ .../AuthAPI/TwitterOAuth2AccessToken.swift | 2 +- .../AuthAPI/TwitterOAuth2BearerToken.swift | 2 +- .../AuthAPI/TwitterOAuthAccessTokenV1.swift | 7 ++- .../AuthAPI/TwitterOAuthTokenV1.swift | 2 +- .../TwitterAPISessionDelegatedJSONTask.swift | 26 ++++---- Sources/TwitterAPIKit/TwitterAPIKit.swift | 15 ++--- .../TwitterAPIKit/TwitterAPIResponse.swift | 8 +-- Sources/TwitterAPIKit/TwitterAPISession.swift | 5 +- .../GetDmEventsRequestV2Tests.swift | 2 +- .../APIv2/ExpansionsV2Tests.swift | 19 ++++-- .../DeleteListsMembersRequestV2Tests.swift | 2 +- ...DeleteUsersPinnedListsRequestV2Tests.swift | 2 +- ...weetsSearchStreamRulesRequestV2Tests.swift | 3 +- ...esReverseChronologicalRequestV2Tests.swift | 1 + .../Extensions/ConcurrencyTests.swift | 60 +++++++++++-------- .../Mock/MockURLProtocol.swift | 18 +++--- .../TwitterAPIFailedTaskTests.swift | 21 ++++--- ...tterAPISessionDelegatedJSONTaskTests.swift | 24 ++++---- ...witterAPISessionSpecializedTaskTests.swift | 30 +++++----- .../TwitterAPIKitTests.swift | 2 +- .../TwitterAPIResponseTests.swift | 16 ++--- .../TwitterAPISessionTests.swift | 20 +++---- 53 files changed, 408 insertions(+), 249 deletions(-) rename Sources/TwitterAPIKit/AuthAPI/{AuthAPI.swift => TwitterAuthAPI.swift} (82%) diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountSettingsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountSettingsRequestV1.swift index 65764226..e26c44cf 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountSettingsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountSettingsRequestV1.swift @@ -15,4 +15,8 @@ open class GetAccountSettingsRequestV1: TwitterAPIRequest { } public init() {} + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountVerifyCredentialsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountVerifyCredentialsRequestV1.swift index bf516eac..2b1885c2 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountVerifyCredentialsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountVerifyCredentialsRequestV1.swift @@ -15,11 +15,11 @@ open class GetAccountVerifyCredentialsRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - skipStatus.map { p["skip_status"] = $0 } - includeEmail.map { p["include_email"] = $0 } - includeEntities.map { p["include_entities"] = $0 } - return p + var params = [String: Any]() + skipStatus.map { params["skip_status"] = $0 } + includeEmail.map { params["include_email"] = $0 } + includeEntities.map { params["include_entities"] = $0 } + return params } public init( @@ -31,4 +31,8 @@ open class GetAccountVerifyCredentialsRequestV1: TwitterAPIRequest { self.includeEmail = includeEmail self.includeEntities = includeEntities } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift index 0c1ef111..152d9a06 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift @@ -48,4 +48,8 @@ open class PostAccountSettingsRequestV1: TwitterAPIRequest { self.sleepTimeEnabled = sleepTimeEnabled self.trendLocationWoeid = trendLocationWoeid } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileBannerRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileBannerRequestV1.swift index e732246b..8b1b3bb8 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileBannerRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileBannerRequestV1.swift @@ -17,13 +17,13 @@ open class PostAccountUpdateProfileBannerRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["banner"] = banner.base64EncodedString() - width.map { p["width"] = $0 } - height.map { p["height"] = $0 } - offsetTop.map { p["offset_top"] = $0 } - offsetLeft.map { p["offset_left"] = $0 } - return p + var params = [String: Any]() + params["banner"] = banner.base64EncodedString() + width.map { params["width"] = $0 } + height.map { params["height"] = $0 } + offsetTop.map { params["offset_top"] = $0 } + offsetLeft.map { params["offset_left"] = $0 } + return params } public init( @@ -39,4 +39,8 @@ open class PostAccountUpdateProfileBannerRequestV1: TwitterAPIRequest { self.offsetTop = offsetTop self.offsetLeft = offsetLeft } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileImageRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileImageRequestV1.swift index 2b77285e..27d5e1bb 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileImageRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileImageRequestV1.swift @@ -15,11 +15,11 @@ open class PostAccountUpdateProfileImageRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["image"] = image.base64EncodedString() - skipStatus.map { p["skip_status"] = $0 } - includeEntities.map { p["include_entities"] = $0 } - return p + var params = [String: Any]() + params["image"] = image.base64EncodedString() + skipStatus.map { params["skip_status"] = $0 } + includeEntities.map { params["include_entities"] = $0 } + return params } public init( @@ -31,4 +31,8 @@ open class PostAccountUpdateProfileImageRequestV1: TwitterAPIRequest { self.skipStatus = skipStatus self.includeEntities = includeEntities } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileRequestV1.swift index a04af31c..6f3fbd55 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileRequestV1.swift @@ -20,15 +20,15 @@ open class PostAccountUpdateProfileRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - url.map { p["url"] = $0 } - name.map { p["name"] = $0 } - location.map { p["location"] = $0 } - skipStatus.map { p["skip_status"] = $0 } - description.map { p["description"] = $0 } - includeEntities.map { p["include_entities"] = $0 } - profileLinkColor.map { p["profile_link_color"] = $0 } - return p + var params = [String: Any]() + url.map { params["url"] = $0 } + name.map { params["name"] = $0 } + location.map { params["location"] = $0 } + skipStatus.map { params["skip_status"] = $0 } + description.map { params["description"] = $0 } + includeEntities.map { params["include_entities"] = $0 } + profileLinkColor.map { params["profile_link_color"] = $0 } + return params } public init( @@ -48,4 +48,8 @@ open class PostAccountUpdateProfileRequestV1: TwitterAPIRequest { self.includeEntities = includeEntities self.profileLinkColor = profileLinkColor } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Help/HelpAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Help/HelpAPIv1.swift index ed8d746b..24342c52 100644 --- a/Sources/TwitterAPIKit/APIv1/Help/HelpAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Help/HelpAPIv1.swift @@ -7,4 +7,8 @@ open class HelpAPIv1: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Help/Requests/GetHelpLanguagesRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Help/Requests/GetHelpLanguagesRequestV1.swift index d179dee7..cf5e29e0 100644 --- a/Sources/TwitterAPIKit/APIv1/Help/Requests/GetHelpLanguagesRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Help/Requests/GetHelpLanguagesRequestV1.swift @@ -15,4 +15,8 @@ open class GetHelpLanguagesRequestV1: TwitterAPIRequest { } public init() {} + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift index 9404a1b0..9bf3ecaf 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift @@ -27,13 +27,12 @@ open class MediaAPIv1: TwitterAPIBase { _ request: UploadMediaAppendRequestV1, maxBytes: Int = 5_242_880 /* 5MB */ ) -> [TwitterAPISessionSpecializedTask] { - let tasks = request.segments(maxBytes: maxBytes) + return request.segments(maxBytes: maxBytes) .map { req in uploadMediaAppend(req).specialized { _ in req.mediaID } } - return tasks } /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/post-media-upload-finalize @@ -63,17 +62,17 @@ open class MediaAPIv1: TwitterAPIBase { queue: .processQueue ) { [weak self] response in - guard let self = self else { return } + guard let self else { return } let mediaID: String do { mediaID = try response.result.get().mediaID } catch { - completionHandler(response.map { $0.mediaID }) + completionHandler(response.map(\.mediaID)) return } - self.uploadMediaAppendSplitChunks( + uploadMediaAppendSplitChunks( .init( mediaID: mediaID, filename: parameters.filename, @@ -81,38 +80,41 @@ open class MediaAPIv1: TwitterAPIBase { media: parameters.media, segmentIndex: 0 ), maxBytes: parameters.uploadChunkSize ?? 5_242_880 - ).responseObject(queue: .processQueue) { [weak self] responses in + ) + .responseObject(queue: .processQueue) { [weak self] responses in - guard let self = self else { return } + guard let self else { return } - if let error = responses.first(where: { $0.isError }) { + if let error = responses.first { $0.isError } { completionHandler(error) return } - self.uploadMediaFinalize(.init(mediaID: mediaID)) - .responseDecodable(type: TwitterAPIClient.UploadMediaFinalizeResponse.self, queue: .processQueue) { - [weak self] response in - guard let self = self else { return } + uploadMediaFinalize(.init(mediaID: mediaID)) + .responseDecodable( + type: TwitterAPIClient.UploadMediaFinalizeResponse.self, + queue: .processQueue + ) { [weak self] response in + guard let self else { return } var finalizeResult: TwitterAPIClient.UploadMediaFinalizeResponse do { finalizeResult = try response.result.get() } catch { - completionHandler(response.map { $0.mediaID }) + completionHandler(response.map(\.mediaID)) return } guard let processingInfo = finalizeResult.processingInfo else { - completionHandler(response.map { $0.mediaID }) + completionHandler(response.map(\.mediaID)) return } - self.waitMediaProcessing( + waitMediaProcessing( mediaID: mediaID, initialWaitSec: processingInfo.checkAfterSecs ?? 0 ) { response in - completionHandler(response.map { $0.mediaID }) + completionHandler(response.map(\.mediaID)) } } } @@ -127,8 +129,8 @@ open class MediaAPIv1: TwitterAPIBase { ) -> Void ) { DispatchQueue.global(qos: .default).asyncAfter(deadline: .now() + .seconds(initialWaitSec)) { [weak self] in - guard let self = self else { return } - self.waitMediaProcessing(mediaID: mediaID, completionHandler: completionHandler) + guard let self else { return } + waitMediaProcessing(mediaID: mediaID, completionHandler: completionHandler) } } @@ -139,9 +141,11 @@ open class MediaAPIv1: TwitterAPIBase { ) -> Void ) { _ = getUploadMediaStatus(.init(mediaID: mediaID)) - .responseDecodable(type: TwitterAPIClient.UploadMediaStatusResponse.self, queue: .processQueue) { - [weak self] response in - guard let self = self else { return } + .responseDecodable( + type: TwitterAPIClient.UploadMediaStatusResponse.self, + queue: .processQueue + ) { [weak self] response in + guard let self else { return } do { let success = try response.result.get() @@ -150,7 +154,7 @@ open class MediaAPIv1: TwitterAPIBase { case let .pending(checkAfterSecs: sec), let .inProgress(checkAfterSecs: sec, progressPercent: _): - self.waitMediaProcessing( + waitMediaProcessing( mediaID: mediaID, initialWaitSec: sec, completionHandler: completionHandler @@ -197,4 +201,8 @@ open class MediaAPIv1: TwitterAPIBase { ) -> TwitterAPISessionDataTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Media/Requests/GetUploadMediaStatusRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Media/Requests/GetUploadMediaStatusRequestV1.swift index a56a08b3..d6903941 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/Requests/GetUploadMediaStatusRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/Requests/GetUploadMediaStatusRequestV1.swift @@ -26,4 +26,8 @@ open class GetUploadMediaStatusRequestV1: TwitterAPIRequest { public init(mediaID: String) { self.mediaID = mediaID } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaMetadataCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaMetadataCreateRequestV1.swift index 5d71b2ad..2bfd6430 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaMetadataCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaMetadataCreateRequestV1.swift @@ -22,12 +22,12 @@ open class PostMediaMetadataCreateRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() + var params = [String: Any]() - p["media_id"] = mediaID - p["alt_text"] = ["text": altText] + params["media_id"] = mediaID + params["alt_text"] = ["text": altText] - return p + return params } public init( @@ -37,4 +37,8 @@ open class PostMediaMetadataCreateRequestV1: TwitterAPIRequest { self.mediaID = mediaID self.altText = altText } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesCreateRequestV1.swift index 94612255..536e7723 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesCreateRequestV1.swift @@ -40,10 +40,10 @@ open class PostMediaSubtitlesCreateRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["media_id"] = mediaID - p["media_category"] = mediaCategory - p["subtitle_info"] = [ + var params = [String: Any]() + params["media_id"] = mediaID + params["media_category"] = mediaCategory + params["subtitle_info"] = [ "subtitles": subtitles.map { [ "media_id": $0.mediaID, @@ -52,7 +52,7 @@ open class PostMediaSubtitlesCreateRequestV1: TwitterAPIRequest { ] }, ] - return p + return params } public init( @@ -64,4 +64,8 @@ open class PostMediaSubtitlesCreateRequestV1: TwitterAPIRequest { self.mediaCategory = mediaCategory self.subtitles = subtitles } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesDeleteRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesDeleteRequestV1.swift index 17e39844..5189a073 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesDeleteRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesDeleteRequestV1.swift @@ -24,15 +24,15 @@ open class PostMediaSubtitlesDeleteRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["media_id"] = mediaID - p["media_category"] = mediaCategory - p["subtitle_info"] = [ + var params = [String: Any]() + params["media_id"] = mediaID + params["media_category"] = mediaCategory + params["subtitle_info"] = [ "subtitles": subtitleLanguageCodes.map { ["language_code": $0] }, ] - return p + return params } public init( @@ -44,4 +44,8 @@ open class PostMediaSubtitlesDeleteRequestV1: TwitterAPIRequest { self.mediaCategory = mediaCategory self.subtitleLanguageCodes = subtitleLanguageCodes } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaAppendRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaAppendRequestV1.swift index 3c1beced..414284f8 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaAppendRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaAppendRequestV1.swift @@ -30,14 +30,12 @@ open class UploadMediaAppendRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - let p: [String: MultipartFormDataPart] = [ + return [ "command": .value(name: "command", value: command), "media_id": .value(name: "media_id", value: mediaID), "media": .data(name: "media", value: media, filename: filename, mimeType: mimeType), "segment_index": .value(name: "segment_index", value: segmentIndex), ] - - return p } public init( @@ -55,7 +53,7 @@ open class UploadMediaAppendRequestV1: TwitterAPIRequest { } open func segments(maxBytes: Int) -> [UploadMediaAppendRequestV1] { - var requests = [UploadMediaAppendRequestV1]() + var requests = [Self]() let totalDataSize = media.count var currentSegmentIndex = 0 repeat { @@ -74,4 +72,8 @@ open class UploadMediaAppendRequestV1: TwitterAPIRequest { return requests } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaFinalizeRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaFinalizeRequestV1.swift index 83af73ff..dedf4d2e 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaFinalizeRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaFinalizeRequestV1.swift @@ -27,4 +27,8 @@ open class UploadMediaFinalizeRequestV1: TwitterAPIRequest { public init(mediaID: String) { self.mediaID = mediaID } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaInitRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaInitRequestV1.swift index 069ca178..427828f9 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaInitRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaInitRequestV1.swift @@ -21,13 +21,13 @@ open class UploadMediaInitRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["command"] = command - p["total_bytes"] = totalBytes - p["media_type"] = mediaType - mediaCategory.map { p["media_category"] = $0 } - additionalOwners.map { p["additional_owners"] = $0.joined(separator: ",") } - return p + var params = [String: Any]() + params["command"] = command + params["total_bytes"] = totalBytes + params["media_type"] = mediaType + mediaCategory.map { params["media_category"] = $0 } + additionalOwners.map { params["additional_owners"] = $0.joined(separator: ",") } + return params } public init( @@ -41,4 +41,8 @@ open class UploadMediaInitRequestV1: TwitterAPIRequest { self.mediaCategory = mediaCategory self.additionalOwners = additionalOwners } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift b/Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift index f3b225dc..7c09eedf 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift @@ -53,15 +53,15 @@ public extension TwitterAPIClient { } public var enumState: State { - if state == "pending", let checkAfterSecs = checkAfterSecs { + if state == "pending", let checkAfterSecs{ return .pending(checkAfterSecs: checkAfterSecs) } - if state == "in_progress", let checkAfterSecs = checkAfterSecs, let progressPercent = progressPercent { + if state == "in_progress", let checkAfterSecs, let progressPercent { return .inProgress(checkAfterSecs: checkAfterSecs, progressPercent: progressPercent) } - if state == "failed", let error = error { + if state == "failed", let error { return .failed(error: error) } diff --git a/Sources/TwitterAPIKit/AuthAPI/OAuth10aAPI.swift b/Sources/TwitterAPIKit/AuthAPI/OAuth10aAPI.swift index 14760d1f..91b68638 100644 --- a/Sources/TwitterAPIKit/AuthAPI/OAuth10aAPI.swift +++ b/Sources/TwitterAPIKit/AuthAPI/OAuth10aAPI.swift @@ -63,4 +63,8 @@ open class OAuth10aAPI: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/AuthAPI/OAuth20API.swift b/Sources/TwitterAPIKit/AuthAPI/OAuth20API.swift index 443c516c..02013745 100644 --- a/Sources/TwitterAPIKit/AuthAPI/OAuth20API.swift +++ b/Sources/TwitterAPIKit/AuthAPI/OAuth20API.swift @@ -33,7 +33,8 @@ open class OAuth20API: TwitterAPIBase { /// https://developer.twitter.com/en/docs/authentication/api-reference/invalidate_bearer_token /// - /// May not work. {"errors":[{"code":348,"message":"Client application is not permitted to to invalidate this token."}]} + /// May not work. + /// {"errors":[{"code":348,"message":"Client application is not permitted to to invalidate this token."}]} /// https://twittercommunity.com/t/oauth2-invalidate-token-not-working-for-app-only-authentication-tokens/133108 /// https://twittercommunity.com/t/invalidate-bearer-client-application-not-permitted/162761 public func postInvalidateOAuth2BearerToken( @@ -80,4 +81,8 @@ open class OAuth20API: TwitterAPIBase { ) -> TwitterAPISessionDataTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuth2AuthorizeRequestV1.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuth2AuthorizeRequestV1.swift index aa6070de..8e8a305d 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuth2AuthorizeRequestV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuth2AuthorizeRequestV1.swift @@ -24,15 +24,15 @@ open class GetOAuth2AuthorizeRequestV1: TwitterAPIRequest { } public var parameters: [String: Any] { - var p = [String: String]() - - p["response_type"] = responseType - p["client_id"] = clientID - p["redirect_uri"] = redirectURI - p["state"] = state - p["code_challenge"] = codeChallenge - p["code_challenge_method"] = codeChallengeMethod - p["scope"] = scopes.joined(separator: " ") + var params = [String: String]() + + params["response_type"] = responseType + params["client_id"] = clientID + params["redirect_uri"] = redirectURI + params["state"] = state + params["code_challenge"] = codeChallenge + params["code_challenge_method"] = codeChallengeMethod + params["scope"] = scopes.joined(separator: " ") return p } @@ -53,4 +53,8 @@ open class GetOAuth2AuthorizeRequestV1: TwitterAPIRequest { self.codeChallengeMethod = codeChallengeMethod self.scopes = scopes } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthenticateRequestV1.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthenticateRequestV1.swift index bd98fa82..3af15fb9 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthenticateRequestV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthenticateRequestV1.swift @@ -15,11 +15,11 @@ open class GetOAuthAuthenticateRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["oauth_token"] = oauthToken + var params = [String: Any]() + params["oauth_token"] = oauthToken forceLogin.map { p["force_login"] = $0 } screenName.map { p["screen_name"] = $0 } - return p + return params } public init( @@ -31,4 +31,8 @@ open class GetOAuthAuthenticateRequestV1: TwitterAPIRequest { self.forceLogin = forceLogin self.screenName = screenName } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthorizeRequestV1.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthorizeRequestV1.swift index 09d1a5d9..77f843cb 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthorizeRequestV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthorizeRequestV1.swift @@ -15,11 +15,11 @@ open class GetOAuthAuthorizeRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["oauth_token"] = oauthToken - forceLogin.map { p["force_login"] = $0 } - screenName.map { p["screen_name"] = $0 } - return p + var params = [String: Any]() + params["oauth_token"] = oauthToken + forceLogin.map { params["force_login"] = $0 } + screenName.map { params["screen_name"] = $0 } + return params } public init( @@ -31,4 +31,8 @@ open class GetOAuthAuthorizeRequestV1: TwitterAPIRequest { self.forceLogin = forceLogin self.screenName = screenName } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2AccessTokenRequestV2.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2AccessTokenRequestV2.swift index eb8e0461..aa59b87e 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2AccessTokenRequestV2.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2AccessTokenRequestV2.swift @@ -17,13 +17,13 @@ open class PostOAuth2AccessTokenRequestV2: TwitterAPIRequest { } public var parameters: [String: Any] { - var p = [String: String]() - p["code"] = code - p["grant_type"] = grantType - clientID.map { p["client_id"] = $0 } - p["redirect_uri"] = redirectURI - p["code_verifier"] = codeVerifier - return p + var params = [String: String]() + params["code"] = code + params["grant_type"] = grantType + clientID.map { params["client_id"] = $0 } + params["redirect_uri"] = redirectURI + params["code_verifier"] = codeVerifier + return params } public init( @@ -39,4 +39,8 @@ open class PostOAuth2AccessTokenRequestV2: TwitterAPIRequest { self.redirectURI = redirectURI self.codeVerifier = codeVerifier } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2InvalidateTokenRequestV1.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2InvalidateTokenRequestV1.swift index e56c5606..6d2cbb06 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2InvalidateTokenRequestV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2InvalidateTokenRequestV1.swift @@ -13,9 +13,9 @@ open class PostOAuth2InvalidateTokenRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["access_token"] = accessToken - return p + var params = [String: Any]() + params["access_token"] = accessToken + return params } public init( @@ -23,4 +23,8 @@ open class PostOAuth2InvalidateTokenRequestV1: TwitterAPIRequest { ) { self.accessToken = accessToken } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RefreshTokenRequestV2.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RefreshTokenRequestV2.swift index 88e18e56..8b56a6b9 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RefreshTokenRequestV2.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RefreshTokenRequestV2.swift @@ -16,13 +16,13 @@ open class PostOAuth2RefreshTokenRequestV2: TwitterAPIRequest { } public var parameters: [String: Any] { - var p = [String: String]() + var params = [String: String]() - p["refresh_token"] = refreshToken - p["grant_type"] = grantType + params["refresh_token"] = refreshToken + params["grant_type"] = grantType clientID.map { p["client_id"] = $0 } - return p + return params } public init( @@ -34,4 +34,8 @@ open class PostOAuth2RefreshTokenRequestV2: TwitterAPIRequest { self.grantType = grantType self.clientID = clientID } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RevokeTokenRequestV2.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RevokeTokenRequestV2.swift index fd18cb0c..c5d2cb89 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RevokeTokenRequestV2.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RevokeTokenRequestV2.swift @@ -5,7 +5,8 @@ open class PostOAuth2RevokeTokenRequestV2: TwitterAPIRequest { public let token: String /// Required for Public Client. public let clientID: String? - /// Maybe need this parameter when you got {"error":"invalid_request","error_description":"Missing required parameter [token_type_hint]."} + /// Maybe need this parameter when you got + /// {"error":"invalid_request","error_description":"Missing required parameter [token_type_hint]."} /// access_token or refresh_token /// > https://datatracker.ietf.org/doc/html/rfc7009#section-2.1 public let tokenTypeHint: String? @@ -19,12 +20,12 @@ open class PostOAuth2RevokeTokenRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: String]() - p["token"] = token + var params = [String: String]() + params["token"] = token tokenTypeHint.map { p["token_type_hint"] = $0 } clientID.map { p["client_id"] = $0 } - return p + return params } public init( @@ -36,4 +37,8 @@ open class PostOAuth2RevokeTokenRequestV2: TwitterAPIRequest { self.clientID = clientID self.tokenTypeHint = tokenTypeHint } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2TokenRequestV1.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2TokenRequestV1.swift index ba12963f..e043a9ff 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2TokenRequestV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2TokenRequestV1.swift @@ -13,9 +13,9 @@ open class PostOAuth2TokenRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["grant_type"] = grantType - return p + var params = [String: Any]() + params["grant_type"] = grantType + return params } public init( @@ -23,4 +23,8 @@ open class PostOAuth2TokenRequestV1: TwitterAPIRequest { ) { self.grantType = grantType } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthAccessTokenRequestV1.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthAccessTokenRequestV1.swift index f48c1db5..d04c09cb 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthAccessTokenRequestV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthAccessTokenRequestV1.swift @@ -14,10 +14,10 @@ open class PostOAuthAccessTokenRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["oauth_token"] = oauthToken - p["oauth_verifier"] = oauthVerifier - return p + var params = [String: Any]() + params["oauth_token"] = oauthToken + params["oauth_verifier"] = oauthVerifier + return params } public init( @@ -27,4 +27,8 @@ open class PostOAuthAccessTokenRequestV1: TwitterAPIRequest { self.oauthToken = oauthToken self.oauthVerifier = oauthVerifier } + + deinit { + // De-init logic here + } } diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthInvalidateTokenRequestV1.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthInvalidateTokenRequestV1.swift index ab6b5cb0..2d1b3dcc 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthInvalidateTokenRequestV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthInvalidateTokenRequestV1.swift @@ -15,4 +15,8 @@ open class PostOAuthInvalidateTokenRequestV1: TwitterAPIRequest { } public init() {} + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthRequestTokenRequestV1.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthRequestTokenRequestV1.swift index 3de1c393..65b204c2 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthRequestTokenRequestV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthRequestTokenRequestV1.swift @@ -17,10 +17,10 @@ open class PostOAuthRequestTokenRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["oauth_callback"] = oauthCallback - xAuthAccessType.map { p["x_auth_access_type"] = $0 } - return p + var params = [String: Any]() + params["oauth_callback"] = oauthCallback + xAuthAccessType.map { params["x_auth_access_type"] = $0 } + return params } public init( @@ -30,4 +30,8 @@ open class PostOAuthRequestTokenRequestV1: TwitterAPIRequest { self.oauthCallback = oauthCallback self.xAuthAccessType = xAuthAccessType } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/AuthAPI/AuthAPI.swift b/Sources/TwitterAPIKit/AuthAPI/TwitterAuthAPI.swift similarity index 82% rename from Sources/TwitterAPIKit/AuthAPI/AuthAPI.swift rename to Sources/TwitterAPIKit/AuthAPI/TwitterAuthAPI.swift index 9e0e7619..0689e6f6 100644 --- a/Sources/TwitterAPIKit/AuthAPI/AuthAPI.swift +++ b/Sources/TwitterAPIKit/AuthAPI/TwitterAuthAPI.swift @@ -6,4 +6,8 @@ open class TwitterAuthAPI { oauth10a = .init(session: session) oauth20 = .init(session: session) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift index 08987e34..d6fdd442 100644 --- a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift +++ b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift @@ -47,7 +47,7 @@ public struct TwitterOAuth2AccessToken { } extension TwitterOAuth2AccessToken { - static func fromResponse(data: Data) throws -> Self { + public static func fromResponse(data: Data) throws -> Self { do { guard let token = try TwitterOAuth2AccessToken(jsonData: data) else { throw TwitterAPIKitError.responseSerializeFailed( diff --git a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift index 9a4638de..cea6cef3 100644 --- a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift +++ b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift @@ -5,7 +5,7 @@ public struct TwitterOAuth2BearerToken { public let accessToken: String public init?(jsonData: Data) throws { - // {"token_type":"bearer","access_token":"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%2FAAAAAAAAAAAAAAAAAAAA%3DAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"} + // {"token_type":"bearer","access_token":"ACCESS_TOKEN"} let json = try JSONSerialization.jsonObject(with: jsonData, options: []) diff --git a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift index cc9069cf..3be2afc9 100644 --- a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift @@ -4,7 +4,8 @@ public struct TwitterOAuthAccessTokenV1 { public let oauthToken: String public let oauthTokenSecret: String - // According to RFC5849, there is no mention of the user_id and screen_name parameters, but TwitterAPI does include them in its response. + // According to RFC5849, there is no mention of the user_id and screen_name parameters, + // but TwitterAPI does include them in its response. public let userID: String? public let screenName: String? @@ -27,8 +28,8 @@ public struct TwitterOAuthAccessTokenV1 { self.oauthToken = oauthToken self.oauthTokenSecret = oauthTokenSecret - userID = comp.queryItems?.first(where: { $0.name == "user_id" })?.value - screenName = comp.queryItems?.first(where: { $0.name == "screen_name" })?.value + userID = comp.queryItems?.first { $0.name == "user_id" }?.value + screenName = comp.queryItems?.first { $0.name == "screen_name" }?.value } public init( diff --git a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift index 3d24a4a4..78d9db4f 100644 --- a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift @@ -19,7 +19,7 @@ public struct TwitterOAuthTokenV1 { } let oauthCallbackConfirmed = comp.queryItems? - .first(where: { $0.name == "oauth_callback_confirmed" }) + .first { $0.name == "oauth_callback_confirmed" } .map { $0.value == "true" } self.oauthToken = oauthToken diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedJSONTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedJSONTask.swift index 22949a63..022b08fa 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedJSONTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedJSONTask.swift @@ -1,6 +1,6 @@ import Foundation -protocol TwitterAPISessionDelegatedJSONTaskDelegate: AnyObject { +internal protocol TwitterAPISessionDelegatedJSONTaskDelegate: AnyObject { func didFinishQueueInJsonTask(task: TwitterAPISessionDelegatedJSONTask) } @@ -21,7 +21,7 @@ public class TwitterAPISessionDelegatedJSONTask: TwitterAPISessionJSONTask, Twit return task.httpResponse } - weak var delegate: TwitterAPISessionDelegatedJSONTaskDelegate? + internal weak var delegate: TwitterAPISessionDelegatedJSONTaskDelegate? public private(set) var error: Error? public var data: Data? { @@ -31,7 +31,7 @@ public class TwitterAPISessionDelegatedJSONTask: TwitterAPISessionJSONTask, Twit public private(set) var completed = false - let task: TwitterAPISessionTask + internal let task: TwitterAPISessionTask private let taskQueue: DispatchQueue private var dataChunk: Data = .init() @@ -52,27 +52,27 @@ public class TwitterAPISessionDelegatedJSONTask: TwitterAPISessionJSONTask, Twit } } - func append(chunk: Data) { + private func append(chunk: Data) { dataChunk.append(chunk) } - func complete(error: Error?) { + private func complete(error: Error?) { self.error = error completed = true group.notify(queue: taskQueue) { [weak self] in - guard let self = self else { return } + guard let self else { return } self.delegate?.didFinishQueueInJsonTask(task: self) } taskQueue.resume() } private func getResponse() -> TwitterAPIResponse { - guard completed, let data = data else { + guard completed, let data else { fatalError("Request not completed yet.") } - guard error == nil, let httpResponse = httpResponse else { + guard error == nil, let httpResponse else { return TwitterAPIResponse( request: currentRequest, response: httpResponse, @@ -93,7 +93,9 @@ public class TwitterAPISessionDelegatedJSONTask: TwitterAPISessionJSONTask, Twit .responseFailed( reason: .unacceptableStatusCode( statusCode: httpResponse.statusCode, error: .init(data: data), rateLimit: rateLimit - ))), + ) + ) + ), rateLimit: rateLimit ) } @@ -114,12 +116,12 @@ public class TwitterAPISessionDelegatedJSONTask: TwitterAPISessionJSONTask, Twit ) -> Self { group.enter() taskQueue.async { [weak self] in - guard let self = self else { return } + guard let self else { return } - let response = self.getResponse().flatMap(transform) + let response = getResponse().flatMap(transform) queue.async { [weak self] in - guard let self = self else { return } + guard let self else { return } block(response) self.group.leave() } diff --git a/Sources/TwitterAPIKit/TwitterAPIKit.swift b/Sources/TwitterAPIKit/TwitterAPIKit.swift index 7d93ccc8..b8f763dd 100644 --- a/Sources/TwitterAPIKit/TwitterAPIKit.swift +++ b/Sources/TwitterAPIKit/TwitterAPIKit.swift @@ -5,20 +5,21 @@ import Foundation #endif public enum TwitterBaseURLType { - case twitter case api + case twitter case upload } +/// Twitter Environment Setup public struct TwitterAPIEnvironment { - let twitterURL: URL - let apiURL: URL - let uploadURL: URL + public let twitterURL: URL + public let apiURL: URL + public let uploadURL: URL public init( - twitterURL: URL = URL(string: "https://twitter.com")!, - apiURL: URL = URL(string: "https://api.twitter.com")!, - uploadURL: URL = URL(string: "https://upload.twitter.com")! + twitterURL: URL? = URL(string: "https://twitter.com"), + apiURL: URL? = URL(string: "https://api.twitter.com"), + uploadURL: URL? = URL(string: "https://upload.twitter.com") ) { self.twitterURL = twitterURL self.apiURL = apiURL diff --git a/Sources/TwitterAPIKit/TwitterAPIResponse.swift b/Sources/TwitterAPIKit/TwitterAPIResponse.swift index 7e9ac903..e840636a 100644 --- a/Sources/TwitterAPIKit/TwitterAPIResponse.swift +++ b/Sources/TwitterAPIKit/TwitterAPIResponse.swift @@ -52,10 +52,10 @@ public extension TwitterAPIResponse { func tryMap(_ transform: (Success) throws -> NewSuccess) -> TwitterAPIResponse { let nextResult: Result = result.flatMap { data in - let r: Result = .init { + let result: Result = .init { try transform(data) } - return r.mapError { TwitterAPIKitError(error: $0) } + return result.mapError { TwitterAPIKitError(error: $0) } } return .init( request: request, @@ -116,7 +116,7 @@ public extension TwitterAPIResponse { + "\n\(rateLimitStr)" + "\n\(error.localizedDescription)" + "\n<" - + "\n\(body.count == 0 ? "Empty body" : body.unescapeSlash)" + + "\n\(body.isEmpty ? "Empty body" : body.unescapeSlash)" case .success: return "-- Request success --" + "\n\(request)" @@ -127,7 +127,7 @@ public extension TwitterAPIResponse { + "\n\(responseContentLength)" + "\n\(rateLimitStr)" + "\n<" - + "\n\(body.count == 0 ? "Empty body" : body.unescapeSlash)" + + "\n\(body.isEmpty ? "Empty body" : body.unescapeSlash)" } } } diff --git a/Sources/TwitterAPIKit/TwitterAPISession.swift b/Sources/TwitterAPIKit/TwitterAPISession.swift index 2b6738e6..7009144f 100644 --- a/Sources/TwitterAPIKit/TwitterAPISession.swift +++ b/Sources/TwitterAPIKit/TwitterAPISession.swift @@ -4,7 +4,8 @@ open class TwitterAPISession { public private(set) var auth: TwitterAuthenticationMethod public let session: URLSession public let environment: TwitterAPIEnvironment - let sessionDelegate = TwitterAPISessionDelegate() + internal let sessionDelegate = TwitterAPISessionDelegate() + public init( auth: TwitterAuthenticationMethod, configuration: URLSessionConfiguration, @@ -95,7 +96,7 @@ open class TwitterAPISession { return urlRequest } - func refreshOAuth20Token(_ refreshedToken: TwitterAuthenticationMethod.OAuth20) { + internal func refreshOAuth20Token(_ refreshedToken: TwitterAuthenticationMethod.OAuth20) { guard case .oauth20 = auth else { return } diff --git a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmEventsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmEventsRequestV2Tests.swift index 3f0ebe25..5cf0d4a1 100644 --- a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmEventsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmEventsRequestV2Tests.swift @@ -1,7 +1,7 @@ import TwitterAPIKit import XCTest -class GetDmEventsRequestV2Tests: XCTestCase { +internal class GetDmEventsRequestV2Tests: XCTestCase { public func test() throws { let req = GetDmEventsRequestV2( maxResults: 10, diff --git a/Tests/TwitterAPIKitTests/APIv2/ExpansionsV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/ExpansionsV2Tests.swift index fcd271c5..f17f2e27 100644 --- a/Tests/TwitterAPIKitTests/APIv2/ExpansionsV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/ExpansionsV2Tests.swift @@ -16,10 +16,13 @@ internal class ExpansionsV2Tests: XCTestCase { .other("~~~"), ] - // curl https://api.twitter.com/2/openapi.json | jq '.components.parameters.TweetExpansionsParameter.schema.items.enum | sort | join(",")' + // curl https://api.twitter.com/2/openapi.json | \ + // jq '.components.parameters.TweetExpansionsParameter.schema.items.enum | sort | join(",")' XCTAssertEqual( allCases.commaSeparatedString, - "attachments.media_keys,attachments.poll_ids,author_id,entities.mentions.username,geo.place_id,in_reply_to_user_id,referenced_tweets.id,referenced_tweets.id.author_id,~~~" + "attachments.media_keys,attachments.poll_ids,author_id," + + "entities.mentions.username,geo.place_id,in_reply_to_user_id," + + "referenced_tweets.id,referenced_tweets.id.author_id,~~~" ) } @@ -33,7 +36,8 @@ internal class ExpansionsV2Tests: XCTestCase { .other("~~~"), ] - // curl https://api.twitter.com/2/openapi.json | jq '.components.parameters.UserExpansionsParameter.schema.items.enum | sort | join(",")' + // curl https://api.twitter.com/2/openapi.json | \ + // jq '.components.parameters.UserExpansionsParameter.schema.items.enum | sort | join(",")' XCTAssertEqual( allCases.commaSeparatedString, "pinned_tweet_id,~~~" @@ -50,7 +54,8 @@ internal class ExpansionsV2Tests: XCTestCase { .other("~~~"), ] - // curl https://api.twitter.com/2/openapi.json | jq '.components.parameters.ListExpansionsParameter.schema.items.enum | sort | join(",")' + // curl https://api.twitter.com/2/openapi.json | \ + // jq '.components.parameters.ListExpansionsParameter.schema.items.enum | sort | join(",")' XCTAssertEqual( allCases.commaSeparatedString, "owner_id,~~~" @@ -71,7 +76,8 @@ internal class ExpansionsV2Tests: XCTestCase { .other("~~~"), ] - // curl https://api.twitter.com/2/openapi.json | jq '.components.parameters.SpaceExpansionsParameter.schema.items.enum | sort | join(",")' + // curl https://api.twitter.com/2/openapi.json | \ + // jq '.components.parameters.SpaceExpansionsParameter.schema.items.enum | sort | join(",")' XCTAssertEqual( allCases.commaSeparatedString, "creator_id,host_ids,invited_user_ids,speaker_ids,topic_ids,~~~" @@ -91,7 +97,8 @@ internal class ExpansionsV2Tests: XCTestCase { .other("~~~"), ].shuffled() - // curl https://api.twitter.com/2/openapi.json | jq '.components.parameters.DmEventExpansionsParameter.schema.items.enum | sort | join(",")' + // curl https://api.twitter.com/2/openapi.json | \ + // jq '.components.parameters.DmEventExpansionsParameter.schema.items.enum | sort | join(",")' XCTAssertEqual( allCases.commaSeparatedString, "attachments.media_keys,participant_ids,referenced_tweets.id,sender_id,~~~" diff --git a/Tests/TwitterAPIKitTests/APIv2/List/DeleteListsMembersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/DeleteListsMembersRequestV2Tests.swift index 57126fb6..805dbb7a 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/DeleteListsMembersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/DeleteListsMembersRequestV2Tests.swift @@ -18,4 +18,4 @@ internal class DeleteListsMembersRequestV2Tests: XCTestCase { deinit { // De-init Logic Here } -} \ No newline at end of file +} diff --git a/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersPinnedListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersPinnedListsRequestV2Tests.swift index 97f15d20..d1de269b 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersPinnedListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersPinnedListsRequestV2Tests.swift @@ -18,4 +18,4 @@ internal class DeleteUsersPinnedListsRequestV2Tests: XCTestCase { deinit { // De-init Logic Here } -} \ No newline at end of file +} diff --git a/Tests/TwitterAPIKitTests/APIv2/Stream/PostTweetsSearchStreamRulesRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Stream/PostTweetsSearchStreamRulesRequestV2Tests.swift index ff2d7b65..a2afd4e2 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Stream/PostTweetsSearchStreamRulesRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Stream/PostTweetsSearchStreamRulesRequestV2Tests.swift @@ -9,7 +9,8 @@ internal class PostTweetsSearchStreamRulesRequestV2Tests: XCTestCase { operation: .add([ .init(value: "value", tag: "tag"), .init(value: "hoge"), - ])) + ]) + ) XCTAssertEqual(add.method, .post) XCTAssertEqual(add.path, "/2/tweets/search/stream/rules") diff --git a/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTimelinesReverseChronologicalRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTimelinesReverseChronologicalRequestV2Tests.swift index cd0138c9..e381536d 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTimelinesReverseChronologicalRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTimelinesReverseChronologicalRequestV2Tests.swift @@ -1,6 +1,7 @@ import TwitterAPIKit import XCTest +// swiftlint:disable:next type_name internal class GetUsersTimelinesReverseChronologicalRequestV2Tests: XCTestCase { public func test() throws { let req = GetUsersTimelinesReverseChronologicalRequestV2( diff --git a/Tests/TwitterAPIKitTests/Extensions/ConcurrencyTests.swift b/Tests/TwitterAPIKitTests/Extensions/ConcurrencyTests.swift index 0fab3cc4..a9155f80 100644 --- a/Tests/TwitterAPIKitTests/Extensions/ConcurrencyTests.swift +++ b/Tests/TwitterAPIKitTests/Extensions/ConcurrencyTests.swift @@ -18,7 +18,10 @@ import XCTest task.append(chunk: Data(":\"value\"}".utf8)) mockTask.httpResponse = .init( - url: URL(string: "http://example.com")!, statusCode: 200, httpVersion: "1.1", headerFields: [:] + url: URL(string: "http://example.com"), + statusCode: 200, + httpVersion: "1.1", + headerFields: [:] ) task.complete(error: nil) @@ -36,7 +39,7 @@ import XCTest do { let obj = await responseObj.success - AssertEqualAnyDict(obj as! [String: Any], ["key": "value"]) + AssertEqualAnyDict(obj as? [String: Any], ["key": "value"]) } do { @@ -45,8 +48,8 @@ import XCTest } do { - let a = await aResponse.success - XCTAssertEqual(a, "a") + let aSuccess = await aResponse.success + XCTAssertEqual(aSuccess, "a") } } @@ -73,22 +76,22 @@ import XCTest do { let error = await response.error - XCTAssertTrue(error!.isCancelled) + XCTAssertTrue(error.isCancelled) } do { let error = await responseObj.error - XCTAssertTrue(error!.isCancelled) + XCTAssertTrue(error.isCancelled) } do { let error = await responseDecodable.error - XCTAssertTrue(error!.isCancelled) + XCTAssertTrue(error.isCancelled) } do { let error = await aResponse.error - XCTAssertTrue(error!.isCancelled) + XCTAssertTrue(error.isCancelled) } XCTAssertTrue(mockTask.cancelled) @@ -102,11 +105,11 @@ import XCTest ) let asyncTask = Task { () -> [TwitterAPIResponse] in - async let r0 = task.responseData.map { _ in () } - async let r1 = task.responseObject.map { _ in () } - async let r2 = task.responseDecodable(type: DecodableObj.self).map { _ in () } - async let r3 = task.specialized { _ in () }.responseObject - return await [r0, r1, r2, r3] + async let rt0 = task.responseData.map { _ in () } + async let rt1 = task.responseObject.map { _ in () } + async let rt2 = task.responseDecodable(type: DecodableObj.self).map { _ in () } + async let rt3 = task.specialized { _ in () }.responseObject + return await [rt0, rt1, rt2, rt3] } DispatchQueue.global(qos: .default).async { @@ -117,12 +120,12 @@ import XCTest task.complete(error: URLError(.cancelled)) } - let rs = await asyncTask.value + let rss = await asyncTask.value XCTAssertTrue(mockTask.cancelled) XCTAssertTrue(asyncTask.isCancelled) XCTAssertEqual(rs.count, 4) - for r in rs { - XCTAssertTrue(r.error!.isCancelled) + for res in rss { + XCTAssertTrue(r.error.isCancelled) } } @@ -132,7 +135,10 @@ import XCTest currentRequest: nil, originalRequest: nil, httpResponse: .init( - url: URL(string: "http://example.com")!, statusCode: 200, httpVersion: "1.1", headerFields: [:] + url: URL(string: "http://example.com"), + statusCode: 200, + httpVersion: "1.1", + headerFields: [:] ) ) @@ -156,7 +162,7 @@ import XCTest case 3: XCTAssertEqual(response.success.map { String(data: $0, encoding: .utf8) }, "あ") default: - XCTFail() + XCTFail("Invalid Response") } count += 1 if count == 4 { @@ -199,13 +205,17 @@ import XCTest currentRequest: nil, originalRequest: nil, httpResponse: .init( - url: URL(string: "http://example.com")!, statusCode: 200, httpVersion: "1.1", headerFields: [:] + url: URL(string: "http://example.com"), + statusCode: 200, + httpVersion: "1.1", + headerFields: [:] ) ) let task = TwitterAPISessionDelegatedStreamTask(task: mockTask) - let stream = task.streamResponse(queue: .main).map { resp in resp.map { String(data: $0, encoding: .utf8)! } - } + let stream = task.streamResponse( + queue: .main + ).map {resp in resp.compactMap { String(data: $0, encoding: .utf8) }} let asyncTask = Task { var count = 0 for await resp in stream { @@ -219,7 +229,7 @@ import XCTest case 2: XCTAssertTrue(resp.isError) default: - XCTFail() + XCTFail('Invalid Response') } count += 1 } @@ -234,8 +244,8 @@ import XCTest await asyncTask.value } - deinit { - // De-init Logic Here - } + deinit { + // De-init Logic Here + } } #endif diff --git a/Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift b/Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift index 77acdea3..a5451c93 100644 --- a/Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift +++ b/Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift @@ -1,8 +1,8 @@ import Foundation -class MockURLProtocol: URLProtocol { - static var requestHandler: ((URLRequest) throws -> (HTTPURLResponse, Data?))? - static var requestAssert: ((URLRequest) throws -> Void)? +internal class MockURLProtocol: URLProtocol { + public static var requestHandler: ((URLRequest) throws -> (HTTPURLResponse, Data?))? + public static var requestAssert: ((URLRequest) throws -> Void)? override class func canInit(with _: URLRequest) -> Bool { return true @@ -13,13 +13,13 @@ class MockURLProtocol: URLProtocol { } static func cleanup() { - MockURLProtocol.requestHandler = nil - MockURLProtocol.requestAssert = nil + Self.requestHandler = nil + Self.requestAssert = nil } override func startLoading() { let handler: (URLRequest) throws -> (HTTPURLResponse, Data?) - if let h = MockURLProtocol.requestHandler { + if let h = Self.requestHandler { handler = h } else { handler = { request in @@ -30,7 +30,7 @@ class MockURLProtocol: URLProtocol { } do { - try MockURLProtocol.requestAssert?(request) + try Self.requestAssert?(request) let (response, data): (URLResponse, Data?) = try handler(request) client?.urlProtocol(self, didReceive: response, cacheStoragePolicy: .notAllowed) @@ -46,4 +46,8 @@ class MockURLProtocol: URLProtocol { } override func stopLoading() {} + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPIFailedTaskTests.swift b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPIFailedTaskTests.swift index e2cea585..2b5664bd 100644 --- a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPIFailedTaskTests.swift +++ b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPIFailedTaskTests.swift @@ -1,12 +1,8 @@ import TwitterAPIKit import XCTest -class TwitterAPIFailedTaskTests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class TwitterAPIFailedTaskTests: XCTestCase { + public func test() throws { let task = TwitterAPIFailedTask(.responseFailed(reason: .invalidResponse(error: nil))) XCTAssertTrue(task.error.isResponseFailed) @@ -59,8 +55,11 @@ class TwitterAPIFailedTaskTests: XCTestCase { dispatchPrecondition(condition: .onQueue(.main)) exp.fulfill() } - .responseDecodable(type: DecodableObj.self, decoder: JSONDecoder(), queue: .global(qos: .userInteractive)) { - response in + .responseDecodable( + type: DecodableObj.self, + decoder: JSONDecoder(), + queue: .global(qos: .userInteractive) + ) { response in XCTAssertNotNil(response.error) XCTAssertTrue(response.isError) @@ -71,7 +70,7 @@ class TwitterAPIFailedTaskTests: XCTestCase { wait(for: [exp], timeout: 10) } - func testStream() throws { + public func testStream() throws { let task = TwitterAPIFailedTask(.responseFailed(reason: .invalidResponse(error: nil))) let exp = expectation(description: "") @@ -91,4 +90,8 @@ class TwitterAPIFailedTaskTests: XCTestCase { wait(for: [exp], timeout: 10) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift index 5a9a4832..0f7f1924 100644 --- a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift +++ b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift @@ -2,16 +2,12 @@ import XCTest @testable import TwitterAPIKit -struct DecodableObj: Decodable, Equatable { - let key: String +internal struct DecodableObj: Decodable, Equatable { + public let key: String } -class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func testSuccess() throws { +internal class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { + public func testSuccess() throws { let mockTask = MockTwitterAPISessionTask(taskIdentifier: 1) let task = TwitterAPISessionDelegatedJSONTask( @@ -78,7 +74,7 @@ class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { wait(for: [exp], timeout: 10) } - func testInvalidStatusCode() throws { + public func testInvalidStatusCode() throws { let mockTask = MockTwitterAPISessionTask(taskIdentifier: 1) let task = TwitterAPISessionDelegatedJSONTask( @@ -126,7 +122,7 @@ class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { wait(for: [exp], timeout: 10) } - func testCompleteWithError() throws { + public func testCompleteWithError() throws { let mockTask = MockTwitterAPISessionTask(taskIdentifier: 1) let task = TwitterAPISessionDelegatedJSONTask( @@ -162,7 +158,7 @@ class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { wait(for: [exp], timeout: 10) } - func testCancel() throws { + public func testCancel() throws { let mockTask = MockTwitterAPISessionTask(taskIdentifier: 1) let task = TwitterAPISessionDelegatedJSONTask( @@ -201,9 +197,13 @@ class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { XCTAssertTrue(mockTask.cancelled) } - func testEXC_BAD_INSTRUCTION() throws { + public func testEXC_BAD_INSTRUCTION() throws { // EXC_BAD_INSTRUCTION will occur if the Dispatch Queue is released while suspended. let mockTask = MockTwitterAPISessionTask(taskIdentifier: 1) _ = TwitterAPISessionDelegatedJSONTask(task: mockTask) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionSpecializedTaskTests.swift b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionSpecializedTaskTests.swift index 7b173aed..f0be0251 100644 --- a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionSpecializedTaskTests.swift +++ b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionSpecializedTaskTests.swift @@ -2,12 +2,8 @@ import XCTest @testable import TwitterAPIKit -class TwitterAPISessionSpecializedTaskTests: XCTestCase { - override func setUpWithError() throws {} - - override func tearDownWithError() throws {} - - func test() throws { +internal class TwitterAPISessionSpecializedTaskTests: XCTestCase { + public func test() throws { let mockTask = MockTwitterAPISessionDataTask( data: Data("hoge".utf8), taskIdentifier: 10, currentRequest: nil, originalRequest: nil, httpResponse: nil ) @@ -18,18 +14,20 @@ class TwitterAPISessionSpecializedTaskTests: XCTestCase { let exp = expectation(description: "") exp.expectedFulfillmentCount = 2 - task.responseObject(queue: .main) { response in - XCTAssertEqual(response.success, "hoge") - exp.fulfill() - }.responseData { response in - XCTAssertEqual(response.success, Data("hoge".utf8)) - exp.fulfill() - } + task + .responseObject(queue: .main) { response in + XCTAssertEqual(response.success, "hoge") + exp.fulfill() + } + .responseData { response in + XCTAssertEqual(response.success, Data("hoge".utf8)) + exp.fulfill() + } wait(for: [exp], timeout: 100) } - func testArray() throws { + public func testArray() throws { let mockTask1 = MockTwitterAPISessionDataTask( data: Data("hoge1".utf8), taskIdentifier: 10, currentRequest: nil, originalRequest: nil, httpResponse: nil ) @@ -57,4 +55,8 @@ class TwitterAPISessionSpecializedTaskTests: XCTestCase { wait(for: [exp], timeout: 100) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/TwitterAPIKitTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIKitTests.swift index 4723e030..7b6f9ad6 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIKitTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIKitTests.swift @@ -1,7 +1,7 @@ import TwitterAPIKit import XCTest -final internal class TwitterAPIKitTests: XCTestCase { +internal final class TwitterAPIKitTests: XCTestCase { public func testExample() throws {} deinit { diff --git a/Tests/TwitterAPIKitTests/TwitterAPIResponseTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIResponseTests.swift index 21c94747..ce2f1d06 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIResponseTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIResponseTests.swift @@ -9,7 +9,9 @@ internal class TwitterAPIResponseTests: XCTestCase { "x-rate-limit-reset": "10000", ]) let data = Data("{}".utf8) - let url = URL(string: "https://example.com")! + guard let url = URL(string: "https://example.com") else { + XCTFail("Failed to decode url Response") + } let response: TwitterAPIResponse = TwitterAPIResponse( request: .init(url: url), @@ -28,17 +30,17 @@ internal class TwitterAPIResponseTests: XCTestCase { XCTAssertTrue(response.prettyString.hasPrefix("-- Request success --")) XCTContext.runActivity(named: "map") { _ in - let mapped = response.map { data in - try! JSONSerialization.jsonObject(with: data, options: []) + let mapped = response.compactMap { data in + try? JSONSerialization.jsonObject(with: data, options: []) } - XCTAssertEqual(mapped.success as! [String: String], [:]) + XCTAssertEqual(mapped.success as? [String: String], [:]) } XCTContext.runActivity(named: "tryMap") { _ in let mapped = response.tryMap { data in try JSONSerialization.jsonObject(with: data, options: []) } - XCTAssertEqual(mapped.success as! [String: String], [:]) + XCTAssertEqual(mapped.success as? [String: String], [:]) } XCTContext.runActivity(named: "tryMapWithError") { _ in @@ -46,7 +48,7 @@ internal class TwitterAPIResponseTests: XCTestCase { throw NSError(domain: "", code: 0, userInfo: nil) } XCTAssertTrue(mapped.isError) - XCTAssertTrue(mapped.error!.isUnkonwn) + XCTAssertTrue(mapped.error.isMockURLProtocolUnkonwn) XCTAssertTrue(mapped.prettyString.hasPrefix("-- Request failure --")) XCTContext.runActivity(named: "mapError") { _ in @@ -54,7 +56,7 @@ internal class TwitterAPIResponseTests: XCTestCase { .responseFailed(reason: .invalidResponse(error: nil)) } - XCTAssertTrue(errored.error!.isResponseFailed) + XCTAssertTrue(errored.error.isResponseFailed) } } diff --git a/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift b/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift index d243c3da..3fa8ce42 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift @@ -30,12 +30,12 @@ internal class TwitterAPISessionTests: XCTestCase { private let environment = TwitterAPIEnvironment( twitterURL: URL(string: "https://twitter.example.com")!, apiURL: URL(string: "https://api.example.com")!, - uploadURL: URL(string: "https://upload.example.com")! + uploadURL: URL(string: "https://upload.xample.com")! ) lazy var session: TwitterAPISession = { let config = URLSessionConfiguration.default - config.protocolinternal classes = [MockURLProtocol.self] + config.protocolClasses = [MockURLProtocol.self] return TwitterAPISession( auth: .oauth10a(.init(consumerKey: "", consumerSecret: "", oauthToken: "", oauthTokenSecret: "")), @@ -95,7 +95,7 @@ internal class TwitterAPISessionTests: XCTestCase { public func testStream() throws { let config = URLSessionConfiguration.default - config.protocolinternal classes = [MockURLProtocol.self] + config.protocolClasses = [MockURLProtocol.self] let session = TwitterAPISession( auth: .bearer("bearer_token"), @@ -132,7 +132,7 @@ internal class TwitterAPISessionTests: XCTestCase { public func testBasicAuth() throws { let config = URLSessionConfiguration.default - config.protocolinternal classes = [MockURLProtocol.self] + config.protocolClasses = [MockURLProtocol.self] let session = TwitterAPISession( auth: .basic(apiKey: "api_key", apiSecretKey: "api_secret_key"), @@ -153,7 +153,7 @@ internal class TwitterAPISessionTests: XCTestCase { public func testBearerAuth() throws { let config = URLSessionConfiguration.default - config.protocolinternal classes = [MockURLProtocol.self] + config.protocolClasses = [MockURLProtocol.self] let session = TwitterAPISession( auth: .bearer("bearer_token"), @@ -174,7 +174,7 @@ internal class TwitterAPISessionTests: XCTestCase { public func testNoneAuth() throws { let config = URLSessionConfiguration.default - config.protocolinternal classes = [MockURLProtocol.self] + config.protocolClasses = [MockURLProtocol.self] let session = TwitterAPISession( auth: .none, @@ -195,7 +195,7 @@ internal class TwitterAPISessionTests: XCTestCase { public func testOAuth10aAuth() throws { let config = URLSessionConfiguration.default - config.protocolinternal classes = [MockURLProtocol.self] + config.protocolClasses = [MockURLProtocol.self] let session = TwitterAPISession( auth: .oauth10a(.init(consumerKey: "", consumerSecret: "", oauthToken: "", oauthTokenSecret: "")), configuration: config, @@ -215,7 +215,7 @@ internal class TwitterAPISessionTests: XCTestCase { public func testOAuth20() throws { let config = URLSessionConfiguration.default - config.protocolinternal classes = [MockURLProtocol.self] + config.protocolClasses = [MockURLProtocol.self] let session = TwitterAPISession( auth: .oauth20( .init( @@ -244,7 +244,7 @@ internal class TwitterAPISessionTests: XCTestCase { public func testRequestOAuth20WithPKCEConfidentialClient() throws { let config = URLSessionConfiguration.default - config.protocolinternal classes = [MockURLProtocol.self] + config.protocolClasses = [MockURLProtocol.self] let session = TwitterAPISession( auth: .requestOAuth20WithPKCE(.confidentialClient(clientID: "client_id", clientSecret: "client_secret")), configuration: config, @@ -264,7 +264,7 @@ internal class TwitterAPISessionTests: XCTestCase { public func testRequestOAuth20WithPKCEPublicClient() throws { let config = URLSessionConfiguration.default - config.protocolinternal classes = [MockURLProtocol.self] + config.protocolClasses = [MockURLProtocol.self] let session = TwitterAPISession( auth: .requestOAuth20WithPKCE(.publicClient), configuration: config, From 3aa823315b0a9eb5a725708c4d0b37e5bfcea584 Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Mon, 12 May 2025 05:42:38 -0600 Subject: [PATCH 06/26] feat: convert p -> params --- ...tAccountRemoveProfileBannerRequestV1.swift | 5 ++ .../PostAccountSettingsRequestV1.swift | 16 +++--- ...tApplicationRateLimitStatusRequestV1.swift | 6 +-- .../Requests/GetBlocksIDsRequestV1.swift | 8 +-- .../Requests/GetBlocksListRequestV1.swift | 10 ++-- .../Requests/GetMutesUsersIDsRequestV1.swift | 8 +-- .../Requests/GetMutesUsersListRequestV1.swift | 10 ++-- .../Requests/PostBlocksCreateRequestV1.swift | 10 ++-- .../Requests/PostBlocksDestroyRequestV1.swift | 10 ++-- .../PostMutesUsersCreateRequestV1.swift | 6 +-- .../PostMutesUsersDestroyRequestV1.swift | 6 +-- .../PostUsersReportSpamRequestV1.swift | 8 +-- .../GetCollectionsEntriesRequestV1.swift | 12 ++--- .../GetCollectionsListRequestV1.swift | 12 ++--- .../GetCollectionsShowRequestV1.swift | 6 +-- .../PostCollectionsCreateRequestV1.swift | 12 ++--- .../PostCollectionsDestroyRequestV1.swift | 6 +-- .../PostCollectionsEntriesAddRequestV1.swift | 12 ++--- ...ostCollectionsEntriesCurateRequestV1.swift | 8 +-- .../PostCollectionsEntriesMoveRequestV1.swift | 12 ++--- ...ostCollectionsEntriesRemoveRequestV1.swift | 8 +-- .../PostCollectionsUpdateRequestV1.swift | 12 ++--- .../GetDirectMessageListRequestV1.swift | 8 +-- .../PostDirectMessagesMarkReadRequestV1.swift | 8 +-- .../Requests/GetFavoritesRequestV1.swift | 14 ++--- .../Requests/PostFavoriteRequestV1.swift | 8 +-- .../Requests/PostUnFavoriteRequestV1.swift | 8 +-- .../Requests/GetFollowersIDsRequestV1.swift | 12 ++--- .../Requests/GetFollowersListRequestV1.swift | 14 ++--- .../Requests/GetFriendsIDsRequestV1.swift | 12 ++--- .../Requests/GetFriendsListRequestV1.swift | 18 ++++--- .../GetFriendshipsIncomingRequestV1.swift | 8 +-- .../GetFriendshipsLookupRequestV1.swift | 6 +-- ...GetFriendshipsNoRetweetsIDsRequestV1.swift | 6 +-- .../GetFriendshipsOutgoingRequestV1.swift | 8 +-- .../GetFriendshipsShowRequestV1.swift | 8 +-- .../PostFriendshipsCreateRequestV1.swift | 8 +-- .../PostFriendshipsDestroyRequestV1.swift | 6 +-- .../PostFriendshipsUpdateRequestV1.swift | 10 ++-- .../GetGeoReverseGeocodeRequestV1.swift | 12 ++--- .../Geo/Requests/GetGeoSearchRequestV1.swift | 10 ++-- .../List/Requests/GetListsListRequestV1.swift | 8 +-- .../Requests/GetListsMembersRequestV1.swift | 14 ++--- .../GetListsMembersShowRequestV1.swift | 12 ++--- .../GetListsMembershipsRequestV1.swift | 12 ++--- .../GetListsOwnershipsRequestV1.swift | 10 ++-- .../List/Requests/GetListsShowRequestV1.swift | 6 +-- .../Requests/GetListsStatusesRequestV1.swift | 16 +++--- .../GetListsSubscribersRequestV1.swift | 14 ++--- .../GetListsSubscribersShowRequestV1.swift | 12 ++--- .../GetListsSubscriptionsRequestV1.swift | 10 ++-- .../Requests/PostListsCreateRequestV1.swift | 10 ++-- .../Requests/PostListsDestroyRequestV1.swift | 6 +-- .../PostListsMembersCreateAllRequestV1.swift | 8 +-- .../PostListsMembersCreateRequestV1.swift | 8 +-- .../PostListsMembersDestroyAllRequestV1.swift | 8 +-- .../PostListsMembersDestroyRequestV1.swift | 8 +-- .../PostListsSubscribersCreateRequestV1.swift | 6 +-- ...PostListsSubscribersDestroyRequestV1.swift | 6 +-- .../Requests/PostListsUpdateRequestV1.swift | 12 ++--- .../APIv1/Media/MediaAPIv1.swift | 2 +- .../Requests/GetRetweetersRequestV1.swift | 12 ++--- .../Requests/GetRetweetsOfMeRequestV1.swift | 16 +++--- .../Requests/GetRetweetsRequestV1.swift | 8 +-- .../Requests/PostRetweetRequestV1.swift | 6 +-- .../Requests/PostUnRetweetRequestV1.swift | 6 +-- .../Requests/GetSearchTweetsRequestV1.swift | 24 ++++----- .../PostSavedSearchesCreateRequestV1.swift | 6 +-- .../GetStatusesHomeTimelineRequestV1.swift | 16 +++--- ...GetStatusesMentionsTimelineRequestV1.swift | 14 ++--- .../GetStatusesUserTimelineRequestV1.swift | 18 +++---- .../Requests/GetTrendsClosestRequestV1.swift | 6 +-- .../Requests/GetTrendsPlaceRequestV1.swift | 8 +-- .../Requests/GetStatusesLookupRequestV1.swift | 16 +++--- .../Requests/GetStatusesShowRequestV1.swift | 16 +++--- .../PostStatusesDestroyRequestV1.swift | 6 +-- .../Requests/PostUpdateStatusRequestV1.swift | 32 ++++++------ .../Requests/GetUsersLookupRequestV1.swift | 10 ++-- .../GetUsersProfileBannerRequestV1.swift | 6 +-- .../Requests/GetUsersSearchRequestV1.swift | 12 ++--- .../Requests/GetUsersShowRequestV1.swift | 8 +-- .../Requests/GetUsersBlockingRequestV2.swift | 14 ++--- .../Requests/GetUsersMutingRequestV2.swift | 14 ++--- .../Requests/PostUsersBlockingRequestV2.swift | 8 +-- .../Requests/PostUsersMutingRequestV2.swift | 6 +-- .../Requests/GetUsersBookmarksRequestV2.swift | 20 +++---- .../PostUsersBookmarksRequestV2.swift | 6 +-- .../Requests/GetComplianceJobsRequestV2.swift | 8 +-- .../PostComplianceJobsRequestV2.swift | 10 ++-- ...etDmConversationsIdDmEventsRequestV2.swift | 20 +++---- ...nsWithParticipantIdDmEventsRequestV2.swift | 20 +++---- .../Requests/GetDmEventsRequestV2.swift | 20 +++---- .../PostDmConversationByIdRequestV2.swift | 10 ++-- .../PostDmConversationRequestV2.swift | 12 ++--- .../PostDmConversationWithUserRequestV2.swift | 8 +-- .../Requests/GetUsersFollowersRequestV2.swift | 14 ++--- .../Requests/GetUsersFollowingRequestV2.swift | 14 ++--- .../PostUsersFollowingRequestV2.swift | 6 +-- .../GetTweetsLikingUsersRequestV2.swift | 20 +++---- .../GetUsersLikedTweetsRequestV2.swift | 22 ++++---- .../Requests/PostUsersLikesRequestV2.swift | 6 +-- .../List/Requests/GetListRequestV2.swift | 10 ++-- .../Requests/GetListsFollowersRequestV2.swift | 14 ++--- .../Requests/GetListsMembersRequestV2.swift | 14 ++--- .../Requests/GetListsTweetsRequestV2.swift | 14 ++--- .../GetUsersFollowedListsRequestV2.swift | 14 ++--- .../GetUsersListMembershipsRequestV2.swift | 14 ++--- .../GetUsersOwnedListsRequestV2.swift | 14 ++--- .../GetUsersPinnedListsRequestV2.swift | 10 ++-- .../Requests/PostListsMembersRequestV2.swift | 6 +-- .../List/Requests/PostListsRequestV2.swift | 10 ++-- .../PostUsersFollowedListsRequestV2.swift | 6 +-- .../PostUsersPinnedListsRequestV2.swift | 6 +-- .../List/Requests/PutListRequestV2.swift | 10 ++-- .../GetTweetsRetweetedByRequestV2.swift | 20 +++---- .../Requests/PostUsersRetweetsRequestV2.swift | 6 +-- .../GetTweetsSearchAllRequestV2.swift | 32 ++++++------ .../GetTweetsSearchRecentRequestV2.swift | 32 ++++++------ .../Spaces/Requests/GetSpaceRequestV2.swift | 12 ++--- .../Requests/GetSpacesBuyersRequestV2.swift | 16 +++--- .../GetSpacesByCreatorIDsRequestV2.swift | 14 ++--- .../Spaces/Requests/GetSpacesRequestV2.swift | 14 ++--- .../Requests/GetSpacesSearchRequestV2.swift | 16 +++--- .../Requests/GetSpacesTweetsRequestV2.swift | 16 +++--- .../GetTweetsSampleStreamRequestV2.swift | 18 +++---- .../GetTweetsSearchStreamRequestV2.swift | 18 +++---- .../GetTweetsSearchStreamRulesRequestV2.swift | 6 +-- ...PostTweetsSearchStreamRulesRequestV2.swift | 14 ++--- .../Requests/GetUsersMentionsRequestV2.swift | 28 +++++----- ...melinesReverseChronologicalRequestV2.swift | 30 +++++------ .../Requests/GetUsersTweetsRequestV2.swift | 30 +++++------ .../Tweet/Requests/GetTweetRequestV2.swift | 16 +++--- .../GetTweetsQuoteTweetsRequestV2.swift | 20 +++---- .../Tweet/Requests/GetTweetsRequestV2.swift | 18 +++---- .../Tweet/Requests/PostTweetsRequestV2.swift | 52 +++++++++---------- .../Requests/PutTweetsHiddenRequestV2.swift | 6 +-- .../GetTweetsCountsAllRequestV2.swift | 18 +++---- .../GetTweetsCountsRecentRequestV2.swift | 16 +++--- .../Users/Requests/GetUserRequestV2.swift | 10 ++-- .../Users/Requests/GetUsersByRequestV2.swift | 12 ++--- .../GetUsersByUsernameRequestV2.swift | 10 ++-- .../Users/Requests/GetUsersMeRequestV2.swift | 10 ++-- .../Users/Requests/GetUsersRequestV2.swift | 12 ++--- 143 files changed, 876 insertions(+), 867 deletions(-) diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountRemoveProfileBannerRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountRemoveProfileBannerRequestV1.swift index 558dec89..e0f1ee20 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountRemoveProfileBannerRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountRemoveProfileBannerRequestV1.swift @@ -15,4 +15,9 @@ open class PostAccountRemoveProfileBannerRequestV1: TwitterAPIRequest { } public init() {} + + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift index 152d9a06..c877ef70 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift @@ -23,14 +23,14 @@ open class PostAccountSettingsRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - lang.map { p["lang"] = $0 } - timeZone.map { p["time_zone"] = $0 } - startSleepTime.map { p["start_sleep_time"] = $0 } - endSleepTime.map { p["end_sleep_time"] = $0 } - sleepTimeEnabled.map { p["sleep_time_enabled"] = $0 } - trendLocationWoeid.map { p["trend_location_woeid"] = $0 } - return p + var params = [String: Any]() + lang.map { params["lang"] = $0 } + timeZone.map { params["time_zone"] = $0 } + startSleepTime.map { params["start_sleep_time"] = $0 } + endSleepTime.map { params["end_sleep_time"] = $0 } + sleepTimeEnabled.map { params["sleep_time_enabled"] = $0 } + trendLocationWoeid.map { params["trend_location_woeid"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift index f556e77e..fddc23f5 100644 --- a/Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift @@ -13,9 +13,9 @@ open class GetApplicationRateLimitStatusRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - resources.map { p["resources"] = $0.joined(separator: ",") } - return p + var params = [String: Any]() + resources.map { params["resources"] = $0.joined(separator: ",") } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift index f2cf81a7..46f8a60a 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift @@ -14,10 +14,10 @@ open class GetBlocksIDsRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - stringifyIDs.map { p["stringify_ids"] = $0 } - cursor.map { p["cursor"] = $0 } - return p + var params = [String: Any]() + stringifyIDs.map { params["stringify_ids"] = $0 } + cursor.map { params["cursor"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift index 055491a7..4e25a436 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift @@ -15,11 +15,11 @@ open class GetBlocksListRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - includeEntities.map { p["include_entities"] = $0 } - skipStatus.map { p["skip_status"] = $0 } - cursor.map { p["cursor"] = $0 } - return p + var params = [String: Any]() + includeEntities.map { params["include_entities"] = $0 } + skipStatus.map { params["skip_status"] = $0 } + cursor.map { params["cursor"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift index ced7cab0..07ec2a98 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift @@ -14,10 +14,10 @@ open class GetMutesUsersIDsRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - stringifyIDs.map { p["stringify_ids"] = $0 } - cursor.map { p["cursor"] = $0 } - return p + var params = [String: Any]() + stringifyIDs.map { params["stringify_ids"] = $0 } + cursor.map { params["cursor"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift index 685f0e21..28ac3148 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift @@ -15,11 +15,11 @@ open class GetMutesUsersListRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - cursor.map { p["cursor"] = $0 } - includeEntities.map { p["include_entities"] = $0 } - skipStatus.map { p["skip_status"] = $0 } - return p + var params = [String: Any]() + cursor.map { params["cursor"] = $0 } + includeEntities.map { params["include_entities"] = $0 } + skipStatus.map { params["skip_status"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift index 506ce264..adade20e 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift @@ -15,11 +15,11 @@ open class PostBlocksCreateRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - user.bind(param: &p) - includeEntities.map { p["include_entities"] = $0 } - skipStatus.map { p["skip_status"] = $0 } - return p + var params = [String: Any]() + user.bind(param: ¶ms) + includeEntities.map { params["include_entities"] = $0 } + skipStatus.map { params["skip_status"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift index 42d4a588..f4b0d803 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift @@ -15,12 +15,12 @@ open class PostBlocksDestroyRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() + var params = [String: Any]() - user.bind(param: &p) - includeEntities.map { p["include_entities"] = $0 } - skipStatus.map { p["skip_status"] = $0 } - return p + user.bind(param: ¶ms) + includeEntities.map { params["include_entities"] = $0 } + skipStatus.map { params["skip_status"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift index 43005852..5e9f5dfa 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift @@ -13,9 +13,9 @@ open class PostMutesUsersCreateRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - user.bind(param: &p) - return p + var params = [String: Any]() + user.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift index 4f40d670..3e7e4dfa 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift @@ -13,9 +13,9 @@ open class PostMutesUsersDestroyRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - user.bind(param: &p) - return p + var params = [String: Any]() + user.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift index dd81c61d..d168a371 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift @@ -12,10 +12,10 @@ open class PostUsersReportSpamRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - user.bind(param: &p) - performBlock.map { p["perform_block"] = $0 } - return p + var params = [String: Any]() + user.bind(param: ¶ms) + performBlock.map { params["perform_block"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift index 4a2aa811..fe168ec7 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift @@ -16,12 +16,12 @@ open class GetCollectionsEntriesRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["id"] = id - count.map { p["count"] = $0 } - maxPosition.map { p["max_position"] = $0 } - minPosition.map { p["min_position"] = $0 } - return p + var params = [String: Any]() + params["id"] = id + count.map { params["count"] = $0 } + maxPosition.map { params["max_position"] = $0 } + minPosition.map { params["min_position"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsListRequestV1.swift index d50a877e..fcebd709 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsListRequestV1.swift @@ -16,12 +16,12 @@ open class GetCollectionsListRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - user.bind(param: &p) - count.map { p["count"] = $0 } - cursor.map { p["cursor"] = $0 } - tweetID.map { p["tweet_id"] = $0 } - return p + var params = [String: Any]() + user.bind(param: ¶ms) + count.map { params["count"] = $0 } + cursor.map { params["cursor"] = $0 } + tweetID.map { params["tweet_id"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsShowRequestV1.swift index e71e4ff4..58115f49 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsShowRequestV1.swift @@ -13,9 +13,9 @@ open class GetCollectionsShowRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["id"] = id - return p + var params = [String: Any]() + params["id"] = id + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift index 7ab7f540..fcece1e2 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift @@ -26,12 +26,12 @@ open class PostCollectionsCreateRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["name"] = name - url.map { p["url"] = $0 } - description.map { p["description"] = $0 } - timelineOrder?.bind(param: &p) - return p + var params = [String: Any]() + params["name"] = name + url.map { params["url"] = $0 } + description.map { params["description"] = $0 } + timelineOrder?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift index 7e5153e4..88dbb38e 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift @@ -13,9 +13,9 @@ open class PostCollectionsDestroyRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["id"] = id - return p + var params = [String: Any]() + params["id"] = id + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift index 3aac72a9..c472ced6 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift @@ -16,12 +16,12 @@ open class PostCollectionsEntriesAddRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["id"] = id - p["tweet_id"] = tweetID - above.map { p["above"] = $0 } - relativeTo.map { p["relative_to"] = $0 } - return p + var params = [String: Any]() + params["id"] = id + params["tweet_id"] = tweetID + above.map { params["above"] = $0 } + relativeTo.map { params["relative_to"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift index faafa598..41a43dcb 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift @@ -32,10 +32,10 @@ open class PostCollectionsEntriesCurateRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["id"] = id - p["changes"] = changes.map { $0.keyValue } - return p + var params = [String: Any]() + params["id"] = id + params["changes"] = changes.map { $0.keyValue } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift index 8148d044..d069a5cf 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift @@ -16,12 +16,12 @@ open class PostCollectionsEntriesMoveRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["id"] = id - p["tweet_id"] = tweetID - above.map { p["above"] = $0 } - p["relative_to"] = relativeTo - return p + var params = [String: Any]() + params["id"] = id + params["tweet_id"] = tweetID + above.map { params["above"] = $0 } + params["relative_to"] = relativeTo + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift index f09b33c5..b75c396d 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift @@ -14,10 +14,10 @@ open class PostCollectionsEntriesRemoveRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["id"] = id - p["tweet_id"] = tweetID - return p + var params = [String: Any]() + params["id"] = id + params["tweet_id"] = tweetID + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift index 15463bf7..c3157c7b 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift @@ -16,12 +16,12 @@ open class PostCollectionsUpdateRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["id"] = id - url.map { p["url"] = $0 } - name.map { p["name"] = $0 } - description.map { p["description"] = $0 } - return p + var params = [String: Any]() + params["id"] = id + url.map { params["url"] = $0 } + name.map { params["name"] = $0 } + description.map { params["description"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageListRequestV1.swift index 98f3180d..1cec3fb1 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageListRequestV1.swift @@ -15,12 +15,12 @@ open class GetDirectMessageListRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() + var params = [String: Any]() - count.map { p["count"] = $0 } - cursor.map { p["cursor"] = $0 } + count.map { params["count"] = $0 } + cursor.map { params["cursor"] = $0 } - return p + return params } public init(count: Int? = .none, cursor: String? = .none) { diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift index bcb81914..c23289e7 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift @@ -17,12 +17,12 @@ open class PostDirectMessagesMarkReadRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() + var params = [String: Any]() - p["last_read_event_id"] = lastReadEventID - p["recipient_id"] = recipientID + params["last_read_event_id"] = lastReadEventID + params["recipient_id"] = recipientID - return p + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/GetFavoritesRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/GetFavoritesRequestV1.swift index fe9ca9e4..bb33a6b8 100644 --- a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/GetFavoritesRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/GetFavoritesRequestV1.swift @@ -17,15 +17,15 @@ open class GetFavoritesRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() + var params = [String: Any]() - target.bind(param: &p) - count.map { p["count"] = $0 } - sinceID.map { p["since_id"] = $0 } - maxID.map { p["max_id"] = $0 } - includeEntities.map { p["include_entities"] = $0 } + target.bind(param: ¶ms) + count.map { params["count"] = $0 } + sinceID.map { params["since_id"] = $0 } + maxID.map { params["max_id"] = $0 } + includeEntities.map { params["include_entities"] = $0 } - return p + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostFavoriteRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostFavoriteRequestV1.swift index 2e421243..c71a297e 100644 --- a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostFavoriteRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostFavoriteRequestV1.swift @@ -14,10 +14,10 @@ open class PostFavoriteRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["id"] = id - includeEntities.map { p["include_entities"] = $0 } - return p + var params = [String: Any]() + params["id"] = id + includeEntities.map { params["include_entities"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostUnFavoriteRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostUnFavoriteRequestV1.swift index 95d78fb1..62b20342 100644 --- a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostUnFavoriteRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostUnFavoriteRequestV1.swift @@ -14,10 +14,10 @@ open class PostUnFavoriteRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["id"] = id - includeEntities.map { p["include_entities"] = $0 } - return p + var params = [String: Any]() + params["id"] = id + includeEntities.map { params["include_entities"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift index 620da259..c6a1802e 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift @@ -16,12 +16,12 @@ open class GetFollowersIDsRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - user.bind(param: &p) - count.map { p["count"] = $0 } - cursor.map { p["cursor"] = $0 } - stringifyIDs.map { p["stringify_ids"] = $0 } - return p + var params = [String: Any]() + user.bind(param: ¶ms) + count.map { params["count"] = $0 } + cursor.map { params["cursor"] = $0 } + stringifyIDs.map { params["stringify_ids"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift index 0209b764..b93db7bb 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift @@ -17,13 +17,13 @@ open class GetFollowersListRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - user.bind(param: &p) - count.map { p["count"] = $0 } - cursor.map { p["cursor"] = $0 } - skipStatus.map { p["skip_status"] = $0 } - includeUserEntities.map { p["include_user_entities"] = $0 } - return p + var params = [String: Any]() + user.bind(param: ¶ms) + count.map { params["count"] = $0 } + cursor.map { params["cursor"] = $0 } + skipStatus.map { params["skip_status"] = $0 } + includeUserEntities.map { params["include_user_entities"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift index 07489460..4c7519b5 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift @@ -16,12 +16,12 @@ open class GetFriendsIDsRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - user.bind(param: &p) - count.map { p["count"] = $0 } - cursor.map { p["cursor"] = $0 } - stringifyIDs.map { p["stringify_ids"] = $0 } - return p + var params = [String: Any]() + user.bind(param: ¶ms) + count.map { params["count"] = $0 } + cursor.map { params["cursor"] = $0 } + stringifyIDs.map { params["stringify_ids"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsListRequestV1.swift index 543b2b31..041de98c 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsListRequestV1.swift @@ -17,13 +17,13 @@ open class GetFriendsListRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - user.bind(param: &p) - count.map { p["count"] = $0 } - cursor.map { p["cursor"] = $0 } - skipStatus.map { p["skip_status"] = $0 } - includeUserEntities.map { p["include_user_entities"] = $0 } - return p + var params = [String: Any]() + user.bind(param: ¶ms) + count.map { params["count"] = $0 } + cursor.map { params["cursor"] = $0 } + skipStatus.map { params["skip_status"] = $0 } + includeUserEntities.map { params["include_user_entities"] = $0 } + return params } public init( @@ -39,4 +39,8 @@ open class GetFriendsListRequestV1: TwitterAPIRequest { self.skipStatus = skipStatus self.includeUserEntities = includeUserEntities } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift index 6b3ffc64..06e119d6 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift @@ -14,10 +14,10 @@ open class GetFriendshipsIncomingRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - cursor.map { p["cursor"] = $0 } - stringifyIDs.map { p["stringify_ids"] = $0 } - return p + var params = [String: Any]() + cursor.map { params["cursor"] = $0 } + stringifyIDs.map { params["stringify_ids"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift index fec72535..c14678bb 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift @@ -13,9 +13,9 @@ open class GetFriendshipsLookupRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - users.bind(param: &p) - return p + var params = [String: Any]() + users.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift index 89cc62b0..5fe80438 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift @@ -13,9 +13,9 @@ open class GetFriendshipsNoRetweetsIDsRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - stringifyIDs.map { p["stringify_ids"] = $0 } - return p + var params = [String: Any]() + stringifyIDs.map { params["stringify_ids"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift index a2807bd0..05b02f70 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift @@ -14,10 +14,10 @@ open class GetFriendshipsOutgoingRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - cursor.map { p["cursor"] = $0 } - stringifyIDs.map { p["stringify_ids"] = $0 } - return p + var params = [String: Any]() + cursor.map { params["cursor"] = $0 } + stringifyIDs.map { params["stringify_ids"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift index 4d6a9f39..abc69c95 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift @@ -14,10 +14,10 @@ open class GetFriendshipsShowRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - sourceUser.bind(param: &p, userIDKey: "source_id", screenNameKey: "source_screen_name") - targetUser.bind(param: &p, userIDKey: "target_id", screenNameKey: "target_screen_name") - return p + var params = [String: Any]() + sourceUser.bind(param: ¶ms, userIDKey: "source_id", screenNameKey: "source_screen_name") + targetUser.bind(param: ¶ms, userIDKey: "target_id", screenNameKey: "target_screen_name") + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift index fc5c7e03..ba78f2aa 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift @@ -14,10 +14,10 @@ open class PostFriendshipsCreateRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - user.bind(param: &p) - follow.map { p["follow"] = $0 } - return p + var params = [String: Any]() + user.bind(param: ¶ms) + follow.map { params["follow"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift index 2c14827b..c55131ef 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift @@ -13,9 +13,9 @@ open class PostFriendshipsDestroyRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - user.bind(param: &p) - return p + var params = [String: Any]() + user.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift index 66cc3cf9..5c7e0036 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift @@ -15,11 +15,11 @@ open class PostFriendshipsUpdateRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - user.bind(param: &p) - device.map { p["device"] = $0 } - retweets.map { p["retweets"] = $0 } - return p + var params = [String: Any]() + user.bind(param: ¶ms) + device.map { params["device"] = $0 } + retweets.map { params["retweets"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoReverseGeocodeRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoReverseGeocodeRequestV1.swift index fc9231c1..26f29bf4 100644 --- a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoReverseGeocodeRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoReverseGeocodeRequestV1.swift @@ -16,12 +16,12 @@ open class GetGeoReverseGeocodeRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - location.bind(param: &p) - accuracy?.bind(param: &p) - maxResults.map { p["max_results"] = $0 } - granularity?.bind(param: &p) - return p + var params = [String: Any]() + location.bind(param: ¶ms) + accuracy?.bind(param: ¶ms) + maxResults.map { params["max_results"] = $0 } + granularity?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift index 378f1ea4..50a304e1 100644 --- a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift @@ -31,11 +31,11 @@ open class GetGeoSearchRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - location.bind(param: &p) - maxResults.map { p["max_results"] = $0 } - granularity?.bind(param: &p) - return p + var params = [String: Any]() + location.bind(param: ¶ms) + maxResults.map { params["max_results"] = $0 } + granularity?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift index 49740d10..2f1c15c9 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift @@ -14,10 +14,10 @@ open class GetListsListRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - user.bind(param: &p) - reverse.map { p["reverse"] = $0 } - return p + var params = [String: Any]() + user.bind(param: ¶ms) + reverse.map { params["reverse"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift index 8e75d188..4d25bb6a 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift @@ -17,13 +17,13 @@ open class GetListsMembersRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - list.bind(param: &p) - count.map { p["count"] = $0 } - cursor.map { p["cursor"] = $0 } - includeEntities.map { p["include_entities"] = $0 } - skipStatus.map { p["skip_status"] = $0 } - return p + var params = [String: Any]() + list.bind(param: ¶ms) + count.map { params["count"] = $0 } + cursor.map { params["cursor"] = $0 } + includeEntities.map { params["include_entities"] = $0 } + skipStatus.map { params["skip_status"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift index 650072e3..574319e9 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift @@ -16,12 +16,12 @@ open class GetListsMembersShowRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - list.bind(param: &p) - user.bind(param: &p) - includeEntities.map { p["include_entities"] = $0 } - skipStatus.map { p["skip_status"] = $0 } - return p + var params = [String: Any]() + list.bind(param: ¶ms) + user.bind(param: ¶ms) + includeEntities.map { params["include_entities"] = $0 } + skipStatus.map { params["skip_status"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift index 46ade3cb..084d8c1a 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift @@ -16,13 +16,13 @@ open class GetListsMembershipsRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - user.bind(param: &p) - count.map { p["count"] = $0 } - cursor.map { p["cursor"] = $0 } - filterToOwnedLists.map { p["filter_to_owned_lists"] = $0 } + var params = [String: Any]() + user.bind(param: ¶ms) + count.map { params["count"] = $0 } + cursor.map { params["cursor"] = $0 } + filterToOwnedLists.map { params["filter_to_owned_lists"] = $0 } - return p + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift index 352edcab..03577d6d 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift @@ -15,11 +15,11 @@ open class GetListsOwnershipsRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - user.bind(param: &p) - count.map { p["count"] = $0 } - cursor.map { p["cursor"] = $0 } - return p + var params = [String: Any]() + user.bind(param: ¶ms) + count.map { params["count"] = $0 } + cursor.map { params["cursor"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift index f0429d81..13163bec 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift @@ -13,9 +13,9 @@ open class GetListsShowRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - list.bind(param: &p) - return p + var params = [String: Any]() + list.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift index 3a5827f3..0dc86111 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift @@ -18,14 +18,14 @@ open class GetListsStatusesRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - list.bind(param: &p) - count.map { p["count"] = $0 } - sinceID.map { p["since_id"] = $0 } - maxID.map { p["max_id"] = $0 } - includeEntities.map { p["include_entities"] = $0 } - includeRTs.map { p["include_rts"] = $0 } - return p + var params = [String: Any]() + list.bind(param: ¶ms) + count.map { params["count"] = $0 } + sinceID.map { params["since_id"] = $0 } + maxID.map { params["max_id"] = $0 } + includeEntities.map { params["include_entities"] = $0 } + includeRTs.map { params["include_rts"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersRequestV1.swift index 649d0a07..9c3e7c6e 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersRequestV1.swift @@ -17,13 +17,13 @@ open class GetListsSubscribersRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - list.bind(param: &p) - count.map { p["count"] = $0 } - cursor.map { p["cursor"] = $0 } - includeEntities.map { p["include_entities"] = $0 } - skipStatus.map { p["skip_status"] = $0 } - return p + var params = [String: Any]() + list.bind(param: ¶ms) + count.map { params["count"] = $0 } + cursor.map { params["cursor"] = $0 } + includeEntities.map { params["include_entities"] = $0 } + skipStatus.map { params["skip_status"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift index fa1fc98a..48972945 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift @@ -16,12 +16,12 @@ open class GetListsSubscribersShowRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - list.bind(param: &p) - user.bind(param: &p) - includeEntities.map { p["include_entities"] = $0 } - skipStatus.map { p["skip_status"] = $0 } - return p + var params = [String: Any]() + list.bind(param: ¶ms) + user.bind(param: ¶ms) + includeEntities.map { params["include_entities"] = $0 } + skipStatus.map { params["skip_status"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift index 35959581..506005e5 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift @@ -15,11 +15,11 @@ open class GetListsSubscriptionsRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - user.bind(param: &p) - count.map { p["count"] = $0 } - cursor.map { p["cursor"] = $0 } - return p + var params = [String: Any]() + user.bind(param: ¶ms) + count.map { params["count"] = $0 } + cursor.map { params["cursor"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift index 3281387f..ca9c8799 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift @@ -15,11 +15,11 @@ open class PostListsCreateRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["name"] = name - mode?.bind(param: &p) - description.map { p["description"] = $0 } - return p + var params = [String: Any]() + params["name"] = name + mode?.bind(param: ¶ms) + description.map { params["description"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift index a99868ec..85b157eb 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift @@ -13,9 +13,9 @@ open class PostListsDestroyRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - list.bind(param: &p) - return p + var params = [String: Any]() + list.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift index cad556a7..418bf11e 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift @@ -14,10 +14,10 @@ open class PostListsMembersCreateAllRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - list.bind(param: &p) - users.bind(param: &p) - return p + var params = [String: Any]() + list.bind(param: ¶ms) + users.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift index afc47983..2a5226b2 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift @@ -14,10 +14,10 @@ open class PostListsMembersCreateRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - list.bind(param: &p) - user.bind(param: &p) - return p + var params = [String: Any]() + list.bind(param: ¶ms) + user.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift index 31bcd315..9d330b50 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift @@ -14,10 +14,10 @@ open class PostListsMembersDestroyAllRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - list.bind(param: &p) - users.bind(param: &p) - return p + var params = [String: Any]() + list.bind(param: ¶ms) + users.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift index 08f8c62c..53e34f3e 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift @@ -14,10 +14,10 @@ open class PostListsMembersDestroyRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - list.bind(param: &p) - user.bind(param: &p) - return p + var params = [String: Any]() + list.bind(param: ¶ms) + user.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift index 57aac6ff..42892dd5 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift @@ -13,9 +13,9 @@ open class PostListsSubscribersCreateRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - list.bind(param: &p) - return p + var params = [String: Any]() + list.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift index b0c73f62..f4783348 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift @@ -13,9 +13,9 @@ open class PostListsSubscribersDestroyRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - list.bind(param: &p) - return p + var params = [String: Any]() + list.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift index 2a0d0540..6f7c2837 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift @@ -16,12 +16,12 @@ open class PostListsUpdateRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - list.bind(param: &p) - name.map { p["name"] = $0 } - mode?.bind(param: &p) - description.map { p["description"] = $0 } - return p + var params = [String: Any]() + list.bind(param: ¶ms) + name.map { params["name"] = $0 } + mode?.bind(param: ¶ms) + description.map { params["description"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift index 9bf3ecaf..53d6a25a 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift @@ -85,7 +85,7 @@ open class MediaAPIv1: TwitterAPIBase { guard let self else { return } - if let error = responses.first { $0.isError } { + if let error = responses.first(where: \.isError) { completionHandler(error) return } diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift index 081a4279..37093b5a 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift @@ -17,14 +17,14 @@ open class GetRetweetersRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() + var params = [String: Any]() - p["id"] = id - count.map { p["count"] = $0 } - cursor.map { p["cursor"] = $0 } - stringifyIDs.map { p["stringify_ids"] = $0 } + params["id"] = id + count.map { params["count"] = $0 } + cursor.map { params["cursor"] = $0 } + stringifyIDs.map { params["stringify_ids"] = $0 } - return p + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift index 038c5ff1..415b5f74 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift @@ -18,16 +18,16 @@ open class GetRetweetsOfMeRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() + var params = [String: Any]() - count.map { p["count"] = $0 } - sinceID.map { p["since_id"] = $0 } - maxID.map { p["max_id"] = $0 } - trimUser.map { p["trim_user"] = $0 } - includeEntities.map { p["include_entities"] = $0 } - includeUserEntities.map { p["include_user_entities"] = $0 } + count.map { params["count"] = $0 } + sinceID.map { params["since_id"] = $0 } + maxID.map { params["max_id"] = $0 } + trimUser.map { params["trim_user"] = $0 } + includeEntities.map { params["include_entities"] = $0 } + includeUserEntities.map { params["include_user_entities"] = $0 } - return p + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsRequestV1.swift index 9bc4619e..3b5aea2b 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsRequestV1.swift @@ -17,10 +17,10 @@ open class GetRetweetsRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - count.map { p["count"] = $0 } - trimUser.map { p["trim_user"] = $0 } - return p + var params = [String: Any]() + count.map { params["count"] = $0 } + trimUser.map { params["trim_user"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostRetweetRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostRetweetRequestV1.swift index 226fb404..9b64919d 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostRetweetRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostRetweetRequestV1.swift @@ -14,9 +14,9 @@ open class PostRetweetRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - trimUser.map { p["trim_user"] = $0 } - return p + var params = [String: Any]() + trimUser.map { params["trim_user"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostUnRetweetRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostUnRetweetRequestV1.swift index 55121f37..3650a485 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostUnRetweetRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostUnRetweetRequestV1.swift @@ -14,9 +14,9 @@ open class PostUnRetweetRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - trimUser.map { p["trim_user"] = $0 } - return p + var params = [String: Any]() + trimUser.map { params["trim_user"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSearchTweetsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSearchTweetsRequestV1.swift index f3e48d5a..9fd3bd52 100644 --- a/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSearchTweetsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSearchTweetsRequestV1.swift @@ -28,18 +28,18 @@ open class GetSearchTweetsRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["q"] = q - lang.map { p["lang"] = $0 } - count.map { p["count"] = $0 } - until.map { p["until"] = $0 } - maxID.map { p["max_id"] = $0 } - locale.map { p["locale"] = $0 } - geocode.map { p["geocode"] = $0 } - sinceID.map { p["since_id"] = $0 } - resultType.map { p["result_type"] = $0.rawValue } - includeEntities.map { p["include_entities"] = $0 } - return p + var params = [String: Any]() + params["q"] = q + lang.map { params["lang"] = $0 } + count.map { params["count"] = $0 } + until.map { params["until"] = $0 } + maxID.map { params["max_id"] = $0 } + locale.map { params["locale"] = $0 } + geocode.map { params["geocode"] = $0 } + sinceID.map { params["since_id"] = $0 } + resultType.map { params["result_type"] = $0.rawValue } + includeEntities.map { params["include_entities"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift index fef730be..9fe7d266 100644 --- a/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift @@ -13,9 +13,9 @@ open class PostSavedSearchesCreateRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["query"] = query - return p + var params = [String: Any]() + params["query"] = query + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift index 0810c4f5..1f3bdf1d 100644 --- a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift @@ -18,14 +18,14 @@ open class GetStatusesHomeTimelineRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - count.map { p["count"] = $0 } - maxID.map { p["max_id"] = $0 } - sinceID.map { p["since_id"] = $0 } - trimUser.map { p["trim_user"] = $0 } - excludeReplies.map { p["exclude_replies"] = $0 } - includeEntities.map { p["include_entities"] = $0 } - return p + var params = [String: Any]() + count.map { params["count"] = $0 } + maxID.map { params["max_id"] = $0 } + sinceID.map { params["since_id"] = $0 } + trimUser.map { params["trim_user"] = $0 } + excludeReplies.map { params["exclude_replies"] = $0 } + includeEntities.map { params["include_entities"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesMentionsTimelineRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesMentionsTimelineRequestV1.swift index 9f431fe4..69d17fd3 100644 --- a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesMentionsTimelineRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesMentionsTimelineRequestV1.swift @@ -17,13 +17,13 @@ open class GetStatusesMentionsTimelineRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - count.map { p["count"] = $0 } - maxID.map { p["max_id"] = $0 } - sinceID.map { p["since_id"] = $0 } - trimUser.map { p["trim_user"] = $0 } - includeEntities.map { p["include_entities"] = $0 } - return p + var params = [String: Any]() + count.map { params["count"] = $0 } + maxID.map { params["max_id"] = $0 } + sinceID.map { params["since_id"] = $0 } + trimUser.map { params["trim_user"] = $0 } + includeEntities.map { params["include_entities"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesUserTimelineRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesUserTimelineRequestV1.swift index 3ca24871..3f301f90 100644 --- a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesUserTimelineRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesUserTimelineRequestV1.swift @@ -19,15 +19,15 @@ open class GetStatusesUserTimelineRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - user.bind(param: &p) - count.map { p["count"] = $0 } - maxID.map { p["max_id"] = $0 } - sinceID.map { p["since_id"] = $0 } - trimUser.map { p["trim_user"] = $0 } - includeRTs.map { p["include_rts"] = $0 } - excludeReplies.map { p["exclude_replies"] = $0 } - return p + var params = [String: Any]() + user.bind(param: ¶ms) + count.map { params["count"] = $0 } + maxID.map { params["max_id"] = $0 } + sinceID.map { params["since_id"] = $0 } + trimUser.map { params["trim_user"] = $0 } + includeRTs.map { params["include_rts"] = $0 } + excludeReplies.map { params["exclude_replies"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift index abf0ab0b..08d0cb98 100644 --- a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift @@ -13,9 +13,9 @@ open class GetTrendsClosestRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - location.bind(param: &p) - return p + var params = [String: Any]() + location.bind(param: ¶msarams) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsPlaceRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsPlaceRequestV1.swift index bc479193..459e663a 100644 --- a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsPlaceRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsPlaceRequestV1.swift @@ -17,10 +17,10 @@ open class GetTrendsPlaceRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["woeid"] = woeid - exclude.map { p["exclude"] = $0 } - return p + var params = [String: Any]() + params["woeid"] = woeid + exclude.map { params["exclude"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesLookupRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesLookupRequestV1.swift index 9f11927c..4af8bae5 100644 --- a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesLookupRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesLookupRequestV1.swift @@ -18,14 +18,14 @@ open class GetStatusesLookupRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["id"] = ids.joined(separator: ",") - map.map { p["map"] = $0 } - trimUser.map { p["trim_user"] = $0 } - includeCardUri.map { p["include_card_uri"] = $0 } - includeEntities.map { p["include_entities"] = $0 } - includeExtAltText.map { p["include_ext_alt_text"] = $0 } - return p + var params = [String: Any]() + params["id"] = ids.joined(separator: ",") + map.map { params["map"] = $0 } + trimUser.map { params["trim_user"] = $0 } + includeCardUri.map { params["include_card_uri"] = $0 } + includeEntities.map { params["include_entities"] = $0 } + includeExtAltText.map { params["include_ext_alt_text"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesShowRequestV1.swift index 17bb1b99..fdb1fe72 100644 --- a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesShowRequestV1.swift @@ -18,14 +18,14 @@ open class GetStatusesShowRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["id"] = id - trimUser.map { p["trim_user"] = $0 } - includeCardUri.map { p["include_card_uri"] = $0 } - includeEntities.map { p["include_entities"] = $0 } - includeMyRetweet.map { p["include_my_retweet"] = $0 } - includeExtAltText.map { p["include_ext_alt_text"] = $0 } - return p + var params = [String: Any]() + params["id"] = id + trimUser.map { params["trim_user"] = $0 } + includeCardUri.map { params["include_card_uri"] = $0 } + includeEntities.map { params["include_entities"] = $0 } + includeMyRetweet.map { params["include_my_retweet"] = $0 } + includeExtAltText.map { params["include_ext_alt_text"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostStatusesDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostStatusesDestroyRequestV1.swift index 8d2b7ec1..473367b8 100644 --- a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostStatusesDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostStatusesDestroyRequestV1.swift @@ -14,9 +14,9 @@ open class PostStatusesDestroyRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - trimUser.map { p["trim_user"] = $0 } - return p + var params = [String: Any]() + trimUser.map { params["trim_user"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift index 612bd02b..2424001d 100644 --- a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift @@ -26,22 +26,22 @@ open class PostStatusesUpdateRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["status"] = status - inReplyToStatusID.map { p["in_reply_to_status_id"] = $0 } - autoPopulateReplyMetadata.map { p["auto_populate_reply_metadata"] = $0 } - excludeReplyUserIDs.map { p["exclude_reply_user_ids"] = $0.joined(separator: ",") } - attachmentUrl.map { p["attachment_url"] = $0 } - mediaIDs.map { p["media_ids"] = $0.joined(separator: ",") } - possiblySensitive.map { p["possibly_sensitive"] = $0 } - location?.bind(param: &p) - placeID.map { p["place_id"] = $0 } - displayCoordinates.map { p["display_coordinates"] = $0 } - trimUser.map { p["trim_user"] = $0 } - enableDMcommands.map { p["enable_dmcommands"] = $0 } - failDMcommands.map { p["fail_dmcommands"] = $0 } - cardUri.map { p["card_uri"] = $0 } - return p + var params = [String: Any]() + params["status"] = status + inReplyToStatusID.map { params["in_reply_to_status_id"] = $0 } + autoPopulateReplyMetadata.map { params["auto_populate_reply_metadata"] = $0 } + excludeReplyUserIDs.map { params["exclude_reply_user_ids"] = $0.joined(separator: ",") } + attachmentUrl.map { params["attachment_url"] = $0 } + mediaIDs.map { params["media_ids"] = $0.joined(separator: ",") } + possiblySensitive.map { params["possibly_sensitive"] = $0 } + location?.bind(param: ¶ms) + placeID.map { params["place_id"] = $0 } + displayCoordinates.map { params["display_coordinates"] = $0 } + trimUser.map { params["trim_user"] = $0 } + enableDMcommands.map { params["enable_dmcommands"] = $0 } + failDMcommands.map { params["fail_dmcommands"] = $0 } + cardUri.map { params["card_uri"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersLookupRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersLookupRequestV1.swift index b02d5abd..e7e70097 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersLookupRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersLookupRequestV1.swift @@ -15,11 +15,11 @@ open class GetUsersLookupRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - users.bind(param: &p) - tweetMode.map { p["tweet_mode"] = $0 } - includeEntities.map { p["include_entities"] = $0 } - return p + var params = [String: Any]() + users.bind(param: ¶ms) + tweetMode.map { params["tweet_mode"] = $0 } + includeEntities.map { params["include_entities"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift index a634bdeb..076e6c19 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift @@ -13,9 +13,9 @@ open class GetUsersProfileBannerRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - user.bind(param: &p) - return p + var params = [String: Any]() + user.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift index 451472a2..7b6cbf13 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift @@ -16,12 +16,12 @@ open class GetUsersSearchRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["q"] = q - page.map { p["page"] = $0 } - count.map { p["count"] = $0 } - includeEntities.map { p["include_entities"] = $0 } - return p + var params = [String: Any]() + params["q"] = q + page.map { params["page"] = $0 } + count.map { params["count"] = $0 } + includeEntities.map { params["include_entities"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift index ff1007af..b37f424f 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift @@ -14,10 +14,10 @@ open class GetUsersShowRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - user.bind(param: &p) - includeEntities.map { p["include_entities"] = $0 } - return p + var params = [String: Any]() + user.bind(param: ¶ms) + includeEntities.map { params["include_entities"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersBlockingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersBlockingRequestV2.swift index 7780983e..53f29565 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersBlockingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersBlockingRequestV2.swift @@ -18,13 +18,13 @@ open class GetUsersBlockingRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - maxResults.map { p["max_results"] = $0 } - paginationToken.map { p["pagination_token"] = $0 } - tweetFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + maxResults.map { params["max_results"] = $0 } + paginationToken.map { params["pagination_token"] = $0 } + tweetFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersMutingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersMutingRequestV2.swift index 9152dc4d..a11f9cbe 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersMutingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersMutingRequestV2.swift @@ -18,13 +18,13 @@ open class GetUsersMutingRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - maxResults.map { p["max_results"] = $0 } - paginationToken.map { p["pagination_token"] = $0 } - tweetFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + maxResults.map { params["max_results"] = $0 } + paginationToken.map { params["pagination_token"] = $0 } + tweetFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersBlockingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersBlockingRequestV2.swift index bce561d5..6f812603 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersBlockingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersBlockingRequestV2.swift @@ -1,4 +1,4 @@ -import Foundation +PostUsersBlockingRequestV2import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/blocks/api-reference/post-users-user_id-blocking open class PostUsersBlockingRequestV2: TwitterAPIRequest { @@ -18,9 +18,9 @@ open class PostUsersBlockingRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["target_user_id"] = targetUserID - return p + var params = [String: Any]() + params["target_user_id"] = targetUserID + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersMutingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersMutingRequestV2.swift index da2ecf6a..a5015f8c 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersMutingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersMutingRequestV2.swift @@ -18,9 +18,9 @@ open class PostUsersMutingRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["target_user_id"] = targetUserID - return p + var params = [String: Any]() + params["target_user_id"] = targetUserID + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/GetUsersBookmarksRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/GetUsersBookmarksRequestV2.swift index bb29707a..79de2470 100644 --- a/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/GetUsersBookmarksRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/GetUsersBookmarksRequestV2.swift @@ -22,16 +22,16 @@ open class GetUsersBookmarksRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - maxResults.map { p["max_results"] = $0 } - mediaFields?.bind(param: &p) - paginationToken.map { p["pagination_token"] = $0 } - placeFields?.bind(param: &p) - pollFields?.bind(param: &p) - tweetFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + maxResults.map { params["max_results"] = $0 } + mediaFields?.bind(param: ¶ms) + paginationToken.map { params["pagination_token"] = $0 } + placeFields?.bind(param: ¶ms) + pollFields?.bind(param: ¶ms) + tweetFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/PostUsersBookmarksRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/PostUsersBookmarksRequestV2.swift index 3d7b8b68..cdc4053a 100644 --- a/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/PostUsersBookmarksRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/PostUsersBookmarksRequestV2.swift @@ -19,9 +19,9 @@ open class PostUsersBookmarksRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["tweet_id"] = tweetID - return p + var params = [String: Any]() + params["tweet_id"] = tweetID + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift index abbdda1f..b4abf118 100644 --- a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift @@ -24,10 +24,10 @@ open class GetComplianceJobsRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - type.bind(param: &p) - status?.bind(param: &p) - return p + var params = [String: Any]() + type.bind(param: ¶ms) + status?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/PostComplianceJobsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/PostComplianceJobsRequestV2.swift index 912dfb8f..f5aad75d 100644 --- a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/PostComplianceJobsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/PostComplianceJobsRequestV2.swift @@ -19,11 +19,11 @@ open class PostComplianceJobsRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - type.bind(param: &p) - name.map { p["name"] = $0 } - resumable.map { p["resumable"] = $0 } - return p + var params = [String: Any]() + type.bind(param: ¶ms) + name.map { params["name"] = $0 } + resumable.map { params["resumable"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsIdDmEventsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsIdDmEventsRequestV2.swift index 39de81d3..0dfe1f97 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsIdDmEventsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsIdDmEventsRequestV2.swift @@ -31,16 +31,16 @@ open class GetDmConversationsIdDmEventsRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - maxResults.map { p["max_results"] = $0 } - paginationToken.map { p["pagination_token"] = $0 } - eventTypes?.bind(param: &p) - dmEventFields?.bind(param: &p) - expansions?.bind(param: &p) - mediaFields?.bind(param: &p) - userFields?.bind(param: &p) - tweetFields?.bind(param: &p) - return p + var params = [String: Any]() + maxResults.map { params["max_results"] = $0 } + paginationToken.map { params["pagination_token"] = $0 } + eventTypes?.bind(param: ¶ms) + dmEventFields?.bind(param: ¶ms) + expansions?.bind(param: ¶ms) + mediaFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + tweetFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift index 2bcf1cdb..6499b741 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift @@ -31,16 +31,16 @@ open class GetDmConversationsWithParticipantIdDmEventsRequestV2: TwitterAPIReque } open var parameters: [String: Any] { - var p = [String: Any]() - maxResults.map { p["max_results"] = $0 } - paginationToken.map { p["pagination_token"] = $0 } - eventTypes?.bind(param: &p) - dmEventFields?.bind(param: &p) - expansions?.bind(param: &p) - mediaFields?.bind(param: &p) - userFields?.bind(param: &p) - tweetFields?.bind(param: &p) - return p + var params = [String: Any]() + maxResults.map { params["max_results"] = $0 } + paginationToken.map { params["pagination_token"] = $0 } + eventTypes?.bind(param: ¶ms) + dmEventFields?.bind(param: ¶ms) + expansions?.bind(param: ¶ms) + mediaFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + tweetFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmEventsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmEventsRequestV2.swift index cb0bac44..91beec9f 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmEventsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmEventsRequestV2.swift @@ -29,16 +29,16 @@ open class GetDmEventsRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - maxResults.map { p["max_results"] = $0 } - paginationToken.map { p["pagination_token"] = $0 } - eventTypes?.bind(param: &p) - dmEventFields?.bind(param: &p) - expansions?.bind(param: &p) - mediaFields?.bind(param: &p) - userFields?.bind(param: &p) - tweetFields?.bind(param: &p) - return p + var params = [String: Any]() + maxResults.map { params["max_results"] = $0 } + paginationToken.map { params["pagination_token"] = $0 } + eventTypes?.bind(param: ¶ms) + dmEventFields?.bind(param: ¶ms) + expansions?.bind(param: ¶ms) + mediaFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + tweetFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationByIdRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationByIdRequestV2.swift index b1ac9288..9e38b87e 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationByIdRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationByIdRequestV2.swift @@ -23,12 +23,12 @@ open class PostDmConversationByIdRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - if let attachments = attachments { - p["attachments"] = attachments.map { ["media_id": $0] } + var params = [String: Any]() + if let attachments { + params["attachments"] = attachments.map { ["media_id": $0] } } - text.map { p["text"] = $0 } - return p + text.map { params["text"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationRequestV2.swift index 68925a5f..ecac6635 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationRequestV2.swift @@ -30,16 +30,16 @@ open class PostDmConversationRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["conversation_type"] = conversationType.rawValue - p["participant_ids"] = participantIDs + var params = [String: Any]() + params["conversation_type"] = conversationType.rawValue + params["participant_ids"] = participantIDs var message = [String: Any]() text.map { message["text"] = $0 } - if let attachments = attachments { + if let attachments { message["attachments"] = attachments.map { ["media_id": $0] } } - p["message"] = message - return p + params["message"] = message + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationWithUserRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationWithUserRequestV2.swift index b499aaff..547d8669 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationWithUserRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationWithUserRequestV2.swift @@ -23,12 +23,12 @@ open class PostDmConversationWithUserRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() + var params = [String: Any]() if let attachments = attachments { - p["attachments"] = attachments.map { ["media_id": $0] } + params["attachments"] = attachments.map { ["media_id": $0] } } - text.map { p["text"] = $0 } - return p + text.map { params["text"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowersRequestV2.swift index c0f80c55..87b39dcc 100644 --- a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowersRequestV2.swift @@ -18,13 +18,13 @@ open class GetUsersFollowersRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - maxResults.map { p["max_results"] = $0 } - paginationToken.map { p["pagination_token"] = $0 } - tweetFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + maxResults.map { params["max_results"] = $0 } + paginationToken.map { params["pagination_token"] = $0 } + tweetFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowingRequestV2.swift index 4e4d4d76..bd56d75e 100644 --- a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowingRequestV2.swift @@ -18,13 +18,13 @@ open class GetUsersFollowingRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - maxResults.map { p["max_results"] = $0 } - paginationToken.map { p["pagination_token"] = $0 } - tweetFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + maxResults.map { params["max_results"] = $0 } + paginationToken.map { params["pagination_token"] = $0 } + tweetFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/PostUsersFollowingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/PostUsersFollowingRequestV2.swift index 37bdd48b..c4156f68 100644 --- a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/PostUsersFollowingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/PostUsersFollowingRequestV2.swift @@ -18,9 +18,9 @@ open class PostUsersFollowingRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["target_user_id"] = targetUserID - return p + var params = [String: Any]() + params["target_user_id"] = targetUserID + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Like/Requests/GetTweetsLikingUsersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Like/Requests/GetTweetsLikingUsersRequestV2.swift index c6fd0be9..a71dffd2 100644 --- a/Sources/TwitterAPIKit/APIv2/Like/Requests/GetTweetsLikingUsersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Like/Requests/GetTweetsLikingUsersRequestV2.swift @@ -22,16 +22,16 @@ open class GetTweetsLikingUsersRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - maxResults.map { p["max_results"] = $0 } - mediaFields?.bind(param: &p) - paginationToken.map { p["pagination_token"] = $0 } - placeFields?.bind(param: &p) - pollFields?.bind(param: &p) - tweetFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + maxResults.map { params["max_results"] = $0 } + mediaFields?.bind(param: ¶ms) + paginationToken.map { params["pagination_token"] = $0 } + placeFields?.bind(param: ¶ms) + pollFields?.bind(param: ¶ms) + tweetFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Like/Requests/GetUsersLikedTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Like/Requests/GetUsersLikedTweetsRequestV2.swift index 4b379339..af865809 100644 --- a/Sources/TwitterAPIKit/APIv2/Like/Requests/GetUsersLikedTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Like/Requests/GetUsersLikedTweetsRequestV2.swift @@ -1,4 +1,4 @@ -import Foundation +TweetCountAPIv2import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/likes/api-reference/get-users-id-liked_tweets open class GetUsersLikedTweetsRequestV2: TwitterAPIRequest { @@ -22,16 +22,16 @@ open class GetUsersLikedTweetsRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - maxResults.map { p["max_results"] = $0 } - mediaFields?.bind(param: &p) - paginationToken.map { p["pagination_token"] = $0 } - placeFields?.bind(param: &p) - pollFields?.bind(param: &p) - tweetFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + maxResults.map { params["max_results"] = $0 } + mediaFields?.bind(param: ¶ms) + paginationToken.map { params["pagination_token"] = $0 } + placeFields?.bind(param: ¶ms) + pollFields?.bind(param: ¶ms) + tweetFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Like/Requests/PostUsersLikesRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Like/Requests/PostUsersLikesRequestV2.swift index 7fa4b761..87b78716 100644 --- a/Sources/TwitterAPIKit/APIv2/Like/Requests/PostUsersLikesRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Like/Requests/PostUsersLikesRequestV2.swift @@ -19,9 +19,9 @@ open class PostUsersLikesRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["tweet_id"] = tweetID - return p + var params = [String: Any]() + params["tweet_id"] = tweetID + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListRequestV2.swift index e8bc24d7..5225671d 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListRequestV2.swift @@ -16,11 +16,11 @@ open class GetListRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - listFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + listFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsFollowersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsFollowersRequestV2.swift index 3cbaef5e..117b4ecf 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsFollowersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsFollowersRequestV2.swift @@ -18,13 +18,13 @@ open class GetListsFollowersRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - maxResults.map { p["max_results"] = $0 } - paginationToken.map { p["pagination_token"] = $0 } - tweetFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + maxResults.map { params["max_results"] = $0 } + paginationToken.map { params["pagination_token"] = $0 } + tweetFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsMembersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsMembersRequestV2.swift index 84243000..63e02929 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsMembersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsMembersRequestV2.swift @@ -19,13 +19,13 @@ open class GetListsMembersRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - maxResults.map { p["max_results"] = $0 } - paginationToken.map { p["pagination_token"] = $0 } - tweetFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + maxResults.map { params["max_results"] = $0 } + paginationToken.map { params["pagination_token"] = $0 } + tweetFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsTweetsRequestV2.swift index ded2ac6c..1cda8d31 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsTweetsRequestV2.swift @@ -18,13 +18,13 @@ open class GetListsTweetsRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - maxResults.map { p["max_results"] = $0 } - paginationToken.map { p["pagination_token"] = $0 } - tweetFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + maxResults.map { params["max_results"] = $0 } + paginationToken.map { params["pagination_token"] = $0 } + tweetFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersFollowedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersFollowedListsRequestV2.swift index 53cba5ab..d2ccb316 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersFollowedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersFollowedListsRequestV2.swift @@ -18,13 +18,13 @@ open class GetUsersFollowedListsRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - listFields?.bind(param: &p) - maxResults.map { p["max_results"] = $0 } - paginationToken.map { p["pagination_token"] = $0 } - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + listFields?.bind(param: ¶ms) + maxResults.map { params["max_results"] = $0 } + paginationToken.map { params["pagination_token"] = $0 } + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersListMembershipsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersListMembershipsRequestV2.swift index 252315a3..db778132 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersListMembershipsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersListMembershipsRequestV2.swift @@ -19,13 +19,13 @@ open class GetUsersListMembershipsRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - listFields?.bind(param: &p) - maxResults.map { p["max_results"] = $0 } - paginationToken.map { p["pagination_token"] = $0 } - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + listFields?.bind(param: ¶ms) + maxResults.map { params["max_results"] = $0 } + paginationToken.map { params["pagination_token"] = $0 } + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersOwnedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersOwnedListsRequestV2.swift index 4b054929..4fadd7ca 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersOwnedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersOwnedListsRequestV2.swift @@ -18,13 +18,13 @@ open class GetUsersOwnedListsRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - listFields?.bind(param: &p) - maxResults.map { p["max_results"] = $0 } - paginationToken.map { p["pagination_token"] = $0 } - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + listFields?.bind(param: ¶ms) + maxResults.map { params["max_results"] = $0 } + paginationToken.map { params["pagination_token"] = $0 } + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersPinnedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersPinnedListsRequestV2.swift index cd4e90c0..a4b1c46c 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersPinnedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersPinnedListsRequestV2.swift @@ -16,11 +16,11 @@ open class GetUsersPinnedListsRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - listFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + listFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsMembersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsMembersRequestV2.swift index 70f5743a..ac0035e1 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsMembersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsMembersRequestV2.swift @@ -18,9 +18,9 @@ open class PostListsMembersRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["user_id"] = userID - return p + var params = [String: Any]() + params["user_id"] = userID + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsRequestV2.swift index bff86232..72cfe349 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsRequestV2.swift @@ -19,11 +19,11 @@ open class PostListsRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["name"] = name - description.map { p["description"] = $0 } - `private`.map { p["private"] = $0 } - return p + var params = [String: Any]() + params["name"] = name + description.map { params["description"] = $0 } + `private`.map { params["private"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersFollowedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersFollowedListsRequestV2.swift index 1515a9f0..845b9523 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersFollowedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersFollowedListsRequestV2.swift @@ -18,9 +18,9 @@ open class PostUsersFollowedListsRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["list_id"] = listID - return p + var params = [String: Any]() + params["list_id"] = listID + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersPinnedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersPinnedListsRequestV2.swift index 8689338d..2592e9eb 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersPinnedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersPinnedListsRequestV2.swift @@ -18,9 +18,9 @@ open class PostUsersPinnedListsRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["list_id"] = listID - return p + var params = [String: Any]() + params["list_id"] = listID + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/PutListRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/PutListRequestV2.swift index 3c25d9db..4290e8ab 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/PutListRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/PutListRequestV2.swift @@ -20,11 +20,11 @@ open class PutListRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - description.map { p["description"] = $0 } - name.map { p["name"] = $0 } - `private`.map { p["private"] = $0 } - return p + var params = [String: Any]() + description.map { params["description"] = $0 } + name.map { params["name"] = $0 } + `private`.map { params["private"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Retweet/Requests/GetTweetsRetweetedByRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Retweet/Requests/GetTweetsRetweetedByRequestV2.swift index 81a6ceb9..6a20abde 100644 --- a/Sources/TwitterAPIKit/APIv2/Retweet/Requests/GetTweetsRetweetedByRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Retweet/Requests/GetTweetsRetweetedByRequestV2.swift @@ -22,16 +22,16 @@ open class GetTweetsRetweetedByRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - maxResults.map { p["max_results"] = $0 } - mediaFields?.bind(param: &p) - paginationToken.map { p["pagination_token"] = $0 } - placeFields?.bind(param: &p) - pollFields?.bind(param: &p) - tweetFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + maxResults.map { params["max_results"] = $0 } + mediaFields?.bind(param: ¶ms) + paginationToken.map { params["pagination_token"] = $0 } + placeFields?.bind(param: ¶ms) + pollFields?.bind(param: ¶ms) + tweetFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Retweet/Requests/PostUsersRetweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Retweet/Requests/PostUsersRetweetsRequestV2.swift index aae70fbe..c1f3ffe7 100644 --- a/Sources/TwitterAPIKit/APIv2/Retweet/Requests/PostUsersRetweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Retweet/Requests/PostUsersRetweetsRequestV2.swift @@ -18,9 +18,9 @@ open class PostUsersRetweetsRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["tweet_id"] = tweetID - return p + var params = [String: Any]() + params["tweet_id"] = tweetID + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchAllRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchAllRequestV2.swift index c322cde9..85fdb01e 100644 --- a/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchAllRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchAllRequestV2.swift @@ -27,22 +27,22 @@ open class GetTweetsSearchAllRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["query"] = query - endTime?.bind(param: &p, for: "end_time") - expansions?.bind(param: &p) - maxResults.map { p["max_results"] = $0 } - mediaFields?.bind(param: &p) - nextToken.map { p["next_token"] = $0 } - placeFields?.bind(param: &p) - pollFields?.bind(param: &p) - sinceID.map { p["since_id"] = $0 } - sortOrder?.bind(param: &p) - startTime?.bind(param: &p, for: "start_time") - tweetFields?.bind(param: &p) - untilID.map { p["until_id"] = $0 } - userFields?.bind(param: &p) - return p + var params = [String: Any]() + params["query"] = query + endTime?.bind(param: ¶ms, for: "end_time") + expansions?.bind(param: ¶ms) + maxResults.map { params["max_results"] = $0 } + mediaFields?.bind(param: ¶ms) + nextToken.map { params["next_token"] = $0 } + placeFields?.bind(param: ¶ms) + pollFields?.bind(param: ¶ms) + sinceID.map { params["since_id"] = $0 } + sortOrder?.bind(param: ¶ms) + startTime?.bind(param: ¶ms, for: "start_time") + tweetFields?.bind(param: ¶ms) + untilID.map { params["until_id"] = $0 } + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift index da6eaa37..48cbd2f5 100644 --- a/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift @@ -35,22 +35,22 @@ open class GetTweetsSearchRecentRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["query"] = query - endTime?.bind(param: &p, for: "end_time") - expansions?.bind(param: &p) - maxResults.map { p["max_results"] = $0 } - mediaFields?.bind(param: &p) - nextToken.map { p["next_token"] = $0 } - placeFields?.bind(param: &p) - pollFields?.bind(param: &p) - sinceID.map { p["since_id"] = $0 } - sortOrder?.bind(param: &p) - startTime?.bind(param: &p, for: "start_time") - tweetFields?.bind(param: &p) - untilID.map { p["until_id"] = $0 } - userFields?.bind(param: &p) - return p + var params = [String: Any]() + params["query"] = query + endTime?.bind(param: ¶ms, for: "end_time") + expansions?.bind(param: ¶ms) + maxResults.map { params["max_results"] = $0 } + mediaFields?.bind(param: ¶ms) + nextToken.map { params["next_token"] = $0 } + placeFields?.bind(param: ¶ms) + pollFields?.bind(param: ¶ms) + sinceID.map { params["since_id"] = $0 } + sortOrder?.bind(param: ¶ms) + startTime?.bind(param: ¶ms, for: "start_time") + tweetFields?.bind(param: ¶ms) + untilID.map { params["until_id"] = $0 } + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpaceRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpaceRequestV2.swift index b1d866ed..5df4ef95 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpaceRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpaceRequestV2.swift @@ -17,12 +17,12 @@ open class GetSpaceRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - spaceFields?.bind(param: &p) - topicFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + spaceFields?.bind(param: ¶ms) + topicFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesBuyersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesBuyersRequestV2.swift index 4cb5e939..12412edf 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesBuyersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesBuyersRequestV2.swift @@ -19,14 +19,14 @@ open class GetSpacesBuyersRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - mediaFields?.bind(param: &p) - placeFields?.bind(param: &p) - pollFields?.bind(param: &p) - tweetFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + mediaFields?.bind(param: ¶ms) + placeFields?.bind(param: ¶ms) + pollFields?.bind(param: ¶ms) + tweetFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesByCreatorIDsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesByCreatorIDsRequestV2.swift index a5c04ced..be9ef9a7 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesByCreatorIDsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesByCreatorIDsRequestV2.swift @@ -17,13 +17,13 @@ open class GetSpacesByCreatorIDsRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["user_ids"] = userIDs.joined(separator: ",") - expansions?.bind(param: &p) - spaceFields?.bind(param: &p) - topicFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + params["user_ids"] = userIDs.joined(separator: ",") + expansions?.bind(param: ¶ms) + spaceFields?.bind(param: ¶ms) + topicFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesRequestV2.swift index 1a79c217..23c0d88b 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesRequestV2.swift @@ -17,13 +17,13 @@ open class GetSpacesRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["ids"] = ids.joined(separator: ",") - expansions?.bind(param: &p) - spaceFields?.bind(param: &p) - topicFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + params["ids"] = ids.joined(separator: ",") + expansions?.bind(param: ¶ms) + spaceFields?.bind(param: ¶ms) + topicFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift index 8a24a808..4f23d696 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift @@ -27,14 +27,14 @@ open class GetSpacesSearchRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["query"] = query - expansions?.bind(param: &p) - spaceFields?.bind(param: &p) - state?.bind(param: &p) - topicFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + params["query"] = query + expansions?.bind(param: ¶ms) + spaceFields?.bind(param: ¶ms) + state?.bind(param: ¶ms) + topicFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesTweetsRequestV2.swift index 4184eae8..9031a26c 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesTweetsRequestV2.swift @@ -19,14 +19,14 @@ open class GetSpacesTweetsRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - mediaFields?.bind(param: &p) - placeFields?.bind(param: &p) - pollFields?.bind(param: &p) - tweetFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + mediaFields?.bind(param: ¶ms) + placeFields?.bind(param: ¶ms) + pollFields?.bind(param: ¶ms) + tweetFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSampleStreamRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSampleStreamRequestV2.swift index bf5fb4f8..2d3db324 100644 --- a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSampleStreamRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSampleStreamRequestV2.swift @@ -19,15 +19,15 @@ open class GetTweetsSampleStreamRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - backfillMinutes.map { p["backfill_minutes"] = $0 } - expansions?.bind(param: &p) - mediaFields?.bind(param: &p) - placeFields?.bind(param: &p) - pollFields?.bind(param: &p) - tweetFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + backfillMinutes.map { params["backfill_minutes"] = $0 } + expansions?.bind(param: ¶ms) + mediaFields?.bind(param: ¶ms) + placeFields?.bind(param: ¶ms) + pollFields?.bind(param: ¶ms) + tweetFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRequestV2.swift index e0f3dfa2..b4324a3f 100644 --- a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRequestV2.swift @@ -19,15 +19,15 @@ open class GetTweetsSearchStreamRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - backfillMinutes.map { p["backfill_minutes"] = $0 } - expansions?.bind(param: &p) - mediaFields?.bind(param: &p) - placeFields?.bind(param: &p) - pollFields?.bind(param: &p) - tweetFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + backfillMinutes.map { params["backfill_minutes"] = $0 } + expansions?.bind(param: ¶ms) + mediaFields?.bind(param: ¶ms) + placeFields?.bind(param: ¶ms) + pollFields?.bind(param: ¶ms) + tweetFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift index 3c47a46e..414332c0 100644 --- a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift @@ -13,9 +13,9 @@ open class GetTweetsSearchStreamRulesRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - ids.map { p["ids"] = $0.joined(separator: ",") } - return p + var params = [String: Any]() + ids.map { params["ids"] = $0.joined(separator: ",") } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift index e84b3d03..73d2e6fe 100644 --- a/Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift @@ -32,27 +32,27 @@ open class PostTweetsSearchStreamRulesRequestV2: TwitterAPIRequest { } open var queryParameters: [String: Any] { - var p = [String: Any]() - dryRun.map { p["dry_run"] = $0 } - return p + var params = [String: Any]() + dryRun.map { params["dry_run"] = $0 } + return params } open var bodyParameters: [String: Any] { - var p = [String: Any]() + var params = [String: Any]() switch operation { case let .add(rules): - p["add"] = rules.map { + params["add"] = rules.map { [ "value": $0.value, "tag": $0.tag, ].compactMapValues { $0 } } case let .delete(ids): - p["delete"] = ["ids": ids] + params["delete"] = ["ids": ids] } - return p + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersMentionsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersMentionsRequestV2.swift index cb997826..cdf7cd0b 100644 --- a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersMentionsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersMentionsRequestV2.swift @@ -25,20 +25,20 @@ open class GetUsersMentionsRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - endTime?.bind(param: &p, for: "end_time") - expansions?.bind(param: &p) - maxResults.map { p["max_results"] = $0 } - mediaFields?.bind(param: &p) - paginationToken.map { p["pagination_token"] = $0 } - placeFields?.bind(param: &p) - pollFields?.bind(param: &p) - sinceID.map { p["since_id"] = $0 } - startTime?.bind(param: &p, for: "start_time") - tweetFields?.bind(param: &p) - untilID.map { p["until_id"] = $0 } - userFields?.bind(param: &p) - return p + var params = [String: Any]() + endTime?.bind(param: ¶ms, for: "end_time") + expansions?.bind(param: ¶ms) + maxResults.map { params["max_results"] = $0 } + mediaFields?.bind(param: ¶ms) + paginationToken.map { params["pagination_token"] = $0 } + placeFields?.bind(param: ¶ms) + pollFields?.bind(param: ¶ms) + sinceID.map { params["since_id"] = $0 } + startTime?.bind(param: ¶ms, for: "start_time") + tweetFields?.bind(param: ¶ms) + untilID.map { params["until_id"] = $0 } + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTimelinesReverseChronologicalRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTimelinesReverseChronologicalRequestV2.swift index b7656b71..4f7e838d 100644 --- a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTimelinesReverseChronologicalRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTimelinesReverseChronologicalRequestV2.swift @@ -26,21 +26,21 @@ open class GetUsersTimelinesReverseChronologicalRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - endTime?.bind(param: &p, for: "end_time") - exclude?.bind(param: &p) - expansions?.bind(param: &p) - maxResults.map { p["max_results"] = $0 } - mediaFields?.bind(param: &p) - paginationToken.map { p["pagination_token"] = $0 } - placeFields?.bind(param: &p) - pollFields?.bind(param: &p) - sinceID.map { p["since_id"] = $0 } - startTime?.bind(param: &p, for: "start_time") - tweetFields?.bind(param: &p) - untilID.map { p["until_id"] = $0 } - userFields?.bind(param: &p) - return p + var params = [String: Any]() + endTime?.bind(param: ¶ms, for: "end_time") + exclude?.bind(param: ¶ms) + expansions?.bind(param: ¶ms) + maxResults.map { params["max_results"] = $0 } + mediaFields?.bind(param: ¶ms) + paginationToken.map { params["pagination_token"] = $0 } + placeFields?.bind(param: ¶ms) + pollFields?.bind(param: ¶ms) + sinceID.map { params["since_id"] = $0 } + startTime?.bind(param: ¶ms, for: "start_time") + tweetFields?.bind(param: ¶ms) + untilID.map { params["until_id"] = $0 } + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTweetsRequestV2.swift index 29678d5e..d4f27670 100644 --- a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTweetsRequestV2.swift @@ -26,21 +26,21 @@ open class GetUsersTweetsRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - endTime?.bind(param: &p, for: "end_time") - exclude?.bind(param: &p) - expansions?.bind(param: &p) - maxResults.map { p["max_results"] = $0 } - mediaFields?.bind(param: &p) - paginationToken.map { p["pagination_token"] = $0 } - placeFields?.bind(param: &p) - pollFields?.bind(param: &p) - sinceID.map { p["since_id"] = $0 } - startTime?.bind(param: &p, for: "start_time") - tweetFields?.bind(param: &p) - untilID.map { p["until_id"] = $0 } - userFields?.bind(param: &p) - return p + var params = [String: Any]() + endTime?.bind(param: ¶ms, for: "end_time") + exclude?.bind(param: ¶ms) + expansions?.bind(param: ¶ms) + maxResults.map { params["max_results"] = $0 } + mediaFields?.bind(param: ¶ms) + paginationToken.map { params["pagination_token"] = $0 } + placeFields?.bind(param: ¶ms) + pollFields?.bind(param: ¶ms) + sinceID.map { params["since_id"] = $0 } + startTime?.bind(param: ¶ms, for: "start_time") + tweetFields?.bind(param: ¶ms) + untilID.map { params["until_id"] = $0 } + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetRequestV2.swift index 8892fd30..74f639c9 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetRequestV2.swift @@ -19,14 +19,14 @@ open class GetTweetRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - mediaFields?.bind(param: &p) - placeFields?.bind(param: &p) - pollFields?.bind(param: &p) - tweetFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + mediaFields?.bind(param: ¶ms) + placeFields?.bind(param: ¶ms) + pollFields?.bind(param: ¶ms) + tweetFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsQuoteTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsQuoteTweetsRequestV2.swift index 069b0dc1..b1a1bf3b 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsQuoteTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsQuoteTweetsRequestV2.swift @@ -21,16 +21,16 @@ open class GetTweetsQuoteTweetsRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - maxResults.map { p["max_results"] = $0 } - mediaFields?.bind(param: &p) - paginationToken.map { p["pagination_token"] = $0 } - placeFields?.bind(param: &p) - pollFields?.bind(param: &p) - tweetFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + maxResults.map { params["max_results"] = $0 } + mediaFields?.bind(param: ¶ms) + paginationToken.map { params["pagination_token"] = $0 } + placeFields?.bind(param: ¶ms) + pollFields?.bind(param: ¶ms) + tweetFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsRequestV2.swift index 701ecf99..3fb67529 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsRequestV2.swift @@ -19,15 +19,15 @@ open class GetTweetsRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["ids"] = ids.joined(separator: ",") - expansions?.bind(param: &p) - mediaFields?.bind(param: &p) - placeFields?.bind(param: &p) - pollFields?.bind(param: &p) - tweetFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + params["ids"] = ids.joined(separator: ",") + expansions?.bind(param: ¶ms) + mediaFields?.bind(param: ¶ms) + placeFields?.bind(param: ¶ms) + pollFields?.bind(param: ¶ms) + tweetFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift index 121cf804..5feb2a97 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift @@ -10,11 +10,11 @@ open class PostTweetsRequestV2: TwitterAPIRequest { } func bind(param: inout [String: Any]) { - var p = [String: Any]() + var params = [String: Any]() - p["place_id"] = placeID + params["place_id"] = placeID - param["geo"] = p + param["geo"] = params } } @@ -31,12 +31,12 @@ open class PostTweetsRequestV2: TwitterAPIRequest { } func bind(param: inout [String: Any]) { - var p = [String: Any]() + var params = [String: Any]() - p["media_ids"] = mediaIDs - taggedUserIDs.map { p["tagged_user_ids"] = $0 } + params["media_ids"] = mediaIDs + taggedUserIDs.map { params["tagged_user_ids"] = $0 } - param["media"] = p + param["media"] = params } } @@ -53,12 +53,12 @@ open class PostTweetsRequestV2: TwitterAPIRequest { } func bind(param: inout [String: Any]) { - var p = [String: Any]() + var params = [String: Any]() - p["duration_minutes"] = durationMinutes - p["options"] = options + params["duration_minutes"] = durationMinutes + params["options"] = options - param["poll"] = p + param["poll"] = params } } @@ -75,12 +75,12 @@ open class PostTweetsRequestV2: TwitterAPIRequest { } func bind(param: inout [String: Any]) { - var p = [String: Any]() + var params = [String: Any]() - excludeReplyUserIDs.map { p["exclude_reply_user_ids"] = $0 } - p["in_reply_to_tweet_id"] = inReplyToTweetID + excludeReplyUserIDs.map { params["exclude_reply_user_ids"] = $0 } + params["in_reply_to_tweet_id"] = inReplyToTweetID - param["reply"] = p + param["reply"] = params } } @@ -117,17 +117,17 @@ open class PostTweetsRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - directMessageDeepLink.map { p["direct_message_deep_link"] = $0 } - forSuperFollowersOnly.map { p["for_super_followers_only"] = $0 } - geo?.bind(param: &p) - media?.bind(param: &p) - poll?.bind(param: &p) - quoteTweetID.map { p["quote_tweet_id"] = $0 } - reply?.bind(param: &p) - replySettings?.bind(param: &p) - text.map { p["text"] = $0 } - return p + var params = [String: Any]() + directMessageDeepLink.map { params["direct_message_deep_link"] = $0 } + forSuperFollowersOnly.map { params["for_super_followers_only"] = $0 } + geo?.bind(param: ¶ms) + media?.bind(param: ¶ms) + poll?.bind(param: ¶ms) + quoteTweetID.map { params["quote_tweet_id"] = $0 } + reply?.bind(param: ¶ms) + replySettings?.bind(param: ¶ms) + text.map { params["text"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PutTweetsHiddenRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PutTweetsHiddenRequestV2.swift index f764c6b2..4a0c01fb 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PutTweetsHiddenRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PutTweetsHiddenRequestV2.swift @@ -19,9 +19,9 @@ open class PutTweetsHiddenRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["hidden"] = hidden - return p + var params = [String: Any]() + params["hidden"] = hidden + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsAllRequestV2.swift b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsAllRequestV2.swift index 8f77d6cc..2e0eb86a 100644 --- a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsAllRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsAllRequestV2.swift @@ -19,15 +19,15 @@ open class GetTweetsCountsAllRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["query"] = query - endTime?.bind(param: &p, for: "end_time") - granularity?.bind(param: &p) - nextToken.map { p["next_token"] = $0 } - sinceID.map { p["since_id"] = $0 } - startTime?.bind(param: &p, for: "start_time") - untilID.map { p["until_id"] = $0 } - return p + var params = [String: Any]() + params["query"] = query + endTime?.bind(param: ¶ms, for: "end_time") + granularity?.bind(param: ¶ms) + nextToken.map { params["next_token"] = $0 } + sinceID.map { params["since_id"] = $0 } + startTime?.bind(param: ¶ms, for: "start_time") + untilID.map { params["until_id"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsRecentRequestV2.swift b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsRecentRequestV2.swift index e0136bba..5ed9a5cf 100644 --- a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsRecentRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsRecentRequestV2.swift @@ -18,14 +18,14 @@ open class GetTweetsCountsRecentRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["query"] = query - endTime?.bind(param: &p, for: "end_time") - granularity?.bind(param: &p) - sinceID.map { p["since_id"] = $0 } - startTime?.bind(param: &p, for: "start_time") - untilID.map { p["until_id"] = $0 } - return p + var params = [String: Any]() + params["query"] = query + endTime?.bind(param: ¶ms, for: "end_time") + granularity?.bind(param: ¶ms) + sinceID.map { params["since_id"] = $0 } + startTime?.bind(param: ¶ms, for: "start_time") + untilID.map { params["until_id"] = $0 } + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUserRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUserRequestV2.swift index 0e4e18fd..28921f1c 100644 --- a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUserRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUserRequestV2.swift @@ -16,11 +16,11 @@ open class GetUserRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - tweetFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + tweetFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByRequestV2.swift index 63a313ed..4e97b3c8 100644 --- a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByRequestV2.swift @@ -16,12 +16,12 @@ open class GetUsersByRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["usernames"] = usernames.joined(separator: ",") - expansions?.bind(param: &p) - tweetFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + params["usernames"] = usernames.joined(separator: ",") + expansions?.bind(param: ¶ms) + tweetFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByUsernameRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByUsernameRequestV2.swift index 6298cf5a..8a62e740 100644 --- a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByUsernameRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByUsernameRequestV2.swift @@ -16,11 +16,11 @@ open class GetUsersByUsernameRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - tweetFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + tweetFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersMeRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersMeRequestV2.swift index 34d92014..0e8fa76a 100644 --- a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersMeRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersMeRequestV2.swift @@ -15,11 +15,11 @@ open class GetUsersMeRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - expansions?.bind(param: &p) - tweetFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + expansions?.bind(param: ¶ms) + tweetFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( diff --git a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersRequestV2.swift index fd7a4bf4..d03b5ff2 100644 --- a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersRequestV2.swift @@ -16,12 +16,12 @@ open class GetUsersRequestV2: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["ids"] = ids.joined(separator: ",") - expansions?.bind(param: &p) - tweetFields?.bind(param: &p) - userFields?.bind(param: &p) - return p + var params = [String: Any]() + params["ids"] = ids.joined(separator: ",") + expansions?.bind(param: ¶ms) + tweetFields?.bind(param: ¶ms) + userFields?.bind(param: ¶ms) + return params } public init( From fbc4bfa43760d77330820760b23ad67d40ca4cf3 Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Mon, 12 May 2025 05:42:49 -0600 Subject: [PATCH 07/26] fixes: fix invalid test cases --- .../APIv1/List/ListRequestV1Tests.swift | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift index fc3e69f2..8eb72d45 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift @@ -1,13 +1,13 @@ import TwitterAPIKit import XCTest -internal internal class CustomListsListRequestV1: GetListsListRequestV1 { +internal class CustomListsListRequestV1: GetListsListRequestV1 { public let custom: String override public var parameters: [String: Any] { - var p = super.parameters - p["custom"] = custom - return p + var params = super.parameters + params["custom"] = custom + return params } public init(custom: String, user: TwitterUserIdentifierV1, reverse: Bool? = .none) { @@ -16,13 +16,13 @@ internal internal class CustomListsListRequestV1: GetListsListRequestV1 { } } -internal internal class CapsuledListsListRequestV1: GetListsListRequestV1 { +internal class CapsuledListsListRequestV1: GetListsListRequestV1 { init() { super.init(user: .userID("100"), reverse: true) } } -internal internal class ListRequestV1Tests: XCTestCase { +internal class ListRequestV1Tests: XCTestCase { // https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-list public func testGetListsListRequestV1() throws { XCTContext.runActivity(named: "with only required parameters") { _ in From 8b939499f9290017f31784c0eb172a56495f4b70 Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Mon, 12 May 2025 05:51:41 -0600 Subject: [PATCH 08/26] fix: convert q -> query (keep string params the same) --- .../APIv1/Search/Requests/GetSearchTweetsRequestV1.swift | 8 ++++---- .../APIv1/Users/Requests/GetUsersSearchRequestV1.swift | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSearchTweetsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSearchTweetsRequestV1.swift index 9fd3bd52..ff7269bf 100644 --- a/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSearchTweetsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSearchTweetsRequestV1.swift @@ -8,7 +8,7 @@ open class GetSearchTweetsRequestV1: TwitterAPIRequest { case popular } - public let q: String + public let query: String public let lang: String? public let count: Int? public let until: String? @@ -29,7 +29,7 @@ open class GetSearchTweetsRequestV1: TwitterAPIRequest { open var parameters: [String: Any] { var params = [String: Any]() - params["q"] = q + params["q"] = query lang.map { params["lang"] = $0 } count.map { params["count"] = $0 } until.map { params["until"] = $0 } @@ -43,7 +43,7 @@ open class GetSearchTweetsRequestV1: TwitterAPIRequest { } public init( - q: String, + query: String, lang: String? = .none, count: Int? = .none, until: String? = .none, @@ -54,7 +54,7 @@ open class GetSearchTweetsRequestV1: TwitterAPIRequest { resultType: ResultType? = .none, includeEntities: Bool? = .none ) { - self.q = q + self.query = query self.lang = lang self.count = count self.until = until diff --git a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift index 7b6cbf13..467960e4 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift @@ -2,7 +2,7 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-users-search open class GetUsersSearchRequestV1: TwitterAPIRequest { - public let q: String + public let query: String public let page: Int? public let count: Int? public let includeEntities: Bool? @@ -17,7 +17,7 @@ open class GetUsersSearchRequestV1: TwitterAPIRequest { open var parameters: [String: Any] { var params = [String: Any]() - params["q"] = q + params["q"] = query page.map { params["page"] = $0 } count.map { params["count"] = $0 } includeEntities.map { params["include_entities"] = $0 } @@ -25,12 +25,12 @@ open class GetUsersSearchRequestV1: TwitterAPIRequest { } public init( - q: String, + query: String, page: Int? = .none, count: Int? = .none, includeEntities: Bool? = .none ) { - self.q = q + self.query = query self.page = page self.count = count self.includeEntities = includeEntities From f0670d259050b8f7f3de631af64a27740970ab8e Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Wed, 14 May 2025 05:33:51 -0600 Subject: [PATCH 09/26] fix: more fixes --- .../APIv1/Account/AccountAPIv1.swift | 4 + .../APIv1/Application/ApplicationAPIv1.swift | 4 + .../BlockAndMute/BlockAndMuteAPIv1.swift | 4 + .../APIv1/Collection/CollectionAPIv1.swift | 4 + .../DirectMessage/DirectMessageAPIv1.swift | 4 + .../APIv1/Favorite/FavoriteAPIv1.swift | 4 + .../APIv1/Friendships/FriendshipsAPIv1.swift | 4 + .../TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift | 4 + .../TwitterAPIKit/APIv1/List/ListAPIv1.swift | 4 + .../List/Requests/GetListsListRequestV1.swift | 4 + .../Requests/GetListsMembersRequestV1.swift | 4 + .../GetListsMembersShowRequestV1.swift | 4 + .../GetListsMembershipsRequestV1.swift | 4 + .../GetListsOwnershipsRequestV1.swift | 4 + .../List/Requests/GetListsShowRequestV1.swift | 4 + .../Requests/GetListsStatusesRequestV1.swift | 4 + .../GetListsSubscribersRequestV1.swift | 4 + .../GetListsSubscribersShowRequestV1.swift | 4 + .../GetListsSubscriptionsRequestV1.swift | 10 +- .../Requests/PostListsCreateRequestV1.swift | 4 + .../Requests/PostListsDestroyRequestV1.swift | 4 + .../PostListsMembersCreateAllRequestV1.swift | 4 + .../PostListsMembersCreateRequestV1.swift | 4 + .../PostListsMembersDestroyAllRequestV1.swift | 4 + .../PostListsMembersDestroyRequestV1.swift | 4 + .../PostListsSubscribersCreateRequestV1.swift | 4 + ...PostListsSubscribersDestroyRequestV1.swift | 4 + .../Requests/PostListsUpdateRequestV1.swift | 4 + .../APIv1/Retweet/RetweetAPIv1.swift | 4 + .../GetSavedSearchesListRequestV1.swift | 4 + .../PostSavedSearchesCreateRequestV1.swift | 4 + .../APIv1/Search/SearchAPIv1.swift | 4 + .../APIv1/Trend/TrendAPIv1.swift | 4 + .../Requests/GetUsersLookupRequestV1.swift | 4 + .../GetUsersProfileBannerRequestV1.swift | 4 + .../Requests/GetUsersSearchRequestV1.swift | 4 + .../Requests/GetUsersShowRequestV1.swift | 4 + .../TwitterAPIKit/APIv1/Users/UserAPIv1.swift | 4 + .../BlockAndMute/BlockAndMuteAPIv2.swift | 4 + .../APIv2/Bookmarks/BookmarksAPIv2.swift | 4 + .../APIv2/Compliance/ComplianceAPIv2.swift | 4 + .../DirectMessage/DirectMessageAPIv2.swift | 4 + .../APIv2/Friendships/FriendshipsAPIv2.swift | 4 + .../TwitterAPIKit/APIv2/Like/LikeAPIv2.swift | 4 + .../TwitterAPIKit/APIv2/List/ListAPIv2.swift | 4 + .../APIv2/Retweet/RetweetAPIv2.swift | 4 + .../APIv2/Search/SearchAPIv2.swift | 4 + .../APIv2/Spaces/SpacesAPIv2.swift | 4 + .../APIv2/Stream/StreamAPIv2.swift | 4 + .../APIv2/Timeline/TimelineAPIv2.swift | 4 + .../APIv2/Tweet/TweetAPIv2.swift | 4 + .../APIv2/TweetCount/TweetCountAPIv2.swift | 4 + .../TwitterAPIKit/APIv2/Users/UserAPIv2.swift | 4 + Sources/TwitterAPIKit/TwitterAPIClient.swift | 4 + .../PostCollectionsCreateRequestV1Tests.swift | 2 +- .../Geo/GetGeoSearchRequestV1Tests.swift | 2 +- .../APIv1/List/ListRequestV1Tests.swift | 10 +- .../APIv1/Media/UploadMediaUtilTests.swift | 24 +-- .../Extensions/ConcurrencyTests.swift | 22 ++- .../Extensions/DataTests.swift | 8 +- .../Mock/MockURLProtocol.swift | 16 +- .../MultipartFormDataPartTests.swift | 28 +-- .../MockTwitterAPISessionTask.swift | 53 ++++-- ...tterAPISessionDelegatedJSONTaskTests.swift | 83 ++++---- ...erAPISessionDelegatedStreamTaskTests.swift | 180 ++++++++++-------- .../TwitterAPIClientTests.swift | 49 +++-- .../TwitterAPIRequestTests.swift | 80 ++++---- .../TwitterAPISessionTests.swift | 24 ++- 68 files changed, 541 insertions(+), 262 deletions(-) diff --git a/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift index 05d31375..d7e83569 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift @@ -49,4 +49,8 @@ open class AccountAPIv1: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Application/ApplicationAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Application/ApplicationAPIv1.swift index 92e1826e..1335c0f4 100644 --- a/Sources/TwitterAPIKit/APIv1/Application/ApplicationAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Application/ApplicationAPIv1.swift @@ -7,4 +7,8 @@ open class ApplicationAPIv1: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift index 9cf1d7e7..0ae38e14 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift @@ -63,4 +63,8 @@ open class BlockAndMuteAPIv1: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift index aa7c9aab..bdf68e9d 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift @@ -70,4 +70,8 @@ open class CollectionAPIv1: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift index 27d9ec00..8626de1c 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift @@ -42,4 +42,8 @@ open class DirectMessageAPIv1: TwitterAPIBase { ) -> TwitterAPISessionDataTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Favorite/FavoriteAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Favorite/FavoriteAPIv1.swift index cdd1840e..5c72e518 100644 --- a/Sources/TwitterAPIKit/APIv1/Favorite/FavoriteAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Favorite/FavoriteAPIv1.swift @@ -21,4 +21,8 @@ open class FavoriteAPIv1: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift index fd6d730d..cce0e72e 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift @@ -84,4 +84,8 @@ open class FriendshipsAPIv1: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift index 0a0d701e..0b2d3ce6 100644 --- a/Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift @@ -21,4 +21,8 @@ open class GeoAPIv1: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift b/Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift index 5b7e1b65..34eb1460 100644 --- a/Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift @@ -133,4 +133,8 @@ open class ListAPIv1: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift index 2f1c15c9..96edc182 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift @@ -27,4 +27,8 @@ open class GetListsListRequestV1: TwitterAPIRequest { self.user = user self.reverse = reverse } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift index 4d25bb6a..e6ae5a35 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift @@ -39,4 +39,8 @@ open class GetListsMembersRequestV1: TwitterAPIRequest { self.includeEntities = includeEntities self.skipStatus = skipStatus } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift index 574319e9..86c3a4b4 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift @@ -35,4 +35,8 @@ open class GetListsMembersShowRequestV1: TwitterAPIRequest { self.includeEntities = includeEntities self.skipStatus = skipStatus } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift index 084d8c1a..74b92106 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift @@ -36,4 +36,8 @@ open class GetListsMembershipsRequestV1: TwitterAPIRequest { self.cursor = cursor self.filterToOwnedLists = filterToOwnedLists } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift index 03577d6d..17ac2e73 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift @@ -31,4 +31,8 @@ open class GetListsOwnershipsRequestV1: TwitterAPIRequest { self.count = count self.cursor = cursor } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift index 13163bec..2bf61061 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift @@ -23,4 +23,8 @@ open class GetListsShowRequestV1: TwitterAPIRequest { ) { self.list = list } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift index 0dc86111..cf4084ba 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift @@ -43,4 +43,8 @@ open class GetListsStatusesRequestV1: TwitterAPIRequest { self.includeEntities = includeEntities self.includeRTs = includeRTs } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersRequestV1.swift index 9c3e7c6e..6b5eaad1 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersRequestV1.swift @@ -39,4 +39,8 @@ open class GetListsSubscribersRequestV1: TwitterAPIRequest { self.includeEntities = includeEntities self.skipStatus = skipStatus } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift index 48972945..9dcc8a5e 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift @@ -35,4 +35,8 @@ open class GetListsSubscribersShowRequestV1: TwitterAPIRequest { self.includeEntities = includeEntities self.skipStatus = skipStatus } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift index 506005e5..82e56f0a 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift @@ -2,9 +2,9 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-subscriptions open class GetListsSubscriptionsRequestV1: TwitterAPIRequest { - let user: TwitterUserIdentifierV1 - let count: Int? - let cursor: String? + internal let user: TwitterUserIdentifierV1 + internal let count: Int? + internal let cursor: String? public var method: HTTPMethod { return .get @@ -31,4 +31,8 @@ open class GetListsSubscriptionsRequestV1: TwitterAPIRequest { self.count = count self.cursor = cursor } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift index ca9c8799..c7d2c168 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift @@ -31,4 +31,8 @@ open class PostListsCreateRequestV1: TwitterAPIRequest { self.mode = mode self.description = description } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift index 85b157eb..6b8d66e9 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift @@ -23,4 +23,8 @@ open class PostListsDestroyRequestV1: TwitterAPIRequest { ) { self.list = list } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift index 418bf11e..11f35b58 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift @@ -27,4 +27,8 @@ open class PostListsMembersCreateAllRequestV1: TwitterAPIRequest { self.list = list self.users = users } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift index 2a5226b2..79675d94 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift @@ -27,4 +27,8 @@ open class PostListsMembersCreateRequestV1: TwitterAPIRequest { self.list = list self.user = user } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift index 9d330b50..e28b9953 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift @@ -27,4 +27,8 @@ open class PostListsMembersDestroyAllRequestV1: TwitterAPIRequest { self.list = list self.users = users } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift index 53e34f3e..b7f165d9 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift @@ -27,4 +27,8 @@ open class PostListsMembersDestroyRequestV1: TwitterAPIRequest { self.list = list self.user = user } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift index 42892dd5..dd6846d2 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift @@ -23,4 +23,8 @@ open class PostListsSubscribersCreateRequestV1: TwitterAPIRequest { ) { self.list = list } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift index f4783348..8a19767c 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift @@ -23,4 +23,8 @@ open class PostListsSubscribersDestroyRequestV1: TwitterAPIRequest { ) { self.list = list } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift index 6f7c2837..42c52320 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift @@ -35,4 +35,8 @@ open class PostListsUpdateRequestV1: TwitterAPIRequest { self.mode = mode self.description = description } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift index 409b6f6a..c5473d53 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift @@ -35,4 +35,8 @@ open class RetweetAPIv1: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSavedSearchesListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSavedSearchesListRequestV1.swift index 5f7fdacb..b77ad327 100644 --- a/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSavedSearchesListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSavedSearchesListRequestV1.swift @@ -15,4 +15,8 @@ open class GetSavedSearchesListRequestV1: TwitterAPIRequest { } public init() {} + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift index 9fe7d266..3d157034 100644 --- a/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift @@ -23,4 +23,8 @@ open class PostSavedSearchesCreateRequestV1: TwitterAPIRequest { ) { self.query = query } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift index 2bd0fc9e..567d6673 100644 --- a/Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift @@ -28,4 +28,8 @@ open class SearchAPIv1: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift index 1b3332b6..35c114a6 100644 --- a/Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift @@ -21,4 +21,8 @@ open class TrendAPIv1: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersLookupRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersLookupRequestV1.swift index e7e70097..8f384c07 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersLookupRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersLookupRequestV1.swift @@ -31,4 +31,8 @@ open class GetUsersLookupRequestV1: TwitterAPIRequest { self.tweetMode = tweetMode self.includeEntities = includeEntities } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift index 076e6c19..3e42ac57 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift @@ -23,4 +23,8 @@ open class GetUsersProfileBannerRequestV1: TwitterAPIRequest { ) { self.user = user } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift index 467960e4..ba14e584 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift @@ -35,4 +35,8 @@ open class GetUsersSearchRequestV1: TwitterAPIRequest { self.count = count self.includeEntities = includeEntities } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift index b37f424f..493dbad9 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift @@ -27,4 +27,8 @@ open class GetUsersShowRequestV1: TwitterAPIRequest { self.user = user self.includeEntities = includeEntities } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift index c419ebe9..8c104dcc 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift @@ -28,4 +28,8 @@ open class UserAPIv1: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/BlockAndMuteAPIv2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/BlockAndMuteAPIv2.swift index 073c4294..1866f1b6 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/BlockAndMuteAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/BlockAndMuteAPIv2.swift @@ -42,4 +42,8 @@ open class BlockAndMuteAPIv2: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Bookmarks/BookmarksAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Bookmarks/BookmarksAPIv2.swift index 37027344..74bce148 100644 --- a/Sources/TwitterAPIKit/APIv2/Bookmarks/BookmarksAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Bookmarks/BookmarksAPIv2.swift @@ -21,4 +21,8 @@ open class BookmarksAPIv2: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Compliance/ComplianceAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Compliance/ComplianceAPIv2.swift index 4a3835ad..32a1a04f 100644 --- a/Sources/TwitterAPIKit/APIv2/Compliance/ComplianceAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Compliance/ComplianceAPIv2.swift @@ -21,4 +21,8 @@ open class ComplianceAPIv2: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift index 20d8b5d3..fdf61307 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift @@ -42,4 +42,8 @@ open class DirectMessageAPIv2: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Friendships/FriendshipsAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Friendships/FriendshipsAPIv2.swift index 68ff906e..4aeaf002 100644 --- a/Sources/TwitterAPIKit/APIv2/Friendships/FriendshipsAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Friendships/FriendshipsAPIv2.swift @@ -28,4 +28,8 @@ open class FriendshipsAPIv2: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Like/LikeAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Like/LikeAPIv2.swift index a6eef99a..ffca6888 100644 --- a/Sources/TwitterAPIKit/APIv2/Like/LikeAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Like/LikeAPIv2.swift @@ -28,4 +28,8 @@ open class LikeAPIv2: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift b/Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift index fead0670..8d6320a4 100644 --- a/Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift @@ -119,4 +119,8 @@ open class ListAPIv2: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Retweet/RetweetAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Retweet/RetweetAPIv2.swift index 313a4a49..94a0397e 100644 --- a/Sources/TwitterAPIKit/APIv2/Retweet/RetweetAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Retweet/RetweetAPIv2.swift @@ -21,4 +21,8 @@ open class RetweetAPIv2: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Search/SearchAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Search/SearchAPIv2.swift index bb386376..48db1e6b 100644 --- a/Sources/TwitterAPIKit/APIv2/Search/SearchAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Search/SearchAPIv2.swift @@ -15,4 +15,8 @@ open class SearchAPIv2: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/SpacesAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/SpacesAPIv2.swift index f49ecce5..3ce4585d 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/SpacesAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/SpacesAPIv2.swift @@ -42,4 +42,8 @@ open class SpacesAPIv2: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift index d6d68d76..5e178f4e 100644 --- a/Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift @@ -28,4 +28,8 @@ open class StreamAPIv2: TwitterAPIBase { ) -> TwitterAPISessionStreamTask { return session.send(streamRequest: request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Timeline/TimelineAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Timeline/TimelineAPIv2.swift index 05e2d3ff..c9b3be44 100644 --- a/Sources/TwitterAPIKit/APIv2/Timeline/TimelineAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Timeline/TimelineAPIv2.swift @@ -22,4 +22,8 @@ open class TimelineAPIv2: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/TweetAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/TweetAPIv2.swift index d6b10036..5528b300 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/TweetAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/TweetAPIv2.swift @@ -42,4 +42,8 @@ open class TweetAPIv2: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/TweetCount/TweetCountAPIv2.swift b/Sources/TwitterAPIKit/APIv2/TweetCount/TweetCountAPIv2.swift index 6ed53156..c373523f 100644 --- a/Sources/TwitterAPIKit/APIv2/TweetCount/TweetCountAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/TweetCount/TweetCountAPIv2.swift @@ -15,4 +15,8 @@ open class TweetCountAPIv2: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Users/UserAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Users/UserAPIv2.swift index 08e424dc..b1225ccb 100644 --- a/Sources/TwitterAPIKit/APIv2/Users/UserAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Users/UserAPIv2.swift @@ -35,4 +35,8 @@ open class UserAPIv2: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/TwitterAPIClient.swift b/Sources/TwitterAPIKit/TwitterAPIClient.swift index 260c59ad..827abd1a 100644 --- a/Sources/TwitterAPIKit/TwitterAPIClient.swift +++ b/Sources/TwitterAPIKit/TwitterAPIClient.swift @@ -78,6 +78,10 @@ open class TwitterAPIClient { environment: .init() ) } + + deinit { + // De-init Logic Here + } } // MARK: - Refresh OAuth2.0 token diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsCreateRequestV1Tests.swift index ca5b8881..da53b1f7 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsCreateRequestV1Tests.swift @@ -1,7 +1,7 @@ import TwitterAPIKit import XCTest -class PostCollectionsCreateRequestV1Tests: XCTestCase { +internal class PostCollectionsCreateRequestV1Tests: XCTestCase { public func test() throws { let req = PostCollectionsCreateRequestV1( name: "_n_", diff --git a/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoSearchRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoSearchRequestV1Tests.swift index a6ef3237..d0ad8fd6 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoSearchRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoSearchRequestV1Tests.swift @@ -1,7 +1,7 @@ import TwitterAPIKit import XCTest -class GetGeoSearchRequestV1Tests: XCTestCase { +internal class GetGeoSearchRequestV1Tests: XCTestCase { public func test() throws { XCTContext.runActivity(named: "coordinate") { _ in diff --git a/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift index 8eb72d45..3bc47a64 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift @@ -14,12 +14,20 @@ internal class CustomListsListRequestV1: GetListsListRequestV1 { self.custom = custom super.init(user: user, reverse: reverse) } + + deinit { + // De-init Logic Here + } } internal class CapsuledListsListRequestV1: GetListsListRequestV1 { - init() { + public init() { super.init(user: .userID("100"), reverse: true) } + + deinit { + // De-init Logic Here + } } internal class ListRequestV1Tests: XCTestCase { diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift index 4e2c88ab..ccab9b85 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift @@ -8,7 +8,7 @@ internal class UploadMediaUtilTests: XCTestCase { public func testWithProcessing() throws { let config = URLSessionConfiguration.default - config.protocolinternal classes = [MockURLProtocol.self] + config.protocolClasses = [MockURLProtocol.self] let client = TwitterAPIClient( .oauth10a(.init(consumerKey: "", consumerSecret: "", oauthToken: "", oauthTokenSecret: "")), @@ -35,7 +35,7 @@ internal class UploadMediaUtilTests: XCTestCase { data = try! JSONSerialization.data( withJSONObject: [ "media_id_string": "123", - "expires_after_secs": 1000, + "expires_after_secs": 1_000, ], options: [] ) case 1: // APPEND @@ -94,7 +94,7 @@ internal class UploadMediaUtilTests: XCTestCase { ], options: [] ) default: - XCTFail() + XCTFail("Invalid Response") } return ( @@ -145,7 +145,7 @@ internal class UploadMediaUtilTests: XCTestCase { statusCode = 404 default: - XCTFail() + XCTFail("Invalid Response") } return ( @@ -203,7 +203,7 @@ internal class UploadMediaUtilTests: XCTestCase { data = try! JSONSerialization.data( withJSONObject: [ "media_id_string": "123", - "expires_after_secs": 1000, + "expires_after_secs": 1_000, ], options: [] ) case 1: // APPEND @@ -215,7 +215,7 @@ internal class UploadMediaUtilTests: XCTestCase { XCTAssertTrue(requestBodyString!.contains("\r\nAPPEND\r\n")) statusCode = 200 default: - XCTFail() + XCTFail("Invalid Response") } return ( @@ -273,7 +273,7 @@ internal class UploadMediaUtilTests: XCTestCase { data = try! JSONSerialization.data( withJSONObject: [ "media_id_string": "123", - "expires_after_secs": 1000, + "expires_after_secs": 1_000, ], options: [] ) case 1: // APPEND @@ -287,7 +287,7 @@ internal class UploadMediaUtilTests: XCTestCase { XCTAssertTrue(requestBodyString!.contains("command=FINALIZE")) statusCode = 500 default: - XCTFail() + XCTFail("Invalid Response") } return ( @@ -343,7 +343,7 @@ internal class UploadMediaUtilTests: XCTestCase { data = try! JSONSerialization.data( withJSONObject: [ "media_id_string": "123", - "expires_after_secs": 1000, + "expires_after_secs": 1_000, ], options: [] ) case 1: // APPEND @@ -404,7 +404,7 @@ internal class UploadMediaUtilTests: XCTestCase { ], options: [] ) default: - XCTFail() + XCTFail("Invalid Response") } return ( @@ -453,7 +453,7 @@ internal class UploadMediaUtilTests: XCTestCase { data = try! JSONSerialization.data( withJSONObject: [ "media_id_string": "123", - "expires_after_secs": 1000, + "expires_after_secs": 1_000, ], options: [] ) @@ -474,7 +474,7 @@ internal class UploadMediaUtilTests: XCTestCase { ) default: - XCTFail() + XCTFail("Invalid Response") } return ( diff --git a/Tests/TwitterAPIKitTests/Extensions/ConcurrencyTests.swift b/Tests/TwitterAPIKitTests/Extensions/ConcurrencyTests.swift index a9155f80..61751ecc 100644 --- a/Tests/TwitterAPIKitTests/Extensions/ConcurrencyTests.swift +++ b/Tests/TwitterAPIKitTests/Extensions/ConcurrencyTests.swift @@ -39,7 +39,7 @@ import XCTest do { let obj = await responseObj.success - AssertEqualAnyDict(obj as? [String: Any], ["key": "value"]) + AssertEqualAnyDict(obj as? [String: Any] ?? [:], ["key": "value"]) } do { @@ -76,22 +76,22 @@ import XCTest do { let error = await response.error - XCTAssertTrue(error.isCancelled) + XCTAssertTrue(error ? error.isCancelled : false) } do { let error = await responseObj.error - XCTAssertTrue(error.isCancelled) + XCTAssertTrue(error ? error.isCancelled : false) } do { let error = await responseDecodable.error - XCTAssertTrue(error.isCancelled) + XCTAssertTrue(error ? error.isCancelled : false) } do { let error = await aResponse.error - XCTAssertTrue(error.isCancelled) + XCTAssertTrue(error ? error.isCancelled : false) } XCTAssertTrue(mockTask.cancelled) @@ -123,7 +123,7 @@ import XCTest let rss = await asyncTask.value XCTAssertTrue(mockTask.cancelled) XCTAssertTrue(asyncTask.isCancelled) - XCTAssertEqual(rs.count, 4) + XCTAssertEqual(rss.count, 4) for res in rss { XCTAssertTrue(r.error.isCancelled) } @@ -213,9 +213,11 @@ import XCTest ) let task = TwitterAPISessionDelegatedStreamTask(task: mockTask) - let stream = task.streamResponse( - queue: .main - ).map {resp in resp.compactMap { String(data: $0, encoding: .utf8) }} + let stream = task + .streamResponse( + queue: .main + ) + .map { resp in resp.compactMap { String(data: $0, encoding: .utf8) } } let asyncTask = Task { var count = 0 for await resp in stream { @@ -229,7 +231,7 @@ import XCTest case 2: XCTAssertTrue(resp.isError) default: - XCTFail('Invalid Response') + XCTFail("Invalid Response") } count += 1 } diff --git a/Tests/TwitterAPIKitTests/Extensions/DataTests.swift b/Tests/TwitterAPIKitTests/Extensions/DataTests.swift index e1e3c3e7..f9809c82 100644 --- a/Tests/TwitterAPIKitTests/Extensions/DataTests.swift +++ b/Tests/TwitterAPIKitTests/Extensions/DataTests.swift @@ -7,7 +7,7 @@ internal class DataTests: XCTestCase { XCTContext.runActivity(named: "success") { _ in let data = Data("{\"a\":1}".utf8) let serialized = data.serialize() - XCTAssertEqual(serialized.success as! [String: Int], ["a": 1]) + XCTAssertEqual(serialized.success as? [String: Int], ["a": 1]) } XCTContext.runActivity(named: "failure") { _ in @@ -19,12 +19,12 @@ internal class DataTests: XCTestCase { public func testDecode() throws { struct Obj: Decodable { - let a: Int + let abc: Int } XCTContext.runActivity(named: "success") { _ in - let data = Data("{\"a\":1}".utf8) + let data = Data("{\"abc\":1}".utf8) let serialized = data.decode(Obj.self, decoder: JSONDecoder()) - XCTAssertEqual(serialized.success?.a, 1) + XCTAssertEqual(serialized.success?.abc, 1) } XCTContext.runActivity(named: "failure") { _ in diff --git a/Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift b/Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift index a5451c93..89ff5d32 100644 --- a/Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift +++ b/Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift @@ -4,23 +4,23 @@ internal class MockURLProtocol: URLProtocol { public static var requestHandler: ((URLRequest) throws -> (HTTPURLResponse, Data?))? public static var requestAssert: ((URLRequest) throws -> Void)? - override class func canInit(with _: URLRequest) -> Bool { + override public class func canInit(with _: URLRequest) -> Bool { return true } - override class func canonicalRequest(for request: URLRequest) -> URLRequest { + override public class func canonicalRequest(for request: URLRequest) -> URLRequest { return request } - static func cleanup() { + public static func cleanup() { Self.requestHandler = nil Self.requestAssert = nil } - override func startLoading() { + override public func startLoading() { let handler: (URLRequest) throws -> (HTTPURLResponse, Data?) - if let h = Self.requestHandler { - handler = h + if let reqHandler = Self.requestHandler { + handler = reqHandler } else { handler = { request in ( @@ -35,7 +35,7 @@ internal class MockURLProtocol: URLProtocol { let (response, data): (URLResponse, Data?) = try handler(request) client?.urlProtocol(self, didReceive: response, cacheStoragePolicy: .notAllowed) - if let data = data { + if let data { client?.urlProtocol(self, didLoad: data) } @@ -45,7 +45,7 @@ internal class MockURLProtocol: URLProtocol { } } - override func stopLoading() {} + override public func stopLoading() {} deinit { // De-init Logic Here diff --git a/Tests/TwitterAPIKitTests/MultipartFormDataPartTests.swift b/Tests/TwitterAPIKitTests/MultipartFormDataPartTests.swift index d9a1a753..7610bc2e 100644 --- a/Tests/TwitterAPIKitTests/MultipartFormDataPartTests.swift +++ b/Tests/TwitterAPIKitTests/MultipartFormDataPartTests.swift @@ -3,32 +3,32 @@ import XCTest internal class MultipartFormDataPartTests: XCTestCase { public func testEqualValue() throws { - let a = MultipartFormDataPart.value(name: "n", value: 1) - let b = MultipartFormDataPart.value(name: "n", value: "1") - let c = MultipartFormDataPart.value(name: "n", value: Float(1)) - let d = MultipartFormDataPart.value(name: "m", value: 1) + let dataA = MultipartFormDataPart.value(name: "n", value: 1) + let dataB = MultipartFormDataPart.value(name: "n", value: "1") + let dataC = MultipartFormDataPart.value(name: "n", value: Float(1)) + let dataD = MultipartFormDataPart.value(name: "m", value: 1) - for combo in [a, b, c, d].combinations(ofCount: 2) { + for combo in [dataA, dataB, dataC, dataD].combinations(ofCount: 2) { XCTAssertNotEqual(combo[0], combo[1]) } } public func testEqualData() throws { let data = Data() - let a = MultipartFormDataPart.data(name: "n", value: data, filename: "f", mimeType: "m") - let b = MultipartFormDataPart.data(name: "m", value: data, filename: "f", mimeType: "m") - let c = MultipartFormDataPart.data(name: "n", value: data, filename: "ff", mimeType: "m") - let d = MultipartFormDataPart.data(name: "n", value: data, filename: "f", mimeType: "mm") - let e = MultipartFormDataPart.data(name: "n", value: Data(repeating: 1, count: 1), filename: "f", mimeType: "m") - let f = MultipartFormDataPart.value(name: "n", value: data) + let dataA = MultipartFormDataPart.data(name: "n", value: data, filename: "f", mimeType: "m") + let dataB = MultipartFormDataPart.data(name: "m", value: data, filename: "f", mimeType: "m") + let dataC = MultipartFormDataPart.data(name: "n", value: data, filename: "ff", mimeType: "m") + let dataD = MultipartFormDataPart.data(name: "n", value: data, filename: "f", mimeType: "mm") + let dataE = MultipartFormDataPart.data(name: "n", value: Data(repeating: 1, count: 1), filename: "f", mimeType: "m") + let dataF = MultipartFormDataPart.value(name: "n", value: data) - let a1 = MultipartFormDataPart.data(name: "n", value: Data(), filename: "f", mimeType: "m") + let dataA1 = MultipartFormDataPart.data(name: "n", value: Data(), filename: "f", mimeType: "m") - for combo in [a, b, c, d, e, f].combinations(ofCount: 2) { + for combo in [dataA, dataB, dataC, dataD, dataE, dataF].combinations(ofCount: 2) { XCTAssertNotEqual(combo[0], combo[1]) } - XCTAssertEqual(a, a1) + XCTAssertEqual(dataA, dataA1) } deinit { diff --git a/Tests/TwitterAPIKitTests/SessionTask/MockTwitterAPISessionTask.swift b/Tests/TwitterAPIKitTests/SessionTask/MockTwitterAPISessionTask.swift index 4f2693eb..05ff9f8a 100644 --- a/Tests/TwitterAPIKitTests/SessionTask/MockTwitterAPISessionTask.swift +++ b/Tests/TwitterAPIKitTests/SessionTask/MockTwitterAPISessionTask.swift @@ -1,14 +1,14 @@ import Foundation import TwitterAPIKit -class MockTwitterAPISessionTask: TwitterAPISessionTask { - var taskIdentifier: Int - var currentRequest: URLRequest? - var originalRequest: URLRequest? - var httpResponse: HTTPURLResponse? - var cancelled = false - - init( +internal class MockTwitterAPISessionTask: TwitterAPISessionTask { + public var taskIdentifier: Int + public var currentRequest: URLRequest? + public var originalRequest: URLRequest? + public var httpResponse: HTTPURLResponse? + public var cancelled = false + + public init( taskIdentifier: Int, currentRequest: URLRequest? = nil, originalRequest: URLRequest? = nil, @@ -20,15 +20,19 @@ class MockTwitterAPISessionTask: TwitterAPISessionTask { self.httpResponse = httpResponse } - func cancel() { + public func cancel() { cancelled = true } + + deinit { + // De-init Logic Here + } } -class MockTwitterAPISessionDataTask: MockTwitterAPISessionTask, TwitterAPISessionDataTask { - var data: Data +internal class MockTwitterAPISessionDataTask: MockTwitterAPISessionTask, TwitterAPISessionDataTask { + public var data: Data - init( + public init( data: Data, taskIdentifier: Int, currentRequest: URLRequest? = nil, @@ -37,27 +41,34 @@ class MockTwitterAPISessionDataTask: MockTwitterAPISessionTask, TwitterAPISessio ) { self.data = data super.init( - taskIdentifier: taskIdentifier, currentRequest: currentRequest, originalRequest: originalRequest, + taskIdentifier: taskIdentifier, + currentRequest: currentRequest, + originalRequest: originalRequest, httpResponse: httpResponse ) } - func responseData(queue: DispatchQueue, _ block: @escaping (TwitterAPIResponse) -> Void) -> Self { + public func responseData(queue: DispatchQueue, _ block: @escaping (TwitterAPIResponse) -> Void) -> Self { queue.async { [weak self] in - guard let self = self else { return } + guard let self else { return } block( .init( - request: self.currentRequest, - response: self.httpResponse, - data: self.data, - result: .success(self.data), + request: currentRequest, + response: httpResponse, + data: data, + result: .success(data), rateLimit: TwitterRateLimit(header: [:]) - )) + ) + ) } return self } - func responseData(_ block: @escaping (TwitterAPIResponse) -> Void) -> Self { + public func responseData(_ block: @escaping (TwitterAPIResponse) -> Void) -> Self { return responseData(queue: .main, block) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift index 0f7f1924..573aaf55 100644 --- a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift +++ b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift @@ -84,21 +84,24 @@ internal class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { let exp = expectation(description: "") exp.expectedFulfillmentCount = 3 - _ = task.responseData(queue: .global(qos: .background)) { response in - XCTAssertTrue(response.isError) - XCTAssertNotNil(response.rateLimit) - XCTAssertEqual(response.rateLimit?.limit, 100) - XCTAssertEqual(response.rateLimit?.remaining, 2) - XCTAssertEqual(response.rateLimit?.reset, 1_647_099_945) - - exp.fulfill() - }.responseObject(queue: .global(qos: .background)) { response in - XCTAssertTrue(response.isError) - exp.fulfill() - }.responseDecodable(type: DecodableObj.self, queue: .global(qos: .background)) { response in - XCTAssertTrue(response.isError) - exp.fulfill() - } + _ = task + .responseData(queue: .global(qos: .background)) { response in + XCTAssertTrue(response.isError) + XCTAssertNotNil(response.rateLimit) + XCTAssertEqual(response.rateLimit?.limit, 100) + XCTAssertEqual(response.rateLimit?.remaining, 2) + XCTAssertEqual(response.rateLimit?.reset, 1_647_099_945) + + exp.fulfill() + } + .responseObject(queue: .global(qos: .background)) { response in + XCTAssertTrue(response.isError) + exp.fulfill() + } + .responseDecodable(type: DecodableObj.self, queue: .global(qos: .background)) { response in + XCTAssertTrue(response.isError) + exp.fulfill() + } DispatchQueue.global(qos: .background).async { task.append(chunk: Data("{\"key\"".utf8)) @@ -132,17 +135,20 @@ internal class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { let exp = expectation(description: "") exp.expectedFulfillmentCount = 3 - _ = task.responseData(queue: .global(qos: .background)) { response in - XCTAssertTrue(response.isError) - XCTAssertEqual(response.error?.underlyingError as! URLError, URLError(.badServerResponse)) - exp.fulfill() - }.responseObject(queue: .global(qos: .background)) { response in - XCTAssertTrue(response.isError) - exp.fulfill() - }.responseDecodable(type: DecodableObj.self, queue: .global(qos: .background)) { response in - XCTAssertTrue(response.isError) - exp.fulfill() - } + _ = task + .responseData(queue: .global(qos: .background)) { response in + XCTAssertTrue(response.isError) + XCTAssertEqual(response.error?.underlyingError as! URLError, URLError(.badServerResponse)) + exp.fulfill() + } + .responseObject(queue: .global(qos: .background)) { response in + XCTAssertTrue(response.isError) + exp.fulfill() + } + .responseDecodable(type: DecodableObj.self, queue: .global(qos: .background)) { response in + XCTAssertTrue(response.isError) + exp.fulfill() + } DispatchQueue.global(qos: .background).async { task.append(chunk: Data("{\"key\"".utf8)) @@ -168,17 +174,20 @@ internal class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { let exp = expectation(description: "") exp.expectedFulfillmentCount = 3 - _ = task.responseData(queue: .global(qos: .background)) { response in - XCTAssertTrue(response.isError) - XCTAssertEqual(response.error?.underlyingError as! URLError, URLError(.cancelled)) - exp.fulfill() - }.responseObject(queue: .global(qos: .background)) { response in - XCTAssertTrue(response.isError) - exp.fulfill() - }.responseDecodable(type: DecodableObj.self, queue: .global(qos: .background)) { response in - XCTAssertTrue(response.isError) - exp.fulfill() - } + _ = task + .responseData(queue: .global(qos: .background)) { response in + XCTAssertTrue(response.isError) + XCTAssertEqual(response.error?.underlyingError as! URLError, URLError(.cancelled)) + exp.fulfill() + } + .responseObject(queue: .global(qos: .background)) { response in + XCTAssertTrue(response.isError) + exp.fulfill() + } + .responseDecodable(type: DecodableObj.self, queue: .global(qos: .background)) { response in + XCTAssertTrue(response.isError) + exp.fulfill() + } DispatchQueue.global(qos: .background).async { task.append(chunk: Data("{\"key\"".utf8)) diff --git a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift index e8d667b2..55992197 100644 --- a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift +++ b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift @@ -2,12 +2,12 @@ import XCTest @testable import TwitterAPIKit -class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { - override func setUpWithError() throws {} +internal class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { + override public func setUpWithError() throws {} - override func tearDownWithError() throws {} + override public func tearDownWithError() throws {} - func testProps() throws { + public func testProps() throws { let cReq = URLRequest(url: URL(string: "http://example.com/current")!) let oReq = URLRequest(url: URL(string: "http://example.com/original")!) let resp = HTTPURLResponse( @@ -30,7 +30,7 @@ class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { XCTAssertEqual(task.httpResponse, resp) } - func test() throws { + public func test() throws { let mockTask = MockTwitterAPISessionTask( taskIdentifier: 1, currentRequest: nil, @@ -59,40 +59,42 @@ class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { exp.expectedFulfillmentCount = 8 var count = 0 - task.streamResponse { response in - - XCTAssertTrue(Thread.isMainThread) - - XCTAssertNotNil(response.rateLimit) - XCTAssertEqual(response.rateLimit?.limit, 15) - XCTAssertEqual(response.rateLimit?.remaining, 1) - XCTAssertEqual(response.rateLimit?.reset, 1_647_099_944) - - switch count { - case 0: - XCTAssertEqual(response.success.map { String(data: $0, encoding: .utf8) }, "aaaa") - case 1: - XCTAssertEqual(response.success.map { String(data: $0, encoding: .utf8) }, "bbbb") - case 2: - XCTAssertEqual(response.success.map { String(data: $0, encoding: .utf8) }, "🥓🥓") - case 3: - XCTAssertEqual(response.success.map { String(data: $0, encoding: .utf8) }, "あ") - default: - XCTFail() + task + .streamResponse { response in + + XCTAssertTrue(Thread.isMainThread) + + XCTAssertNotNil(response.rateLimit) + XCTAssertEqual(response.rateLimit?.limit, 15) + XCTAssertEqual(response.rateLimit?.remaining, 1) + XCTAssertEqual(response.rateLimit?.reset, 1_647_099_944) + + switch count { + case 0: + XCTAssertEqual(response.success.map { String(data: $0, encoding: .utf8) }, "aaaa") + case 1: + XCTAssertEqual(response.success.map { String(data: $0, encoding: .utf8) }, "bbbb") + case 2: + XCTAssertEqual(response.success.map { String(data: $0, encoding: .utf8) }, "🥓🥓") + case 3: + XCTAssertEqual(response.success.map { String(data: $0, encoding: .utf8) }, "あ") + default: + XCTFail("Invalid Response") + } + + count += 1 + exp.fulfill() + } + .streamResponse(queue: .global(qos: .default)) { _ in + XCTAssertFalse(Thread.isMainThread) + exp.fulfill() } - - count += 1 - exp.fulfill() - }.streamResponse(queue: .global(qos: .default)) { _ in - XCTAssertFalse(Thread.isMainThread) - exp.fulfill() - } wait(for: [exp], timeout: 100) XCTAssertEqual(count, 4) } - func testInvalidStatusCode() throws { + public func testInvalidStatusCode() throws { let mockTask = MockTwitterAPISessionTask( taskIdentifier: 2, currentRequest: nil, @@ -123,35 +125,37 @@ class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { exp.expectedFulfillmentCount = 2 var count = 0 - task.streamResponse { response in + task + .streamResponse { response in - XCTAssertTrue(Thread.isMainThread) + XCTAssertTrue(Thread.isMainThread) - XCTAssertNotNil(response.rateLimit) - XCTAssertEqual(response.rateLimit?.limit, 15) - XCTAssertEqual(response.rateLimit?.remaining, 1) - XCTAssertEqual(response.rateLimit?.reset, 1_647_099_944) + XCTAssertNotNil(response.rateLimit) + XCTAssertEqual(response.rateLimit?.limit, 15) + XCTAssertEqual(response.rateLimit?.remaining, 1) + XCTAssertEqual(response.rateLimit?.reset, 1_647_099_944) - switch count { - case 0: + switch count { + case 0: + XCTAssertTrue(response.error!.isResponseFailed) + default: + XCTFail("Invalid Response") + } + + count += 1 + exp.fulfill() + } + .streamResponse(queue: .global(qos: .default)) { response in + XCTAssertFalse(Thread.isMainThread) XCTAssertTrue(response.error!.isResponseFailed) - default: - XCTFail() + exp.fulfill() } - count += 1 - exp.fulfill() - }.streamResponse(queue: .global(qos: .default)) { response in - XCTAssertFalse(Thread.isMainThread) - XCTAssertTrue(response.error!.isResponseFailed) - exp.fulfill() - } - wait(for: [exp], timeout: 100) XCTAssertEqual(count, 1) } - func testNilResponse() throws { + public func testNilResponse() throws { let mockTask = MockTwitterAPISessionTask( taskIdentifier: 1, currentRequest: nil, @@ -169,30 +173,32 @@ class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { exp.expectedFulfillmentCount = 2 var count = 0 - task.streamResponse { response in + task + .streamResponse { response in - XCTAssertTrue(Thread.isMainThread) + XCTAssertTrue(Thread.isMainThread) - switch count { - case 0: - XCTAssertTrue(response.isError) - XCTAssertTrue(response.error!.isResponseFailed) - default: - XCTFail() - } + switch count { + case 0: + XCTAssertTrue(response.isError) + XCTAssertTrue(response.error!.isResponseFailed) + default: + XCTFail("Invalid Response") + } - count += 1 - exp.fulfill() - }.streamResponse(queue: .global(qos: .default)) { _ in - XCTAssertFalse(Thread.isMainThread) - exp.fulfill() - } + count += 1 + exp.fulfill() + } + .streamResponse(queue: .global(qos: .default)) { _ in + XCTAssertFalse(Thread.isMainThread) + exp.fulfill() + } wait(for: [exp], timeout: 10) XCTAssertEqual(count, 1) } - func testError() throws { + public func testError() throws { let mockTask = MockTwitterAPISessionTask( taskIdentifier: 1, currentRequest: nil, @@ -210,29 +216,35 @@ class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { exp.expectedFulfillmentCount = 2 var count = 0 - task.streamResponse { response in + task + .streamResponse { response in - XCTAssertTrue(Thread.isMainThread) + XCTAssertTrue(Thread.isMainThread) - XCTAssertNil(response.rateLimit) + XCTAssertNil(response.rateLimit) - switch count { - case 0: - XCTAssertTrue(response.isError) + switch count { + case 0: + XCTAssertTrue(response.isError) - default: - XCTFail() - } + default: + XCTFail("Invalid Response") + } - count += 1 - exp.fulfill() - }.streamResponse(queue: .global(qos: .default)) { response in - XCTAssertFalse(Thread.isMainThread) - XCTAssertTrue(response.isError) - exp.fulfill() - } + count += 1 + exp.fulfill() + } + .streamResponse(queue: .global(qos: .default)) { response in + XCTAssertFalse(Thread.isMainThread) + XCTAssertTrue(response.isError) + exp.fulfill() + } wait(for: [exp], timeout: 100) XCTAssertEqual(count, 1) } + + deinit { + // De-init Logic Here + } } diff --git a/Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift index d07f4c12..3c0b511b 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift @@ -16,11 +16,12 @@ internal class TwitterAPIClientTests: XCTestCase { public func testRefreshToken() throws { let config = URLSessionConfiguration.default - config.protocolinternal classes = [MockURLProtocol.self] + config.protocolClasses = [MockURLProtocol.self] let client = TwitterAPIClient( .oauth20( - .init(clientID: "c", scope: [], tokenType: "t", expiresIn: 0, accessToken: "a", refreshToken: "r")), + .init(clientID: "c", scope: [], tokenType: "t", expiresIn: 0, accessToken: "a", refreshToken: "r") + ), configuration: config ) @@ -34,7 +35,8 @@ internal class TwitterAPIClientTests: XCTestCase { "access_token" : "", "refresh_token" : "" } - """#.utf8) + """#.utf8 + ) return ( HTTPURLResponse(url: request.url!, statusCode: 200, httpVersion: "2.0", headerFields: nil)!, data ) @@ -44,7 +46,7 @@ internal class TwitterAPIClientTests: XCTestCase { XCTAssertEqual(token.accessToken, "a") XCTAssertEqual(token.refreshToken, "r") } else { - XCTFail() + XCTFail("Invalid Response") } let exp = expectation(description: "") @@ -66,17 +68,17 @@ internal class TwitterAPIClientTests: XCTestCase { XCTAssertEqual(token.accessToken, "") XCTAssertEqual(token.refreshToken, "") } else { - XCTFail() + XCTFail("Invalid Response") } } public func testRefreshTokenForceRefresh() throws { let config = URLSessionConfiguration.default - config.protocolinternal classes = [MockURLProtocol.self] + config.protocolClasses = [MockURLProtocol.self] let client = TwitterAPIClient( .oauth20( - .init(clientID: "c", scope: [], tokenType: "t", expiresIn: 1000, accessToken: "a", refreshToken: "r") + .init(clientID: "c", scope: [], tokenType: "t", expiresIn: 1_000, accessToken: "a", refreshToken: "r") ), configuration: config ) @@ -91,7 +93,8 @@ internal class TwitterAPIClientTests: XCTestCase { "access_token" : "", "refresh_token" : "" } - """#.utf8) + """#.utf8 + ) return ( HTTPURLResponse(url: request.url!, statusCode: 200, httpVersion: "2.0", headerFields: nil)!, data ) @@ -116,7 +119,7 @@ internal class TwitterAPIClientTests: XCTestCase { XCTAssertEqual(token.accessToken, "") XCTAssertEqual(token.refreshToken, "") } else { - XCTFail() + XCTFail("Invalid Response") } } @@ -128,7 +131,7 @@ internal class TwitterAPIClientTests: XCTestCase { case .failure(.refreshOAuth20TokenFailed(reason: .invalidAuthenticationMethod(.none))): break default: - XCTFail() + XCTFail("Invalid Response") } exp.fulfill() } @@ -145,14 +148,16 @@ internal class TwitterAPIClientTests: XCTestCase { expiresIn: 0, accessToken: "", refreshToken: nil - ))) + ) + ) + ) let exp = expectation(description: "") client.refreshOAuth20Token(type: .publicClient) { result in switch result { case .failure(.refreshOAuth20TokenFailed(reason: .refreshTokenIsMissing)): break default: - XCTFail() + XCTFail("Invalid Response") } exp.fulfill() } @@ -171,7 +176,9 @@ internal class TwitterAPIClientTests: XCTestCase { accessToken: "a", refreshToken: "r", createdAt: now - ))) + ) + ) + ) let exp = expectation(description: "") client.refreshOAuth20Token(type: .publicClient) { result in @@ -182,7 +189,7 @@ internal class TwitterAPIClientTests: XCTestCase { XCTAssertEqual(newToken.token.refreshToken, "r") XCTAssertEqual(newToken.token.createdAt, now) default: - XCTFail() + XCTFail("Invalid Response") } exp.fulfill() } @@ -194,11 +201,12 @@ internal class TwitterAPIClientTests: XCTestCase { @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func testRefreshTokenAsync() async throws { let config = URLSessionConfiguration.default - config.protocolinternal classes = [MockURLProtocol.self] + config.protocolClasses = [MockURLProtocol.self] let client = TwitterAPIClient( .oauth20( - .init(clientID: "c", scope: [], tokenType: "t", expiresIn: 0, accessToken: "a", refreshToken: "r")), + .init(clientID: "c", scope: [], tokenType: "t", expiresIn: 0, accessToken: "a", refreshToken: "r") + ), configuration: config ) @@ -212,7 +220,8 @@ internal class TwitterAPIClientTests: XCTestCase { "access_token" : "", "refresh_token" : "" } - """#.utf8) + """#.utf8 + ) return ( HTTPURLResponse(url: request.url!, statusCode: 200, httpVersion: "2.0", headerFields: nil)!, data ) @@ -228,7 +237,7 @@ internal class TwitterAPIClientTests: XCTestCase { XCTAssertEqual(token.accessToken, "") XCTAssertEqual(token.refreshToken, "") } else { - XCTFail() + XCTFail("Invalid Response") } } @@ -238,13 +247,13 @@ internal class TwitterAPIClientTests: XCTestCase { do { _ = try await client.refreshOAuth20Token(type: .publicClient) - XCTFail() + XCTFail("Invalid Response") } catch { switch error { case TwitterAPIKitError.refreshOAuth20TokenFailed(reason: .invalidAuthenticationMethod(.none)): break default: - XCTFail() + XCTFail("Invalid Response") } } } diff --git a/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift index 794a53d0..e3dd25c1 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift @@ -183,23 +183,27 @@ internal class TwitterAPIRequestTests: XCTestCase { } try XCTContext.runActivity(named: "multipartFormData") { _ in - let req = try MockTwitterAPIRequest( method: .post, parameters: [ "a-value": MultipartFormDataPart.value(name: "a", value: "value"), "b-data": MultipartFormDataPart.data( - name: "b", value: Data("ab".utf8), filename: "hoge.txt", mimeType: "plain/text"), + name: "b", + value: Data("ab".utf8), + filename: "hoge.txt", + mimeType: "plain/text" + ), ], bodyContentType: .multipartFormData ).buildRequest(environment: env) XCTAssertTrue( - req.allHTTPHeaderFields!["Content-Type"]!.hasPrefix("multipart/form-data; boundary=TwitterAPIKit-")) + req.allHTTPHeaderFields!["Content-Type"]!.hasPrefix("multipart/form-data; boundary=TwitterAPIKit-") + ) let boundary = req.allHTTPHeaderFields!["Content-Type"]!.replacingOccurrences( - of: "multipart/form-data; boundary=", with: "") - + of: "multipart/form-data; boundary=", with: "" + ) let body = String(data: req.httpBody!, encoding: .utf8)! let expect = """ @@ -216,7 +220,6 @@ internal class TwitterAPIRequestTests: XCTestCase { """ XCTAssertEqual(body, expect) - try XCTContext.runActivity(named: "Invalid parameter") { _ in XCTAssertThrowsError( @@ -239,51 +242,48 @@ internal class TwitterAPIRequestTests: XCTestCase { ).buildRequest(environment: env) let body = try JSONSerialization.jsonObject(with: req.httpBody!, options: []) - XCTAssertEqual(body as? [String: String], ["key": "value,🥓"]) try XCTContext.runActivity( named: "Invalid", - block: { _ in - XCTAssertThrowsError( - try MockTwitterAPIRequest( - method: .post, - parameters: ["key": Data()], - bodyContentType: .json - ).buildRequest(environment: env) - ) { error in - if - let error = error as? TwitterAPIKitError, - case .jsonSerializationFailed(obj: _) = error.requestFailureReason { - } else { - XCTFail("Unknown Error") - } + ) { _ in + XCTAssertThrowsError( + try MockTwitterAPIRequest( + method: .post, + parameters: ["key": Data()], + bodyContentType: .json + ).buildRequest(environment: env) + ) { error in + if + let error = error as? TwitterAPIKitError, + case .jsonSerializationFailed = error.requestFailureReason { + } else { + XCTFail("Unknown Error") } } - ) + } try XCTContext.runActivity( named: "Invalid value", - block: { _ in - XCTAssertThrowsError( - try MockTwitterAPIRequest( - method: .post, - parameters: [ - String(bytes: [0xD8, 0x00] as [UInt8], encoding: String.Encoding.utf16BigEndian)!: - String(bytes: [0xD8, 0x00] as [UInt8], encoding: String.Encoding.utf16BigEndian)!, - ], - bodyContentType: .json - ).buildRequest(environment: env) - ) { error in - if - let error = error as? TwitterAPIKitError, - case .jsonSerializationFailed(obj: _) = error.requestFailureReason { - } else { - XCTFail("Unknown Error") - } + ) { _ in + XCTAssertThrowsError( + try MockTwitterAPIRequest( + method: .post, + parameters: [ + String(bytes: [0xD8, 0x00] as [UInt8], encoding: String.Encoding.utf16BigEndian)!: + String(bytes: [0xD8, 0x00] as [UInt8], encoding: String.Encoding.utf16BigEndian)!, + ], + bodyContentType: .json + ).buildRequest(environment: env) + ) { error in + if + let error = error as? TwitterAPIKitError, + case .jsonSerializationFailed = error.requestFailureReason { + } else { + XCTFail("Unknown Error") } } - ) + } } } diff --git a/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift b/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift index 3fa8ce42..27460b0f 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift @@ -8,6 +8,10 @@ private class GetTwitterReqeust: TwitterAPIRequest { var parameters: [String: Any] { return ["hoge": "😀"] // = %F0%9F%98%80 } + + deinit { + // De-init Logic Here + } } private class PostTwitterReqeust: TwitterAPIRequest { @@ -16,6 +20,10 @@ private class PostTwitterReqeust: TwitterAPIRequest { var parameters: [String: Any] { return ["hoge": "😀"] // = %F0%9F%98%80 } + + deinit { + // De-init Logic Here + } } private class EmptyRequest: TwitterAPIRequest { @@ -24,6 +32,10 @@ private class EmptyRequest: TwitterAPIRequest { var parameters: [String: Any] { return [:] } + + deinit { + // De-init Logic Here + } } internal class TwitterAPISessionTests: XCTestCase { @@ -33,7 +45,7 @@ internal class TwitterAPISessionTests: XCTestCase { uploadURL: URL(string: "https://upload.xample.com")! ) - lazy var session: TwitterAPISession = { + private lazy var session: TwitterAPISession = { let config = URLSessionConfiguration.default config.protocolClasses = [MockURLProtocol.self] @@ -104,8 +116,7 @@ internal class TwitterAPISessionTests: XCTestCase { ) MockURLProtocol.requestHandler = { request in - - let data = "aaaa\r\nbbbb\r\n".data(using: .utf8)! + let data = Data("aaaa\r\nbbbb\r\n".utf8) return ( HTTPURLResponse(url: request.url!, statusCode: 200, httpVersion: "2.0", headerFields: nil)!, data @@ -121,7 +132,8 @@ internal class TwitterAPISessionTests: XCTestCase { session.send(streamRequest: GetTwitterReqeust()) .streamResponse(queue: .global(qos: .default)) { _ in exp.fulfill() - }.streamResponse { _ in + } + .streamResponse { _ in XCTAssertTrue(Thread.isMainThread) exp.fulfill() } @@ -288,14 +300,14 @@ internal class TwitterAPISessionTests: XCTestCase { } extension Data { - init(reading input: InputStream) throws { + public init(reading input: InputStream) throws { self.init() input.open() defer { input.close() } - let bufferSize = 1024 + let bufferSize = 1_024 let buffer = UnsafeMutablePointer.allocate(capacity: bufferSize) defer { buffer.deallocate() From f1ab727e315bab61c34430fdf0e34801559981af Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Wed, 14 May 2025 05:41:01 -0600 Subject: [PATCH 10/26] fix: more errors --- .../Requests/GetDirectMessageRequestV1.swift | 4 +++ ...etDmConversationsIdDmEventsRequestV2.swift | 4 +++ ...nsWithParticipantIdDmEventsRequestV2.swift | 4 +++ .../Requests/GetDmEventsRequestV2.swift | 4 +++ .../PostDmConversationByIdRequestV2.swift | 4 +++ .../PostDmConversationRequestV2.swift | 4 +++ .../PostDmConversationWithUserRequestV2.swift | 4 +++ .../GetTweetsSearchAllRequestV2.swift | 4 +++ .../TwitterAPIKit/APIv2/TwitterAPIv2.swift | 4 +++ .../TwitterOAuth2AccessTokenTests.swift | 10 ++++--- .../TwitterAPIKitErrorTests.swift | 27 ++++++++++++------- 11 files changed, 60 insertions(+), 13 deletions(-) diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageRequestV1.swift index f9b1d99b..f6eae149 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageRequestV1.swift @@ -20,4 +20,8 @@ open class GetDirectMessageRequestV1: TwitterAPIRequest { public init(id: String) { self.id = id } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsIdDmEventsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsIdDmEventsRequestV2.swift index 0dfe1f97..a893ac9b 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsIdDmEventsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsIdDmEventsRequestV2.swift @@ -64,4 +64,8 @@ open class GetDmConversationsIdDmEventsRequestV2: TwitterAPIRequest { self.userFields = userFields self.tweetFields = tweetFields } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift index 6499b741..ca1d2cc5 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift @@ -64,4 +64,8 @@ open class GetDmConversationsWithParticipantIdDmEventsRequestV2: TwitterAPIReque self.userFields = userFields self.tweetFields = tweetFields } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmEventsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmEventsRequestV2.swift index 91beec9f..a745942b 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmEventsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmEventsRequestV2.swift @@ -60,4 +60,8 @@ open class GetDmEventsRequestV2: TwitterAPIRequest { self.userFields = userFields self.tweetFields = tweetFields } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationByIdRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationByIdRequestV2.swift index 9e38b87e..4fe962d9 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationByIdRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationByIdRequestV2.swift @@ -40,4 +40,8 @@ open class PostDmConversationByIdRequestV2: TwitterAPIRequest { self.attachments = attachments self.text = text } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationRequestV2.swift index ecac6635..180cfd9f 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationRequestV2.swift @@ -53,4 +53,8 @@ open class PostDmConversationRequestV2: TwitterAPIRequest { self.attachments = attachments self.text = text } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationWithUserRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationWithUserRequestV2.swift index 547d8669..31f21a61 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationWithUserRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationWithUserRequestV2.swift @@ -40,4 +40,8 @@ open class PostDmConversationWithUserRequestV2: TwitterAPIRequest { self.attachments = attachments self.text = text } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchAllRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchAllRequestV2.swift index 85fdb01e..98134e68 100644 --- a/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchAllRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchAllRequestV2.swift @@ -76,4 +76,8 @@ open class GetTweetsSearchAllRequestV2: TwitterAPIRequest { self.untilID = untilID self.userFields = userFields } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift b/Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift index a3fc5170..912234ea 100644 --- a/Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift @@ -36,6 +36,10 @@ open class TwitterAPIv2 { user = .init(session: session) dm = .init(session: session) } + + deinit { + // De-init Logic Here + } } public protocol TwitterAPIv2RequestParameter { diff --git a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift index 13c30c14..efd3df5c 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift @@ -14,11 +14,12 @@ internal class TwitterOAuth2AccessTokenTests: XCTestCase { "expires_in" : 7200, "access_token" : "" } - """#.utf8) + """#.utf8 + ) let token = try TwitterOAuth2AccessToken(jsonData: data)! XCTAssertEqual(token.scope, ["tweet.write", "tweet.read"]) XCTAssertEqual(token.tokenType, "bearer") - XCTAssertEqual(token.expiresIn, 7200) + XCTAssertEqual(token.expiresIn, 7_200) XCTAssertEqual(token.accessToken, "") XCTAssertNil(token.refreshToken) } @@ -34,11 +35,12 @@ internal class TwitterOAuth2AccessTokenTests: XCTestCase { "access_token" : "", "refresh_token" : "" } - """#.utf8) + """#.utf8 + ) let token = try TwitterOAuth2AccessToken(jsonData: data)! XCTAssertEqual(token.scope, ["tweet.write", "tweet.read", "offline.access"]) XCTAssertEqual(token.tokenType, "bearer") - XCTAssertEqual(token.expiresIn, 7200) + XCTAssertEqual(token.expiresIn, 7_200) XCTAssertEqual(token.accessToken, "") XCTAssertEqual(token.refreshToken, "") } diff --git a/Tests/TwitterAPIKitTests/TwitterAPIKitErrorTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIKitErrorTests.swift index b4399afa..ecc71c3d 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIKitErrorTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIKitErrorTests.swift @@ -20,12 +20,14 @@ internal class TwitterAPIKitErrorTests: XCTestCase { public func testRequestFailed() throws { XCTAssertTrue(TwitterAPIKitError.requestFailed(reason: .invalidURL(url: "")).isRequestFailed) XCTAssertTrue( - TwitterAPIKitError.requestFailed(reason: .invalidParameter(parameter: [:], cause: "hoge")).isRequestFailed) + TwitterAPIKitError.requestFailed(reason: .invalidParameter(parameter: [:], cause: "hoge")).isRequestFailed + ) XCTAssertTrue(TwitterAPIKitError.requestFailed(reason: .cannotEncodeStringToData(string: "")).isRequestFailed) XCTAssertTrue( TwitterAPIKitError.requestFailed( reason: .jsonSerializationFailed(obj: [:]) - ).isRequestFailed) + ).isRequestFailed + ) } public func testResponseFailed() throws { @@ -33,31 +35,38 @@ internal class TwitterAPIKitErrorTests: XCTestCase { XCTAssertTrue( TwitterAPIKitError.responseFailed( reason: .unacceptableStatusCode(statusCode: 200, error: .unknown(Data()), rateLimit: .init(header: [:])) - ).isResponseFailed) + ).isResponseFailed + ) } public func testResponseSerializationFailure() throws { XCTAssertTrue( TwitterAPIKitError.responseSerializeFailed( reason: .jsonSerializationFailed(error: NSError(domain: "", code: 0, userInfo: nil)) - ).isResponseSerializeFailed) + ).isResponseSerializeFailed + ) XCTAssertTrue( TwitterAPIKitError.responseSerializeFailed( reason: .jsonDecodeFailed( error: DecodingError.typeMismatch( Any.self, .init(codingPath: [], debugDescription: "", underlyingError: nil) - )) - ).isResponseSerializeFailed) + ) + ) + ).isResponseSerializeFailed + ) XCTAssertTrue( - TwitterAPIKitError.responseSerializeFailed(reason: .cannotConvert(data: Data(), toTypeName: "")) - .isResponseSerializeFailed) + TwitterAPIKitError.responseSerializeFailed( + reason: .cannotConvert(data: Data(), toTypeName: "") + ).isResponseSerializeFailed + ) } public func testUploadMediaFailure() throws { XCTAssertTrue( TwitterAPIKitError.uploadMediaFailed( reason: .processingFailed(error: .init(code: 1, name: "n", message: "m")) - ).isUploadMediaFailed) + ).isUploadMediaFailed + ) } public func testUnknown() throws { From 016ed0e04314c01a2615db04bcf1f1da8bff5e7f Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Thu, 15 May 2025 05:22:58 -0600 Subject: [PATCH 11/26] fix: fix file --- .../Helper/CombinationsSequence.swift | 49 ++++---- .../TwitterAPIRequestTests.swift | 116 ++++++++++-------- 2 files changed, 88 insertions(+), 77 deletions(-) diff --git a/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift b/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift index ebe99c69..43958bf5 100644 --- a/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift +++ b/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift @@ -1,29 +1,26 @@ -//===----------------------------------------------------------------------===// -// +// ===----------------------------------------------------------------------===// +// // This source file is part of the Swift Algorithms open source project -// +// // Copyright (c) 2020-2021 Apple Inc. and the Swift project authors // Licensed under Apache License v2.0 with Runtime Library Exception -// +// // See https://swift.org/LICENSE.txt for license information -// -//===----------------------------------------------------------------------===// +// +// ===----------------------------------------------------------------------===// /// A collection wrapper that generates combinations of a base collection. public struct CombinationsSequence { /// The collection to iterate over for combinations. - @usableFromInline - let base: Base + @usableFromInline internal let base: Base - @usableFromInline - let baseCount: Int + @usableFromInline internal let baseCount: Int /// The range of accepted sizes of combinations. /// /// - Note: This may be `nil` if the attempted range entirely exceeds the /// upper bounds of the size of the `base` collection. - @usableFromInline - let kRange: Range? + @usableFromInline internal let kRange: Range? /// Initializes a `CombinationsSequence` for all combinations of `base` of /// size `k`. @@ -32,7 +29,7 @@ public struct CombinationsSequence { /// - base: The collection to iterate over for combinations. /// - k: The expected size of each combination. @inlinable - init(_ base: Base, k: Int) { + internal init(_ base: Base, k: Int) { self.init(base, kRange: k ... k) } @@ -43,7 +40,7 @@ public struct CombinationsSequence { /// - base: The collection to iterate over for combinations. /// - kRange: The range of accepted sizes of combinations. @inlinable - init( + internal init( _ base: Base, kRange: R ) where R.Bound == Int { let range = kRange.relative(to: 0 ..< .max) @@ -66,7 +63,7 @@ public struct CombinationsSequence { return 1 << n } - public func binomial(n: Int, k: Int) -> Int { + internal func binomial(n: Int, k: Int) -> Int { switch k { case n, 0: return 1 case n...: return 0 @@ -85,7 +82,7 @@ extension CombinationsSequence: Sequence { /// The iterator for a `CombinationsSequence` instance. public struct Iterator: IteratorProtocol { @usableFromInline - let base: Base + internal let base: Base /// The current range of accepted sizes of combinations. /// @@ -93,19 +90,19 @@ extension CombinationsSequence: Sequence { /// combinations of different sizes. When the range is empty, iteration is /// finished. @usableFromInline - var kRange: Range + internal var kRange: Range /// Whether or not iteration is finished (`kRange` is empty) @inlinable - var isFinished: Bool { + internal var isFinished: Bool { return kRange.isEmpty } @usableFromInline - var indexes: [Base.Index] + internal var indexes: [Base.Index] @inlinable - init(_ combinations: CombinationsSequence) { + internal init(_ combinations: CombinationsSequence) { base = combinations.base kRange = combinations.kRange ?? 0 ..< 0 indexes = Array(combinations.base.indices.prefix(kRange.lowerBound)) @@ -130,10 +127,10 @@ extension CombinationsSequence: Sequence { /// // Can't advance without needing to go past `base.endIndex`, /// // so the iteration is finished. @inlinable - mutating public func advance() { + internal mutating func advance() { /// Advances `kRange` by incrementing its `lowerBound` until the range is /// empty, when iteration is finished. - public func advanceKRange() { + internal func advanceKRange() { if kRange.lowerBound < kRange.upperBound { let advancedLowerBound = kRange.lowerBound + 1 kRange = advancedLowerBound ..< kRange.upperBound @@ -174,7 +171,7 @@ extension CombinationsSequence: Sequence { } @inlinable - public mutating public func next() -> [Base.Element]? { + public mutating func next() -> [Base.Element]? { guard !isFinished else { return nil } defer { advance() } return indexes.map { i in base[i] } @@ -182,7 +179,7 @@ extension CombinationsSequence: Sequence { } @inlinable - public public func makeIterator() -> Iterator { + public func makeIterator() -> Iterator { Iterator(self) } } @@ -190,9 +187,9 @@ extension CombinationsSequence: Sequence { extension CombinationsSequence: LazySequenceProtocol where Base: LazySequenceProtocol {} -//===----------------------------------------------------------------------===// +// ===----------------------------------------------------------------------===// // combinations(ofCount:) -//===----------------------------------------------------------------------===// +// ===----------------------------------------------------------------------===// public extension Collection { /// Returns a collection of combinations of this collection's elements, with diff --git a/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift index e3dd25c1..64a6c423 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift @@ -169,8 +169,13 @@ internal class TwitterAPIRequestTests: XCTestCase { } public func testBodyContentType() throws { + try testWWWFormUrlEncoded() + try testMultipartFormData() + try testJSON() + } + + private func testWWWFormUrlEncoded() throws { try XCTContext.runActivity(named: "wwwFormUrlEncoded") { _ in - let req = try MockTwitterAPIRequest( method: .post, parameters: ["key": "value,🥓"], @@ -178,10 +183,11 @@ internal class TwitterAPIRequestTests: XCTestCase { ).buildRequest(environment: env) let body = String(data: req.httpBody!, encoding: .utf8) - XCTAssertEqual(body, "key=value%2C%F0%9F%A5%93") } - + } + + private func testMultipartFormData() throws { try XCTContext.runActivity(named: "multipartFormData") { _ in let req = try MockTwitterAPIRequest( method: .post, @@ -220,20 +226,25 @@ internal class TwitterAPIRequestTests: XCTestCase { """ XCTAssertEqual(body, expect) - try XCTContext.runActivity(named: "Invalid parameter") { _ in - - XCTAssertThrowsError( - try MockTwitterAPIRequest( - method: .post, - parameters: ["key": "value,🥓"], - bodyContentType: .multipartFormData - ).buildRequest(environment: env) - ) { error in - XCTAssertTrue(error is TwitterAPIKitError) - } + try testInvalidMultipartFormData() + } + } + + private func testInvalidMultipartFormData() throws { + try XCTContext.runActivity(named: "Invalid parameter") { _ in + XCTAssertThrowsError( + try MockTwitterAPIRequest( + method: .post, + parameters: ["key": "value,🥓"], + bodyContentType: .multipartFormData + ).buildRequest(environment: env) + ) { error in + XCTAssertTrue(error is TwitterAPIKitError) } } - + } + + private func testJSON() throws { try XCTContext.runActivity(named: "json") { _ in let req = try MockTwitterAPIRequest( method: .post, @@ -244,44 +255,47 @@ internal class TwitterAPIRequestTests: XCTestCase { let body = try JSONSerialization.jsonObject(with: req.httpBody!, options: []) XCTAssertEqual(body as? [String: String], ["key": "value,🥓"]) - try XCTContext.runActivity( - named: "Invalid", - ) { _ in - XCTAssertThrowsError( - try MockTwitterAPIRequest( - method: .post, - parameters: ["key": Data()], - bodyContentType: .json - ).buildRequest(environment: env) - ) { error in - if - let error = error as? TwitterAPIKitError, - case .jsonSerializationFailed = error.requestFailureReason { - } else { - XCTFail("Unknown Error") - } + try testInvalidJSON() + try testInvalidJSONValue() + } + } + + private func testInvalidJSON() throws { + try XCTContext.runActivity(named: "Invalid") { _ in + XCTAssertThrowsError( + try MockTwitterAPIRequest( + method: .post, + parameters: ["key": Data()], + bodyContentType: .json + ).buildRequest(environment: env) + ) { error in + if + let error = error as? TwitterAPIKitError, + case .jsonSerializationFailed = error.requestFailureReason { + } else { + XCTFail("Unknown Error") } } - - try XCTContext.runActivity( - named: "Invalid value", - ) { _ in - XCTAssertThrowsError( - try MockTwitterAPIRequest( - method: .post, - parameters: [ - String(bytes: [0xD8, 0x00] as [UInt8], encoding: String.Encoding.utf16BigEndian)!: - String(bytes: [0xD8, 0x00] as [UInt8], encoding: String.Encoding.utf16BigEndian)!, - ], - bodyContentType: .json - ).buildRequest(environment: env) - ) { error in - if - let error = error as? TwitterAPIKitError, - case .jsonSerializationFailed = error.requestFailureReason { - } else { - XCTFail("Unknown Error") - } + } + } + + private func testInvalidJSONValue() throws { + try XCTContext.runActivity(named: "Invalid value") { _ in + XCTAssertThrowsError( + try MockTwitterAPIRequest( + method: .post, + parameters: [ + String(bytes: [0xD8, 0x00] as [UInt8], encoding: String.Encoding.utf16BigEndian)!: + String(bytes: [0xD8, 0x00] as [UInt8], encoding: String.Encoding.utf16BigEndian)!, + ], + bodyContentType: .json + ).buildRequest(environment: env) + ) { error in + if + let error = error as? TwitterAPIKitError, + case .jsonSerializationFailed = error.requestFailureReason { + } else { + XCTFail("Unknown Error") } } } From 865b6119289e7063cb5b4a0e73df665f21981710 Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Thu, 15 May 2025 05:24:08 -0600 Subject: [PATCH 12/26] fix: Reduce function body length in TwitterAPIRequestTests.swift --- .../TwitterAPISessionDelegatedJSONTaskTests.swift | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift index 573aaf55..508a8e58 100644 --- a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift +++ b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift @@ -35,7 +35,11 @@ internal class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { exp.fulfill() } .responseObject(queue: .global(qos: .background)) { response in - AssertEqualAnyDict(response.success as! [String: Any], ["key": "value"]) + if let dict = response.success as? [String: Any] { + AssertEqualAnyDict(dict, ["key": "value"]) + } else { + XCTFail("Expected response.success to be [String: Any]") + } XCTAssertFalse(Thread.isMainThread) exp.fulfill() } From 75ba052ae5812ec843dec373435e4bb2e8021b3a Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Thu, 15 May 2025 05:26:44 -0600 Subject: [PATCH 13/26] fix: Replace force cast with safe optional binding in TwitterAPISessionDelegatedJSONTaskTests --- ...witterAPISessionDelegatedJSONTaskTests.swift | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift index 508a8e58..b2d37d57 100644 --- a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift +++ b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift @@ -142,7 +142,11 @@ internal class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { _ = task .responseData(queue: .global(qos: .background)) { response in XCTAssertTrue(response.isError) - XCTAssertEqual(response.error?.underlyingError as! URLError, URLError(.badServerResponse)) + if let urlError = response.error?.underlyingError as? URLError { + XCTAssertEqual(urlError, URLError(.badServerResponse)) + } else { + XCTFail("Expected URLError") + } exp.fulfill() } .responseObject(queue: .global(qos: .background)) { response in @@ -181,7 +185,11 @@ internal class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { _ = task .responseData(queue: .global(qos: .background)) { response in XCTAssertTrue(response.isError) - XCTAssertEqual(response.error?.underlyingError as! URLError, URLError(.cancelled)) + if let urlError = response.error?.underlyingError as? URLError { + XCTAssertEqual(urlError, URLError(.cancelled)) + } else { + XCTFail("Expected URLError") + } exp.fulfill() } .responseObject(queue: .global(qos: .background)) { response in @@ -190,6 +198,11 @@ internal class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { } .responseDecodable(type: DecodableObj.self, queue: .global(qos: .background)) { response in XCTAssertTrue(response.isError) + if let urlError = response.error?.underlyingError as? URLError { + XCTAssertEqual(urlError, URLError(.cancelled)) + } else { + XCTFail("Expected URLError") + } exp.fulfill() } From 43e0ebb0755b6a1e3cbcebbe575272a7de7c4f7d Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Sat, 17 May 2025 10:06:51 -0600 Subject: [PATCH 14/26] chore: update submodules --- .dotfiles | 2 +- .swiftformat | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) create mode 120000 .swiftformat diff --git a/.dotfiles b/.dotfiles index 299f326b..9d280efb 160000 --- a/.dotfiles +++ b/.dotfiles @@ -1 +1 @@ -Subproject commit 299f326b362213891b556541801014b34b6fb704 +Subproject commit 9d280efb3bcec6d4576eb39105539ed13c6b7433 diff --git a/.swiftformat b/.swiftformat new file mode 120000 index 00000000..eb40906c --- /dev/null +++ b/.swiftformat @@ -0,0 +1 @@ +./.dotfiles/.swiftformat-base \ No newline at end of file From 2f00bdc8b3a37698b226d7afa81fb995701bb016 Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Sat, 17 May 2025 10:21:35 -0600 Subject: [PATCH 15/26] fix: fix issues --- BuildTools/Empty.swift | 5 + .../APIv1/Account/AccountAPIv1.swift | 5 + .../GetAccountSettingsRequestV1.swift | 5 + ...GetAccountVerifyCredentialsRequestV1.swift | 5 + ...tAccountRemoveProfileBannerRequestV1.swift | 6 +- .../PostAccountSettingsRequestV1.swift | 5 + ...tAccountUpdateProfileBannerRequestV1.swift | 5 + ...stAccountUpdateProfileImageRequestV1.swift | 5 + .../PostAccountUpdateProfileRequestV1.swift | 5 + .../APIv1/Application/ApplicationAPIv1.swift | 5 + ...tApplicationRateLimitStatusRequestV1.swift | 5 + .../BlockAndMute/BlockAndMuteAPIv1.swift | 5 + .../Requests/GetBlocksIDsRequestV1.swift | 5 + .../Requests/GetBlocksListRequestV1.swift | 5 + .../Requests/GetMutesUsersIDsRequestV1.swift | 5 + .../Requests/GetMutesUsersListRequestV1.swift | 5 + .../Requests/PostBlocksCreateRequestV1.swift | 5 + .../Requests/PostBlocksDestroyRequestV1.swift | 5 + .../PostMutesUsersCreateRequestV1.swift | 5 + .../PostMutesUsersDestroyRequestV1.swift | 5 + .../APIv1/Collection/CollectionAPIv1.swift | 5 + .../GetCollectionsEntriesRequestV1.swift | 5 + .../GetCollectionsListRequestV1.swift | 5 + .../GetCollectionsShowRequestV1.swift | 5 + .../PostCollectionsCreateRequestV1.swift | 5 + .../PostCollectionsDestroyRequestV1.swift | 5 + .../PostCollectionsEntriesAddRequestV1.swift | 5 + ...ostCollectionsEntriesCurateRequestV1.swift | 7 +- .../PostCollectionsEntriesMoveRequestV1.swift | 5 + ...ostCollectionsEntriesRemoveRequestV1.swift | 5 + .../PostCollectionsUpdateRequestV1.swift | 5 + .../DirectMessage/DirectMessageAPIv1.swift | 5 + .../DeleteDirectMessageRequestV1.swift | 5 + .../GetDirectMessageListRequestV1.swift | 5 + .../Requests/GetDirectMessageRequestV1.swift | 5 + .../Requests/PostDirectMessageRequestV1.swift | 7 +- ...irectMessagesIndicateTypingRequestV1.swift | 5 + .../PostDirectMessagesMarkReadRequestV1.swift | 5 + .../APIv1/Favorite/FavoriteAPIv1.swift | 5 + .../Requests/GetFavoritesRequestV1.swift | 5 + .../Requests/PostFavoriteRequestV1.swift | 5 + .../Requests/PostUnFavoriteRequestV1.swift | 5 + .../APIv1/Friendships/FriendshipsAPIv1.swift | 5 + .../Requests/GetFollowersIDsRequestV1.swift | 5 + .../Requests/GetFollowersListRequestV1.swift | 5 + .../Requests/GetFriendsIDsRequestV1.swift | 5 + .../Requests/GetFriendsListRequestV1.swift | 5 + .../GetFriendshipsIncomingRequestV1.swift | 5 + .../GetFriendshipsLookupRequestV1.swift | 5 + ...GetFriendshipsNoRetweetsIDsRequestV1.swift | 5 + .../GetFriendshipsOutgoingRequestV1.swift | 5 + .../GetFriendshipsShowRequestV1.swift | 5 + .../PostFriendshipsCreateRequestV1.swift | 5 + .../PostFriendshipsDestroyRequestV1.swift | 5 + .../PostFriendshipsUpdateRequestV1.swift | 5 + .../TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift | 5 + .../Geo/Requests/GetGeoPlaceIDRequestV1.swift | 5 + .../GetGeoReverseGeocodeRequestV1.swift | 5 + .../Geo/Requests/GetGeoSearchRequestV1.swift | 5 + .../TwitterAPIKit/APIv1/Help/HelpAPIv1.swift | 5 + .../Requests/GetHelpLanguagesRequestV1.swift | 5 + .../TwitterAPIKit/APIv1/List/ListAPIv1.swift | 5 + .../List/Requests/GetListsListRequestV1.swift | 5 + .../Requests/GetListsMembersRequestV1.swift | 5 + .../GetListsMembersShowRequestV1.swift | 5 + .../GetListsMembershipsRequestV1.swift | 5 + .../GetListsOwnershipsRequestV1.swift | 5 + .../List/Requests/GetListsShowRequestV1.swift | 5 + .../Requests/GetListsStatusesRequestV1.swift | 5 + .../GetListsSubscribersRequestV1.swift | 5 + .../GetListsSubscribersShowRequestV1.swift | 5 + .../GetListsSubscriptionsRequestV1.swift | 5 + .../Requests/PostListsCreateRequestV1.swift | 5 + .../Requests/PostListsDestroyRequestV1.swift | 5 + .../PostListsMembersCreateAllRequestV1.swift | 5 + .../PostListsMembersCreateRequestV1.swift | 5 + .../PostListsMembersDestroyAllRequestV1.swift | 5 + .../PostListsMembersDestroyRequestV1.swift | 5 + .../PostListsSubscribersCreateRequestV1.swift | 5 + ...PostListsSubscribersDestroyRequestV1.swift | 5 + .../Requests/PostListsUpdateRequestV1.swift | 5 + .../APIv1/Media/MediaAPIv1.swift | 7 +- .../GetUploadMediaStatusRequestV1.swift | 5 + .../PostMediaMetadataCreateRequestV1.swift | 5 + .../PostMediaSubtitlesCreateRequestV1.swift | 5 + .../PostMediaSubtitlesDeleteRequestV1.swift | 5 + .../Requests/UploadMediaAppendRequestV1.swift | 19 +- .../UploadMediaFinalizeRequestV1.swift | 5 + .../Requests/UploadMediaInitRequestV1.swift | 5 + .../APIv1/Media/UploadMediaEntity.swift | 7 +- .../Requests/GetRetweetersRequestV1.swift | 5 + .../Requests/GetRetweetsOfMeRequestV1.swift | 5 + .../Requests/GetRetweetsRequestV1.swift | 5 + .../Requests/PostRetweetRequestV1.swift | 5 + .../Requests/PostUnRetweetRequestV1.swift | 5 + .../APIv1/Retweet/RetweetAPIv1.swift | 5 + .../GetSavedSearchesListRequestV1.swift | 5 + .../Requests/GetSearchTweetsRequestV1.swift | 5 + .../PostSavedSearchesCreateRequestV1.swift | 5 + .../PostSavedSearchesDestroyRequestV1.swift | 5 + .../APIv1/Search/SearchAPIv1.swift | 5 + .../GetStatusesHomeTimelineRequestV1.swift | 5 + ...GetStatusesMentionsTimelineRequestV1.swift | 5 + .../GetStatusesUserTimelineRequestV1.swift | 5 + .../APIv1/Timelines/TimelineAPIv1.swift | 5 + .../GetTrendsAvailableRequestV1.swift | 5 + .../Requests/GetTrendsClosestRequestV1.swift | 7 +- .../Requests/GetTrendsPlaceRequestV1.swift | 5 + .../APIv1/Trend/TrendAPIv1.swift | 5 + .../Requests/GetStatusesLookupRequestV1.swift | 5 + .../Requests/GetStatusesShowRequestV1.swift | 5 + .../PostStatusesDestroyRequestV1.swift | 5 + .../Requests/PostUpdateStatusRequestV1.swift | 5 + .../APIv1/Tweet/TweetAPIv1.swift | 5 + .../TwitterAPIKit/APIv1/TwitterAPIv1.swift | 5 + .../APIv1/TwitterListIdentifierV1.swift | 5 + .../APIv1/TwitterListModeV1.swift | 5 + .../APIv1/TwitterLocations.swift | 5 + .../APIv1/TwitterUserIdentifierV1.swift | 5 + .../Requests/GetUsersLookupRequestV1.swift | 5 + .../GetUsersProfileBannerRequestV1.swift | 5 + .../Requests/GetUsersSearchRequestV1.swift | 5 + .../Requests/GetUsersShowRequestV1.swift | 5 + .../TwitterAPIKit/APIv1/Users/UserAPIv1.swift | 5 + .../BlockAndMute/BlockAndMuteAPIv2.swift | 5 + .../DeleteUsersBlockingRequestV2.swift | 5 + .../Requests/DeleteUsersMutingRequestV2.swift | 5 + .../Requests/GetUsersBlockingRequestV2.swift | 5 + .../Requests/GetUsersMutingRequestV2.swift | 5 + .../Requests/PostUsersBlockingRequestV2.swift | 7 +- .../Requests/PostUsersMutingRequestV2.swift | 5 + .../APIv2/Bookmarks/BookmarksAPIv2.swift | 5 + .../DeleteUsersBookmarksRequestV2.swift | 9 +- .../Requests/GetUsersBookmarksRequestV2.swift | 5 + .../PostUsersBookmarksRequestV2.swift | 9 +- .../APIv2/Compliance/ComplianceAPIv2.swift | 5 + .../Requests/GetComplianceJobRequestV2.swift | 5 + .../Requests/GetComplianceJobsRequestV2.swift | 5 + .../PostComplianceJobsRequestV2.swift | 5 + .../TwitterComplianceJobTypeV2.swift | 5 + .../DirectMessage/DirectMessageAPIv2.swift | 5 + ...etDmConversationsIdDmEventsRequestV2.swift | 5 + ...nsWithParticipantIdDmEventsRequestV2.swift | 5 + .../Requests/GetDmEventsRequestV2.swift | 5 + .../PostDmConversationByIdRequestV2.swift | 5 + .../PostDmConversationRequestV2.swift | 5 + .../PostDmConversationWithUserRequestV2.swift | 7 +- .../TwitterDirectMessageEventTypeV2.swift | 5 + .../TwitterAPIKit/APIv2/ExpansionsV2.swift | 5 + Sources/TwitterAPIKit/APIv2/FieldsV2.swift | 5 + .../APIv2/Friendships/FriendshipsAPIv2.swift | 5 + .../DeleteUsersFollowingRequestV2.swift | 5 + .../Requests/GetUsersFollowersRequestV2.swift | 5 + .../Requests/GetUsersFollowingRequestV2.swift | 5 + .../PostUsersFollowingRequestV2.swift | 5 + .../TwitterAPIKit/APIv2/Like/LikeAPIv2.swift | 5 + .../Requests/DeleteUsersLikesRequestV2.swift | 5 + .../GetTweetsLikingUsersRequestV2.swift | 5 + .../GetUsersLikedTweetsRequestV2.swift | 7 +- .../Requests/PostUsersLikesRequestV2.swift | 5 + .../TwitterAPIKit/APIv2/List/ListAPIv2.swift | 5 + .../List/Requests/DeleteListRequestV2.swift | 5 + .../DeleteListsMembersRequestV2.swift | 5 + .../DeleteUsersFollowedListsRequestV2.swift | 5 + .../DeleteUsersPinnedListsRequestV2.swift | 5 + .../List/Requests/GetListRequestV2.swift | 5 + .../Requests/GetListsFollowersRequestV2.swift | 5 + .../Requests/GetListsMembersRequestV2.swift | 5 + .../Requests/GetListsTweetsRequestV2.swift | 5 + .../GetUsersFollowedListsRequestV2.swift | 5 + .../GetUsersListMembershipsRequestV2.swift | 5 + .../GetUsersOwnedListsRequestV2.swift | 5 + .../GetUsersPinnedListsRequestV2.swift | 5 + .../Requests/PostListsMembersRequestV2.swift | 5 + .../List/Requests/PostListsRequestV2.swift | 5 + .../PostUsersFollowedListsRequestV2.swift | 5 + .../PostUsersPinnedListsRequestV2.swift | 5 + .../List/Requests/PutListRequestV2.swift | 5 + .../DeleteUsersRetweetsRequestV2.swift | 5 + .../GetTweetsRetweetedByRequestV2.swift | 5 + .../Requests/PostUsersRetweetsRequestV2.swift | 5 + .../APIv2/Retweet/RetweetAPIv2.swift | 5 + .../GetTweetsSearchAllRequestV2.swift | 5 + .../GetTweetsSearchRecentRequestV2.swift | 5 + .../APIv2/Search/SearchAPIv2.swift | 5 + .../TwitterSearchTweetsSortOrderV2.swift | 5 + .../Spaces/Requests/GetSpaceRequestV2.swift | 5 + .../Requests/GetSpacesBuyersRequestV2.swift | 5 + .../GetSpacesByCreatorIDsRequestV2.swift | 5 + .../Spaces/Requests/GetSpacesRequestV2.swift | 5 + .../Requests/GetSpacesSearchRequestV2.swift | 5 + .../Requests/GetSpacesTweetsRequestV2.swift | 5 + .../APIv2/Spaces/SpacesAPIv2.swift | 5 + .../GetTweetsSampleStreamRequestV2.swift | 5 + .../GetTweetsSearchStreamRequestV2.swift | 5 + .../GetTweetsSearchStreamRulesRequestV2.swift | 5 + ...PostTweetsSearchStreamRulesRequestV2.swift | 5 + .../APIv2/Stream/StreamAPIv2.swift | 5 + .../Requests/GetUsersMentionsRequestV2.swift | 5 + ...melinesReverseChronologicalRequestV2.swift | 5 + .../Requests/GetUsersTweetsRequestV2.swift | 5 + .../APIv2/Timeline/TimelineAPIv2.swift | 5 + .../Timeline/TwitterTimelineExcludeV2.swift | 5 + .../Tweet/Requests/DeleteTweetRequestV2.swift | 5 + .../Tweet/Requests/GetTweetRequestV2.swift | 5 + .../GetTweetsQuoteTweetsRequestV2.swift | 5 + .../Tweet/Requests/GetTweetsRequestV2.swift | 5 + .../Tweet/Requests/PostTweetsRequestV2.swift | 5 + .../Requests/PutTweetsHiddenRequestV2.swift | 5 + .../APIv2/Tweet/TweetAPIv2.swift | 5 + .../GetTweetsCountsAllRequestV2.swift | 5 + .../GetTweetsCountsRecentRequestV2.swift | 5 + .../Requests/TweetCountGranularity.swift | 5 + .../APIv2/TweetCount/TweetCountAPIv2.swift | 5 + .../TwitterAPIKit/APIv2/TwitterAPIv2.swift | 7 +- .../Users/Requests/GetUserRequestV2.swift | 5 + .../Users/Requests/GetUsersByRequestV2.swift | 5 + .../GetUsersByUsernameRequestV2.swift | 5 + .../Users/Requests/GetUsersMeRequestV2.swift | 5 + .../Users/Requests/GetUsersRequestV2.swift | 5 + .../TwitterAPIKit/APIv2/Users/UserAPIv2.swift | 5 + .../TwitterAPIKit/AuthAPI/OAuth10aAPI.swift | 5 + .../TwitterAPIKit/AuthAPI/OAuth20API.swift | 5 + .../GetOAuth2AuthorizeRequestV1.swift | 7 +- .../GetOAuthAuthenticateRequestV1.swift | 9 +- .../Requests/GetOAuthAuthorizeRequestV1.swift | 5 + .../PostOAuth2AccessTokenRequestV2.swift | 5 + .../PostOAuth2InvalidateTokenRequestV1.swift | 5 + .../PostOAuth2RefreshTokenRequestV2.swift | 7 +- .../PostOAuth2RevokeTokenRequestV2.swift | 9 +- .../Requests/PostOAuth2TokenRequestV1.swift | 5 + .../PostOAuthAccessTokenRequestV1.swift | 5 + .../PostOAuthInvalidateTokenRequestV1.swift | 5 + .../PostOAuthRequestTokenRequestV1.swift | 5 + .../AuthAPI/TwitterAuthAPI.swift | 5 + .../AuthAPI/TwitterOAuth2AccessToken.swift | 9 +- .../AuthAPI/TwitterOAuth2BearerToken.swift | 5 + .../AuthAPI/TwitterOAuthAccessTokenV1.swift | 5 + .../AuthAPI/TwitterOAuthTokenV1.swift | 5 + .../Extensions/Concurrency.swift | 15 +- Sources/TwitterAPIKit/Extensions/Data.swift | 5 + Sources/TwitterAPIKit/Extensions/Date.swift | 5 + .../TwitterAPIKit/Extensions/Dictionary.swift | 5 + .../Extensions/DispatchQueue.swift | 5 + Sources/TwitterAPIKit/Extensions/HMAC.swift | 5 + Sources/TwitterAPIKit/Extensions/Result.swift | 5 + Sources/TwitterAPIKit/Extensions/String.swift | 5 + Sources/TwitterAPIKit/OAuthHelper.swift | 7 +- .../SessionTask/TwitterAPIFailedTask.swift | 25 +- .../TwitterAPISessionDataTask.swift | 5 + .../TwitterAPISessionDelegatedJSONTask.swift | 13 +- ...TwitterAPISessionDelegatedStreamTask.swift | 24 +- .../TwitterAPISessionJSONTask.swift | 5 + .../TwitterAPISessionSpecializedTask.swift | 5 + .../TwitterAPISessionStreamTask.swift | 5 + .../SessionTask/TwitterAPISessionTask.swift | 5 + .../TwitterAPI+Flat.generated.swift | 65 +- Sources/TwitterAPIKit/TwitterAPIClient.swift | 16 +- .../TwitterAPIErrorResponse.swift | 11 +- Sources/TwitterAPIKit/TwitterAPIKit.swift | 13 +- .../TwitterAPIKit/TwitterAPIKitError.swift | 11 +- Sources/TwitterAPIKit/TwitterAPIRequest.swift | 12 +- .../TwitterAPIKit/TwitterAPIResponse.swift | 5 + Sources/TwitterAPIKit/TwitterAPISession.swift | 5 + .../TwitterAPISessionDelegate.swift | 5 + .../TwitterAuthenticationMethod.swift | 8 +- Sources/TwitterAPIKit/TwitterRateLimit.swift | 5 + .../GetAccountSettingsRequestV1Tests.swift | 5 + ...countVerifyCredentialsRequestV1Tests.swift | 5 + ...untRemoveProfileBannerRequestV1Tests.swift | 5 + .../PostAccountSettingsRequestV1Tests.swift | 5 + ...untUpdateProfileBannerRequestV1Tests.swift | 5 + ...ountUpdateProfileImageRequestV1Tests.swift | 5 + ...stAccountUpdateProfileRequestV1Tests.swift | 5 + ...icationRateLimitStatusRequestV1Tests.swift | 5 + .../GetBlocksIDsRequestV1Tests.swift | 5 + .../GetBlocksListRequestV1Tests.swift | 5 + .../GetMutesUsersIDsRequestV1Tests.swift | 5 + .../GetMutesUsersListRequestV1Tests.swift | 5 + .../PostBlocksCreateRequestV1Tests.swift | 5 + .../PostBlocksDestroyRequestV1Tests.swift | 5 + .../PostMutesUsersCreateRequestV1Tests.swift | 5 + .../PostMutesUsersDestroyRequestV1Tests.swift | 5 + .../PostUsersReportSpamRequestV1Tests.swift | 5 + .../GetCollectionsEntriesRequestV1Tests.swift | 5 + .../GetCollectionsListRequestV1Tests.swift | 5 + .../GetCollectionsShowRequestV1Tests.swift | 5 + .../PostCollectionsCreateRequestV1Tests.swift | 5 + ...PostCollectionsDestroyRequestV1Tests.swift | 5 + ...tCollectionsEntriesAddRequestV1Tests.swift | 5 + ...llectionsEntriesCurateRequestV1Tests.swift | 5 + ...CollectionsEntriesMoveRequestV1Tests.swift | 5 + ...llectionsEntriesRemoveRequestV1Tests.swift | 5 + .../PostCollectionsUpdateRequestV1Tests.swift | 5 + .../DeleteDirectMessageRequestV1Tests.swift | 5 + .../GetDirectMessageListRequestV1Tests.swift | 5 + .../GetDirectMessageRequestV1Tests.swift | 5 + .../PostDirectMessageRequestV1Tests.swift | 5 + ...MessagesIndicateTypingRequestV1Tests.swift | 5 + ...DirectMessagesMarkReadRequestV1Tests.swift | 5 + .../Favorite/GetFavoritesRequestV1Tests.swift | 5 + .../Favorite/PostFavoriteRequestV1Tests.swift | 5 + .../PostUnFavoriteRequestV1Tests.swift | 5 + .../GetFollowersIDsRequestV1Tests.swift | 5 + .../GetFollowersListRequestV1Tests.swift | 5 + .../GetFriendsIDsRequestV1Tests.swift | 5 + .../GetFriendsListRequestV1Tests.swift | 5 + ...GetFriendshipsIncomingRequestV1Tests.swift | 5 + .../GetFriendshipsLookupRequestV1Tests.swift | 5 + ...iendshipsNoRetweetsIDsRequestV1Tests.swift | 5 + ...GetFriendshipsOutgoingRequestV1Tests.swift | 5 + .../GetFriendshipsShowRequestV1Tests.swift | 5 + .../PostFriendshipsCreateRequestV1Tests.swift | 5 + ...PostFriendshipsDestroyRequestV1Tests.swift | 5 + .../PostFriendshipsUpdateRequestV1Tests.swift | 5 + .../Geo/GetGeoPlaceIDRequestV1Tests.swift | 5 + .../GetGeoReverseGeocodeRequestV1Tests.swift | 5 + .../Geo/GetGeoSearchRequestV1Tests.swift | 5 + .../Help/GetHelpLanguagesRequestV1Tests.swift | 5 + .../List/GetListsListRequestV1Tests.swift | 5 + .../List/GetListsMembersRequestV1Tests.swift | 5 + .../GetListsMembersShowRequestV1Tests.swift | 5 + .../GetListsMembershipsRequestV1Tests.swift | 5 + .../GetListsOwnershipsRequestV1Tests.swift | 5 + .../List/GetListsShowRequestV1Tests.swift | 5 + .../List/GetListsStatusesRequestV1Tests.swift | 5 + .../GetListsSubscribersRequestV1Tests.swift | 5 + ...etListsSubscribersShowRequestV1Tests.swift | 5 + .../GetListsSubscriptionsRequestV1Tests.swift | 5 + .../APIv1/List/ListRequestV1Tests.swift | 5 + .../List/PostListsCreateRequestV1Tests.swift | 5 + .../List/PostListsDestroyRequestV1Tests.swift | 5 + ...tListsMembersCreateAllRequestV1Tests.swift | 5 + ...PostListsMembersCreateRequestV1Tests.swift | 5 + ...ListsMembersDestroyAllRequestV1Tests.swift | 5 + ...ostListsMembersDestroyRequestV1Tests.swift | 5 + ...ListsSubscribersCreateRequestV1Tests.swift | 5 + ...istsSubscribersDestroyRequestV1Tests.swift | 5 + .../List/PostListsUpdateRequestV1Tests.swift | 5 + .../GetUploadMediaStatusRequestV1Tests.swift | 5 + ...ostMediaMetadataCreateRequestV1Tests.swift | 5 + ...stMediaSubtitlesCreateRequestV1Tests.swift | 5 + ...stMediaSubtitlesDeleteRequestV1Tests.swift | 5 + .../UploadMediaAppendRequestV1Tests.swift | 5 + .../UploadMediaFinalizeRequestV1Tests.swift | 5 + .../Media/UploadMediaInitRequestV1Tests.swift | 5 + .../APIv1/Media/UploadMediaUtilTests.swift | 5 + .../Retweet/GetRetweetersRequestV1Tests.swift | 5 + .../GetRetweetsOfMeRequestV1Tests.swift | 5 + .../Retweet/GetRetweetsRequestV1Tests.swift | 5 + .../Retweet/PostRetweetRequestV1Tests.swift | 5 + .../Retweet/PostUnRetweetRequestV1Tests.swift | 5 + .../GetSavedSearchesListRequestV1Tests.swift | 5 + .../GetSearchTweetsRequestV1Tests.swift | 5 + ...ostSavedSearchesCreateRequestV1Tests.swift | 5 + ...stSavedSearchesDestroyRequestV1Tests.swift | 5 + ...etStatusesHomeTimelineRequestV1Tests.swift | 5 + ...atusesMentionsTimelineRequestV1Tests.swift | 5 + ...etStatusesUserTimelineRequestV1Tests.swift | 5 + .../GetTrendsAvailableRequestV1Tests.swift | 5 + .../GetTrendsClosestRequestV1Tests.swift | 5 + .../Trend/GetTrendsPlaceRequestV1Tests.swift | 5 + .../GetStatusesLookupRequestV1Tests.swift | 5 + .../Tweet/GetStatusesShowRequestV1Tests.swift | 5 + .../PostStatusesDestroyRequestV1Tests.swift | 5 + .../PostStatusesUpdateRequestV1Tests.swift | 5 + .../Users/GetUsersLookupRequestV1Tests.swift | 5 + .../GetUsersProfileBannerRequestV1Tests.swift | 5 + .../Users/GetUsersSearchRequestV1Tests.swift | 5 + .../Users/GetUsersShowRequestV1Tests.swift | 5 + .../DeleteUsersBlockingRequestV2Tests.swift | 5 + .../DeleteUsersMutingRequestV2Tests.swift | 5 + .../GetUsersBlockingRequestV2Tests.swift | 5 + .../GetUsersMutingRequestV2Tests.swift | 5 + .../PostUsersBlockingRequestV2Tests.swift | 5 + .../PostUsersMutingRequestV2Tests.swift | 5 + .../DeleteUsersBookmarksRequestV2Tests.swift | 5 + .../GetUsersBookmarksRequestV2Tests.swift | 5 + .../PostUsersBookmarksRequestV2Tests.swift | 5 + .../GetComplianceJobRequestV2Tests.swift | 5 + .../GetComplianceJobsRequestV2Tests.swift | 5 + .../PostComplianceJobsRequestV2Tests.swift | 5 + ...onversationsIdDmEventsRequestV2Tests.swift | 5 + ...hParticipantIdDmEventsRequestV2Tests.swift | 5 + .../GetDmEventsRequestV2Tests.swift | 5 + ...PostDmConversationByIdRequestV2Tests.swift | 5 + .../PostDmConversationRequestV2Tests.swift | 5 + ...DmConversationWithUserRequestV2Tests.swift | 5 + .../APIv2/ExpansionsV2Tests.swift | 9 +- .../APIv2/FieldsV2Tests.swift | 25 +- .../DeleteUsersFollowingRequestV2Tests.swift | 5 + .../GetUsersFollowersRequestV2Tests.swift | 5 + .../GetUsersFollowingRequestV2Tests.swift | 5 + .../PostUsersFollowingRequestV2Tests.swift | 5 + .../Like/DeleteUsersLikesRequestV2Tests.swift | 5 + .../GetTweetsLikingUsersRequestV2Tests.swift | 5 + .../GetUsersLikedTweetsRequestV2Tests.swift | 5 + .../Like/PostUsersLikesRequestV2Tests.swift | 5 + .../APIv2/List/DeleteListRequestV2Tests.swift | 5 + .../DeleteListsMembersRequestV2Tests.swift | 5 + ...leteUsersFollowedListsRequestV2Tests.swift | 5 + ...DeleteUsersPinnedListsRequestV2Tests.swift | 5 + .../APIv2/List/GetListRequestV2Tests.swift | 5 + .../GetListsFollowersRequestV2Tests.swift | 5 + .../List/GetListsMembersRequestV2Tests.swift | 5 + .../List/GetListsTweetsRequestV2Tests.swift | 5 + .../GetUsersFollowedListsRequestV2Tests.swift | 5 + ...etUsersListMembershipsRequestV2Tests.swift | 5 + .../GetUsersOwnedListsRequestV2Tests.swift | 5 + .../GetUsersPinnedListsRequestV2Tests.swift | 5 + .../List/PostListsMembersRequestV2Tests.swift | 5 + .../APIv2/List/PostListsRequestV2Tests.swift | 5 + ...PostUsersFollowedListsRequestV2Tests.swift | 5 + .../PostUsersPinnedListsRequestV2Tests.swift | 5 + .../APIv2/List/PutListRequestV2Tests.swift | 5 + .../DeleteUsersRetweetsRequestV2Tests.swift | 5 + .../GetTweetsRetweetedByRequestV2Tests.swift | 5 + .../PostUsersRetweetsRequestV2Tests.swift | 5 + .../GetTweetsSearchAllRequestV2Tests.swift | 5 + .../GetTweetsSearchRecentRequestV2Tests.swift | 5 + .../APIv2/Spaces/GetSpaceRequestV2Tests.swift | 5 + .../GetSpacesBuyersRequestV2Tests.swift | 5 + .../GetSpacesByCreatorIDsRequestV2Tests.swift | 5 + .../Spaces/GetSpacesRequestV2Tests.swift | 5 + .../GetSpacesSearchRequestV2Tests.swift | 5 + .../GetSpacesTweetsRequestV2Tests.swift | 5 + .../GetTweetsSampleStreamRequestV2Tests.swift | 5 + .../GetTweetsSearchStreamRequestV2Tests.swift | 5 + ...weetsSearchStreamRulesRequestV2Tests.swift | 5 + ...weetsSearchStreamRulesRequestV2Tests.swift | 5 + .../GetUsersMentionsRequestV2Tests.swift | 5 + ...esReverseChronologicalRequestV2Tests.swift | 5 + .../GetUsersTweetsRequestV2Tests.swift | 5 + .../Tweet/DeleteTweetRequestV2Tests.swift | 5 + .../APIv2/Tweet/GetTweetRequestV2Tests.swift | 5 + .../GetTweetsQuoteTweetsRequestV2Tests.swift | 5 + .../APIv2/Tweet/GetTweetsRequestV2Tests.swift | 5 + .../Tweet/PostTweetsRequestV2Tests.swift | 5 + .../Tweet/PutTweetsHiddenRequestV2Tests.swift | 5 + .../GetTweetsCountsAllRequestV2Tests.swift | 5 + .../GetTweetsCountsRecentRequestV2Tests.swift | 5 + .../APIv2/Users/GetUserRequestV2Tests.swift | 5 + .../Users/GetUsersByRequestV2Tests.swift | 5 + .../GetUsersByUsernameRequestV2Tests.swift | 5 + .../Users/GetUsersMeRequestV2Tests.swift | 5 + .../APIv2/Users/GetUsersRequestV2Tests.swift | 5 + .../GetOAuth2AuthorizeRequestV1Tests.swift | 5 + .../GetOAuthAuthenticateRequestV1Tests.swift | 5 + .../GetOAuthAuthorizeRequestV1Tests.swift | 5 + .../PostOAuth2AccessTokenRequestV2Tests.swift | 5 + ...tOAuth2InvalidateTokenRequestV1Tests.swift | 5 + ...PostOAuth2RefreshTokenRequestV2Tests.swift | 5 + .../PostOAuth2RevokeTokenRequestV2Tests.swift | 5 + .../PostOAuth2TokenRequestV1Tests.swift | 5 + .../PostOAuthAccessTokenRequestV1Tests.swift | 5 + ...stOAuthInvalidateTokenRequestV1Tests.swift | 5 + .../PostOAuthRequestTokenRequestV1Tests.swift | 5 + .../AuthAPI/TwitterAuthAPITests.swift | 5 + .../TwitterOAuth2AccessTokenTests.swift | 5 + .../TwitterOAuth2BearerTokenTests.swift | 5 + .../TwitterOAuthAccessTokenV1Tests.swift | 5 + .../AuthAPI/TwitterOAuthTokenV1Tests.swift | 5 + .../Extensions/ConcurrencyTests.swift | 5 + .../Extensions/DataTests.swift | 5 + .../Extensions/StringTests.swift | 5 + Tests/TwitterAPIKitTests/Helper/Assert.swift | 5 + .../Helper/CombinationsSequence.swift | 19 +- .../Mock/MockURLProtocol.swift | 9 +- .../MultipartFormDataPartTests.swift | 12 +- .../TwitterAPIKitTests/OAuthHelperTests.swift | 5 + .../MockTwitterAPISessionTask.swift | 5 + .../TwitterAPIFailedTaskTests.swift | 5 + ...tterAPISessionDelegatedJSONTaskTests.swift | 16 +- ...erAPISessionDelegatedStreamTaskTests.swift | 9 +- ...witterAPISessionSpecializedTaskTests.swift | 23 +- .../TwitterAPIClientTests.swift | 5 + .../TwitterAPIErrorResponseTests.swift | 5 + .../TwitterAPIKitErrorTests.swift | 5 + .../TwitterAPIKitTests.swift | 5 + .../TwitterAPIRequestTests.swift | 62 +- .../TwitterAPIResponseTests.swift | 5 + .../TwitterAPISessionTests.swift | 9 +- .../TwitterAuthenticationMethodTests.swift | 5 + .../TwitterRateLimitTests.swift | 5 + lint.txt | 1136 +++++++++++++++++ scripts/gen_init_params.swift | 12 +- 486 files changed, 3776 insertions(+), 152 deletions(-) create mode 100644 lint.txt diff --git a/BuildTools/Empty.swift b/BuildTools/Empty.swift index fecc4ab4..ca543ac3 100644 --- a/BuildTools/Empty.swift +++ b/BuildTools/Empty.swift @@ -1 +1,6 @@ +// Empty.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation diff --git a/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift index d7e83569..ceff872d 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift @@ -1,3 +1,8 @@ +// AccountAPIv1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class AccountAPIv1: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountSettingsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountSettingsRequestV1.swift index e26c44cf..b97057ee 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountSettingsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountSettingsRequestV1.swift @@ -1,3 +1,8 @@ +// GetAccountSettingsRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/get-account-settings diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountVerifyCredentialsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountVerifyCredentialsRequestV1.swift index 2b1885c2..4b74c2c7 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountVerifyCredentialsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountVerifyCredentialsRequestV1.swift @@ -1,3 +1,8 @@ +// GetAccountVerifyCredentialsRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/get-account-verify_credentials diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountRemoveProfileBannerRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountRemoveProfileBannerRequestV1.swift index e0f1ee20..c275b1cb 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountRemoveProfileBannerRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountRemoveProfileBannerRequestV1.swift @@ -1,3 +1,8 @@ +// PostAccountRemoveProfileBannerRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-account-remove_profile_banner @@ -16,7 +21,6 @@ open class PostAccountRemoveProfileBannerRequestV1: TwitterAPIRequest { public init() {} - deinit { // De-init Logic Here } diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift index c877ef70..e8c58973 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift @@ -1,3 +1,8 @@ +// PostAccountSettingsRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-account-settings diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileBannerRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileBannerRequestV1.swift index 8b1b3bb8..69262ed7 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileBannerRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileBannerRequestV1.swift @@ -1,3 +1,8 @@ +// PostAccountUpdateProfileBannerRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-account-update_profile_banner diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileImageRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileImageRequestV1.swift index 27d5e1bb..773166e0 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileImageRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileImageRequestV1.swift @@ -1,3 +1,8 @@ +// PostAccountUpdateProfileImageRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-account-update_profile_image diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileRequestV1.swift index 6f3fbd55..27c92472 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileRequestV1.swift @@ -1,3 +1,8 @@ +// PostAccountUpdateProfileRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-account-update_profile diff --git a/Sources/TwitterAPIKit/APIv1/Application/ApplicationAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Application/ApplicationAPIv1.swift index 1335c0f4..34d50771 100644 --- a/Sources/TwitterAPIKit/APIv1/Application/ApplicationAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Application/ApplicationAPIv1.swift @@ -1,3 +1,8 @@ +// ApplicationAPIv1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class ApplicationAPIv1: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift index fddc23f5..de81b287 100644 --- a/Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift @@ -1,3 +1,8 @@ +// GetApplicationRateLimitStatusRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/developer-utilities/rate-limit-status/api-reference/get-application-rate_limit_status diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift index 0ae38e14..030d1a88 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift @@ -1,3 +1,8 @@ +// BlockAndMuteAPIv1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class BlockAndMuteAPIv1: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift index 46f8a60a..2cd8ac5b 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift @@ -1,3 +1,8 @@ +// GetBlocksIDsRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/get-blocks-ids diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift index 4e25a436..f3defcc2 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift @@ -1,3 +1,8 @@ +// GetBlocksListRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/get-blocks-list diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift index 07ec2a98..cd1e21c6 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift @@ -1,3 +1,8 @@ +// GetMutesUsersIDsRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/get-mutes-users-ids diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift index 28ac3148..d57e2dc1 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift @@ -1,3 +1,8 @@ +// GetMutesUsersListRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/get-mutes-users-list diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift index adade20e..de2e3090 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift @@ -1,3 +1,8 @@ +// PostBlocksCreateRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/post-blocks-create diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift index f4b0d803..e708380a 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift @@ -1,3 +1,8 @@ +// PostBlocksDestroyRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/post-blocks-destroy diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift index 5e9f5dfa..292351af 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift @@ -1,3 +1,8 @@ +// PostMutesUsersCreateRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/post-mutes-users-create diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift index 3e7e4dfa..84af18ec 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift @@ -1,3 +1,8 @@ +// PostMutesUsersDestroyRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/post-mutes-users-destroy diff --git a/Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift index bdf68e9d..d7372e3b 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift @@ -1,3 +1,8 @@ +// CollectionAPIv1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class CollectionAPIv1: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift index fe168ec7..d092a78a 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift @@ -1,3 +1,8 @@ +// GetCollectionsEntriesRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/get-collections-entries diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsListRequestV1.swift index fcebd709..47c67adb 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsListRequestV1.swift @@ -1,3 +1,8 @@ +// GetCollectionsListRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/get-collections-list diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsShowRequestV1.swift index 58115f49..695d5090 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsShowRequestV1.swift @@ -1,3 +1,8 @@ +// GetCollectionsShowRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/get-collections-show diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift index fcece1e2..aed8cd2c 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift @@ -1,3 +1,8 @@ +// PostCollectionsCreateRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-create diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift index 88dbb38e..c75a2260 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift @@ -1,3 +1,8 @@ +// PostCollectionsDestroyRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-destroy diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift index c472ced6..16800a16 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift @@ -1,3 +1,8 @@ +// PostCollectionsEntriesAddRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-entries-add diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift index 41a43dcb..06e5103b 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift @@ -1,3 +1,8 @@ +// PostCollectionsEntriesCurateRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-entries-curate @@ -34,7 +39,7 @@ open class PostCollectionsEntriesCurateRequestV1: TwitterAPIRequest { open var parameters: [String: Any] { var params = [String: Any]() params["id"] = id - params["changes"] = changes.map { $0.keyValue } + params["changes"] = changes.map(\.keyValue) return params } diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift index d069a5cf..cf3c707b 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift @@ -1,3 +1,8 @@ +// PostCollectionsEntriesMoveRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-entries-move diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift index b75c396d..2b4906c0 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift @@ -1,3 +1,8 @@ +// PostCollectionsEntriesRemoveRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-entries-remove diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift index c3157c7b..b2821486 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift @@ -1,3 +1,8 @@ +// PostCollectionsUpdateRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-update diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift index 8626de1c..32f3ac4a 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift @@ -1,3 +1,8 @@ +// DirectMessageAPIv1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class DirectMessageAPIv1: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift index e3174372..25b51cd9 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift @@ -1,3 +1,8 @@ +// DeleteDirectMessageRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/sending-and-receiving/api-reference/delete-message-event diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageListRequestV1.swift index 1cec3fb1..2652099d 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageListRequestV1.swift @@ -1,3 +1,8 @@ +// GetDirectMessageListRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/sending-and-receiving/api-reference/list-events diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageRequestV1.swift index f6eae149..c70b44f3 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageRequestV1.swift @@ -1,3 +1,8 @@ +// GetDirectMessageRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/sending-and-receiving/api-reference/get-event diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift index a1f3ea6c..758e60e3 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift @@ -1,3 +1,8 @@ +// PostDirectMessageRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/sending-and-receiving/api-reference/new-event @@ -113,7 +118,7 @@ open class PostDirectMessageRequestV1: TwitterAPIRequest { quickReplyOptions.map { messageData["quick_reply"] = [ "type": "options", - "options": $0.map { $0.parameter }, + "options": $0.map(\.parameter), ] } diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift index d72c34ba..57822791 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift @@ -1,3 +1,8 @@ +// PostDirectMessagesIndicateTypingRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/typing-indicator-and-read-receipts/api-reference/new-typing-indicator diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift index c23289e7..9ce443b0 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift @@ -1,3 +1,8 @@ +// PostDirectMessagesMarkReadRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/typing-indicator-and-read-receipts/api-reference/new-read-receipt diff --git a/Sources/TwitterAPIKit/APIv1/Favorite/FavoriteAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Favorite/FavoriteAPIv1.swift index 5c72e518..e39d701e 100644 --- a/Sources/TwitterAPIKit/APIv1/Favorite/FavoriteAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Favorite/FavoriteAPIv1.swift @@ -1,3 +1,8 @@ +// FavoriteAPIv1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class FavoriteAPIv1: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/GetFavoritesRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/GetFavoritesRequestV1.swift index bb33a6b8..4471460b 100644 --- a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/GetFavoritesRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/GetFavoritesRequestV1.swift @@ -1,3 +1,8 @@ +// GetFavoritesRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/get-favorites-list diff --git a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostFavoriteRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostFavoriteRequestV1.swift index c71a297e..b7d4742d 100644 --- a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostFavoriteRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostFavoriteRequestV1.swift @@ -1,3 +1,8 @@ +// PostFavoriteRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/post-favorites-create diff --git a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostUnFavoriteRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostUnFavoriteRequestV1.swift index 62b20342..5f4cef32 100644 --- a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostUnFavoriteRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostUnFavoriteRequestV1.swift @@ -1,3 +1,8 @@ +// PostUnFavoriteRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/post-favorites-destroy diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift index cce0e72e..6058007e 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift @@ -1,3 +1,8 @@ +// FriendshipsAPIv1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class FriendshipsAPIv1: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift index c6a1802e..50ef0d5f 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift @@ -1,3 +1,8 @@ +// GetFollowersIDsRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-followers-ids diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift index b93db7bb..62ab7fbc 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift @@ -1,3 +1,8 @@ +// GetFollowersListRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-followers-list diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift index 4c7519b5..b3dc2b38 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift @@ -1,3 +1,8 @@ +// GetFriendsIDsRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friends-ids diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsListRequestV1.swift index 041de98c..9bc4c06e 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsListRequestV1.swift @@ -1,3 +1,8 @@ +// GetFriendsListRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friends-list diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift index 06e119d6..8243b9a7 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift @@ -1,3 +1,8 @@ +// GetFriendshipsIncomingRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friendships-incoming diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift index c14678bb..88ddfebe 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift @@ -1,3 +1,8 @@ +// GetFriendshipsLookupRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friendships-lookup diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift index 5fe80438..2d9ec4dd 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift @@ -1,3 +1,8 @@ +// GetFriendshipsNoRetweetsIDsRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friendships-no_retweets-ids diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift index 05b02f70..6c8da3c5 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift @@ -1,3 +1,8 @@ +// GetFriendshipsOutgoingRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friendships-outgoing diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift index abc69c95..deb26035 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift @@ -1,3 +1,8 @@ +// GetFriendshipsShowRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friendships-show diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift index ba78f2aa..a1c66ce0 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift @@ -1,3 +1,8 @@ +// PostFriendshipsCreateRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/post-friendships-create diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift index c55131ef..0ec6e3d8 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift @@ -1,3 +1,8 @@ +// PostFriendshipsDestroyRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/post-friendships-destroy diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift index 5c7e0036..ac3b1360 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift @@ -1,3 +1,8 @@ +// PostFriendshipsUpdateRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/post-friendships-update diff --git a/Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift index 0b2d3ce6..91700857 100644 --- a/Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift @@ -1,3 +1,8 @@ +// GeoAPIv1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class GeoAPIv1: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoPlaceIDRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoPlaceIDRequestV1.swift index 1ba306b6..b97b9777 100644 --- a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoPlaceIDRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoPlaceIDRequestV1.swift @@ -1,3 +1,8 @@ +// GetGeoPlaceIDRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/geo/place-information/api-reference/get-geo-id-place_id diff --git a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoReverseGeocodeRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoReverseGeocodeRequestV1.swift index 26f29bf4..6a732dc5 100644 --- a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoReverseGeocodeRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoReverseGeocodeRequestV1.swift @@ -1,3 +1,8 @@ +// GetGeoReverseGeocodeRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/geo/places-near-location/api-reference/get-geo-reverse_geocode diff --git a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift index 50a304e1..07117883 100644 --- a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift @@ -1,3 +1,8 @@ +// GetGeoSearchRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/geo/places-near-location/api-reference/get-geo-search diff --git a/Sources/TwitterAPIKit/APIv1/Help/HelpAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Help/HelpAPIv1.swift index 24342c52..9b5a9d9c 100644 --- a/Sources/TwitterAPIKit/APIv1/Help/HelpAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Help/HelpAPIv1.swift @@ -1,3 +1,8 @@ +// HelpAPIv1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class HelpAPIv1: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv1/Help/Requests/GetHelpLanguagesRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Help/Requests/GetHelpLanguagesRequestV1.swift index cf5e29e0..a87aa1cf 100644 --- a/Sources/TwitterAPIKit/APIv1/Help/Requests/GetHelpLanguagesRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Help/Requests/GetHelpLanguagesRequestV1.swift @@ -1,3 +1,8 @@ +// GetHelpLanguagesRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/developer-utilities/supported-languages/api-reference/get-help-languages diff --git a/Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift b/Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift index 34eb1460..d8448bec 100644 --- a/Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift @@ -1,3 +1,8 @@ +// ListAPIv1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class ListAPIv1: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift index 96edc182..ca4b644a 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift @@ -1,3 +1,8 @@ +// GetListsListRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-list diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift index e6ae5a35..e0c08360 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift @@ -1,3 +1,8 @@ +// GetListsMembersRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-members diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift index 86c3a4b4..788e5bb6 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift @@ -1,3 +1,8 @@ +// GetListsMembersShowRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-members-show diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift index 74b92106..1c381e40 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift @@ -1,3 +1,8 @@ +// GetListsMembershipsRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-memberships diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift index 17ac2e73..f8743899 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift @@ -1,3 +1,8 @@ +// GetListsOwnershipsRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-ownerships diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift index 2bf61061..716f76f1 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift @@ -1,3 +1,8 @@ +// GetListsShowRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-show diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift index cf4084ba..2cd24c94 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift @@ -1,3 +1,8 @@ +// GetListsStatusesRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-statuses diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersRequestV1.swift index 6b5eaad1..bae9a07b 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersRequestV1.swift @@ -1,3 +1,8 @@ +// GetListsSubscribersRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-subscribers diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift index 9dcc8a5e..43d006c8 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift @@ -1,3 +1,8 @@ +// GetListsSubscribersShowRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-subscribers-show diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift index 82e56f0a..fcc36e8e 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift @@ -1,3 +1,8 @@ +// GetListsSubscriptionsRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-subscriptions diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift index c7d2c168..f2054df6 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift @@ -1,3 +1,8 @@ +// PostListsCreateRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-create diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift index 6b8d66e9..c4ac0ecd 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift @@ -1,3 +1,8 @@ +// PostListsDestroyRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-destroy diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift index 11f35b58..e4f9a033 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift @@ -1,3 +1,8 @@ +// PostListsMembersCreateAllRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-members-create_all diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift index 79675d94..d3a94b0d 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift @@ -1,3 +1,8 @@ +// PostListsMembersCreateRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-members-create diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift index e28b9953..2ce9aa96 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift @@ -1,3 +1,8 @@ +// PostListsMembersDestroyAllRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-members-destroy_all diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift index b7f165d9..58f12201 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift @@ -1,3 +1,8 @@ +// PostListsMembersDestroyRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-members-destroy diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift index dd6846d2..e3ba5357 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift @@ -1,3 +1,8 @@ +// PostListsSubscribersCreateRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-subscribers-create diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift index 8a19767c..52b94f58 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift @@ -1,3 +1,8 @@ +// PostListsSubscribersDestroyRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-subscribers-destroy diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift index 42c52320..3dd3085e 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift @@ -1,3 +1,8 @@ +// PostListsUpdateRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-update diff --git a/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift index 53d6a25a..e7a1107c 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift @@ -1,3 +1,8 @@ +// MediaAPIv1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class MediaAPIv1: TwitterAPIBase { @@ -118,7 +123,7 @@ open class MediaAPIv1: TwitterAPIBase { } } } - } + } } public func waitMediaProcessing( diff --git a/Sources/TwitterAPIKit/APIv1/Media/Requests/GetUploadMediaStatusRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Media/Requests/GetUploadMediaStatusRequestV1.swift index d6903941..9dc44035 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/Requests/GetUploadMediaStatusRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/Requests/GetUploadMediaStatusRequestV1.swift @@ -1,3 +1,8 @@ +// GetUploadMediaStatusRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class GetUploadMediaStatusRequestV1: TwitterAPIRequest { diff --git a/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaMetadataCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaMetadataCreateRequestV1.swift index 2bfd6430..fdb94318 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaMetadataCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaMetadataCreateRequestV1.swift @@ -1,3 +1,8 @@ +// PostMediaMetadataCreateRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/post-media-metadata-create diff --git a/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesCreateRequestV1.swift index 536e7723..23d22998 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesCreateRequestV1.swift @@ -1,3 +1,8 @@ +// PostMediaSubtitlesCreateRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/post-media-subtitles-create diff --git a/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesDeleteRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesDeleteRequestV1.swift index 5189a073..400fc1ab 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesDeleteRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/Requests/PostMediaSubtitlesDeleteRequestV1.swift @@ -1,3 +1,8 @@ +// PostMediaSubtitlesDeleteRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/post-media-subtitles-delete diff --git a/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaAppendRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaAppendRequestV1.swift index 414284f8..40eaf3ea 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaAppendRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaAppendRequestV1.swift @@ -1,3 +1,8 @@ +// UploadMediaAppendRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/post-media-upload-append @@ -31,14 +36,16 @@ open class UploadMediaAppendRequestV1: TwitterAPIRequest { open var parameters: [String: Any] { return [ - "command": .value(name: "command", value: command), - "media_id": .value(name: "media_id", value: mediaID), - "media": .data(name: "media", value: media, filename: filename, mimeType: mimeType), - "segment_index": .value(name: "segment_index", value: segmentIndex), + "command": command, + "media_id": mediaID, + "media": media, + "segment_index": segmentIndex, + "filename": filename, + "mime_type": mimeType ] } - public init( + public required init( mediaID: String, filename: String, mimeType: String, @@ -60,7 +67,7 @@ open class UploadMediaAppendRequestV1: TwitterAPIRequest { currentSegmentIndex = segmentIndex + requests.count let start = currentSegmentIndex * maxBytes let len = min(totalDataSize - start, maxBytes) - let req = UploadMediaAppendRequestV1( + let req = Self( mediaID: mediaID, filename: filename, mimeType: mimeType, diff --git a/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaFinalizeRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaFinalizeRequestV1.swift index dedf4d2e..0e981445 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaFinalizeRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaFinalizeRequestV1.swift @@ -1,3 +1,8 @@ +// UploadMediaFinalizeRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/post-media-upload-finalize diff --git a/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaInitRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaInitRequestV1.swift index 427828f9..100519bb 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaInitRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/Requests/UploadMediaInitRequestV1.swift @@ -1,3 +1,8 @@ +// UploadMediaInitRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/post-media-upload-init diff --git a/Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift b/Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift index 7c09eedf..d6433a04 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift @@ -1,3 +1,8 @@ +// UploadMediaEntity.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation public struct UploadMediaRequestParameters { @@ -53,7 +58,7 @@ public extension TwitterAPIClient { } public var enumState: State { - if state == "pending", let checkAfterSecs{ + if state == "pending", let checkAfterSecs { return .pending(checkAfterSecs: checkAfterSecs) } diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift index 37093b5a..74dd9f6a 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift @@ -1,3 +1,8 @@ +// GetRetweetersRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/get-statuses-retweeters-ids diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift index 415b5f74..e62e6da7 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift @@ -1,3 +1,8 @@ +// GetRetweetsOfMeRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/get-statuses-retweets_of_me diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsRequestV1.swift index 3b5aea2b..efcda097 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsRequestV1.swift @@ -1,3 +1,8 @@ +// GetRetweetsRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/get-statuses-retweets-id diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostRetweetRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostRetweetRequestV1.swift index 9b64919d..57431142 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostRetweetRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostRetweetRequestV1.swift @@ -1,3 +1,8 @@ +// PostRetweetRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/post-statuses-retweet-id diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostUnRetweetRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostUnRetweetRequestV1.swift index 3650a485..b39b0e38 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostUnRetweetRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostUnRetweetRequestV1.swift @@ -1,3 +1,8 @@ +// PostUnRetweetRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/post-statuses-unretweet-id diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift index c5473d53..497ba4c7 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift @@ -1,3 +1,8 @@ +// RetweetAPIv1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class RetweetAPIv1: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSavedSearchesListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSavedSearchesListRequestV1.swift index b77ad327..fff7537c 100644 --- a/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSavedSearchesListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSavedSearchesListRequestV1.swift @@ -1,3 +1,8 @@ +// GetSavedSearchesListRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/get-saved_searches-list diff --git a/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSearchTweetsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSearchTweetsRequestV1.swift index ff7269bf..81165dc7 100644 --- a/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSearchTweetsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSearchTweetsRequestV1.swift @@ -1,3 +1,8 @@ +// GetSearchTweetsRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/search/api-reference/get-search-tweets diff --git a/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift index 3d157034..67f52a27 100644 --- a/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift @@ -1,3 +1,8 @@ +// PostSavedSearchesCreateRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-saved_searches-create diff --git a/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift index 6c10f6bb..088411a4 100644 --- a/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift @@ -1,3 +1,8 @@ +// PostSavedSearchesDestroyRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-saved_searches-destroy-id diff --git a/Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift index 567d6673..66f46c9e 100644 --- a/Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift @@ -1,3 +1,8 @@ +// SearchAPIv1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class SearchAPIv1: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift index 1f3bdf1d..fcd2cd1b 100644 --- a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift @@ -1,3 +1,8 @@ +// GetStatusesHomeTimelineRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/timelines/api-reference/get-statuses-home_timeline diff --git a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesMentionsTimelineRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesMentionsTimelineRequestV1.swift index 69d17fd3..f3be95ee 100644 --- a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesMentionsTimelineRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesMentionsTimelineRequestV1.swift @@ -1,3 +1,8 @@ +// GetStatusesMentionsTimelineRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/timelines/api-reference/get-statuses-mentions_timeline diff --git a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesUserTimelineRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesUserTimelineRequestV1.swift index 3f301f90..ff537734 100644 --- a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesUserTimelineRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesUserTimelineRequestV1.swift @@ -1,3 +1,8 @@ +// GetStatusesUserTimelineRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/timelines/api-reference/get-statuses-user_timeline diff --git a/Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift index fec7d4c3..77fc448f 100644 --- a/Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift @@ -1,3 +1,8 @@ +// TimelineAPIv1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/timelines/overview diff --git a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift index bef67ca9..5d4e1b7b 100644 --- a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift @@ -1,3 +1,8 @@ +// GetTrendsAvailableRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/trends/locations-with-trending-topics/api-reference/get-trends-available diff --git a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift index 08d0cb98..0a286372 100644 --- a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift @@ -1,3 +1,8 @@ +// GetTrendsClosestRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/trends/locations-with-trending-topics/api-reference/get-trends-closest @@ -14,7 +19,7 @@ open class GetTrendsClosestRequestV1: TwitterAPIRequest { open var parameters: [String: Any] { var params = [String: Any]() - location.bind(param: ¶msarams) + location.bind(param: ¶ms) return params } diff --git a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsPlaceRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsPlaceRequestV1.swift index 459e663a..5ec9e871 100644 --- a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsPlaceRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsPlaceRequestV1.swift @@ -1,3 +1,8 @@ +// GetTrendsPlaceRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/trends/trends-for-location/api-reference/get-trends-place diff --git a/Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift index 35c114a6..b9402f74 100644 --- a/Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift @@ -1,3 +1,8 @@ +// TrendAPIv1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class TrendAPIv1: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesLookupRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesLookupRequestV1.swift index 4af8bae5..b4e3fb3e 100644 --- a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesLookupRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesLookupRequestV1.swift @@ -1,3 +1,8 @@ +// GetStatusesLookupRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/get-statuses-lookup diff --git a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesShowRequestV1.swift index fdb1fe72..80fb3929 100644 --- a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesShowRequestV1.swift @@ -1,3 +1,8 @@ +// GetStatusesShowRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/get-statuses-show-id diff --git a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostStatusesDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostStatusesDestroyRequestV1.swift index 473367b8..b32b777c 100644 --- a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostStatusesDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostStatusesDestroyRequestV1.swift @@ -1,3 +1,8 @@ +// PostStatusesDestroyRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/post-statuses-destroy-id diff --git a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift index 2424001d..d080e4e7 100644 --- a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift @@ -1,3 +1,8 @@ +// PostUpdateStatusRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/post-statuses-update diff --git a/Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift index 009dc669..6287cc5f 100644 --- a/Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift @@ -1,3 +1,8 @@ +// TweetAPIv1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class TweetAPIv1: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift b/Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift index dd47ea0d..3eab6152 100644 --- a/Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift @@ -1,3 +1,8 @@ +// TwitterAPIv1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + open class TwitterAPIv1 { public let account: AccountAPIv1 public let application: ApplicationAPIv1 diff --git a/Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift b/Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift index ce5cb2db..c751c13e 100644 --- a/Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift +++ b/Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift @@ -1,3 +1,8 @@ +// TwitterListIdentifierV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation public enum TwitterListIdentifierV1 { diff --git a/Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift b/Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift index 524f5783..dd567ab8 100644 --- a/Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift +++ b/Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift @@ -1,3 +1,8 @@ +// TwitterListModeV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation public enum TwitterListModeV1 { diff --git a/Sources/TwitterAPIKit/APIv1/TwitterLocations.swift b/Sources/TwitterAPIKit/APIv1/TwitterLocations.swift index 72513f88..7081df54 100644 --- a/Sources/TwitterAPIKit/APIv1/TwitterLocations.swift +++ b/Sources/TwitterAPIKit/APIv1/TwitterLocations.swift @@ -1,3 +1,8 @@ +// TwitterLocations.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation public struct TwitterCoordinateV1 { diff --git a/Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift b/Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift index 2816e2b3..d0eea610 100644 --- a/Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift +++ b/Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift @@ -1,3 +1,8 @@ +// TwitterUserIdentifierV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation public enum TwitterUserIdentifierV1 { diff --git a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersLookupRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersLookupRequestV1.swift index 8f384c07..60e66323 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersLookupRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersLookupRequestV1.swift @@ -1,3 +1,8 @@ +// GetUsersLookupRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-users-lookup diff --git a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift index 3e42ac57..87cca881 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift @@ -1,3 +1,8 @@ +// GetUsersProfileBannerRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/get-users-profile_banner diff --git a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift index ba14e584..cb40b4cf 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift @@ -1,3 +1,8 @@ +// GetUsersSearchRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-users-search diff --git a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift index 493dbad9..4d5ee804 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift @@ -1,3 +1,8 @@ +// GetUsersShowRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-users-show diff --git a/Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift index 8c104dcc..c884c4c6 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift @@ -1,3 +1,8 @@ +// UserAPIv1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class UserAPIv1: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/BlockAndMuteAPIv2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/BlockAndMuteAPIv2.swift index 1866f1b6..df1ed4b8 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/BlockAndMuteAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/BlockAndMuteAPIv2.swift @@ -1,3 +1,8 @@ +// BlockAndMuteAPIv2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class BlockAndMuteAPIv2: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersBlockingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersBlockingRequestV2.swift index fec08ef1..39463eee 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersBlockingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersBlockingRequestV2.swift @@ -1,3 +1,8 @@ +// DeleteUsersBlockingRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/blocks/api-reference/delete-users-user_id-blocking diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersMutingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersMutingRequestV2.swift index 062ee1fd..e6c2ab59 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersMutingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersMutingRequestV2.swift @@ -1,3 +1,8 @@ +// DeleteUsersMutingRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/mutes/api-reference/delete-users-user_id-muting diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersBlockingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersBlockingRequestV2.swift index 53f29565..138211ef 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersBlockingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersBlockingRequestV2.swift @@ -1,3 +1,8 @@ +// GetUsersBlockingRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/blocks/api-reference/get-users-blocking diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersMutingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersMutingRequestV2.swift index a11f9cbe..ea776d10 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersMutingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersMutingRequestV2.swift @@ -1,3 +1,8 @@ +// GetUsersMutingRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/mutes/api-reference/get-users-muting diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersBlockingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersBlockingRequestV2.swift index 6f812603..1706848b 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersBlockingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersBlockingRequestV2.swift @@ -1,4 +1,9 @@ -PostUsersBlockingRequestV2import Foundation +// PostUsersBlockingRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + +import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/blocks/api-reference/post-users-user_id-blocking open class PostUsersBlockingRequestV2: TwitterAPIRequest { diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersMutingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersMutingRequestV2.swift index a5015f8c..0799c899 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersMutingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersMutingRequestV2.swift @@ -1,3 +1,8 @@ +// PostUsersMutingRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/mutes/api-reference/post-users-user_id-muting diff --git a/Sources/TwitterAPIKit/APIv2/Bookmarks/BookmarksAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Bookmarks/BookmarksAPIv2.swift index 74bce148..9cbe50c1 100644 --- a/Sources/TwitterAPIKit/APIv2/Bookmarks/BookmarksAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Bookmarks/BookmarksAPIv2.swift @@ -1,3 +1,8 @@ +// BookmarksAPIv2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class BookmarksAPIv2: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/DeleteUsersBookmarksRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/DeleteUsersBookmarksRequestV2.swift index aaf031f5..26a1e0c5 100644 --- a/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/DeleteUsersBookmarksRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/DeleteUsersBookmarksRequestV2.swift @@ -1,8 +1,15 @@ +// DeleteUsersBookmarksRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/bookmarks/api-reference/delete-users-id-bookmarks-tweet_id open class DeleteUsersBookmarksRequestV2: TwitterAPIRequest { - /// The user ID of an authenticated user who you are removing a Bookmark of a Tweet on behalf of. It must match your own user ID or that of an authenticating user, meaning that you must pass the Access Tokens associated with the user ID when authenticating your request. + /// The user ID of an authenticated user who you are removing a Bookmark of a Tweet on behalf of. It must match your + /// own user ID or that of an authenticating user, meaning that you must pass the Access Tokens associated with the + /// user ID when authenticating your request. public let id: String public let tweetID: String diff --git a/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/GetUsersBookmarksRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/GetUsersBookmarksRequestV2.swift index 79de2470..72a5c9c3 100644 --- a/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/GetUsersBookmarksRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/GetUsersBookmarksRequestV2.swift @@ -1,3 +1,8 @@ +// GetUsersBookmarksRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/bookmarks/api-reference/get-users-id-bookmarks diff --git a/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/PostUsersBookmarksRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/PostUsersBookmarksRequestV2.swift index cdc4053a..1594a5c8 100644 --- a/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/PostUsersBookmarksRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/PostUsersBookmarksRequestV2.swift @@ -1,8 +1,15 @@ +// PostUsersBookmarksRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/bookmarks/api-reference/post-users-id-bookmarks open class PostUsersBookmarksRequestV2: TwitterAPIRequest { - /// The user ID who you are bookmarking a Tweet on behalf of. It must match your own user ID or that of an authenticating user, meaning that you must pass the Access Token associated with the user ID when authenticating your request. + /// The user ID who you are bookmarking a Tweet on behalf of. It must match your own user ID or that of an + /// authenticating user, meaning that you must pass the Access Token associated with the user ID when authenticating + /// your request. public let id: String public let tweetID: String diff --git a/Sources/TwitterAPIKit/APIv2/Compliance/ComplianceAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Compliance/ComplianceAPIv2.swift index 32a1a04f..0c7153d8 100644 --- a/Sources/TwitterAPIKit/APIv2/Compliance/ComplianceAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Compliance/ComplianceAPIv2.swift @@ -1,3 +1,8 @@ +// ComplianceAPIv2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class ComplianceAPIv2: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobRequestV2.swift index cb7d70c7..2881400d 100644 --- a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobRequestV2.swift @@ -1,3 +1,8 @@ +// GetComplianceJobRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/compliance/batch-compliance/api-reference/get-compliance-jobs-id diff --git a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift index b4abf118..9dc8787d 100644 --- a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift @@ -1,3 +1,8 @@ +// GetComplianceJobsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/compliance/batch-compliance/api-reference/get-compliance-jobs diff --git a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/PostComplianceJobsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/PostComplianceJobsRequestV2.swift index f5aad75d..d3699958 100644 --- a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/PostComplianceJobsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/PostComplianceJobsRequestV2.swift @@ -1,3 +1,8 @@ +// PostComplianceJobsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/compliance/batch-compliance/api-reference/post-compliance-jobs diff --git a/Sources/TwitterAPIKit/APIv2/Compliance/TwitterComplianceJobTypeV2.swift b/Sources/TwitterAPIKit/APIv2/Compliance/TwitterComplianceJobTypeV2.swift index 2bc380e5..ecb00131 100644 --- a/Sources/TwitterAPIKit/APIv2/Compliance/TwitterComplianceJobTypeV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Compliance/TwitterComplianceJobTypeV2.swift @@ -1,3 +1,8 @@ +// TwitterComplianceJobTypeV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation public enum TwitterComplianceJobTypeV2: String { diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift index fdf61307..fa145368 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift @@ -1,3 +1,8 @@ +// DirectMessageAPIv2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class DirectMessageAPIv2: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsIdDmEventsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsIdDmEventsRequestV2.swift index a893ac9b..dea85e90 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsIdDmEventsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsIdDmEventsRequestV2.swift @@ -1,3 +1,8 @@ +// GetDmConversationsIdDmEventsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// Returns DM Events for a DM Conversation diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift index ca1d2cc5..cb0aa048 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift @@ -1,3 +1,8 @@ +// GetDmConversationsWithParticipantIdDmEventsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// Returns DM Events for a DM Conversation diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmEventsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmEventsRequestV2.swift index a745942b..6100ab38 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmEventsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmEventsRequestV2.swift @@ -1,3 +1,8 @@ +// GetDmEventsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// Returns recent DM Events across DM conversations diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationByIdRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationByIdRequestV2.swift index 4fe962d9..65a14f8a 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationByIdRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationByIdRequestV2.swift @@ -1,3 +1,8 @@ +// PostDmConversationByIdRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// Creates a new message for a DM Conversation specified by DM Conversation ID diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationRequestV2.swift index 180cfd9f..eb80bee2 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationRequestV2.swift @@ -1,3 +1,8 @@ +// PostDmConversationRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// Creates a new DM Conversation. diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationWithUserRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationWithUserRequestV2.swift index 31f21a61..4a091567 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationWithUserRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/PostDmConversationWithUserRequestV2.swift @@ -1,3 +1,8 @@ +// PostDmConversationWithUserRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// Creates a new message for a DM Conversation with a participant user by ID @@ -24,7 +29,7 @@ open class PostDmConversationWithUserRequestV2: TwitterAPIRequest { open var parameters: [String: Any] { var params = [String: Any]() - if let attachments = attachments { + if let attachments { params["attachments"] = attachments.map { ["media_id": $0] } } text.map { params["text"] = $0 } diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/TwitterDirectMessageEventTypeV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/TwitterDirectMessageEventTypeV2.swift index cc5ee326..0202424b 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/TwitterDirectMessageEventTypeV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/TwitterDirectMessageEventTypeV2.swift @@ -1,3 +1,8 @@ +// TwitterDirectMessageEventTypeV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// The set of event_types to include in the results. diff --git a/Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift b/Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift index bbff6dd2..35db8ccf 100644 --- a/Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift +++ b/Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift @@ -1,3 +1,8 @@ +// ExpansionsV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation // https://developer.twitter.com/en/docs/twitter-api/expansions diff --git a/Sources/TwitterAPIKit/APIv2/FieldsV2.swift b/Sources/TwitterAPIKit/APIv2/FieldsV2.swift index 8cb438a1..175d876c 100644 --- a/Sources/TwitterAPIKit/APIv2/FieldsV2.swift +++ b/Sources/TwitterAPIKit/APIv2/FieldsV2.swift @@ -1,3 +1,8 @@ +// FieldsV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation // https://developer.twitter.com/en/docs/twitter-api/fields diff --git a/Sources/TwitterAPIKit/APIv2/Friendships/FriendshipsAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Friendships/FriendshipsAPIv2.swift index 4aeaf002..44094f1b 100644 --- a/Sources/TwitterAPIKit/APIv2/Friendships/FriendshipsAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Friendships/FriendshipsAPIv2.swift @@ -1,3 +1,8 @@ +// FriendshipsAPIv2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class FriendshipsAPIv2: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/DeleteUsersFollowingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/DeleteUsersFollowingRequestV2.swift index a986b339..fe092515 100644 --- a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/DeleteUsersFollowingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/DeleteUsersFollowingRequestV2.swift @@ -1,3 +1,8 @@ +// DeleteUsersFollowingRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/follows/api-reference/delete-users-source_id-following diff --git a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowersRequestV2.swift index 87b39dcc..8d79bfc1 100644 --- a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowersRequestV2.swift @@ -1,3 +1,8 @@ +// GetUsersFollowersRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/follows/api-reference/get-users-id-followers diff --git a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowingRequestV2.swift index bd56d75e..2eaf09f9 100644 --- a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowingRequestV2.swift @@ -1,3 +1,8 @@ +// GetUsersFollowingRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/follows/api-reference/get-users-id-following diff --git a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/PostUsersFollowingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/PostUsersFollowingRequestV2.swift index c4156f68..3bf45db7 100644 --- a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/PostUsersFollowingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/PostUsersFollowingRequestV2.swift @@ -1,3 +1,8 @@ +// PostUsersFollowingRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/follows/api-reference/post-users-source_user_id-following diff --git a/Sources/TwitterAPIKit/APIv2/Like/LikeAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Like/LikeAPIv2.swift index ffca6888..9798445c 100644 --- a/Sources/TwitterAPIKit/APIv2/Like/LikeAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Like/LikeAPIv2.swift @@ -1,3 +1,8 @@ +// LikeAPIv2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class LikeAPIv2: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv2/Like/Requests/DeleteUsersLikesRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Like/Requests/DeleteUsersLikesRequestV2.swift index 53ab65b1..05c61667 100644 --- a/Sources/TwitterAPIKit/APIv2/Like/Requests/DeleteUsersLikesRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Like/Requests/DeleteUsersLikesRequestV2.swift @@ -1,3 +1,8 @@ +// DeleteUsersLikesRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/likes/api-reference/delete-users-id-likes-tweet_id diff --git a/Sources/TwitterAPIKit/APIv2/Like/Requests/GetTweetsLikingUsersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Like/Requests/GetTweetsLikingUsersRequestV2.swift index a71dffd2..abf291db 100644 --- a/Sources/TwitterAPIKit/APIv2/Like/Requests/GetTweetsLikingUsersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Like/Requests/GetTweetsLikingUsersRequestV2.swift @@ -1,3 +1,8 @@ +// GetTweetsLikingUsersRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/likes/api-reference/get-tweets-id-liking_users diff --git a/Sources/TwitterAPIKit/APIv2/Like/Requests/GetUsersLikedTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Like/Requests/GetUsersLikedTweetsRequestV2.swift index af865809..cf2c764a 100644 --- a/Sources/TwitterAPIKit/APIv2/Like/Requests/GetUsersLikedTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Like/Requests/GetUsersLikedTweetsRequestV2.swift @@ -1,4 +1,9 @@ -TweetCountAPIv2import Foundation +// GetUsersLikedTweetsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + +import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/likes/api-reference/get-users-id-liked_tweets open class GetUsersLikedTweetsRequestV2: TwitterAPIRequest { diff --git a/Sources/TwitterAPIKit/APIv2/Like/Requests/PostUsersLikesRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Like/Requests/PostUsersLikesRequestV2.swift index 87b78716..58c3e313 100644 --- a/Sources/TwitterAPIKit/APIv2/Like/Requests/PostUsersLikesRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Like/Requests/PostUsersLikesRequestV2.swift @@ -1,3 +1,8 @@ +// PostUsersLikesRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/likes/api-reference/post-users-id-likes diff --git a/Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift b/Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift index 8d6320a4..00988e83 100644 --- a/Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift @@ -1,3 +1,8 @@ +// ListAPIv2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class ListAPIv2: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListRequestV2.swift index 74718014..875376f1 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListRequestV2.swift @@ -1,3 +1,8 @@ +// DeleteListRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/manage-lists/api-reference/delete-lists-id diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListsMembersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListsMembersRequestV2.swift index fff14073..d6974908 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListsMembersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListsMembersRequestV2.swift @@ -1,3 +1,8 @@ +// DeleteListsMembersRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/list-members/api-reference/delete-lists-id-members-user_id diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift index d4bea829..d02bbe8d 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift @@ -1,3 +1,8 @@ +// DeleteUsersFollowedListsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/list-follows/api-reference/delete-users-id-followed-lists-list_id diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersPinnedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersPinnedListsRequestV2.swift index 718b6a6b..4954fc42 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersPinnedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersPinnedListsRequestV2.swift @@ -1,3 +1,8 @@ +// DeleteUsersPinnedListsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/pinned-lists/api-reference/delete-users-id-pinned-lists-list_id diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListRequestV2.swift index 5225671d..ffdff07c 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListRequestV2.swift @@ -1,3 +1,8 @@ +// GetListRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/list-lookup/api-reference/get-lists-id diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsFollowersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsFollowersRequestV2.swift index 117b4ecf..44e9c17b 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsFollowersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsFollowersRequestV2.swift @@ -1,3 +1,8 @@ +// GetListsFollowersRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/list-follows/api-reference/get-lists-id-followers diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsMembersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsMembersRequestV2.swift index 63e02929..9a5421da 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsMembersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsMembersRequestV2.swift @@ -1,3 +1,8 @@ +// GetListsMembersRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/list-members/api-reference/get-lists-id-members diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsTweetsRequestV2.swift index 1cda8d31..4cf5b684 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsTweetsRequestV2.swift @@ -1,3 +1,8 @@ +// GetListsTweetsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/list-tweets/api-reference/get-lists-id-tweets diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersFollowedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersFollowedListsRequestV2.swift index d2ccb316..e7584e1b 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersFollowedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersFollowedListsRequestV2.swift @@ -1,3 +1,8 @@ +// GetUsersFollowedListsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/list-follows/api-reference/get-users-id-followed_lists diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersListMembershipsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersListMembershipsRequestV2.swift index db778132..02b0686b 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersListMembershipsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersListMembershipsRequestV2.swift @@ -1,3 +1,8 @@ +// GetUsersListMembershipsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/list-members/api-reference/get-users-id-list_memberships diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersOwnedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersOwnedListsRequestV2.swift index 4fadd7ca..a5dabd0a 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersOwnedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersOwnedListsRequestV2.swift @@ -1,3 +1,8 @@ +// GetUsersOwnedListsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/list-lookup/api-reference/get-users-id-owned_lists diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersPinnedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersPinnedListsRequestV2.swift index a4b1c46c..2671d8e5 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersPinnedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersPinnedListsRequestV2.swift @@ -1,3 +1,8 @@ +// GetUsersPinnedListsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/pinned-lists/api-reference/get-users-id-pinned_lists diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsMembersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsMembersRequestV2.swift index ac0035e1..25d6d566 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsMembersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsMembersRequestV2.swift @@ -1,3 +1,8 @@ +// PostListsMembersRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/list-members/api-reference/post-lists-id-members diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsRequestV2.swift index 72cfe349..46784fb9 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsRequestV2.swift @@ -1,3 +1,8 @@ +// PostListsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/manage-lists/api-reference/post-lists diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersFollowedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersFollowedListsRequestV2.swift index 845b9523..06a09d87 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersFollowedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersFollowedListsRequestV2.swift @@ -1,3 +1,8 @@ +// PostUsersFollowedListsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/list-follows/api-reference/post-users-id-followed-lists diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersPinnedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersPinnedListsRequestV2.swift index 2592e9eb..d22e6f63 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersPinnedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersPinnedListsRequestV2.swift @@ -1,3 +1,8 @@ +// PostUsersPinnedListsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/pinned-lists/api-reference/post-users-id-pinned-lists diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/PutListRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/PutListRequestV2.swift index 4290e8ab..ce3ff1cc 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/PutListRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/PutListRequestV2.swift @@ -1,3 +1,8 @@ +// PutListRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/lists/manage-lists/api-reference/put-lists-id diff --git a/Sources/TwitterAPIKit/APIv2/Retweet/Requests/DeleteUsersRetweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Retweet/Requests/DeleteUsersRetweetsRequestV2.swift index bca3e4b3..1581b7af 100644 --- a/Sources/TwitterAPIKit/APIv2/Retweet/Requests/DeleteUsersRetweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Retweet/Requests/DeleteUsersRetweetsRequestV2.swift @@ -1,3 +1,8 @@ +// DeleteUsersRetweetsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/retweets/api-reference/delete-users-id-retweets-tweet_id diff --git a/Sources/TwitterAPIKit/APIv2/Retweet/Requests/GetTweetsRetweetedByRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Retweet/Requests/GetTweetsRetweetedByRequestV2.swift index 6a20abde..ecf15c49 100644 --- a/Sources/TwitterAPIKit/APIv2/Retweet/Requests/GetTweetsRetweetedByRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Retweet/Requests/GetTweetsRetweetedByRequestV2.swift @@ -1,3 +1,8 @@ +// GetTweetsRetweetedByRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/retweets/api-reference/get-tweets-id-retweeted_by diff --git a/Sources/TwitterAPIKit/APIv2/Retweet/Requests/PostUsersRetweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Retweet/Requests/PostUsersRetweetsRequestV2.swift index c1f3ffe7..d37e5404 100644 --- a/Sources/TwitterAPIKit/APIv2/Retweet/Requests/PostUsersRetweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Retweet/Requests/PostUsersRetweetsRequestV2.swift @@ -1,3 +1,8 @@ +// PostUsersRetweetsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/retweets/api-reference/post-users-id-retweets diff --git a/Sources/TwitterAPIKit/APIv2/Retweet/RetweetAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Retweet/RetweetAPIv2.swift index 94a0397e..45b268c8 100644 --- a/Sources/TwitterAPIKit/APIv2/Retweet/RetweetAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Retweet/RetweetAPIv2.swift @@ -1,3 +1,8 @@ +// RetweetAPIv2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class RetweetAPIv2: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchAllRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchAllRequestV2.swift index 98134e68..17f4a11d 100644 --- a/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchAllRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchAllRequestV2.swift @@ -1,3 +1,8 @@ +// GetTweetsSearchAllRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// This endpoint is only available to those users who have been approved for Academic Research access. diff --git a/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift index 48cbd2f5..adbc83f7 100644 --- a/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift @@ -1,3 +1,8 @@ +// GetTweetsSearchRecentRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/search/api-reference/get-tweets-search-recent diff --git a/Sources/TwitterAPIKit/APIv2/Search/SearchAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Search/SearchAPIv2.swift index 48db1e6b..1788bdad 100644 --- a/Sources/TwitterAPIKit/APIv2/Search/SearchAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Search/SearchAPIv2.swift @@ -1,3 +1,8 @@ +// SearchAPIv2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class SearchAPIv2: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv2/Search/TwitterSearchTweetsSortOrderV2.swift b/Sources/TwitterAPIKit/APIv2/Search/TwitterSearchTweetsSortOrderV2.swift index 220a2a40..88e5a78f 100644 --- a/Sources/TwitterAPIKit/APIv2/Search/TwitterSearchTweetsSortOrderV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Search/TwitterSearchTweetsSortOrderV2.swift @@ -1,3 +1,8 @@ +// TwitterSearchTweetsSortOrderV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation public enum TwitterSearchTweetsSortOrderV2: String { diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpaceRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpaceRequestV2.swift index 5df4ef95..d2dad908 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpaceRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpaceRequestV2.swift @@ -1,3 +1,8 @@ +// GetSpaceRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/spaces/lookup/api-reference/get-spaces-id diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesBuyersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesBuyersRequestV2.swift index 12412edf..10180274 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesBuyersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesBuyersRequestV2.swift @@ -1,3 +1,8 @@ +// GetSpacesBuyersRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/spaces/lookup/api-reference/get-spaces-id-buyers diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesByCreatorIDsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesByCreatorIDsRequestV2.swift index be9ef9a7..1994c333 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesByCreatorIDsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesByCreatorIDsRequestV2.swift @@ -1,3 +1,8 @@ +// GetSpacesByCreatorIDsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/spaces/lookup/api-reference/get-spaces-by-creator-ids diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesRequestV2.swift index 23c0d88b..06bed65e 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesRequestV2.swift @@ -1,3 +1,8 @@ +// GetSpacesRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/spaces/lookup/api-reference/get-spaces diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift index 4f23d696..e5c102af 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift @@ -1,3 +1,8 @@ +// GetSpacesSearchRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/spaces/search/api-reference/get-spaces-search diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesTweetsRequestV2.swift index 9031a26c..f3a792aa 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesTweetsRequestV2.swift @@ -1,3 +1,8 @@ +// GetSpacesTweetsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/spaces/lookup/api-reference/get-spaces-id-tweets diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/SpacesAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/SpacesAPIv2.swift index 3ce4585d..9b88fc23 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/SpacesAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/SpacesAPIv2.swift @@ -1,3 +1,8 @@ +// SpacesAPIv2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class SpacesAPIv2: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSampleStreamRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSampleStreamRequestV2.swift index 2d3db324..29a12a9f 100644 --- a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSampleStreamRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSampleStreamRequestV2.swift @@ -1,3 +1,8 @@ +// GetTweetsSampleStreamRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/volume-streams/api-reference/get-tweets-sample-stream diff --git a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRequestV2.swift index b4324a3f..955337d9 100644 --- a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRequestV2.swift @@ -1,3 +1,8 @@ +// GetTweetsSearchStreamRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/filtered-stream/api-reference/get-tweets-search-stream diff --git a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift index 414332c0..25335148 100644 --- a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift @@ -1,3 +1,8 @@ +// GetTweetsSearchStreamRulesRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/filtered-stream/api-reference/get-tweets-search-stream-rules diff --git a/Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift index 73d2e6fe..7a001783 100644 --- a/Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift @@ -1,3 +1,8 @@ +// PostTweetsSearchStreamRulesRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/filtered-stream/api-reference/post-tweets-search-stream-rules#Validate diff --git a/Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift index 5e178f4e..7c522f1d 100644 --- a/Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift @@ -1,3 +1,8 @@ +// StreamAPIv2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class StreamAPIv2: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersMentionsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersMentionsRequestV2.swift index cdf7cd0b..c0f7ed5f 100644 --- a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersMentionsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersMentionsRequestV2.swift @@ -1,3 +1,8 @@ +// GetUsersMentionsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/timelines/api-reference/get-users-id-mentions diff --git a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTimelinesReverseChronologicalRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTimelinesReverseChronologicalRequestV2.swift index 4f7e838d..91e5e420 100644 --- a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTimelinesReverseChronologicalRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTimelinesReverseChronologicalRequestV2.swift @@ -1,3 +1,8 @@ +// GetUsersTimelinesReverseChronologicalRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/timelines/api-reference/get-users-id-reverse-chronological diff --git a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTweetsRequestV2.swift index d4f27670..9a9e9ee0 100644 --- a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTweetsRequestV2.swift @@ -1,3 +1,8 @@ +// GetUsersTweetsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/timelines/api-reference/get-users-id-tweets diff --git a/Sources/TwitterAPIKit/APIv2/Timeline/TimelineAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Timeline/TimelineAPIv2.swift index c9b3be44..99632811 100644 --- a/Sources/TwitterAPIKit/APIv2/Timeline/TimelineAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Timeline/TimelineAPIv2.swift @@ -1,3 +1,8 @@ +// TimelineAPIv2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class TimelineAPIv2: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift b/Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift index 53866e1a..e778fdb6 100644 --- a/Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift @@ -1,3 +1,8 @@ +// TwitterTimelineExcludeV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation public enum TwitterTimelineExcludeV2: String, TwitterAPIv2RequestParameter { diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/DeleteTweetRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/DeleteTweetRequestV2.swift index dfa6dade..6b7cbfe7 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/DeleteTweetRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/DeleteTweetRequestV2.swift @@ -1,3 +1,8 @@ +// DeleteTweetRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/manage-tweets/api-reference/delete-tweets-id diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetRequestV2.swift index 74f639c9..f2a71fe2 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetRequestV2.swift @@ -1,3 +1,8 @@ +// GetTweetRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/lookup/api-reference/get-tweets-id diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsQuoteTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsQuoteTweetsRequestV2.swift index b1a1bf3b..b0c3cb9f 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsQuoteTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsQuoteTweetsRequestV2.swift @@ -1,3 +1,8 @@ +// GetTweetsQuoteTweetsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/quote-tweets/api-reference/get-tweets-id-quote_tweets diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsRequestV2.swift index 3fb67529..dd4d7e6d 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsRequestV2.swift @@ -1,3 +1,8 @@ +// GetTweetsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/lookup/api-reference/get-tweets diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift index 5feb2a97..fecccbc0 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift @@ -1,3 +1,8 @@ +// PostTweetsRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/manage-tweets/api-reference/post-tweets diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PutTweetsHiddenRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PutTweetsHiddenRequestV2.swift index 4a0c01fb..98dabd9d 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PutTweetsHiddenRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PutTweetsHiddenRequestV2.swift @@ -1,3 +1,8 @@ +// PutTweetsHiddenRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/hide-replies/api-reference/put-tweets-id-hidden diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/TweetAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/TweetAPIv2.swift index 5528b300..a6480dc1 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/TweetAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/TweetAPIv2.swift @@ -1,3 +1,8 @@ +// TweetAPIv2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class TweetAPIv2: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsAllRequestV2.swift b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsAllRequestV2.swift index 2e0eb86a..ec890788 100644 --- a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsAllRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsAllRequestV2.swift @@ -1,3 +1,8 @@ +// GetTweetsCountsAllRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/counts/api-reference/get-tweets-counts-all diff --git a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsRecentRequestV2.swift b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsRecentRequestV2.swift index 5ed9a5cf..39824f10 100644 --- a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsRecentRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsRecentRequestV2.swift @@ -1,3 +1,8 @@ +// GetTweetsCountsRecentRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/tweets/counts/api-reference/get-tweets-counts-recent diff --git a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift index b9e1efdd..c173b667 100644 --- a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift +++ b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift @@ -1,3 +1,8 @@ +// TweetCountGranularity.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation public enum TweetCountGranularityV2: String { diff --git a/Sources/TwitterAPIKit/APIv2/TweetCount/TweetCountAPIv2.swift b/Sources/TwitterAPIKit/APIv2/TweetCount/TweetCountAPIv2.swift index c373523f..e95200bc 100644 --- a/Sources/TwitterAPIKit/APIv2/TweetCount/TweetCountAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/TweetCount/TweetCountAPIv2.swift @@ -1,3 +1,8 @@ +// TweetCountAPIv2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class TweetCountAPIv2: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift b/Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift index 912234ea..6200ac8e 100644 --- a/Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift @@ -1,3 +1,8 @@ +// TwitterAPIv2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation // https://developer.twitter.com/en/docs/api-reference-index @@ -48,6 +53,6 @@ public protocol TwitterAPIv2RequestParameter { extension Collection where Element: TwitterAPIv2RequestParameter { var commaSeparatedString: String { - return map { $0.stringValue }.sorted().joined(separator: ",") + return map(\.stringValue).sorted().joined(separator: ",") } } diff --git a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUserRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUserRequestV2.swift index 28921f1c..016f6643 100644 --- a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUserRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUserRequestV2.swift @@ -1,3 +1,8 @@ +// GetUserRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/lookup/api-reference/get-users-id diff --git a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByRequestV2.swift index 4e97b3c8..65541580 100644 --- a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByRequestV2.swift @@ -1,3 +1,8 @@ +// GetUsersByRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/lookup/api-reference/get-users-by diff --git a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByUsernameRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByUsernameRequestV2.swift index 8a62e740..729d30dc 100644 --- a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByUsernameRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByUsernameRequestV2.swift @@ -1,3 +1,8 @@ +// GetUsersByUsernameRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/lookup/api-reference/get-users-by-username-username diff --git a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersMeRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersMeRequestV2.swift index 0e8fa76a..f2d92279 100644 --- a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersMeRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersMeRequestV2.swift @@ -1,3 +1,8 @@ +// GetUsersMeRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/lookup/api-reference/get-users-me diff --git a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersRequestV2.swift index d03b5ff2..1905d6c5 100644 --- a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersRequestV2.swift @@ -1,3 +1,8 @@ +// GetUsersRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/twitter-api/users/lookup/api-reference/get-users diff --git a/Sources/TwitterAPIKit/APIv2/Users/UserAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Users/UserAPIv2.swift index b1225ccb..041264ef 100644 --- a/Sources/TwitterAPIKit/APIv2/Users/UserAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Users/UserAPIv2.swift @@ -1,3 +1,8 @@ +// UserAPIv2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class UserAPIv2: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/AuthAPI/OAuth10aAPI.swift b/Sources/TwitterAPIKit/AuthAPI/OAuth10aAPI.swift index 91b68638..15b8422f 100644 --- a/Sources/TwitterAPIKit/AuthAPI/OAuth10aAPI.swift +++ b/Sources/TwitterAPIKit/AuthAPI/OAuth10aAPI.swift @@ -1,3 +1,8 @@ +// OAuth10aAPI.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class OAuth10aAPI: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/AuthAPI/OAuth20API.swift b/Sources/TwitterAPIKit/AuthAPI/OAuth20API.swift index 02013745..91345411 100644 --- a/Sources/TwitterAPIKit/AuthAPI/OAuth20API.swift +++ b/Sources/TwitterAPIKit/AuthAPI/OAuth20API.swift @@ -1,3 +1,8 @@ +// OAuth20API.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class OAuth20API: TwitterAPIBase { diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuth2AuthorizeRequestV1.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuth2AuthorizeRequestV1.swift index 8e8a305d..b2c4821d 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuth2AuthorizeRequestV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuth2AuthorizeRequestV1.swift @@ -1,3 +1,8 @@ +// GetOAuth2AuthorizeRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/authentication/oauth-2-0/authorization-code @@ -33,7 +38,7 @@ open class GetOAuth2AuthorizeRequestV1: TwitterAPIRequest { params["code_challenge"] = codeChallenge params["code_challenge_method"] = codeChallengeMethod params["scope"] = scopes.joined(separator: " ") - return p + return params } public init( diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthenticateRequestV1.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthenticateRequestV1.swift index 3af15fb9..0dddc25d 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthenticateRequestV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthenticateRequestV1.swift @@ -1,3 +1,8 @@ +// GetOAuthAuthenticateRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/authentication/api-reference/authenticate @@ -17,8 +22,8 @@ open class GetOAuthAuthenticateRequestV1: TwitterAPIRequest { open var parameters: [String: Any] { var params = [String: Any]() params["oauth_token"] = oauthToken - forceLogin.map { p["force_login"] = $0 } - screenName.map { p["screen_name"] = $0 } + forceLogin.map { params["force_login"] = $0 } + screenName.map { params["screen_name"] = $0 } return params } diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthorizeRequestV1.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthorizeRequestV1.swift index 77f843cb..5246044b 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthorizeRequestV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/GetOAuthAuthorizeRequestV1.swift @@ -1,3 +1,8 @@ +// GetOAuthAuthorizeRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/authentication/api-reference/authorize diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2AccessTokenRequestV2.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2AccessTokenRequestV2.swift index aa59b87e..e2475dc6 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2AccessTokenRequestV2.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2AccessTokenRequestV2.swift @@ -1,3 +1,8 @@ +// PostOAuth2AccessTokenRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class PostOAuth2AccessTokenRequestV2: TwitterAPIRequest { diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2InvalidateTokenRequestV1.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2InvalidateTokenRequestV1.swift index 6d2cbb06..b94ab6de 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2InvalidateTokenRequestV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2InvalidateTokenRequestV1.swift @@ -1,3 +1,8 @@ +// PostOAuth2InvalidateTokenRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/authentication/api-reference/invalidate_bearer_token diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RefreshTokenRequestV2.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RefreshTokenRequestV2.swift index 8b56a6b9..b5e2536d 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RefreshTokenRequestV2.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RefreshTokenRequestV2.swift @@ -1,3 +1,8 @@ +// PostOAuth2RefreshTokenRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/authentication/oauth-2-0/user-access-token @@ -20,7 +25,7 @@ open class PostOAuth2RefreshTokenRequestV2: TwitterAPIRequest { params["refresh_token"] = refreshToken params["grant_type"] = grantType - clientID.map { p["client_id"] = $0 } + clientID.map { params["client_id"] = $0 } return params } diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RevokeTokenRequestV2.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RevokeTokenRequestV2.swift index c5d2cb89..c0f251e2 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RevokeTokenRequestV2.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2RevokeTokenRequestV2.swift @@ -1,3 +1,8 @@ +// PostOAuth2RevokeTokenRequestV2.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/authentication/oauth-2-0/user-access-token @@ -22,8 +27,8 @@ open class PostOAuth2RevokeTokenRequestV2: TwitterAPIRequest { open var parameters: [String: Any] { var params = [String: String]() params["token"] = token - tokenTypeHint.map { p["token_type_hint"] = $0 } - clientID.map { p["client_id"] = $0 } + tokenTypeHint.map { params["token_type_hint"] = $0 } + clientID.map { params["client_id"] = $0 } return params } diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2TokenRequestV1.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2TokenRequestV1.swift index e043a9ff..fd008256 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2TokenRequestV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuth2TokenRequestV1.swift @@ -1,3 +1,8 @@ +// PostOAuth2TokenRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/authentication/api-reference/token diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthAccessTokenRequestV1.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthAccessTokenRequestV1.swift index d04c09cb..37e1f31f 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthAccessTokenRequestV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthAccessTokenRequestV1.swift @@ -1,3 +1,8 @@ +// PostOAuthAccessTokenRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/authentication/api-reference/access_token diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthInvalidateTokenRequestV1.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthInvalidateTokenRequestV1.swift index 2d1b3dcc..3bf2efa3 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthInvalidateTokenRequestV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthInvalidateTokenRequestV1.swift @@ -1,3 +1,8 @@ +// PostOAuthInvalidateTokenRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/authentication/api-reference/invalidate_access_token diff --git a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthRequestTokenRequestV1.swift b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthRequestTokenRequestV1.swift index 65b204c2..5e338b0e 100644 --- a/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthRequestTokenRequestV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/Requests/PostOAuthRequestTokenRequestV1.swift @@ -1,3 +1,8 @@ +// PostOAuthRequestTokenRequestV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/authentication/api-reference/request_token diff --git a/Sources/TwitterAPIKit/AuthAPI/TwitterAuthAPI.swift b/Sources/TwitterAPIKit/AuthAPI/TwitterAuthAPI.swift index 0689e6f6..9dea40b4 100644 --- a/Sources/TwitterAPIKit/AuthAPI/TwitterAuthAPI.swift +++ b/Sources/TwitterAPIKit/AuthAPI/TwitterAuthAPI.swift @@ -1,3 +1,8 @@ +// TwitterAuthAPI.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + open class TwitterAuthAPI { public let oauth10a: OAuth10aAPI public let oauth20: OAuth20API diff --git a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift index d6fdd442..ea9b9b52 100644 --- a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift +++ b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift @@ -1,3 +1,8 @@ +// TwitterOAuth2AccessToken.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /* ex @@ -46,8 +51,8 @@ public struct TwitterOAuth2AccessToken { } } -extension TwitterOAuth2AccessToken { - public static func fromResponse(data: Data) throws -> Self { +public extension TwitterOAuth2AccessToken { + static func fromResponse(data: Data) throws -> Self { do { guard let token = try TwitterOAuth2AccessToken(jsonData: data) else { throw TwitterAPIKitError.responseSerializeFailed( diff --git a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift index cea6cef3..d9286783 100644 --- a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift +++ b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift @@ -1,3 +1,8 @@ +// TwitterOAuth2BearerToken.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation public struct TwitterOAuth2BearerToken { diff --git a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift index 3be2afc9..eb45a2f2 100644 --- a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift @@ -1,3 +1,8 @@ +// TwitterOAuthAccessTokenV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation public struct TwitterOAuthAccessTokenV1 { diff --git a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift index 78d9db4f..c03c79f9 100644 --- a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift @@ -1,3 +1,8 @@ +// TwitterOAuthTokenV1.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation public struct TwitterOAuthTokenV1 { diff --git a/Sources/TwitterAPIKit/Extensions/Concurrency.swift b/Sources/TwitterAPIKit/Extensions/Concurrency.swift index b4775877..3d5c30fe 100644 --- a/Sources/TwitterAPIKit/Extensions/Concurrency.swift +++ b/Sources/TwitterAPIKit/Extensions/Concurrency.swift @@ -1,4 +1,7 @@ -// swift-format-ignore-file +// Concurrency.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. import Foundation @@ -45,7 +48,10 @@ import Foundation } } - func responseDecodable(type: T.Type, decoder _: JSONDecoder = TwitterAPIClient.defaultJSONDecoder) async -> TwitterAPIResponse { + func responseDecodable( + type: T.Type, + decoder _: JSONDecoder = TwitterAPIClient.defaultJSONDecoder + ) async -> TwitterAPIResponse { return await withTaskCancellationHandler( operation: { await withCheckedContinuation { c in @@ -99,7 +105,10 @@ import Foundation @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public extension TwitterAPIClient { - func refreshOAuth20Token(type: TwitterAuthenticationMethod.OAuth20WithPKCEClientType, forceRefresh: Bool = false) async throws -> RefreshOAuth20TokenResultValue { + func refreshOAuth20Token( + type: TwitterAuthenticationMethod.OAuth20WithPKCEClientType, + forceRefresh: Bool = false + ) async throws -> RefreshOAuth20TokenResultValue { return try await withCheckedThrowingContinuation { c in refreshOAuth20Token(type: type, forceRefresh: forceRefresh) { result in c.resume(with: result) diff --git a/Sources/TwitterAPIKit/Extensions/Data.swift b/Sources/TwitterAPIKit/Extensions/Data.swift index 21434aeb..f4387b2f 100644 --- a/Sources/TwitterAPIKit/Extensions/Data.swift +++ b/Sources/TwitterAPIKit/Extensions/Data.swift @@ -1,3 +1,8 @@ +// Data.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation extension Data { diff --git a/Sources/TwitterAPIKit/Extensions/Date.swift b/Sources/TwitterAPIKit/Extensions/Date.swift index 0706e71f..72f1641a 100644 --- a/Sources/TwitterAPIKit/Extensions/Date.swift +++ b/Sources/TwitterAPIKit/Extensions/Date.swift @@ -1,3 +1,8 @@ +// Date.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation private let formatter = ISO8601DateFormatter() diff --git a/Sources/TwitterAPIKit/Extensions/Dictionary.swift b/Sources/TwitterAPIKit/Extensions/Dictionary.swift index df2290e4..f50eb42a 100644 --- a/Sources/TwitterAPIKit/Extensions/Dictionary.swift +++ b/Sources/TwitterAPIKit/Extensions/Dictionary.swift @@ -1,3 +1,8 @@ +// Dictionary.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation extension Dictionary { diff --git a/Sources/TwitterAPIKit/Extensions/DispatchQueue.swift b/Sources/TwitterAPIKit/Extensions/DispatchQueue.swift index 5c497942..d7f8b5ac 100644 --- a/Sources/TwitterAPIKit/Extensions/DispatchQueue.swift +++ b/Sources/TwitterAPIKit/Extensions/DispatchQueue.swift @@ -1,3 +1,8 @@ +// DispatchQueue.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation extension DispatchQueue { diff --git a/Sources/TwitterAPIKit/Extensions/HMAC.swift b/Sources/TwitterAPIKit/Extensions/HMAC.swift index 2c2f55cc..07e37a9a 100644 --- a/Sources/TwitterAPIKit/Extensions/HMAC.swift +++ b/Sources/TwitterAPIKit/Extensions/HMAC.swift @@ -1,3 +1,8 @@ +// HMAC.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation #if canImport(CommonCrypto) diff --git a/Sources/TwitterAPIKit/Extensions/Result.swift b/Sources/TwitterAPIKit/Extensions/Result.swift index 3a61e4a3..74879a87 100644 --- a/Sources/TwitterAPIKit/Extensions/Result.swift +++ b/Sources/TwitterAPIKit/Extensions/Result.swift @@ -1,3 +1,8 @@ +// Result.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation extension Result where Failure == TwitterAPIKitError { diff --git a/Sources/TwitterAPIKit/Extensions/String.swift b/Sources/TwitterAPIKit/Extensions/String.swift index 3c38f00c..9b516b14 100644 --- a/Sources/TwitterAPIKit/Extensions/String.swift +++ b/Sources/TwitterAPIKit/Extensions/String.swift @@ -1,3 +1,8 @@ +// String.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation extension String { diff --git a/Sources/TwitterAPIKit/OAuthHelper.swift b/Sources/TwitterAPIKit/OAuthHelper.swift index 669ec119..624c8eae 100644 --- a/Sources/TwitterAPIKit/OAuthHelper.swift +++ b/Sources/TwitterAPIKit/OAuthHelper.swift @@ -1,3 +1,8 @@ +// OAuthHelper.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation private let oauthVersion = "1.0" @@ -21,7 +26,7 @@ func authorizationHeader( authorizationParameters["oauth_timestamp"] = oauthTimestamp ?? String(Int(Date().timeIntervalSince1970)) authorizationParameters["oauth_nonce"] = oauthNonce ?? UUID().uuidString - if let oauthToken = oauthToken { + if let oauthToken { authorizationParameters["oauth_token"] = oauthToken } diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPIFailedTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPIFailedTask.swift index f7e82753..45096327 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPIFailedTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPIFailedTask.swift @@ -1,3 +1,8 @@ +// TwitterAPIFailedTask.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation public struct TwitterAPIFailedTask: TwitterAPISessionJSONTask, TwitterAPISessionStreamTask { @@ -15,7 +20,7 @@ public struct TwitterAPIFailedTask: TwitterAPISessionJSONTask, TwitterAPISession public func responseData( queue: DispatchQueue, _ block: @escaping (TwitterAPIResponse) -> Void - ) -> TwitterAPIFailedTask { + ) -> Self { queue.async { block( TwitterAPIResponse( @@ -33,7 +38,7 @@ public struct TwitterAPIFailedTask: TwitterAPISessionJSONTask, TwitterAPISession @discardableResult public func responseData( _ block: @escaping (TwitterAPIResponse) -> Void - ) -> TwitterAPIFailedTask { + ) -> Self { return responseData(queue: .main, block) } @@ -41,7 +46,7 @@ public struct TwitterAPIFailedTask: TwitterAPISessionJSONTask, TwitterAPISession public func responseObject( queue: DispatchQueue, _ block: @escaping (TwitterAPIResponse) -> Void - ) -> TwitterAPIFailedTask { + ) -> Self { queue.async { block( TwitterAPIResponse( @@ -59,7 +64,7 @@ public struct TwitterAPIFailedTask: TwitterAPISessionJSONTask, TwitterAPISession @discardableResult public func responseObject( _ block: @escaping (TwitterAPIResponse) -> Void - ) -> TwitterAPIFailedTask { + ) -> Self { return responseObject(queue: .main, block) } @@ -69,7 +74,7 @@ public struct TwitterAPIFailedTask: TwitterAPISessionJSONTask, TwitterAPISession decoder _: JSONDecoder, queue: DispatchQueue, _ block: @escaping (TwitterAPIResponse) -> Void - ) -> TwitterAPIFailedTask where T: Decodable { + ) -> Self where T: Decodable { queue.async { block( TwitterAPIResponse( @@ -89,7 +94,7 @@ public struct TwitterAPIFailedTask: TwitterAPISessionJSONTask, TwitterAPISession type: T.Type, decoder: JSONDecoder, _ block: @escaping (TwitterAPIResponse) -> Void - ) -> TwitterAPIFailedTask where T: Decodable { + ) -> Self where T: Decodable { return responseDecodable( type: type, decoder: decoder, @@ -103,7 +108,7 @@ public struct TwitterAPIFailedTask: TwitterAPISessionJSONTask, TwitterAPISession type: T.Type, queue: DispatchQueue, _ block: @escaping (TwitterAPIResponse) -> Void - ) -> TwitterAPIFailedTask where T: Decodable { + ) -> Self where T: Decodable { return responseDecodable( type: type, decoder: TwitterAPIClient.defaultJSONDecoder, @@ -116,7 +121,7 @@ public struct TwitterAPIFailedTask: TwitterAPISessionJSONTask, TwitterAPISession public func responseDecodable( type: T.Type, _ block: @escaping (TwitterAPIResponse) -> Void - ) -> TwitterAPIFailedTask where T: Decodable { + ) -> Self where T: Decodable { return responseDecodable( type: type, decoder: TwitterAPIClient.defaultJSONDecoder, @@ -129,7 +134,7 @@ public struct TwitterAPIFailedTask: TwitterAPISessionJSONTask, TwitterAPISession public func streamResponse( queue: DispatchQueue, _ block: @escaping (TwitterAPIResponse) -> Void - ) -> TwitterAPIFailedTask { + ) -> Self { queue.async { let response = TwitterAPIResponse( request: nil, @@ -146,7 +151,7 @@ public struct TwitterAPIFailedTask: TwitterAPISessionJSONTask, TwitterAPISession @discardableResult public func streamResponse( _ block: @escaping (TwitterAPIResponse) -> Void - ) -> TwitterAPIFailedTask { + ) -> Self { return streamResponse(queue: .main, block) } diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDataTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDataTask.swift index 55400fb5..c85a6c3d 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDataTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDataTask.swift @@ -1,3 +1,8 @@ +// TwitterAPISessionDataTask.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation public protocol TwitterAPISessionDataTask: TwitterAPISessionTask { diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedJSONTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedJSONTask.swift index 022b08fa..0a741e39 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedJSONTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedJSONTask.swift @@ -1,3 +1,8 @@ +// TwitterAPISessionDelegatedJSONTask.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation internal protocol TwitterAPISessionDelegatedJSONTaskDelegate: AnyObject { @@ -52,17 +57,17 @@ public class TwitterAPISessionDelegatedJSONTask: TwitterAPISessionJSONTask, Twit } } - private func append(chunk: Data) { + internal func append(chunk: Data) { dataChunk.append(chunk) } - private func complete(error: Error?) { + internal func complete(error: Error?) { self.error = error completed = true group.notify(queue: taskQueue) { [weak self] in guard let self else { return } - self.delegate?.didFinishQueueInJsonTask(task: self) + delegate?.didFinishQueueInJsonTask(task: self) } taskQueue.resume() } @@ -123,7 +128,7 @@ public class TwitterAPISessionDelegatedJSONTask: TwitterAPISessionJSONTask, Twit queue.async { [weak self] in guard let self else { return } block(response) - self.group.leave() + group.leave() } } diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift index 530dc03c..96a84e1c 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift @@ -1,3 +1,8 @@ +// TwitterAPISessionDelegatedStreamTask.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation private let chunkSeparator = "\r\n".data(using: .utf8)! @@ -40,10 +45,10 @@ public class TwitterAPISessionDelegatedStreamTask: TwitterAPISessionStreamTask, func append(chunk: Data) { taskQueue.async { [weak self] in - guard let self = self else { return } + guard let self else { return } - guard let httpResponse = self.httpResponse else { - self.notify(result: .failure(.responseFailed(reason: .invalidResponse(error: nil))), rateLimit: nil) + guard let httpResponse else { + notify(result: .failure(.responseFailed(reason: .invalidResponse(error: nil))), rateLimit: nil) return } @@ -51,7 +56,7 @@ public class TwitterAPISessionDelegatedStreamTask: TwitterAPISessionStreamTask, guard httpResponse.statusCode < 300 else { let error = TwitterAPIErrorResponse(data: chunk) - self.notify( + notify( result: .failure( .responseFailed( reason: .unacceptableStatusCode( @@ -59,23 +64,24 @@ public class TwitterAPISessionDelegatedStreamTask: TwitterAPISessionStreamTask, error: error, rateLimit: rateLimit ) - )), rateLimit: rateLimit + ) + ), rateLimit: rateLimit ) return } for data in chunk.split(separator: chunkSeparator) { - self.notify(result: .success(data), rateLimit: rateLimit) + notify(result: .success(data), rateLimit: rateLimit) } } } func complete(error: Error?) { - if let error = error { + if let error { taskQueue.async { [weak self] in - guard let self = self else { return } - self.notify(result: .failure(.responseFailed(reason: .invalidResponse(error: error))), rateLimit: nil) + guard let self else { return } + notify(result: .failure(.responseFailed(reason: .invalidResponse(error: error))), rateLimit: nil) } } } diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionJSONTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionJSONTask.swift index 41dce573..cf098b0a 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionJSONTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionJSONTask.swift @@ -1,3 +1,8 @@ +// TwitterAPISessionJSONTask.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation public protocol TwitterAPISessionJSONTask: TwitterAPISessionDataTask { diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift index be318033..b7ea8fc4 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift @@ -1,3 +1,8 @@ +// TwitterAPISessionSpecializedTask.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation protocol TwitterAPISessionSpecializedTask_: TwitterAPISessionDataTask { diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionStreamTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionStreamTask.swift index dff4598f..58184676 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionStreamTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionStreamTask.swift @@ -1,3 +1,8 @@ +// TwitterAPISessionStreamTask.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation public protocol TwitterAPISessionStreamTask: TwitterAPISessionTask { diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift index dfaa0564..89a85247 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift @@ -1,3 +1,8 @@ +// TwitterAPISessionTask.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation public protocol TwitterAPISessionTask { diff --git a/Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift b/Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift index a806a5a3..42f4f6ea 100644 --- a/Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift +++ b/Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift @@ -1,5 +1,7 @@ -// Generated using Sourcery 1.9.0 — https://github.com/krzysztofzablocki/Sourcery -// DO NOT EDIT +// TwitterAPI+Flat.generated.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. // swift-format-ignore-file import Foundation @@ -11,7 +13,9 @@ public extension TwitterAuthAPI { return oauth10a.postOAuthRequestTokenData(request) } - func postOAuthRequestToken(_ request: PostOAuthRequestTokenRequestV1) -> TwitterAPISessionSpecializedTask { + func postOAuthRequestToken(_ request: PostOAuthRequestTokenRequestV1) + -> TwitterAPISessionSpecializedTask + { return oauth10a.postOAuthRequestToken(request) } @@ -27,7 +31,9 @@ public extension TwitterAuthAPI { return oauth10a.postOAuthAccessTokenData(request) } - func postOAuthAccessToken(_ request: PostOAuthAccessTokenRequestV1) -> TwitterAPISessionSpecializedTask { + func postOAuthAccessToken(_ request: PostOAuthAccessTokenRequestV1) + -> TwitterAPISessionSpecializedTask + { return oauth10a.postOAuthAccessToken(request) } @@ -41,7 +47,9 @@ public extension TwitterAuthAPI { return oauth20.postOAuth2BearerTokenData(request) } - func postOAuth2BearerToken(_ request: PostOAuth2TokenRequestV1) -> TwitterAPISessionSpecializedTask { + func postOAuth2BearerToken(_ request: PostOAuth2TokenRequestV1) + -> TwitterAPISessionSpecializedTask + { return oauth20.postOAuth2BearerToken(request) } @@ -57,7 +65,9 @@ public extension TwitterAuthAPI { return oauth20.postOAuth2AccessTokenData(request) } - func postOAuth2AccessToken(_ request: PostOAuth2AccessTokenRequestV2) -> TwitterAPISessionSpecializedTask { + func postOAuth2AccessToken(_ request: PostOAuth2AccessTokenRequestV2) + -> TwitterAPISessionSpecializedTask + { return oauth20.postOAuth2AccessToken(request) } @@ -65,7 +75,9 @@ public extension TwitterAuthAPI { return oauth20.postOAuth2RefreshTokenData(request) } - func postOAuth2RefreshToken(_ request: PostOAuth2RefreshTokenRequestV2) -> TwitterAPISessionSpecializedTask { + func postOAuth2RefreshToken(_ request: PostOAuth2RefreshTokenRequestV2) + -> TwitterAPISessionSpecializedTask + { return oauth20.postOAuth2RefreshToken(request) } @@ -213,7 +225,9 @@ public extension TwitterAPIv1 { return directMessage.postDirectMessageMarkRead(request) } - func postDirectMessageTypingIndicator(_ request: PostDirectMessagesIndicateTypingRequestV1) -> TwitterAPISessionDataTask { + func postDirectMessageTypingIndicator(_ request: PostDirectMessagesIndicateTypingRequestV1) + -> TwitterAPISessionDataTask + { return directMessage.postDirectMessageTypingIndicator(request) } @@ -393,7 +407,10 @@ public extension TwitterAPIv1 { return media.uploadMediaAppend(request) } - func uploadMediaAppendSplitChunks(_ request: UploadMediaAppendRequestV1, maxBytes: Int = 5_242_880) -> [TwitterAPISessionSpecializedTask] { + func uploadMediaAppendSplitChunks(_ request: UploadMediaAppendRequestV1, + maxBytes: Int = 5_242_880) -> [TwitterAPISessionSpecializedTask< + String /* mediaID */ + >] { return media.uploadMediaAppendSplitChunks(request, maxBytes: maxBytes) } @@ -401,15 +418,29 @@ public extension TwitterAPIv1 { return media.uploadMediaFinalize(request) } - func uploadMedia(_ parameters: UploadMediaRequestParameters, completionHandler: @escaping (TwitterAPIResponse) -> Void) { + func uploadMedia( + _ parameters: UploadMediaRequestParameters, + completionHandler: @escaping (TwitterAPIResponse) -> Void + ) { media.uploadMedia(parameters, completionHandler: completionHandler) } - func waitMediaProcessing(mediaID: String, initialWaitSec: Int, completionHandler: @escaping (TwitterAPIResponse) -> Void) { - media.waitMediaProcessing(mediaID: mediaID, initialWaitSec: initialWaitSec, completionHandler: completionHandler) + func waitMediaProcessing( + mediaID: String, + initialWaitSec: Int, + completionHandler: @escaping (TwitterAPIResponse) -> Void + ) { + media.waitMediaProcessing( + mediaID: mediaID, + initialWaitSec: initialWaitSec, + completionHandler: completionHandler + ) } - func waitMediaProcessing(mediaID: String, completionHandler: @escaping (TwitterAPIResponse) -> Void) { + func waitMediaProcessing( + mediaID: String, + completionHandler: @escaping (TwitterAPIResponse) -> Void + ) { media.waitMediaProcessing(mediaID: mediaID, completionHandler: completionHandler) } @@ -769,7 +800,9 @@ public extension TwitterAPIv2 { return timeline.getUserMensions(request) } - func getUserReverseChronological(_ request: GetUsersTimelinesReverseChronologicalRequestV2) -> TwitterAPISessionJSONTask { + func getUserReverseChronological(_ request: GetUsersTimelinesReverseChronologicalRequestV2) + -> TwitterAPISessionJSONTask + { return timeline.getUserReverseChronological(request) } @@ -837,7 +870,9 @@ public extension TwitterAPIv2 { return dm.getDmEvents(request) } - func getDmEventsWithParticipantId(_ request: GetDmConversationsWithParticipantIdDmEventsRequestV2) -> TwitterAPISessionJSONTask { + func getDmEventsWithParticipantId(_ request: GetDmConversationsWithParticipantIdDmEventsRequestV2) + -> TwitterAPISessionJSONTask + { return dm.getDmEventsWithParticipantId(request) } diff --git a/Sources/TwitterAPIKit/TwitterAPIClient.swift b/Sources/TwitterAPIKit/TwitterAPIClient.swift index 827abd1a..43dd1679 100644 --- a/Sources/TwitterAPIKit/TwitterAPIClient.swift +++ b/Sources/TwitterAPIKit/TwitterAPIClient.swift @@ -1,3 +1,8 @@ +// TwitterAPIClient.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class TwitterAPIClient { @@ -27,7 +32,8 @@ open class TwitterAPIClient { return date } throw DecodingError.dataCorrupted( - .init(codingPath: decoder.codingPath, debugDescription: "Unexpected date format: \(dateStr)")) + .init(codingPath: decoder.codingPath, debugDescription: "Unexpected date format: \(dateStr)") + ) } return decoder @@ -74,7 +80,8 @@ open class TwitterAPIClient { consumerSecret: consumerSecret, oauthToken: oauthToken, oauthTokenSecret: oauthTokenSecret - )), + ) + ), environment: .init() ) } @@ -119,7 +126,7 @@ public extension TwitterAPIClient { .init(refreshToken: refreshToken, clientID: token.clientID) ) .responseObject { [weak self] response in - guard let self = self else { return } + guard let self else { return } switch response.result { case let .success(refreshedToken): var token = token @@ -148,6 +155,7 @@ open class TwitterAPIBase { public extension TwitterAPIClient { // swift-format-ignore - static let didRefreshOAuth20Token = Notification.Name(rawValue: "TwitterAPIKit.TwitterAPIClient.Notification.didRefreshOAuth20Token") + static let didRefreshOAuth20Token = Notification + .Name(rawValue: "TwitterAPIKit.TwitterAPIClient.Notification.didRefreshOAuth20Token") static let tokenUserInfoKey = "TwitterAPIKit.TwitterAPIClient.UserInfoKey.tokenUser" } diff --git a/Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift b/Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift index b8ee6093..ce1a2d83 100644 --- a/Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift +++ b/Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift @@ -1,3 +1,8 @@ +// TwitterAPIErrorResponse.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation public enum TwitterAPIErrorResponse: Equatable { @@ -94,9 +99,9 @@ public struct TwitterAPIErrorResponseV1 { return nil } - let tErrors: [TwitterAPIErrorResponseV1] = errors.compactMap { error in + let tErrors: [Self] = errors.compactMap { error in guard let message = error["message"] as? String, let code = error["code"] as? Int else { return nil } - return TwitterAPIErrorResponseV1(message: message, code: code, errors: []) + return Self(message: message, code: code, errors: []) } guard !tErrors.isEmpty else { @@ -109,7 +114,7 @@ public struct TwitterAPIErrorResponseV1 { } public func contains(code: Int) -> Bool { - return code == self.code || errors.contains(where: { $0.code == code }) + return code == self.code || errors.contains { $0.code == code } } } diff --git a/Sources/TwitterAPIKit/TwitterAPIKit.swift b/Sources/TwitterAPIKit/TwitterAPIKit.swift index b8f763dd..df794f93 100644 --- a/Sources/TwitterAPIKit/TwitterAPIKit.swift +++ b/Sources/TwitterAPIKit/TwitterAPIKit.swift @@ -1,3 +1,8 @@ +// TwitterAPIKit.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation #if canImport(FoundationNetworking) @@ -16,13 +21,15 @@ public struct TwitterAPIEnvironment { public let apiURL: URL public let uploadURL: URL + // swiftlint:disable force_unwrapping public init( - twitterURL: URL? = URL(string: "https://twitter.com"), - apiURL: URL? = URL(string: "https://api.twitter.com"), - uploadURL: URL? = URL(string: "https://upload.twitter.com") + twitterURL: URL = URL(string: "https://twitter.com")!, + apiURL: URL = URL(string: "https://api.twitter.com")!, + uploadURL: URL = URL(string: "https://upload.twitter.com")! ) { self.twitterURL = twitterURL self.apiURL = apiURL self.uploadURL = uploadURL } + // swiftlint:disable force_unwrapping } diff --git a/Sources/TwitterAPIKit/TwitterAPIKitError.swift b/Sources/TwitterAPIKit/TwitterAPIKitError.swift index 4b993736..c4815ca9 100644 --- a/Sources/TwitterAPIKit/TwitterAPIKitError.swift +++ b/Sources/TwitterAPIKit/TwitterAPIKitError.swift @@ -1,3 +1,8 @@ +// TwitterAPIKitError.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation public enum TwitterAPIKitError: Error { @@ -37,7 +42,7 @@ public enum TwitterAPIKitError: Error { case unkonwn(error: Error) public init(error: Error) { - if let error = error as? TwitterAPIKitError { + if let error = error as? Self { self = error } else { self = .unkonwn(error: error) @@ -169,7 +174,7 @@ public extension TwitterAPIKitError.ResponseFailureReason { var localizedDescription: String { switch self { case let .invalidResponse(error: error): - if let error = error { + if let error { return "Response is invalid: \(error.localizedDescription)" } return "Response is invalid" @@ -182,7 +187,7 @@ public extension TwitterAPIKitError.ResponseFailureReason { switch self { case let .invalidResponse(error: error): return error - case .unacceptableStatusCode(statusCode: _, error: _, rateLimit: _): + case .unacceptableStatusCode: return nil } } diff --git a/Sources/TwitterAPIKit/TwitterAPIRequest.swift b/Sources/TwitterAPIKit/TwitterAPIRequest.swift index e4de692e..44ff754c 100644 --- a/Sources/TwitterAPIKit/TwitterAPIRequest.swift +++ b/Sources/TwitterAPIKit/TwitterAPIRequest.swift @@ -1,3 +1,8 @@ +// TwitterAPIRequest.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation public enum HTTPMethod: String { @@ -109,7 +114,7 @@ extension TwitterAPIRequest { if !queryParameters.isEmpty { urlComponent.percentEncodedQueryItems = queryParameters - .sorted(by: { a, b in a.key < b.key }) + .sorted { a, b in a.key < b.key } .map { .init(name: $0.urlEncodedString, value: "\($1)".urlEncodedString) } } @@ -133,7 +138,8 @@ extension TwitterAPIRequest { parameter: bodyParameters, cause: "Parameter must be specified in `MultipartFormDataPart` for `BodyContentType.multipartFormData`." - )) + ) + ) } let boundary = "TwitterAPIKit-\(UUID().uuidString)" @@ -141,7 +147,7 @@ extension TwitterAPIRequest { request.setValue(contentType, forHTTPHeaderField: "Content-Type") request.httpBody = try multipartFormData( - boundary: boundary, parts: parts.sorted(by: { $0.name < $1.name }) + boundary: boundary, parts: parts.sorted { $0.name < $1.name } ) request.setValue( String(request.httpBody?.count ?? 0), forHTTPHeaderField: "Content-Length" diff --git a/Sources/TwitterAPIKit/TwitterAPIResponse.swift b/Sources/TwitterAPIKit/TwitterAPIResponse.swift index e840636a..951e46f7 100644 --- a/Sources/TwitterAPIKit/TwitterAPIResponse.swift +++ b/Sources/TwitterAPIKit/TwitterAPIResponse.swift @@ -1,3 +1,8 @@ +// TwitterAPIResponse.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation public struct TwitterAPIResponse { diff --git a/Sources/TwitterAPIKit/TwitterAPISession.swift b/Sources/TwitterAPIKit/TwitterAPISession.swift index 7009144f..b0dadff1 100644 --- a/Sources/TwitterAPIKit/TwitterAPISession.swift +++ b/Sources/TwitterAPIKit/TwitterAPISession.swift @@ -1,3 +1,8 @@ +// TwitterAPISession.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation open class TwitterAPISession { diff --git a/Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift b/Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift index cab18b0b..9ab35fe4 100644 --- a/Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift +++ b/Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift @@ -1,3 +1,8 @@ +// TwitterAPISessionDelegate.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation protocol TwitterAPISessionDelegatedTask { diff --git a/Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift b/Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift index 0a592eba..67cce7ee 100644 --- a/Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift +++ b/Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift @@ -1,3 +1,8 @@ +// TwitterAuthenticationMethod.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation public enum TwitterAuthenticationMethod { @@ -58,7 +63,8 @@ public extension TwitterAuthenticationMethod { public var createdAt: Date /// Estimates the expiration time of a token based on "expiresIn" and "createdAt". - /// Since the server response does not include the creation time of the token, it contains a margin of error of a few seconds. + /// Since the server response does not include the creation time of the token, it contains a margin of error of + /// a few seconds. public var expiresAt: Date { return createdAt.addingTimeInterval(TimeInterval(expiresIn)) } diff --git a/Sources/TwitterAPIKit/TwitterRateLimit.swift b/Sources/TwitterAPIKit/TwitterRateLimit.swift index 6dc161c3..de4bc30b 100644 --- a/Sources/TwitterAPIKit/TwitterRateLimit.swift +++ b/Sources/TwitterAPIKit/TwitterRateLimit.swift @@ -1,3 +1,8 @@ +// TwitterRateLimit.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /// https://developer.twitter.com/en/docs/rate-limits diff --git a/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountSettingsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountSettingsRequestV1Tests.swift index 84f917e5..9d548618 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountSettingsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountSettingsRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetAccountSettingsRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountVerifyCredentialsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountVerifyCredentialsRequestV1Tests.swift index 24075270..397f5229 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountVerifyCredentialsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Account/GetAccountVerifyCredentialsRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetAccountVerifyCredentialsRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountRemoveProfileBannerRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountRemoveProfileBannerRequestV1Tests.swift index b2323525..064af89d 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountRemoveProfileBannerRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountRemoveProfileBannerRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostAccountRemoveProfileBannerRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountSettingsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountSettingsRequestV1Tests.swift index c0d67e5e..1092e7c3 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountSettingsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountSettingsRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostAccountSettingsRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileBannerRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileBannerRequestV1Tests.swift index 1ba74534..70e68cbc 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileBannerRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileBannerRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostAccountUpdateProfileBannerRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileImageRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileImageRequestV1Tests.swift index 072fa9c2..3246859c 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileImageRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileImageRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostAccountUpdateProfileImageRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileRequestV1Tests.swift index 594c61fc..91964dc3 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Account/PostAccountUpdateProfileRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostAccountUpdateProfileRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Application/GetApplicationRateLimitStatusRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Application/GetApplicationRateLimitStatusRequestV1Tests.swift index 49bdf837..b7b7175a 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Application/GetApplicationRateLimitStatusRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Application/GetApplicationRateLimitStatusRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetApplicationRateLimitStatusRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksIDsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksIDsRequestV1Tests.swift index f74685ed..b7cb840d 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksIDsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksIDsRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetBlocksIDsRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksListRequestV1Tests.swift index b3ccde60..c41a50aa 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetBlocksListRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetBlocksListRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersIDsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersIDsRequestV1Tests.swift index 951aadae..4bdeca18 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersIDsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersIDsRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetMutesUsersIDsRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersListRequestV1Tests.swift index 782172ca..8cc95660 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/GetMutesUsersListRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetMutesUsersListRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksCreateRequestV1Tests.swift index 0b1cd6ff..e1a99b17 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksCreateRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostBlocksCreateRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksDestroyRequestV1Tests.swift index 212160d8..93dbe9b4 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostBlocksDestroyRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostBlocksDestroyRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersCreateRequestV1Tests.swift index 1327cd8e..1de317b9 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersCreateRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostMutesUsersCreateRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersDestroyRequestV1Tests.swift index 0cdc2b30..e51b6e9d 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostMutesUsersDestroyRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostMutesUsersDestroyRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostUsersReportSpamRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostUsersReportSpamRequestV1Tests.swift index 97a92861..a04ae242 100644 --- a/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostUsersReportSpamRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/BlockAndMute/PostUsersReportSpamRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostUsersReportSpamRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsEntriesRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsEntriesRequestV1Tests.swift index 1d6554b7..a56b30fc 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsEntriesRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsEntriesRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetCollectionsEntriesRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsListRequestV1Tests.swift index 1238f114..8fb535a6 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsListRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetCollectionsListRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsShowRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsShowRequestV1Tests.swift index beaf1c99..54d72ad5 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsShowRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/GetCollectionsShowRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetCollectionsShowRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsCreateRequestV1Tests.swift index da53b1f7..ced19b31 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsCreateRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostCollectionsCreateRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsDestroyRequestV1Tests.swift index 4028e84b..742dd1a9 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsDestroyRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostCollectionsDestroyRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesAddRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesAddRequestV1Tests.swift index 4e5d3286..fad78d34 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesAddRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesAddRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostCollectionsEntriesAddRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesCurateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesCurateRequestV1Tests.swift index 841185e6..e8046b7c 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesCurateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesCurateRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostCollectionsEntriesCurateRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesMoveRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesMoveRequestV1Tests.swift index 5dd24ec6..17bc88de 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesMoveRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesMoveRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostCollectionsEntriesMoveRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesRemoveRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesRemoveRequestV1Tests.swift index f74222a4..44a0c335 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesRemoveRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsEntriesRemoveRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostCollectionsEntriesRemoveRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsUpdateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsUpdateRequestV1Tests.swift index 222eab5b..459a8fa1 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsUpdateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Collection/PostCollectionsUpdateRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostCollectionsUpdateRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/DeleteDirectMessageRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/DeleteDirectMessageRequestV1Tests.swift index f2596f5f..b9441134 100644 --- a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/DeleteDirectMessageRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/DeleteDirectMessageRequestV1Tests.swift @@ -1,3 +1,8 @@ +// DeleteDirectMessageRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageListRequestV1Tests.swift index 2c6ec976..a89bd302 100644 --- a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageListRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetDirectMessageListRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageRequestV1Tests.swift index 49eb02a5..0dfd9876 100644 --- a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/GetDirectMessageRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetDirectMessageRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessageRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessageRequestV1Tests.swift index 6c6f4745..84bbdcee 100644 --- a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessageRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessageRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostDirectMessageRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesIndicateTypingRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesIndicateTypingRequestV1Tests.swift index 7e9f79a9..e68ae9a9 100644 --- a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesIndicateTypingRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesIndicateTypingRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostDirectMessagesIndicateTypingRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesMarkReadRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesMarkReadRequestV1Tests.swift index db4e1ae6..d0031e59 100644 --- a/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesMarkReadRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/DirectMessage/PostDirectMessagesMarkReadRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostDirectMessagesMarkReadRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Favorite/GetFavoritesRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Favorite/GetFavoritesRequestV1Tests.swift index 2fe6c347..87173c21 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Favorite/GetFavoritesRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Favorite/GetFavoritesRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetFavoritesRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Favorite/PostFavoriteRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Favorite/PostFavoriteRequestV1Tests.swift index 20c4f115..f105bf8f 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Favorite/PostFavoriteRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Favorite/PostFavoriteRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostFavoriteRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Favorite/PostUnFavoriteRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Favorite/PostUnFavoriteRequestV1Tests.swift index 99587d1c..90b06a24 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Favorite/PostUnFavoriteRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Favorite/PostUnFavoriteRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostUnFavoriteRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersIDsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersIDsRequestV1Tests.swift index 75995331..171f7313 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersIDsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersIDsRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetFollowersIDsRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersListRequestV1Tests.swift index 28b6684f..d02873b0 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFollowersListRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetFollowersListRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsIDsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsIDsRequestV1Tests.swift index 010ecfcf..44b4b4f1 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsIDsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsIDsRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetFriendsIDsRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsListRequestV1Tests.swift index 7e4a70ca..1ea3ae76 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendsListRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetFriendsListRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsIncomingRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsIncomingRequestV1Tests.swift index 315fa997..e9d8d48d 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsIncomingRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsIncomingRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetFriendshipsIncomingRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsLookupRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsLookupRequestV1Tests.swift index d7b05204..3a2d398e 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsLookupRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsLookupRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetFriendshipsLookupRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsNoRetweetsIDsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsNoRetweetsIDsRequestV1Tests.swift index 93d404ba..584fe3c7 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsNoRetweetsIDsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsNoRetweetsIDsRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetFriendshipsNoRetweetsIDsRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsOutgoingRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsOutgoingRequestV1Tests.swift index cd78209d..07bc1bcb 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsOutgoingRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsOutgoingRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetFriendshipsOutgoingRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsShowRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsShowRequestV1Tests.swift index fc41c9bc..2d4aed44 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsShowRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/GetFriendshipsShowRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetFriendshipsShowRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsCreateRequestV1Tests.swift index 1b66f185..b9f0bada 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsCreateRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostFriendshipsCreateRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsDestroyRequestV1Tests.swift index f670e372..9bc7973d 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsDestroyRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostFriendshipsDestroyRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsUpdateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsUpdateRequestV1Tests.swift index 80266827..c6af3cb5 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsUpdateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Friendships/PostFriendshipsUpdateRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostFriendshipsUpdateRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoPlaceIDRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoPlaceIDRequestV1Tests.swift index eaadb6a6..0adf8ec4 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoPlaceIDRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoPlaceIDRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetGeoPlaceIDRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoReverseGeocodeRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoReverseGeocodeRequestV1Tests.swift index 610f5ba3..1f07f756 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoReverseGeocodeRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoReverseGeocodeRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetGeoReverseGeocodeRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoSearchRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoSearchRequestV1Tests.swift index d0ad8fd6..5ceaf9da 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoSearchRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Geo/GetGeoSearchRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetGeoSearchRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Help/GetHelpLanguagesRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Help/GetHelpLanguagesRequestV1Tests.swift index 8c9b86ee..3a86b891 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Help/GetHelpLanguagesRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Help/GetHelpLanguagesRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetHelpLanguagesRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsListRequestV1Tests.swift index c0584b74..12c35b28 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsListRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetListsListRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersRequestV1Tests.swift index b16eb160..b95f4129 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetListsMembersRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersShowRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersShowRequestV1Tests.swift index 2179d1d6..1d2b211f 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersShowRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembersShowRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetListsMembersShowRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembershipsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembershipsRequestV1Tests.swift index a792db8a..fe2194aa 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembershipsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsMembershipsRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetListsMembershipsRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsOwnershipsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsOwnershipsRequestV1Tests.swift index 9f5e5636..9454d194 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsOwnershipsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsOwnershipsRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetListsOwnershipsRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsShowRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsShowRequestV1Tests.swift index 5feb60f3..2c2daa1e 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsShowRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsShowRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetListsShowRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsStatusesRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsStatusesRequestV1Tests.swift index 16325133..74ff7098 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsStatusesRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsStatusesRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetListsStatusesRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersRequestV1Tests.swift index 62e9651d..3d51244d 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetListsSubscribersRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersShowRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersShowRequestV1Tests.swift index 98444db1..01e83caf 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersShowRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscribersShowRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetListsSubscribersShowRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscriptionsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscriptionsRequestV1Tests.swift index ece82aa0..42058fc8 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscriptionsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/GetListsSubscriptionsRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetListsSubscriptionsRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift index 3bc47a64..682e5768 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift @@ -1,3 +1,8 @@ +// ListRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsCreateRequestV1Tests.swift index 201de217..6060b4d1 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsCreateRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostListsCreateRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsDestroyRequestV1Tests.swift index 2a96b712..ff8af238 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsDestroyRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostListsDestroyRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateAllRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateAllRequestV1Tests.swift index 8cb2c288..a902bcd6 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateAllRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateAllRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostListsMembersCreateAllRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateRequestV1Tests.swift index b7ad0b32..33075f87 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersCreateRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostListsMembersCreateRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyAllRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyAllRequestV1Tests.swift index 354975b4..a14a0dce 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyAllRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyAllRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostListsMembersDestroyAllRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyRequestV1Tests.swift index 5eb380fb..fa9b37ff 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsMembersDestroyRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostListsMembersDestroyRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersCreateRequestV1Tests.swift index eda478c2..a8be2b20 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersCreateRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostListsSubscribersCreateRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersDestroyRequestV1Tests.swift index 228afa28..8d3d97c5 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsSubscribersDestroyRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostListsSubscribersDestroyRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/List/PostListsUpdateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/PostListsUpdateRequestV1Tests.swift index 6639b305..c93afeea 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/PostListsUpdateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/PostListsUpdateRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostListsUpdateRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/GetUploadMediaStatusRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/GetUploadMediaStatusRequestV1Tests.swift index 76af47d5..c7b42cb3 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/GetUploadMediaStatusRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/GetUploadMediaStatusRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetUploadMediaStatusRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaMetadataCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaMetadataCreateRequestV1Tests.swift index 7a7f69bd..30039b4c 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaMetadataCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaMetadataCreateRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostMediaMetadataCreateRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesCreateRequestV1Tests.swift index bd9e7f62..f54fcc17 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesCreateRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostMediaSubtitlesCreateRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesDeleteRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesDeleteRequestV1Tests.swift index fc535533..ba4a04ef 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesDeleteRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/PostMediaSubtitlesDeleteRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostMediaSubtitlesDeleteRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaAppendRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaAppendRequestV1Tests.swift index 25813a9a..6328d5f7 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaAppendRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaAppendRequestV1Tests.swift @@ -1,3 +1,8 @@ +// UploadMediaAppendRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaFinalizeRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaFinalizeRequestV1Tests.swift index 89c95183..46e5cdf2 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaFinalizeRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaFinalizeRequestV1Tests.swift @@ -1,3 +1,8 @@ +// UploadMediaFinalizeRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaInitRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaInitRequestV1Tests.swift index 8e219644..2ed319fe 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaInitRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaInitRequestV1Tests.swift @@ -1,3 +1,8 @@ +// UploadMediaInitRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift index ccab9b85..5339e356 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift @@ -1,3 +1,8 @@ +// UploadMediaUtilTests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetersRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetersRequestV1Tests.swift index 82490d08..b91b3e80 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetersRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetersRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetRetweetersRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsOfMeRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsOfMeRequestV1Tests.swift index 1997e58f..3b733fcc 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsOfMeRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsOfMeRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetRetweetsOfMeRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsRequestV1Tests.swift index 3327f3b3..99f53207 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Retweet/GetRetweetsRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetRetweetsRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Retweet/PostRetweetRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Retweet/PostRetweetRequestV1Tests.swift index 27af3d9f..efe4e659 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Retweet/PostRetweetRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Retweet/PostRetweetRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostRetweetRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Retweet/PostUnRetweetRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Retweet/PostUnRetweetRequestV1Tests.swift index d20db2f2..a33cc62c 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Retweet/PostUnRetweetRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Retweet/PostUnRetweetRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostUnRetweetRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Search/GetSavedSearchesListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Search/GetSavedSearchesListRequestV1Tests.swift index 3945fe68..85a92ca7 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Search/GetSavedSearchesListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Search/GetSavedSearchesListRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetSavedSearchesListRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Search/GetSearchTweetsRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Search/GetSearchTweetsRequestV1Tests.swift index 97e92a04..dd5ee9ad 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Search/GetSearchTweetsRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Search/GetSearchTweetsRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetSearchTweetsRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesCreateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesCreateRequestV1Tests.swift index d812c7e9..9aa6b978 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesCreateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesCreateRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostSavedSearchesCreateRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesDestroyRequestV1Tests.swift index 91fcf2f5..5b6acc55 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Search/PostSavedSearchesDestroyRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostSavedSearchesDestroyRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesHomeTimelineRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesHomeTimelineRequestV1Tests.swift index c5a32b28..718a2b32 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesHomeTimelineRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesHomeTimelineRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetStatusesHomeTimelineRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesMentionsTimelineRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesMentionsTimelineRequestV1Tests.swift index a13e2543..08b25535 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesMentionsTimelineRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesMentionsTimelineRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetStatusesMentionsTimelineRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesUserTimelineRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesUserTimelineRequestV1Tests.swift index 0cc4e757..1785906a 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesUserTimelineRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Timelines/GetStatusesUserTimelineRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetStatusesUserTimelineRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsAvailableRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsAvailableRequestV1Tests.swift index 489f118f..5f9b99ec 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsAvailableRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsAvailableRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetTrendsAvailableRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsClosestRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsClosestRequestV1Tests.swift index f61ac6ed..e100e7ac 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsClosestRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsClosestRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetTrendsClosestRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsPlaceRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsPlaceRequestV1Tests.swift index ee1937f8..a640cebf 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsPlaceRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Trend/GetTrendsPlaceRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetTrendsPlaceRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesLookupRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesLookupRequestV1Tests.swift index 0f96d3ee..782cb5e2 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesLookupRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesLookupRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetStatusesLookupRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesShowRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesShowRequestV1Tests.swift index 665fa8db..8b48cfcb 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesShowRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Tweet/GetStatusesShowRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetStatusesShowRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesDestroyRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesDestroyRequestV1Tests.swift index f66007f9..556dfb2d 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesDestroyRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesDestroyRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostStatusesDestroyRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesUpdateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesUpdateRequestV1Tests.swift index d5c27b99..08706240 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesUpdateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Tweet/PostStatusesUpdateRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostStatusesUpdateRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersLookupRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersLookupRequestV1Tests.swift index 87664329..20fab5f3 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersLookupRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersLookupRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetUsersLookupRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersProfileBannerRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersProfileBannerRequestV1Tests.swift index d59a13f7..b4af699e 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersProfileBannerRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersProfileBannerRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetUsersProfileBannerRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersSearchRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersSearchRequestV1Tests.swift index dde8139a..31cff079 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersSearchRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersSearchRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetUsersSearchRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersShowRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersShowRequestV1Tests.swift index 60db90f2..c54056ab 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersShowRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Users/GetUsersShowRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetUsersShowRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersBlockingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersBlockingRequestV2Tests.swift index ebde9ab1..14537f46 100644 --- a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersBlockingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersBlockingRequestV2Tests.swift @@ -1,3 +1,8 @@ +// DeleteUsersBlockingRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersMutingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersMutingRequestV2Tests.swift index 96f5e42d..0e3b1edc 100644 --- a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersMutingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/DeleteUsersMutingRequestV2Tests.swift @@ -1,3 +1,8 @@ +// DeleteUsersMutingRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersBlockingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersBlockingRequestV2Tests.swift index 55839947..8863b4dd 100644 --- a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersBlockingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersBlockingRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetUsersBlockingRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersMutingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersMutingRequestV2Tests.swift index 0a2a5301..4336a5d0 100644 --- a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersMutingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/GetUsersMutingRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetUsersMutingRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersBlockingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersBlockingRequestV2Tests.swift index ccd7a232..112906b7 100644 --- a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersBlockingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersBlockingRequestV2Tests.swift @@ -1,3 +1,8 @@ +// PostUsersBlockingRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersMutingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersMutingRequestV2Tests.swift index bf6f5441..c80fe14a 100644 --- a/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersMutingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/BlockAndMute/PostUsersMutingRequestV2Tests.swift @@ -1,3 +1,8 @@ +// PostUsersMutingRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Bookmarks/DeleteUsersBookmarksRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Bookmarks/DeleteUsersBookmarksRequestV2Tests.swift index 67ca72bb..4f52aa97 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Bookmarks/DeleteUsersBookmarksRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Bookmarks/DeleteUsersBookmarksRequestV2Tests.swift @@ -1,3 +1,8 @@ +// DeleteUsersBookmarksRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Bookmarks/GetUsersBookmarksRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Bookmarks/GetUsersBookmarksRequestV2Tests.swift index db8db44f..d863f8b7 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Bookmarks/GetUsersBookmarksRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Bookmarks/GetUsersBookmarksRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetUsersBookmarksRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Bookmarks/PostUsersBookmarksRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Bookmarks/PostUsersBookmarksRequestV2Tests.swift index 67b78c3d..74a989f4 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Bookmarks/PostUsersBookmarksRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Bookmarks/PostUsersBookmarksRequestV2Tests.swift @@ -1,3 +1,8 @@ +// PostUsersBookmarksRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobRequestV2Tests.swift index 4041f568..7496afda 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetComplianceJobRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobsRequestV2Tests.swift index b68d8b22..b8774a8a 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Compliance/GetComplianceJobsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetComplianceJobsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Compliance/PostComplianceJobsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Compliance/PostComplianceJobsRequestV2Tests.swift index 10ff38d4..4889840a 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Compliance/PostComplianceJobsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Compliance/PostComplianceJobsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// PostComplianceJobsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsIdDmEventsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsIdDmEventsRequestV2Tests.swift index 09fd67d6..c1a7f6fb 100644 --- a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsIdDmEventsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsIdDmEventsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetDmConversationsIdDmEventsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsWithParticipantIdDmEventsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsWithParticipantIdDmEventsRequestV2Tests.swift index aec23843..5a9052df 100644 --- a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsWithParticipantIdDmEventsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmConversationsWithParticipantIdDmEventsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetDmConversationsWithParticipantIdDmEventsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmEventsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmEventsRequestV2Tests.swift index 5cf0d4a1..ffbd7c33 100644 --- a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmEventsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/GetDmEventsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetDmEventsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationByIdRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationByIdRequestV2Tests.swift index 1577377e..7929452e 100644 --- a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationByIdRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationByIdRequestV2Tests.swift @@ -1,3 +1,8 @@ +// PostDmConversationByIdRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationRequestV2Tests.swift index 578bb650..8539b3ec 100644 --- a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationRequestV2Tests.swift @@ -1,3 +1,8 @@ +// PostDmConversationRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationWithUserRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationWithUserRequestV2Tests.swift index 1f2c5fd9..b24bb440 100644 --- a/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationWithUserRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/DirectMessage/PostDmConversationWithUserRequestV2Tests.swift @@ -1,3 +1,8 @@ +// PostDmConversationWithUserRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/ExpansionsV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/ExpansionsV2Tests.swift index f17f2e27..95700aec 100644 --- a/Tests/TwitterAPIKitTests/APIv2/ExpansionsV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/ExpansionsV2Tests.swift @@ -1,3 +1,8 @@ +// ExpansionsV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import XCTest @testable import TwitterAPIKit @@ -21,8 +26,8 @@ internal class ExpansionsV2Tests: XCTestCase { XCTAssertEqual( allCases.commaSeparatedString, "attachments.media_keys,attachments.poll_ids,author_id," + - "entities.mentions.username,geo.place_id,in_reply_to_user_id," + - "referenced_tweets.id,referenced_tweets.id.author_id,~~~" + "entities.mentions.username,geo.place_id,in_reply_to_user_id," + + "referenced_tweets.id,referenced_tweets.id.author_id,~~~" ) } diff --git a/Tests/TwitterAPIKitTests/APIv2/FieldsV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/FieldsV2Tests.swift index 91f436c7..b85bb1d0 100644 --- a/Tests/TwitterAPIKitTests/APIv2/FieldsV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/FieldsV2Tests.swift @@ -1,3 +1,8 @@ +// FieldsV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import XCTest @testable import TwitterAPIKit @@ -33,10 +38,10 @@ internal class FieldsV2Tests: XCTestCase { XCTAssertEqual( allCases.commaSeparatedString, "attachments,author_id,context_annotations," + - "conversation_id,created_at,entities,geo,id," + - "in_reply_to_user_id,lang,non_public_metrics," + - "organic_metrics,possibly_sensitive,promoted_metrics," + - "public_metrics,referenced_tweets,reply_settings,source,text,withheld,~~~" + "conversation_id,created_at,entities,geo,id," + + "in_reply_to_user_id,lang,non_public_metrics," + + "organic_metrics,possibly_sensitive,promoted_metrics," + + "public_metrics,referenced_tweets,reply_settings,source,text,withheld,~~~" ) } @@ -68,8 +73,8 @@ internal class FieldsV2Tests: XCTestCase { XCTAssertEqual( allCases.commaSeparatedString, "created_at,description,entities," + - "id,location,name,pinned_tweet_id," + - "profile_image_url,protected,public_metrics,url,username,verified,withheld,~~" + "id,location,name,pinned_tweet_id," + + "profile_image_url,protected,public_metrics,url,username,verified,withheld,~~" ) } @@ -151,8 +156,8 @@ internal class FieldsV2Tests: XCTestCase { XCTAssertEqual( allCases.commaSeparatedString, "alt_text,duration_ms,height,media_key" + - ",non_public_metrics,organic_metrics,preview_image_url" + - ",promoted_metrics,public_metrics,type,url,variants,width,~~~" + ",non_public_metrics,organic_metrics,preview_image_url" + + ",promoted_metrics,public_metrics,type,url,variants,width,~~~" ) } @@ -212,8 +217,8 @@ internal class FieldsV2Tests: XCTestCase { XCTAssertEqual( allCases.commaSeparatedString, "created_at,creator_id,ended_at,host_ids," + - "id,invited_user_ids,is_ticketed,lang,participant_count," + - "scheduled_start,speaker_ids,started_at,state,subscriber_count,title,topic_ids,updated_at,~~" + "id,invited_user_ids,is_ticketed,lang,participant_count," + + "scheduled_start,speaker_ids,started_at,state,subscriber_count,title,topic_ids,updated_at,~~" ) } diff --git a/Tests/TwitterAPIKitTests/APIv2/Friendships/DeleteUsersFollowingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Friendships/DeleteUsersFollowingRequestV2Tests.swift index 7e196b48..7937af30 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Friendships/DeleteUsersFollowingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Friendships/DeleteUsersFollowingRequestV2Tests.swift @@ -1,3 +1,8 @@ +// DeleteUsersFollowingRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowersRequestV2Tests.swift index ac66a923..a5a8d080 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowersRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetUsersFollowersRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowingRequestV2Tests.swift index e077c014..05b7c9ba 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Friendships/GetUsersFollowingRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetUsersFollowingRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Friendships/PostUsersFollowingRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Friendships/PostUsersFollowingRequestV2Tests.swift index 2c92f833..81686c8f 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Friendships/PostUsersFollowingRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Friendships/PostUsersFollowingRequestV2Tests.swift @@ -1,3 +1,8 @@ +// PostUsersFollowingRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Like/DeleteUsersLikesRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Like/DeleteUsersLikesRequestV2Tests.swift index 4f9568c8..7ed68309 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Like/DeleteUsersLikesRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Like/DeleteUsersLikesRequestV2Tests.swift @@ -1,3 +1,8 @@ +// DeleteUsersLikesRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Like/GetTweetsLikingUsersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Like/GetTweetsLikingUsersRequestV2Tests.swift index 22c0dfb8..ad16e45f 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Like/GetTweetsLikingUsersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Like/GetTweetsLikingUsersRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetTweetsLikingUsersRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Like/GetUsersLikedTweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Like/GetUsersLikedTweetsRequestV2Tests.swift index d0b9bae6..fad44b66 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Like/GetUsersLikedTweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Like/GetUsersLikedTweetsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetUsersLikedTweetsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Like/PostUsersLikesRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Like/PostUsersLikesRequestV2Tests.swift index c78df7d1..64fadfcf 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Like/PostUsersLikesRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Like/PostUsersLikesRequestV2Tests.swift @@ -1,3 +1,8 @@ +// PostUsersLikesRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/List/DeleteListRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/DeleteListRequestV2Tests.swift index bcd06446..c9b4a46f 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/DeleteListRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/DeleteListRequestV2Tests.swift @@ -1,3 +1,8 @@ +// DeleteListRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/List/DeleteListsMembersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/DeleteListsMembersRequestV2Tests.swift index 805dbb7a..d8ed5f94 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/DeleteListsMembersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/DeleteListsMembersRequestV2Tests.swift @@ -1,3 +1,8 @@ +// DeleteListsMembersRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersFollowedListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersFollowedListsRequestV2Tests.swift index eac74e27..6be14b4c 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersFollowedListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersFollowedListsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// DeleteUsersFollowedListsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersPinnedListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersPinnedListsRequestV2Tests.swift index d1de269b..163c5c1a 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersPinnedListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/DeleteUsersPinnedListsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// DeleteUsersPinnedListsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetListRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetListRequestV2Tests.swift index 7415eaeb..db3a08cc 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetListRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetListRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetListRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetListsFollowersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetListsFollowersRequestV2Tests.swift index 5991e886..4adc4136 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetListsFollowersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetListsFollowersRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetListsFollowersRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetListsMembersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetListsMembersRequestV2Tests.swift index ea2e2e1a..f09f2a07 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetListsMembersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetListsMembersRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetListsMembersRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetListsTweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetListsTweetsRequestV2Tests.swift index 64ce4026..31b67516 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetListsTweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetListsTweetsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetListsTweetsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersFollowedListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersFollowedListsRequestV2Tests.swift index cf64dee3..746653b8 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersFollowedListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersFollowedListsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetUsersFollowedListsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersListMembershipsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersListMembershipsRequestV2Tests.swift index f9fa7258..9502fd1b 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersListMembershipsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersListMembershipsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetUsersListMembershipsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersOwnedListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersOwnedListsRequestV2Tests.swift index 11e5d2c3..681a9351 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersOwnedListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersOwnedListsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetUsersOwnedListsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersPinnedListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersPinnedListsRequestV2Tests.swift index 40489531..f8e2b2a5 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/GetUsersPinnedListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/GetUsersPinnedListsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetUsersPinnedListsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/List/PostListsMembersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/PostListsMembersRequestV2Tests.swift index 98ff82d9..5145d5e9 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/PostListsMembersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/PostListsMembersRequestV2Tests.swift @@ -1,3 +1,8 @@ +// PostListsMembersRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/List/PostListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/PostListsRequestV2Tests.swift index 3cb8b12a..d07f9655 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/PostListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/PostListsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// PostListsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/List/PostUsersFollowedListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/PostUsersFollowedListsRequestV2Tests.swift index 73df054b..a62e03ba 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/PostUsersFollowedListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/PostUsersFollowedListsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// PostUsersFollowedListsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/List/PostUsersPinnedListsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/PostUsersPinnedListsRequestV2Tests.swift index 9e3c25af..9a190e3c 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/PostUsersPinnedListsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/PostUsersPinnedListsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// PostUsersPinnedListsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/List/PutListRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/List/PutListRequestV2Tests.swift index 23c0197a..1d88ec80 100644 --- a/Tests/TwitterAPIKitTests/APIv2/List/PutListRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/List/PutListRequestV2Tests.swift @@ -1,3 +1,8 @@ +// PutListRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Retweet/DeleteUsersRetweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Retweet/DeleteUsersRetweetsRequestV2Tests.swift index c132bc6a..9b8d41a7 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Retweet/DeleteUsersRetweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Retweet/DeleteUsersRetweetsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// DeleteUsersRetweetsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Retweet/GetTweetsRetweetedByRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Retweet/GetTweetsRetweetedByRequestV2Tests.swift index 08eaa3bb..cded8ad1 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Retweet/GetTweetsRetweetedByRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Retweet/GetTweetsRetweetedByRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetTweetsRetweetedByRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Retweet/PostUsersRetweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Retweet/PostUsersRetweetsRequestV2Tests.swift index d1b16d44..ae19e8be 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Retweet/PostUsersRetweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Retweet/PostUsersRetweetsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// PostUsersRetweetsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchAllRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchAllRequestV2Tests.swift index 97802bd8..2428545d 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchAllRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchAllRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetTweetsSearchAllRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchRecentRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchRecentRequestV2Tests.swift index db5c9bf9..dea9cf54 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchRecentRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Search/GetTweetsSearchRecentRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetTweetsSearchRecentRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpaceRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpaceRequestV2Tests.swift index e6b41424..c908b46b 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpaceRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpaceRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetSpaceRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesBuyersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesBuyersRequestV2Tests.swift index db533c25..a0fa6524 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesBuyersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesBuyersRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetSpacesBuyersRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesByCreatorIDsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesByCreatorIDsRequestV2Tests.swift index c534ae7c..97158a9c 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesByCreatorIDsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesByCreatorIDsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetSpacesByCreatorIDsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesRequestV2Tests.swift index 1537d2f9..8db312b2 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetSpacesRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesSearchRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesSearchRequestV2Tests.swift index f490ba0f..ecbd8405 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesSearchRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesSearchRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetSpacesSearchRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesTweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesTweetsRequestV2Tests.swift index 348c1975..5013ad0a 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesTweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Spaces/GetSpacesTweetsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetSpacesTweetsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSampleStreamRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSampleStreamRequestV2Tests.swift index 35ba6e8c..956f0aa4 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSampleStreamRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSampleStreamRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetTweetsSampleStreamRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRequestV2Tests.swift index b9c5b59c..2a91e438 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetTweetsSearchStreamRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRulesRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRulesRequestV2Tests.swift index 5cecf82d..b1205f22 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRulesRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Stream/GetTweetsSearchStreamRulesRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetTweetsSearchStreamRulesRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Stream/PostTweetsSearchStreamRulesRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Stream/PostTweetsSearchStreamRulesRequestV2Tests.swift index a2afd4e2..3cf7b104 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Stream/PostTweetsSearchStreamRulesRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Stream/PostTweetsSearchStreamRulesRequestV2Tests.swift @@ -1,3 +1,8 @@ +// PostTweetsSearchStreamRulesRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersMentionsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersMentionsRequestV2Tests.swift index 24e1d850..b22a7215 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersMentionsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersMentionsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetUsersMentionsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTimelinesReverseChronologicalRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTimelinesReverseChronologicalRequestV2Tests.swift index e381536d..750da741 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTimelinesReverseChronologicalRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTimelinesReverseChronologicalRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetUsersTimelinesReverseChronologicalRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTweetsRequestV2Tests.swift index af047dba..d9f36aac 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Timeline/GetUsersTweetsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetUsersTweetsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Tweet/DeleteTweetRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Tweet/DeleteTweetRequestV2Tests.swift index 9f68a379..36938018 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Tweet/DeleteTweetRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Tweet/DeleteTweetRequestV2Tests.swift @@ -1,3 +1,8 @@ +// DeleteTweetRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetRequestV2Tests.swift index dfc65770..df515645 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetTweetRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsQuoteTweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsQuoteTweetsRequestV2Tests.swift index d27c16fb..6d412031 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsQuoteTweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsQuoteTweetsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetTweetsQuoteTweetsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsRequestV2Tests.swift index d71b4aee..ffd2df19 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Tweet/GetTweetsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetTweetsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Tweet/PostTweetsRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Tweet/PostTweetsRequestV2Tests.swift index 669cabca..0f3cc653 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Tweet/PostTweetsRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Tweet/PostTweetsRequestV2Tests.swift @@ -1,3 +1,8 @@ +// PostTweetsRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Tweet/PutTweetsHiddenRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Tweet/PutTweetsHiddenRequestV2Tests.swift index a44bb710..ac2a3fea 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Tweet/PutTweetsHiddenRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Tweet/PutTweetsHiddenRequestV2Tests.swift @@ -1,3 +1,8 @@ +// PutTweetsHiddenRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsAllRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsAllRequestV2Tests.swift index 80f2348c..ca741db8 100644 --- a/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsAllRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsAllRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetTweetsCountsAllRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsRecentRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsRecentRequestV2Tests.swift index bb35b165..3dbc5ec1 100644 --- a/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsRecentRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/TweetCount/GetTweetsCountsRecentRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetTweetsCountsRecentRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Users/GetUserRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Users/GetUserRequestV2Tests.swift index beef9225..22a30b7a 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Users/GetUserRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Users/GetUserRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetUserRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByRequestV2Tests.swift index 522b77bb..0d5daece 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetUsersByRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByUsernameRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByUsernameRequestV2Tests.swift index bb077fe3..dec89b07 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByUsernameRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersByUsernameRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetUsersByUsernameRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersMeRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersMeRequestV2Tests.swift index dd714492..601b13fe 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersMeRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersMeRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetUsersMeRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersRequestV2Tests.swift b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersRequestV2Tests.swift index cd645c4c..603ef9f3 100644 --- a/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv2/Users/GetUsersRequestV2Tests.swift @@ -1,3 +1,8 @@ +// GetUsersRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/AuthAPI/GetOAuth2AuthorizeRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/GetOAuth2AuthorizeRequestV1Tests.swift index af049d34..11740df0 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/GetOAuth2AuthorizeRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/GetOAuth2AuthorizeRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetOAuth2AuthorizeRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthenticateRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthenticateRequestV1Tests.swift index 2aa4ae1c..70f27eae 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthenticateRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthenticateRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetOAuthAuthenticateRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthorizeRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthorizeRequestV1Tests.swift index a07a63ef..418d4534 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthorizeRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/GetOAuthAuthorizeRequestV1Tests.swift @@ -1,3 +1,8 @@ +// GetOAuthAuthorizeRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2AccessTokenRequestV2Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2AccessTokenRequestV2Tests.swift index 36745bfa..60dde3ad 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2AccessTokenRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2AccessTokenRequestV2Tests.swift @@ -1,3 +1,8 @@ +// PostOAuth2AccessTokenRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2InvalidateTokenRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2InvalidateTokenRequestV1Tests.swift index 9835ee9e..e85bffd5 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2InvalidateTokenRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2InvalidateTokenRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostOAuth2InvalidateTokenRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RefreshTokenRequestV2Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RefreshTokenRequestV2Tests.swift index 1138524c..f89adc82 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RefreshTokenRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RefreshTokenRequestV2Tests.swift @@ -1,3 +1,8 @@ +// PostOAuth2RefreshTokenRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RevokeTokenRequestV2Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RevokeTokenRequestV2Tests.swift index 4cc1fcff..24e95a5a 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RevokeTokenRequestV2Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2RevokeTokenRequestV2Tests.swift @@ -1,3 +1,8 @@ +// PostOAuth2RevokeTokenRequestV2Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2TokenRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2TokenRequestV1Tests.swift index 6a75c2e3..7f6853e0 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2TokenRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuth2TokenRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostOAuth2TokenRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthAccessTokenRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthAccessTokenRequestV1Tests.swift index 540960ee..3aa517e3 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthAccessTokenRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthAccessTokenRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostOAuthAccessTokenRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthInvalidateTokenRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthInvalidateTokenRequestV1Tests.swift index 18051538..a741762e 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthInvalidateTokenRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthInvalidateTokenRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostOAuthInvalidateTokenRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthRequestTokenRequestV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthRequestTokenRequestV1Tests.swift index 0c5f2169..ee10657a 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthRequestTokenRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/PostOAuthRequestTokenRequestV1Tests.swift @@ -1,3 +1,8 @@ +// PostOAuthRequestTokenRequestV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift b/Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift index a077e65f..8e0ae207 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift @@ -1,3 +1,8 @@ +// TwitterAuthAPITests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift index efd3df5c..c93c3d7a 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift @@ -1,3 +1,8 @@ +// TwitterOAuth2AccessTokenTests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import XCTest @testable import TwitterAPIKit diff --git a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2BearerTokenTests.swift b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2BearerTokenTests.swift index 9fc4201d..131c12c1 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2BearerTokenTests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2BearerTokenTests.swift @@ -1,3 +1,8 @@ +// TwitterOAuth2BearerTokenTests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthAccessTokenV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthAccessTokenV1Tests.swift index da8a25b0..8259b4db 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthAccessTokenV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthAccessTokenV1Tests.swift @@ -1,3 +1,8 @@ +// TwitterOAuthAccessTokenV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift index 2576cc71..a3a18780 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift @@ -1,3 +1,8 @@ +// TwitterOAuthTokenV1Tests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/Extensions/ConcurrencyTests.swift b/Tests/TwitterAPIKitTests/Extensions/ConcurrencyTests.swift index 61751ecc..ae73d482 100644 --- a/Tests/TwitterAPIKitTests/Extensions/ConcurrencyTests.swift +++ b/Tests/TwitterAPIKitTests/Extensions/ConcurrencyTests.swift @@ -1,3 +1,8 @@ +// ConcurrencyTests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import XCTest @testable import TwitterAPIKit diff --git a/Tests/TwitterAPIKitTests/Extensions/DataTests.swift b/Tests/TwitterAPIKitTests/Extensions/DataTests.swift index f9809c82..4075c040 100644 --- a/Tests/TwitterAPIKitTests/Extensions/DataTests.swift +++ b/Tests/TwitterAPIKitTests/Extensions/DataTests.swift @@ -1,3 +1,8 @@ +// DataTests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import XCTest @testable import TwitterAPIKit diff --git a/Tests/TwitterAPIKitTests/Extensions/StringTests.swift b/Tests/TwitterAPIKitTests/Extensions/StringTests.swift index f70a5ada..3176a199 100644 --- a/Tests/TwitterAPIKitTests/Extensions/StringTests.swift +++ b/Tests/TwitterAPIKitTests/Extensions/StringTests.swift @@ -1,3 +1,8 @@ +// StringTests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import XCTest @testable import TwitterAPIKit diff --git a/Tests/TwitterAPIKitTests/Helper/Assert.swift b/Tests/TwitterAPIKitTests/Helper/Assert.swift index 5250071e..ebe5c40e 100644 --- a/Tests/TwitterAPIKitTests/Helper/Assert.swift +++ b/Tests/TwitterAPIKitTests/Helper/Assert.swift @@ -1,3 +1,8 @@ +// Assert.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation import XCTest diff --git a/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift b/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift index 43958bf5..c8c33e52 100644 --- a/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift +++ b/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift @@ -1,13 +1,7 @@ -// ===----------------------------------------------------------------------===// -// -// This source file is part of the Swift Algorithms open source project -// -// Copyright (c) 2020-2021 Apple Inc. and the Swift project authors -// Licensed under Apache License v2.0 with Runtime Library Exception -// -// See https://swift.org/LICENSE.txt for license information -// -// ===----------------------------------------------------------------------===// +// CombinationsSequence.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. /// A collection wrapper that generates combinations of a base collection. public struct CombinationsSequence { @@ -254,7 +248,7 @@ public extension Collection { /// is the number of elements in the base collection, since /// `CombinationsSequence` accesses the `count` of the base collection. @inlinable - public func combinations( + func combinations( ofCount kRange: R ) -> CombinationsSequence where R.Bound == Int { CombinationsSequence(self, kRange: kRange) @@ -290,9 +284,8 @@ public extension Collection { /// is the number of elements in the base collection, since /// `CombinationsSequence` accesses the `count` of the base collection. @inlinable - public func combinations(ofCount k: Int) -> CombinationsSequence { + func combinations(ofCount k: Int) -> CombinationsSequence { precondition(k >= 0, "Can't have combinations with a negative number of elements.") return CombinationsSequence(self, k: k) - } } diff --git a/Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift b/Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift index 89ff5d32..f784ce19 100644 --- a/Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift +++ b/Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift @@ -1,3 +1,8 @@ +// MockURLProtocol.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation internal class MockURLProtocol: URLProtocol { @@ -13,8 +18,8 @@ internal class MockURLProtocol: URLProtocol { } public static func cleanup() { - Self.requestHandler = nil - Self.requestAssert = nil + requestHandler = nil + requestAssert = nil } override public func startLoading() { diff --git a/Tests/TwitterAPIKitTests/MultipartFormDataPartTests.swift b/Tests/TwitterAPIKitTests/MultipartFormDataPartTests.swift index 7610bc2e..324c6a34 100644 --- a/Tests/TwitterAPIKitTests/MultipartFormDataPartTests.swift +++ b/Tests/TwitterAPIKitTests/MultipartFormDataPartTests.swift @@ -1,3 +1,8 @@ +// MultipartFormDataPartTests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest @@ -19,7 +24,12 @@ internal class MultipartFormDataPartTests: XCTestCase { let dataB = MultipartFormDataPart.data(name: "m", value: data, filename: "f", mimeType: "m") let dataC = MultipartFormDataPart.data(name: "n", value: data, filename: "ff", mimeType: "m") let dataD = MultipartFormDataPart.data(name: "n", value: data, filename: "f", mimeType: "mm") - let dataE = MultipartFormDataPart.data(name: "n", value: Data(repeating: 1, count: 1), filename: "f", mimeType: "m") + let dataE = MultipartFormDataPart.data( + name: "n", + value: Data(repeating: 1, count: 1), + filename: "f", + mimeType: "m" + ) let dataF = MultipartFormDataPart.value(name: "n", value: data) let dataA1 = MultipartFormDataPart.data(name: "n", value: Data(), filename: "f", mimeType: "m") diff --git a/Tests/TwitterAPIKitTests/OAuthHelperTests.swift b/Tests/TwitterAPIKitTests/OAuthHelperTests.swift index bc466859..c36e35da 100644 --- a/Tests/TwitterAPIKitTests/OAuthHelperTests.swift +++ b/Tests/TwitterAPIKitTests/OAuthHelperTests.swift @@ -1,3 +1,8 @@ +// OAuthHelperTests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import XCTest @testable import TwitterAPIKit diff --git a/Tests/TwitterAPIKitTests/SessionTask/MockTwitterAPISessionTask.swift b/Tests/TwitterAPIKitTests/SessionTask/MockTwitterAPISessionTask.swift index 05ff9f8a..3b8ff0e9 100644 --- a/Tests/TwitterAPIKitTests/SessionTask/MockTwitterAPISessionTask.swift +++ b/Tests/TwitterAPIKitTests/SessionTask/MockTwitterAPISessionTask.swift @@ -1,3 +1,8 @@ +// MockTwitterAPISessionTask.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation import TwitterAPIKit diff --git a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPIFailedTaskTests.swift b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPIFailedTaskTests.swift index 2b5664bd..061fdece 100644 --- a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPIFailedTaskTests.swift +++ b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPIFailedTaskTests.swift @@ -1,3 +1,8 @@ +// TwitterAPIFailedTaskTests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift index b2d37d57..f4cafcdd 100644 --- a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift +++ b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift @@ -1,3 +1,8 @@ +// TwitterAPISessionDelegatedJSONTaskTests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import XCTest @testable import TwitterAPIKit @@ -7,6 +12,9 @@ internal struct DecodableObj: Decodable, Equatable { } internal class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { + // swiftlint:disable:next force_unwrapping + let testURL = URL(string: "http://example.com")! // This is fine as it's a constant test URL that we know is valid + public func testSuccess() throws { let mockTask = MockTwitterAPISessionTask(taskIdentifier: 1) @@ -62,7 +70,7 @@ internal class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { task.append(chunk: Data(":\"value\"}".utf8)) mockTask.httpResponse = .init( - url: URL(string: "http://example.com")!, + url: self.testURL, statusCode: 200, httpVersion: "1.1", headerFields: [ @@ -113,7 +121,7 @@ internal class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { // Status code is 400 mockTask.httpResponse = .init( - url: URL(string: "http://example.com")!, + url: self.testURL, statusCode: 400, httpVersion: "1.1", headerFields: [ @@ -163,7 +171,7 @@ internal class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { task.append(chunk: Data(":\"value\"}".utf8)) mockTask.httpResponse = .init( - url: URL(string: "http://example.com")!, statusCode: 200, httpVersion: "1.1", headerFields: [:] + url: self.testURL, statusCode: 200, httpVersion: "1.1", headerFields: [:] ) task.complete(error: URLError(.badServerResponse)) @@ -211,7 +219,7 @@ internal class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { task.append(chunk: Data(":\"value\"}".utf8)) mockTask.httpResponse = .init( - url: URL(string: "http://example.com")!, statusCode: 200, httpVersion: "1.1", headerFields: [:] + url: self.testURL, statusCode: 200, httpVersion: "1.1", headerFields: [:] ) task.complete(error: URLError(.cancelled)) diff --git a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift index 55992197..0ffdc8b1 100644 --- a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift +++ b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift @@ -1,3 +1,8 @@ +// TwitterAPISessionDelegatedStreamTaskTests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import XCTest @testable import TwitterAPIKit @@ -117,7 +122,9 @@ internal class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { task.append( chunk: Data( "{\"detail\":\"Authenticating with OAuth 1.0a User Context is forbidden for this endpoint. Supported authentication types are [OAuth 2.0 Application-Only].\",\"title\":\"Unsupported Authentication\",\"status\":403,\"type\":\"https://api.twitter.com/2/problems/unsupported-authentication\"}" - .utf8)) + .utf8 + ) + ) task.complete(error: nil) } diff --git a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionSpecializedTaskTests.swift b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionSpecializedTaskTests.swift index f0be0251..e90b83f6 100644 --- a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionSpecializedTaskTests.swift +++ b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionSpecializedTaskTests.swift @@ -1,3 +1,8 @@ +// TwitterAPISessionSpecializedTaskTests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import XCTest @testable import TwitterAPIKit @@ -9,7 +14,11 @@ internal class TwitterAPISessionSpecializedTaskTests: XCTestCase { ) let task = TwitterAPISessionSpecializedTask(task: mockTask) { data in - String(data: data, encoding: .utf8)! + guard let str = String(data: data, encoding: .utf8) else { + XCTFail("Failed to decode UTF-8 string") + return "" + } + return str } let exp = expectation(description: "") @@ -36,11 +45,19 @@ internal class TwitterAPISessionSpecializedTaskTests: XCTestCase { ) let task1 = TwitterAPISessionSpecializedTask(task: mockTask1) { data in - String(data: data, encoding: .utf8)! + guard let str = String(data: data, encoding: .utf8) else { + XCTFail("Failed to decode UTF-8 string") + return "" + } + return str } let task2 = TwitterAPISessionSpecializedTask(task: mockTask2) { data in - String(data: data, encoding: .utf8)! + guard let str = String(data: data, encoding: .utf8) else { + XCTFail("Failed to decode UTF-8 string") + return "" + } + return str } let exp = expectation(description: "") diff --git a/Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift index 3c0b511b..64c69e86 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift @@ -1,3 +1,8 @@ +// TwitterAPIClientTests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/TwitterAPIErrorResponseTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIErrorResponseTests.swift index 0cf3b8be..7580c2aa 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIErrorResponseTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIErrorResponseTests.swift @@ -1,3 +1,8 @@ +// TwitterAPIErrorResponseTests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/TwitterAPIKitErrorTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIKitErrorTests.swift index ecc71c3d..3cb83034 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIKitErrorTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIKitErrorTests.swift @@ -1,3 +1,8 @@ +// TwitterAPIKitErrorTests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/TwitterAPIKitTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIKitTests.swift index 7b6f9ad6..51fd3079 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIKitTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIKitTests.swift @@ -1,3 +1,8 @@ +// TwitterAPIKitTests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift index 64a6c423..e29e6938 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift @@ -1,3 +1,8 @@ +// TwitterAPIRequestTests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import XCTest @testable import TwitterAPIKit @@ -97,7 +102,9 @@ internal class TwitterAPIRequestTests: XCTestCase { XCTAssertEqual(urlReq.httpMethod, "POST") XCTAssertNil(urlReq.url?.query) - XCTAssertEqual(String(data: urlReq.httpBody!, encoding: .utf8)!, "key=value%2C%F0%9F%A5%93") + let httpBody = try XCTUnwrap(urlReq.httpBody) + let bodyString = try XCTUnwrap(String(data: httpBody, encoding: .utf8)) + XCTAssertEqual(bodyString, "key=value%2C%F0%9F%A5%93") } try XCTContext.runActivity(named: "PUT") { _ in @@ -113,7 +120,9 @@ internal class TwitterAPIRequestTests: XCTestCase { XCTAssertEqual(urlReq.httpMethod, "PUT") XCTAssertNil(urlReq.url?.query) - XCTAssertEqual(String(data: urlReq.httpBody!, encoding: .utf8)!, "key=value%2C%F0%9F%A5%93") + let httpBody = try XCTUnwrap(urlReq.httpBody) + let bodyString = try XCTUnwrap(String(data: httpBody, encoding: .utf8)) + XCTAssertEqual(bodyString, "key=value%2C%F0%9F%A5%93") } try XCTContext.runActivity(named: "DELETE") { _ in @@ -165,7 +174,9 @@ internal class TwitterAPIRequestTests: XCTestCase { XCTAssertEqual(urlReq.httpMethod, "POST") XCTAssertEqual(urlReq.url?.query, "key=value%2C%F0%9F%A5%93") - XCTAssertEqual(String(data: urlReq.httpBody!, encoding: .utf8)!, "body=%E3%81%82") + let httpBody = try XCTUnwrap(urlReq.httpBody) + let bodyString = try XCTUnwrap(String(data: httpBody, encoding: .utf8)) + XCTAssertEqual(bodyString, "body=%E3%81%82") } public func testBodyContentType() throws { @@ -173,8 +184,8 @@ internal class TwitterAPIRequestTests: XCTestCase { try testMultipartFormData() try testJSON() } - - private func testWWWFormUrlEncoded() throws { + + public func testWWWFormUrlEncoded() throws { try XCTContext.runActivity(named: "wwwFormUrlEncoded") { _ in let req = try MockTwitterAPIRequest( method: .post, @@ -182,12 +193,13 @@ internal class TwitterAPIRequestTests: XCTestCase { bodyContentType: .wwwFormUrlEncoded ).buildRequest(environment: env) - let body = String(data: req.httpBody!, encoding: .utf8) + let httpBody = try XCTUnwrap(req.httpBody) + let body = try XCTUnwrap(String(data: httpBody, encoding: .utf8)) XCTAssertEqual(body, "key=value%2C%F0%9F%A5%93") } } - - private func testMultipartFormData() throws { + + public func testMultipartFormData() throws { try XCTContext.runActivity(named: "multipartFormData") { _ in let req = try MockTwitterAPIRequest( method: .post, @@ -203,14 +215,13 @@ internal class TwitterAPIRequestTests: XCTestCase { bodyContentType: .multipartFormData ).buildRequest(environment: env) - XCTAssertTrue( - req.allHTTPHeaderFields!["Content-Type"]!.hasPrefix("multipart/form-data; boundary=TwitterAPIKit-") - ) + let contentType = try XCTUnwrap(req.allHTTPHeaderFields?["Content-Type"]) + XCTAssertTrue(contentType.hasPrefix("multipart/form-data; boundary=TwitterAPIKit-")) - let boundary = req.allHTTPHeaderFields!["Content-Type"]!.replacingOccurrences( + let boundary = contentType.replacingOccurrences( of: "multipart/form-data; boundary=", with: "" ) - let body = String(data: req.httpBody!, encoding: .utf8)! + let body = try XCTUnwrap(String(data: req.httpBody!, encoding: .utf8)) let expect = """ --\(boundary)\r\n @@ -229,8 +240,8 @@ internal class TwitterAPIRequestTests: XCTestCase { try testInvalidMultipartFormData() } } - - private func testInvalidMultipartFormData() throws { + + public func testInvalidMultipartFormData() throws { try XCTContext.runActivity(named: "Invalid parameter") { _ in XCTAssertThrowsError( try MockTwitterAPIRequest( @@ -243,8 +254,8 @@ internal class TwitterAPIRequestTests: XCTestCase { } } } - - private func testJSON() throws { + + public func testJSON() throws { try XCTContext.runActivity(named: "json") { _ in let req = try MockTwitterAPIRequest( method: .post, @@ -252,15 +263,16 @@ internal class TwitterAPIRequestTests: XCTestCase { bodyContentType: .json ).buildRequest(environment: env) - let body = try JSONSerialization.jsonObject(with: req.httpBody!, options: []) + let httpBody = try XCTUnwrap(req.httpBody) + let body = try JSONSerialization.jsonObject(with: httpBody, options: []) XCTAssertEqual(body as? [String: String], ["key": "value,🥓"]) try testInvalidJSON() try testInvalidJSONValue() } } - - private func testInvalidJSON() throws { + + public func testInvalidJSON() throws { try XCTContext.runActivity(named: "Invalid") { _ in XCTAssertThrowsError( try MockTwitterAPIRequest( @@ -271,15 +283,16 @@ internal class TwitterAPIRequestTests: XCTestCase { ) { error in if let error = error as? TwitterAPIKitError, - case .jsonSerializationFailed = error.requestFailureReason { + case .jsonSerializationFailed = error.requestFailureReason + { } else { XCTFail("Unknown Error") } } } } - - private func testInvalidJSONValue() throws { + + public func testInvalidJSONValue() throws { try XCTContext.runActivity(named: "Invalid value") { _ in XCTAssertThrowsError( try MockTwitterAPIRequest( @@ -293,7 +306,8 @@ internal class TwitterAPIRequestTests: XCTestCase { ) { error in if let error = error as? TwitterAPIKitError, - case .jsonSerializationFailed = error.requestFailureReason { + case .jsonSerializationFailed = error.requestFailureReason + { } else { XCTFail("Unknown Error") } diff --git a/Tests/TwitterAPIKitTests/TwitterAPIResponseTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIResponseTests.swift index ce2f1d06..256e1d42 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIResponseTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIResponseTests.swift @@ -1,3 +1,8 @@ +// TwitterAPIResponseTests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift b/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift index 27460b0f..e94419e7 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift @@ -1,3 +1,8 @@ +// TwitterAPISessionTests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import XCTest @testable import TwitterAPIKit @@ -299,8 +304,8 @@ internal class TwitterAPISessionTests: XCTestCase { } } -extension Data { - public init(reading input: InputStream) throws { +public extension Data { + init(reading input: InputStream) throws { self.init() input.open() defer { diff --git a/Tests/TwitterAPIKitTests/TwitterAuthenticationMethodTests.swift b/Tests/TwitterAPIKitTests/TwitterAuthenticationMethodTests.swift index 110b44ea..19cbf4e8 100644 --- a/Tests/TwitterAPIKitTests/TwitterAuthenticationMethodTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAuthenticationMethodTests.swift @@ -1,3 +1,8 @@ +// TwitterAuthenticationMethodTests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/Tests/TwitterAPIKitTests/TwitterRateLimitTests.swift b/Tests/TwitterAPIKitTests/TwitterRateLimitTests.swift index 4be21cee..ccf2dd86 100644 --- a/Tests/TwitterAPIKitTests/TwitterRateLimitTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterRateLimitTests.swift @@ -1,3 +1,8 @@ +// TwitterRateLimitTests.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import TwitterAPIKit import XCTest diff --git a/lint.txt b/lint.txt new file mode 100644 index 00000000..3293e72a --- /dev/null +++ b/lint.txt @@ -0,0 +1,1136 @@ + +> twitterapikit@1.0.0 lint +> swiftlint --config=.swiftlint.yml . + +::error file=Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift,line=87,col=24::Force tries should be avoided (force_try) +::warning file=Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift,line=48,col=63::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift,line=49,col=55::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift,line=50,col=60::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift,line=87,col=65::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift,line=88,col=59::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift,line=127,col=49::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift,line=127,col=107::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift,line=324,col=40::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift,line=308,col=5::public declarations should be documented (missing_docs) +::warning file=Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift,line=32,col=53::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift,line=32,col=111::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/Extensions/DataTests.swift,line=21,col=43::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/Extensions/DataTests.swift,line=38,col=43::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionSpecializedTaskTests.swift,line=17,col=48::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionSpecializedTaskTests.swift,line=44,col=48::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionSpecializedTaskTests.swift,line=48,col=48::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift,line=70,col=55::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift,line=121,col=55::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift,line=171,col=55::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift,line=219,col=55::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift,line=46,col=49::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift,line=46,col=107::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift,line=104,col=49::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift,line=104,col=107::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift,line=231,col=53::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift,line=231,col=111::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift,line=16,col=77::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift,line=17,col=78::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift,line=19,col=52::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift,line=44,col=56::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift,line=108,col=56::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift,line=147,col=49::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift,line=157,col=45::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift,line=191,col=49::Force unwrapping should be avoided (force_unwrapping) +::error file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift,line=124,col=1::Line should be 200 characters or less; currently it has 311 characters (line_length) +::warning file=Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift,line=39,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) +::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaAppendRequestV1Tests.swift,line=25,col=28::Force casts should be avoided (force_cast) +::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2BearerTokenTests.swift,line=12,col=65::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/OAuthHelperTests.swift,line=20,col=81::Force unwrapping should be avoided (force_unwrapping) +::error file=Tests/TwitterAPIKitTests/OAuthHelperTests.swift,line=32,col=1::Line should be 200 characters or less; currently it has 328 characters (line_length) +::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift,line=10,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift,line=62,col=16::Force unwrapping should be avoided (force_unwrapping) +::error file=Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift,line=63,col=1::Line should be 200 characters or less; currently it has 202 characters (line_length) +::error file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift,line=57,col=38::Force casts should be avoided (force_cast) +::error file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift,line=63,col=38::Force casts should be avoided (force_cast) +::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift,line=24,col=69::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift,line=45,col=69::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=10,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=10,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) +::error file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=10,col=6::Function name 'AssertEqualAnyDict(_:_:_:file:line:)' should start with a lowercase character (identifier_name) +::error file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=11,col=7::Variable name 'l' should be between 3 and 40 characters long (identifier_name) +::error file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=11,col=27::Variable name 'r' should be between 3 and 40 characters long (identifier_name) +::warning file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=10,col=6::Functions and methods parameters should be either on the same line, or one per line (multiline_parameters) +::warning file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=53,col=12::Attributes should be on their own lines in functions and types, but on the same line as variables and imports (attributes) +::warning file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=79,col=18::Attributes should be on their own lines in functions and types, but on the same line as variables and imports (attributes) +::warning file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=87,col=18::Attributes should be on their own lines in functions and types, but on the same line as variables and imports (attributes) +::warning file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=91,col=18::Attributes should be on their own lines in functions and types, but on the same line as variables and imports (attributes) +::warning file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=96,col=18::Attributes should be on their own lines in functions and types, but on the same line as variables and imports (attributes) +::error file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=26,col=33::Variable name 'k' should be between 3 and 40 characters long (identifier_name) +::error file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=54,col=19::Variable name 'k' should be between 3 and 40 characters long (identifier_name) +::error file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=55,col=13::Variable name 'n' should be between 3 and 40 characters long (identifier_name) +::error file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=60,col=32::Variable name 'n' should be between 3 and 40 characters long (identifier_name) +::error file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=60,col=40::Variable name 'k' should be between 3 and 40 characters long (identifier_name) +::error file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=144,col=17::Variable name 'i' should be between 3 and 40 characters long (identifier_name) +::error file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=148,col=17::Variable name 'j' should be between 3 and 40 characters long (identifier_name) +::error file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=158,col=21::Variable name 'k' should be between 3 and 40 characters long (identifier_name) +::error file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=171,col=34::Variable name 'i' should be between 3 and 40 characters long (identifier_name) +::error file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=287,col=31::Variable name 'k' should be between 3 and 40 characters long (identifier_name) +::warning file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=125,col=13::Prefer regular comments over doc comments in local scopes (local_doc_comment) +::warning file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=71,col=10::Chained function calls should be either on the same line, or one per line (multiline_function_chains) +::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift,line=14,col=51::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift,line=19,col=63::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift,line=23,col=51::Force unwrapping should be avoided (force_unwrapping) +::warning file=scripts/gen_init_params.swift,line=23,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=scripts/gen_init_params.swift,line=66,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=scripts/gen_init_params.swift,line=81,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=scripts/gen_init_params.swift,line=93,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=scripts/gen_init_params.swift,line=110,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=scripts/gen_init_params.swift,line=151,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=scripts/gen_init_params.swift,line=23,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) +::warning file=scripts/gen_init_params.swift,line=110,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) +::warning file=scripts/gen_init_params.swift,line=151,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) +::warning file=scripts/gen_init_params.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) +::error file=scripts/gen_init_params.swift,line=24,col=17::Force tries should be avoided (force_try) +::error file=scripts/gen_init_params.swift,line=113,col=17::Force tries should be avoided (force_try) +::warning file=scripts/gen_init_params.swift,line=37,col=65::Force unwrapping should be avoided (force_unwrapping) +::warning file=scripts/gen_init_params.swift,line=38,col=66::Force unwrapping should be avoided (force_unwrapping) +::warning file=scripts/gen_init_params.swift,line=96,col=67::Force unwrapping should be avoided (force_unwrapping) +::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=40,col=24::Force tries should be avoided (force_try) +::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=56,col=24::Force tries should be avoided (force_try) +::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=73,col=24::Force tries should be avoided (force_try) +::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=89,col=24::Force tries should be avoided (force_try) +::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=208,col=24::Force tries should be avoided (force_try) +::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=278,col=24::Force tries should be avoided (force_try) +::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=348,col=24::Force tries should be avoided (force_try) +::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=364,col=24::Force tries should be avoided (force_try) +::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=381,col=24::Force tries should be avoided (force_try) +::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=397,col=24::Force tries should be avoided (force_try) +::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=458,col=24::Force tries should be avoided (force_try) +::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=473,col=24::Force tries should be avoided (force_try) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=38,col=48::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=48,col=48::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=51,col=48::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=54,col=48::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=71,col=42::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=71,col=49::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=87,col=42::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=87,col=49::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=106,col=49::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=106,col=107::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=148,col=48::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=157,col=49::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=157,col=114::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=206,col=48::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=216,col=48::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=220,col=48::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=227,col=49::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=227,col=114::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=276,col=48::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=286,col=48::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=289,col=48::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=292,col=48::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=299,col=49::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=299,col=114::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=346,col=48::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=356,col=48::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=359,col=48::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=362,col=48::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=379,col=42::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=379,col=49::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=395,col=42::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=395,col=49::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=416,col=49::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=416,col=107::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=425,col=41::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=456,col=48::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=467,col=48::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=471,col=48::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=486,col=49::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=486,col=107::Force unwrapping should be avoided (force_unwrapping) +::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift,line=10,col=12::Type name 'GetDmConversationsWithParticipantIdDmEventsRequestV2' should be between 3 and 50 characters long (type_name) +::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/TwitterDirectMessageEventTypeV2.swift,line=20,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift,line=17,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift,line=38,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift,line=60,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift,line=82,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift,line=97,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/DeleteTweetRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/PutTweetsHiddenRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsQuoteTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Retweet/Requests/GetTweetsRetweetedByRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift,line=16,col=1::Line should be 120 characters or less; currently it has 145 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift,line=23,col=1::Line should be 120 characters or less; currently it has 144 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift,line=30,col=1::Line should be 120 characters or less; currently it has 144 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift,line=37,col=1::Line should be 120 characters or less; currently it has 145 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/Retweet/Requests/DeleteUsersRetweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Retweet/Requests/PostUsersRetweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Like/Requests/DeleteUsersLikesRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Like/Requests/PostUsersLikesRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Like/Requests/GetTweetsLikingUsersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Like/Requests/GetUsersLikedTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift,line=8,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSampleStreamRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift,line=16,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift,line=23,col=1::Line should be 120 characters or less; currently it has 135 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift,line=8,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpaceRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift,line=14,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesBuyersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesByCreatorIDsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersMutingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersMutingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersMutingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersBlockingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersBlockingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Friendships/FriendshipsAPIv2.swift,line=23,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Friendships/Requests/PostUsersFollowingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersBlockingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Retweet/RetweetAPIv2.swift,line=23,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/Compliance/Requests/PostComplianceJobsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Compliance/TwitterComplianceJobTypeV2.swift,line=12,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift,line=15,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Compliance/ComplianceAPIv2.swift,line=9,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift,line=14,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Search/TwitterSearchTweetsSortOrderV2.swift,line=12,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/Bookmarks/BookmarksAPIv2.swift,line=23,col=1::Line should be 120 characters or less; currently it has 123 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=55,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::error file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=25,col=16::Variable name 'dm' should be between 3 and 40 characters long (identifier_name) +::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=10,col=6::open declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=11,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=12,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=13,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=14,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=15,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=16,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=17,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=18,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=19,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=20,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=21,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=22,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=23,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=24,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=25,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=27,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=50,col=8::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=51,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/PostUsersBookmarksRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/GetUsersBookmarksRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsRecentRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift,line=13,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) +::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift,line=9,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift,line=11,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsAllRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=10,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=13,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=10,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=19,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=20,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=25,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=26,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=27,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=56,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=57,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=72,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=73,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=88,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=89,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=90,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=91,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=92,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=93,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=119,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=120,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=121,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=122,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersListMembershipsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/PostListsMembersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=12,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=16,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=22,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=26,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=30,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=34,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=40,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=46,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=50,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=56,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=60,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=64,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=68,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=74,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=78,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=84,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=92,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=96,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=100,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=104,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=108,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=112,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=116,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=122,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=128,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=132,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=136,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=140,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=144,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=148,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=152,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=156,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=160,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=166,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=170,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=174,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=178,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=182,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=186,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=190,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=194,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=198,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=202,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=208,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=212,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=216,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=220,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=224,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=228,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=236,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=240,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=244,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=250,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=254,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=258,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=262,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=266,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=270,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=274,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=278,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=282,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=286,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=290,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=294,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=300,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=304,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=308,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=314,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=320,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=324,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=328,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=332,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=336,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=340,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=344,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=348,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=352,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=356,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=360,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=364,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=368,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=372,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=376,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=380,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=384,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=388,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=392,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=398,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=402,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=406,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=410,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=417,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=421,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=428,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=440,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=447,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=451,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=455,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=461,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=465,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=469,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=473,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=477,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=483,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=487,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=491,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=495,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=501,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=505,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=509,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=515,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=519,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=523,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=529,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=533,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=537,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=541,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=547,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=551,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=555,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=559,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=567,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=571,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=575,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=579,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=583,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=587,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=593,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=597,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=601,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=607,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=611,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=615,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=621,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=625,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=629,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=633,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=639,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=643,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=647,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=651,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=657,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=661,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=665,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=669,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=673,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=677,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=681,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=685,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=689,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=693,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=697,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=701,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=705,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=709,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=713,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=717,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=721,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=727,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=731,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=735,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=741,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=745,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=751,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=755,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=759,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=763,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=767,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=771,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=777,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=781,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=785,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=789,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=795,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=799,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=803,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=811,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=815,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=819,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=823,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=827,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=831,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=837,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=841,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=847,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=851,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=855,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=859,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=863,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=869,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=873,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=879,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=883,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=887,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=891,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=410,col=39::Multiline parameters should have their surrounding brackets in a new line (multiline_parameters_brackets) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=411,col=64::Multiline parameters should have their surrounding brackets in a new line (multiline_parameters_brackets) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift,line=8,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersPinnedListsRequestV2.swift,line=8,col=1::Line should be 120 characters or less; currently it has 123 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersPinnedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersFollowedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListsMembersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersPinnedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetListsTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersOwnedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift,line=37,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift,line=65,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift,line=121,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/PostListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetListRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetListsMembersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersPinnedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersFollowedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=106,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=183,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=236,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=277,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=336,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=380,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=451,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=480,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=528,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=552,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=23,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=24,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=25,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=26,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=27,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=28,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=29,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=30,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=31,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=32,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=119,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=120,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=121,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=122,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=123,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=124,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=125,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=126,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=127,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=197,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=198,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=247,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=248,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=284,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=285,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=286,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=287,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=288,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=289,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=290,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=291,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=292,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=293,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=294,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=295,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=297,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=343,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=344,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=345,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=346,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=347,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=348,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=350,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=351,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=387,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=388,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=389,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=390,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=391,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=392,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=393,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=394,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=395,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=396,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=397,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=398,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=399,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=400,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=401,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=402,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=403,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=404,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=458,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=459,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=460,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=493,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=494,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=495,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=496,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=497,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/Users/Requests/GetUserRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByUsernameRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/PutListRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersMeRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Timeline/TimelineAPIv2.swift,line=24,col=1::Line should be 120 characters or less; currently it has 123 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetListsFollowersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift,line=18,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift,line=9,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift,line=10,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersMentionsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTimelinesReverseChronologicalRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=8,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=16,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=19,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=29,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=36,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=40,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=48,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=8,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=16,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=16,col=1::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=37,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=44,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=37,col=5::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) +::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=44,col=5::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) +::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) +::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=26,col=36::Arguments should be either on the same line, or one per line (multiline_arguments) +::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=9,col=10::Enum element name 'v1' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=10,col=10::Enum element name 'v2' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=19,col=16::Variable name 'v1' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=21,col=23::Variable name 'v2' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=42,col=25::Variable name 'v1' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=52,col=9::Variable name 'v1' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=53,col=25::Variable name 'v1' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=63,col=9::Variable name 'v2' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=64,col=25::Variable name 'v2' should be between 3 and 40 characters long (identifier_name) +::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=30,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=41,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=48,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=52,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=59,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=63,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=70,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=74,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=88,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=90,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=116,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=140,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=141,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=142,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=143,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=145,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=157,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=9,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=10,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=11,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/Extensions/Data.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/Extensions/Data.swift,line=28,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/Extensions/Data.swift,line=41,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/Extensions/Date.swift,line=10,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/Extensions/Date.swift,line=14,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/Extensions/Result.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/Extensions/Result.swift,line=14,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=37,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=105,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=176,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=180,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=121,col=55::Force unwrapping should be avoided (force_unwrapping) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=50,col=32::Variable name 'ln' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=50,col=43::Variable name 'lv' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=50,col=61::Variable name 'rn' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=50,col=72::Variable name 'rv' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=53,col=25::Variable name 'ln' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=53,col=36::Variable name 'lv' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=53,col=50::Variable name 'lf' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=53,col=64::Variable name 'lm' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=54,col=25::Variable name 'rn' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=54,col=36::Variable name 'rv' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=54,col=50::Variable name 'rf' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=54,col=64::Variable name 'rm' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=117,col=31::Variable name 'a' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=117,col=34::Variable name 'b' should be between 3 and 40 characters long (identifier_name) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=140,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=33,col=8::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=34,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=35,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=66,col=8::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=67,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=68,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=69,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=70,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=71,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=72,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=73,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=77,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=81,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=85,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=89,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=96,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=9,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=10,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=11,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=12,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=25,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=30,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=34,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=35,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/Extensions/DispatchQueue.swift,line=9,col=12::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/Extensions/String.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/Extensions/String.swift,line=12,col=97::Force unwrapping should be avoided (force_unwrapping) +::warning file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) +::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=18,col=57::Variable name 'c' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=38,col=57::Variable name 'c' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=57,col=53::Variable name 'c' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=76,col=57::Variable name 'c' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=112,col=64::Variable name 'c' should be between 3 and 40 characters long (identifier_name) +::warning file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=14,col=9::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=34,col=9::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=51,col=9::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=72,col=9::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=91,col=9::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=108,col=9::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/Extensions/Dictionary.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=11,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=11,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) +::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=74,col=44::Force unwrapping should be avoided (force_unwrapping) +::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=75,col=53::Force unwrapping should be avoided (force_unwrapping) +::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=11,col=1::Function should have 5 parameters or less: it currently has 7 (function_parameter_count) +::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=40,col=22::Arguments should be either on the same line, or one per line (multiline_arguments) +::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=40,col=32::Arguments should be either on the same line, or one per line (multiline_arguments) +::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=40,col=64::Arguments should be either on the same line, or one per line (multiline_arguments) +::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=41,col=43::Multiline arguments should have their surrounding brackets in a new line (multiline_arguments_brackets) +::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=45,col=6::Chained function calls should be either on the same line, or one per line (multiline_function_chains) +::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=9,col=10::Avoid naming `case` `none` as the compiler can think you mean `Optional.none`; consider using an Optional value instead (discouraged_none_name) +::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=8,col=8::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=9,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=12,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=25,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=27,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=116,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=117,col=9::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=118,col=9::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=9,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=11,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=19,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=22,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=25,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=27,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=30,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift,line=8,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift,line=81,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift,line=8,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) +::error file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift,line=8,col=10::Type name 'TwitterAPISessionSpecializedTask_' should only contain alphanumeric and other allowed characters (type_name) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDataTask.swift,line=24,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::error file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=43,col=16::Variable name 'v1' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=44,col=16::Variable name 'v2' should be between 3 and 40 characters long (identifier_name) +::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=8,col=6::open declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=9,col=19::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=42,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=43,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=44,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=46,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=47,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=54,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=97,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=149,col=6::open declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=150,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=151,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=158,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=160,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=149,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=21,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=46,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=80,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=8,col=55::Force unwrapping should be avoided (force_unwrapping) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=8,col=30::Prefer non-optional `Data(_:)` initializer when converting `String` to `Data` (non_optional_string_data_conversion) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=9,col=8::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/DeleteUsersBookmarksRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=8,col=8::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=9,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=10,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=11,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=12,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=14,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=256,col=1::Line should be 120 characters or less; currently it has 123 characters (line_length) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=54,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=59,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=64,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=69,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=74,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=79,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=84,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=101,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=149,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=162,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=174,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=186,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=213,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=224,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=236,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=243,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=252,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=262,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=271,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=276,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=281,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=286,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=9,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=11,col=9::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=14,col=9::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=18,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=24,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=26,col=9::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=28,col=9::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=31,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=36,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=42,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift,line=33,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift,line=84,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=21,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=32,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=8,col=8::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=9,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=10,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=13,col=8::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=14,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=15,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=9,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=10,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=14,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=15,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 124 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift,line=37,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift,line=44,col=1::Line should be 120 characters or less; currently it has 146 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostStatusesDestroyRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) +::warning file=Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesLookupRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostRetweetRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift,line=37,col=5::A doc comment should be attached to a declaration (orphaned_doc_comment) +::warning file=Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift,line=8,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift,line=38,col=8::TODOs should be resolved (↑) (todo) +::warning file=Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesShowRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 124 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift,line=37,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Friendships/Requests/DeleteUsersFollowingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 126 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostUnRetweetRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=11,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=12,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=13,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=14,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift,line=15,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift,line=14,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsListRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageListRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsPlaceRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsShowRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=10,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=17,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=29,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=45,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) +::error file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=25,col=10::Enum element name 'm' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=27,col=10::Enum element name 'ft' should be between 3 and 40 characters long (identifier_name) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=8,col=8::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=12,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=23,col=8::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=25,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=27,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=40,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=42,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=43,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift,line=14,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift,line=8,col=8::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift,line=9,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift,line=10,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift,line=9,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift,line=10,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift,line=14,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift,line=8,col=8::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift,line=9,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift,line=10,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoReverseGeocodeRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=37,col=1::Line should be 120 characters or less; currently it has 126 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=44,col=1::Line should be 120 characters or less; currently it has 130 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=51,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=58,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=65,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=72,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 128 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoPlaceIDRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 123 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift,line=1,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift,line=2,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift,line=14,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::error file=Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift,line=13,col=14::Enum element name 'ip' should be between 3 and 40 characters long (identifier_name) +::warning file=Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=6,col=6::open declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=7,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=8,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=9,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=10,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=11,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=12,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=13,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=14,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=15,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=16,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=17,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=18,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=19,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=20,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=21,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=22,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=23,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=25,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=6,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostUnFavoriteRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 134 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostFavoriteRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Favorite/Requests/GetFavoritesRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=37,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=44,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=51,col=1::Line should be 120 characters or less; currently it has 141 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=58,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=65,col=1::Line should be 120 characters or less; currently it has 140 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 145 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsListRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 130 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 135 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 134 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=37,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=44,col=1::Line should be 120 characters or less; currently it has 140 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=51,col=1::Line should be 120 characters or less; currently it has 149 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=58,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=65,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=72,col=1::Line should be 120 characters or less; currently it has 141 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=79,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=86,col=1::Line should be 120 characters or less; currently it has 141 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift,line=17,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 134 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift,line=224,col=63::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift,line=301,col=105::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift,line=302,col=109::Force unwrapping should be avoided (force_unwrapping) +::warning file=Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesUserTimelineRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Search/Requests/GetSearchTweetsRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesMentionsTimelineRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 130 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 128 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 141 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 144 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 148 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Search/Requests/GetSavedSearchesListRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 140 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 140 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 139 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 144 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 140 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 124 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 128 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 135 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 139 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 124 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 128 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 135 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=37,col=1::Line should be 120 characters or less; currently it has 134 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=44,col=1::Line should be 120 characters or less; currently it has 128 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=51,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=58,col=1::Line should be 120 characters or less; currently it has 135 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=65,col=1::Line should be 120 characters or less; currently it has 140 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=72,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=79,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=86,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=93,col=1::Line should be 120 characters or less; currently it has 139 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=100,col=1::Line should be 120 characters or less; currently it has 143 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=107,col=1::Line should be 120 characters or less; currently it has 140 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=114,col=1::Line should be 120 characters or less; currently it has 144 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=121,col=1::Line should be 120 characters or less; currently it has 143 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=128,col=1::Line should be 120 characters or less; currently it has 144 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=135,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 130 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Application/ApplicationAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 146 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersLookupRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 130 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 134 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 134 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 141 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileBannerRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 148 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileImageRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 147 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Help/HelpAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 128 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountSettingsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 134 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 148 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 152 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 139 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift,line=37,col=1::Line should be 120 characters or less; currently it has 145 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift,line=44,col=1::Line should be 120 characters or less; currently it has 152 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift,line=51,col=1::Line should be 120 characters or less; currently it has 151 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 135 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift,line=196,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift,line=203,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountRemoveProfileBannerRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 148 characters (line_length) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift,line=8,col=8::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift,line=9,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift,line=10,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift,line=12,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountVerifyCredentialsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 144 characters (line_length) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift,line=8,col=8::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift,line=9,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift,line=10,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift,line=11,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift,line=35,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift,line=27,col=8::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift,line=28,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift,line=29,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift,line=30,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift,line=31,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift,line=36,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift,line=55,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterAuthAPI.swift,line=6,col=6::open declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterAuthAPI.swift,line=7,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterAuthAPI.swift,line=8,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterAuthAPI.swift,line=10,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift,line=8,col=8::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift,line=9,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift,line=10,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift,line=15,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift,line=16,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift,line=40,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=8,col=8::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=9,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=10,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=12,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=13,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=14,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=16,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=17,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=18,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=20,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=36,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=46,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=58,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=74,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) +::warning file=Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift,line=8,col=8::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift,line=9,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift,line=10,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift,line=11,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift,line=12,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift,line=13,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterRateLimit.swift,line=12,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterRateLimit.swift,line=13,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterRateLimit.swift,line=18,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterRateLimit.swift,line=32,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/Help/Requests/GetHelpLanguagesRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) +::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=34,col=26::The disabled 'force_unwrapping' rule was already disabled (blanket_disable_command) +::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=34,col=26::Use 'next', 'this' or 'previous' instead to disable the 'force_unwrapping' rule once, or re-enable it as soon as possible` (blanket_disable_command) +::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) +::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=12,col=8::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=13,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=14,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=15,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=20,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=21,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=22,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=25,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPISession.swift,line=8,col=6::open declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPISession.swift,line=9,col=25::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPISession.swift,line=10,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPISession.swift,line=11,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPISession.swift,line=14,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPISession.swift,line=28,col=12::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPISession.swift,line=38,col=12::public declarations should be documented (missing_docs) diff --git a/scripts/gen_init_params.swift b/scripts/gen_init_params.swift index 77d54cb3..608fc31f 100644 --- a/scripts/gen_init_params.swift +++ b/scripts/gen_init_params.swift @@ -1,3 +1,8 @@ +// gen_init_params.swift +// Copyright (c) 2025 GetAutomaApp +// All source code and related assets are the property of GetAutomaApp. +// All rights reserved. + import Foundation /* @@ -47,15 +52,13 @@ func initializer(input: String) -> String { "self.\(name) = \(name)" } - let body = """ + return """ public init( \(initArgs.joined(separator: ",\n ")) ) { \(initBody.joined(separator: "\n ")) } """ - - return body } // Thanks https://gist.github.com/dmsl1805/ad9a14b127d0409cf9621dc13d237457 @@ -136,14 +139,13 @@ func body(input: String) -> String { return "p[\"\(snakeCaseName)\"] = \(name) " } } - let body = """ + return """ open var parameters: [String: Any] { var p = [String: Any]() \(params.joined(separator: "\n ")) return p } """ - return body } func exec() { From 469afc8a7042d749cbfef4efc09b17ad86fcb102 Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Sat, 17 May 2025 10:44:48 -0600 Subject: [PATCH 16/26] fix: fix issues --- .../TwitterAPI+Flat.generated.swift | 593 ++++++++++++++++++ .../TwitterAPIKit/TwitterAPIKitError.swift | 65 +- Sources/TwitterAPIKit/TwitterAPIRequest.swift | 50 +- .../TwitterAuthenticationMethod.swift | 80 ++- .../APIv1/Media/UploadMediaUtilTests.swift | 512 +++++++++------ .../Extensions/DataTests.swift | 12 +- .../Helper/CombinationsSequence.swift | 103 ++- .../Mock/MockURLProtocol.swift | 25 +- ...erAPISessionDelegatedStreamTaskTests.swift | 108 +++- .../TwitterAPIClientTests.swift | 54 +- .../TwitterAPIRequestTests.swift | 25 +- .../TwitterAPISessionTests.swift | 52 +- 12 files changed, 1348 insertions(+), 331 deletions(-) diff --git a/Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift b/Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift index 42f4f6ea..7b2cd303 100644 --- a/Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift +++ b/Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift @@ -6,225 +6,374 @@ // swift-format-ignore-file import Foundation +/// Extension providing OAuth authentication methods for the Twitter API. public extension TwitterAuthAPI { // MARK: - OAuth10aAPI + /// Requests an OAuth request token from Twitter. + /// - Parameter request: The request parameters for obtaining a request token. + /// - Returns: A data task that will return the raw response data. func postOAuthRequestTokenData(_ request: PostOAuthRequestTokenRequestV1) -> TwitterAPISessionDataTask { return oauth10a.postOAuthRequestTokenData(request) } + /// Requests an OAuth request token from Twitter and parses the response. + /// - Parameter request: The request parameters for obtaining a request token. + /// - Returns: A specialized task that will return a parsed OAuth token. func postOAuthRequestToken(_ request: PostOAuthRequestTokenRequestV1) -> TwitterAPISessionSpecializedTask { return oauth10a.postOAuthRequestToken(request) } + /// Creates a URL for authorizing the application with OAuth. + /// - Parameter request: The request parameters for creating the authorization URL. + /// - Returns: The authorization URL if it can be created, nil otherwise. func makeOAuthAuthorizeURL(_ request: GetOAuthAuthorizeRequestV1) -> URL? { return oauth10a.makeOAuthAuthorizeURL(request) } + /// Creates a URL for authenticating with OAuth. + /// - Parameter request: The request parameters for creating the authentication URL. + /// - Returns: The authentication URL if it can be created, nil otherwise. func makeOAuthAuthenticateURL(_ request: GetOAuthAuthenticateRequestV1) -> URL? { return oauth10a.makeOAuthAuthenticateURL(request) } + /// Requests an OAuth access token from Twitter. + /// - Parameter request: The request parameters for obtaining an access token. + /// - Returns: A data task that will return the raw response data. func postOAuthAccessTokenData(_ request: PostOAuthAccessTokenRequestV1) -> TwitterAPISessionDataTask { return oauth10a.postOAuthAccessTokenData(request) } + /// Requests an OAuth access token from Twitter and parses the response. + /// - Parameter request: The request parameters for obtaining an access token. + /// - Returns: A specialized task that will return a parsed OAuth access token. func postOAuthAccessToken(_ request: PostOAuthAccessTokenRequestV1) -> TwitterAPISessionSpecializedTask { return oauth10a.postOAuthAccessToken(request) } + /// Invalidates the current OAuth access token. + /// - Parameter request: The request parameters for invalidating the token. + /// - Returns: A JSON task that will return the response. func postInvalidateAccessToken(_ request: PostOAuthInvalidateTokenRequestV1) -> TwitterAPISessionJSONTask { return oauth10a.postInvalidateAccessToken(request) } // MARK: - OAuth20API + /// Requests an OAuth 2.0 bearer token from Twitter. + /// - Parameter request: The request parameters for obtaining a bearer token. + /// - Returns: A data task that will return the raw response data. func postOAuth2BearerTokenData(_ request: PostOAuth2TokenRequestV1) -> TwitterAPISessionDataTask { return oauth20.postOAuth2BearerTokenData(request) } + /// Requests an OAuth 2.0 bearer token from Twitter and parses the response. + /// - Parameter request: The request parameters for obtaining a bearer token. + /// - Returns: A specialized task that will return a parsed OAuth 2.0 bearer token. func postOAuth2BearerToken(_ request: PostOAuth2TokenRequestV1) -> TwitterAPISessionSpecializedTask { return oauth20.postOAuth2BearerToken(request) } + /// Invalidates the current OAuth 2.0 bearer token. + /// - Parameter request: The request parameters for invalidating the token. + /// - Returns: A JSON task that will return the response. func postInvalidateOAuth2BearerToken(_ request: PostOAuth2InvalidateTokenRequestV1) -> TwitterAPISessionJSONTask { return oauth20.postInvalidateOAuth2BearerToken(request) } + /// Creates a URL for OAuth 2.0 authorization. + /// - Parameter request: The request parameters for creating the authorization URL. + /// - Returns: The authorization URL if it can be created, nil otherwise. func makeOAuth2AuthorizeURL(_ request: GetOAuth2AuthorizeRequestV1) -> URL? { return oauth20.makeOAuth2AuthorizeURL(request) } + /// Requests an OAuth 2.0 access token from Twitter. + /// - Parameter request: The request parameters for obtaining an access token. + /// - Returns: A data task that will return the raw response data. func postOAuth2AccessTokenData(_ request: PostOAuth2AccessTokenRequestV2) -> TwitterAPISessionDataTask { return oauth20.postOAuth2AccessTokenData(request) } + /// Requests an OAuth 2.0 access token from Twitter and parses the response. + /// - Parameter request: The request parameters for obtaining an access token. + /// - Returns: A specialized task that will return a parsed OAuth 2.0 access token. func postOAuth2AccessToken(_ request: PostOAuth2AccessTokenRequestV2) -> TwitterAPISessionSpecializedTask { return oauth20.postOAuth2AccessToken(request) } + /// Requests a refresh of the OAuth 2.0 access token. + /// - Parameter request: The request parameters for refreshing the token. + /// - Returns: A data task that will return the raw response data. func postOAuth2RefreshTokenData(_ request: PostOAuth2RefreshTokenRequestV2) -> TwitterAPISessionDataTask { return oauth20.postOAuth2RefreshTokenData(request) } + /// Requests a refresh of the OAuth 2.0 access token and parses the response. + /// - Parameter request: The request parameters for refreshing the token. + /// - Returns: A specialized task that will return a parsed OAuth 2.0 access token. func postOAuth2RefreshToken(_ request: PostOAuth2RefreshTokenRequestV2) -> TwitterAPISessionSpecializedTask { return oauth20.postOAuth2RefreshToken(request) } + /// Revokes an OAuth 2.0 token. + /// - Parameter request: The request parameters for revoking the token. + /// - Returns: A data task that will return the response. func postOAuth2RevokeToken(_ request: PostOAuth2RevokeTokenRequestV2) -> TwitterAPISessionDataTask { return oauth20.postOAuth2RevokeToken(request) } } +/// Extension providing Twitter API v1 endpoints. public extension TwitterAPIv1 { // MARK: - AccountAPIv1 + /// Retrieves the current account settings. + /// - Parameter request: The request parameters for retrieving account settings. + /// - Returns: A JSON task that will return the account settings. func getAccountSetting(_ request: GetAccountSettingsRequestV1) -> TwitterAPISessionJSONTask { return account.getAccountSetting(request) } + /// Verifies the credentials of the current user. + /// - Parameter request: The request parameters for verifying credentials. + /// - Returns: A JSON task that will return the verification result. func getAccountVerify(_ request: GetAccountVerifyCredentialsRequestV1) -> TwitterAPISessionJSONTask { return account.getAccountVerify(request) } + /// Removes the profile banner for the authenticated user. + /// - Parameter request: The request parameters for removing the profile banner. + /// - Returns: A JSON task that will return the response. func postRemoveProfileBanner(_ request: PostAccountRemoveProfileBannerRequestV1) -> TwitterAPISessionJSONTask { return account.postRemoveProfileBanner(request) } + /// Updates the account settings for the authenticated user. + /// - Parameter request: The request parameters containing the new settings. + /// - Returns: A JSON task that will return the updated settings. func postAccountSettings(_ request: PostAccountSettingsRequestV1) -> TwitterAPISessionJSONTask { return account.postAccountSettings(request) } + /// Updates the profile information for the authenticated user. + /// - Parameter request: The request parameters containing the new profile information. + /// - Returns: A JSON task that will return the updated profile. func postAccountProfile(_ request: PostAccountUpdateProfileRequestV1) -> TwitterAPISessionJSONTask { return account.postAccountProfile(request) } + /// Updates the profile banner for the authenticated user. + /// - Parameter request: The request parameters containing the new banner image. + /// - Returns: A data task that will return the response. func postProfileBanner(_ request: PostAccountUpdateProfileBannerRequestV1) -> TwitterAPISessionDataTask { return account.postProfileBanner(request) } + /// Updates the profile image for the authenticated user. + /// - Parameter request: The request parameters containing the new profile image. + /// - Returns: A JSON task that will return the response. func postProfileImage(_ request: PostAccountUpdateProfileImageRequestV1) -> TwitterAPISessionJSONTask { return account.postProfileImage(request) } // MARK: - ApplicationAPIv1 + /// Retrieves the current rate limit status for the application. + /// - Parameter request: The request parameters for retrieving rate limit status. + /// - Returns: A JSON task that will return the rate limit information. func getRateLimit(_ request: GetApplicationRateLimitStatusRequestV1) -> TwitterAPISessionJSONTask { return application.getRateLimit(request) } // MARK: - BlockAndMuteAPIv1 + /// Retrieves the IDs of users blocked by the authenticated user. + /// - Parameter request: The request parameters for retrieving blocked user IDs. + /// - Returns: A JSON task that will return the list of blocked user IDs. func getBlockIDs(_ request: GetBlocksIDsRequestV1) -> TwitterAPISessionJSONTask { return blockAndMute.getBlockIDs(request) } + /// Retrieves detailed information about users blocked by the authenticated user. + /// - Parameter request: The request parameters for retrieving blocked users. + /// - Returns: A JSON task that will return the list of blocked users. func getBlockUsers(_ request: GetBlocksListRequestV1) -> TwitterAPISessionJSONTask { return blockAndMute.getBlockUsers(request) } + /// Retrieves the IDs of users muted by the authenticated user. + /// - Parameter request: The request parameters for retrieving muted user IDs. + /// - Returns: A JSON task that will return the list of muted user IDs. func getMuteIDs(_ request: GetMutesUsersIDsRequestV1) -> TwitterAPISessionJSONTask { return blockAndMute.getMuteIDs(request) } + /// Retrieves detailed information about users muted by the authenticated user. + /// - Parameter request: The request parameters for retrieving muted users. + /// - Returns: A JSON task that will return the list of muted users. func getMuteUsers(_ request: GetMutesUsersListRequestV1) -> TwitterAPISessionJSONTask { return blockAndMute.getMuteUsers(request) } + /// Blocks a user. + /// - Parameter request: The request parameters containing the user to block. + /// - Returns: A JSON task that will return the blocked user information. func postBlockUser(_ request: PostBlocksCreateRequestV1) -> TwitterAPISessionJSONTask { return blockAndMute.postBlockUser(request) } + /// Unblocks a user. + /// - Parameter request: The request parameters containing the user to unblock. + /// - Returns: A JSON task that will return the unblocked user information. func postUnblockUser(_ request: PostBlocksDestroyRequestV1) -> TwitterAPISessionJSONTask { return blockAndMute.postUnblockUser(request) } + /// Mutes a user. + /// - Parameter request: The request parameters containing the user to mute. + /// - Returns: A JSON task that will return the muted user information. func postMuteUser(_ request: PostMutesUsersCreateRequestV1) -> TwitterAPISessionJSONTask { return blockAndMute.postMuteUser(request) } + /// Unmutes a user. + /// - Parameter request: The request parameters containing the user to unmute. + /// - Returns: A JSON task that will return the unmuted user information. func postUnmuteUser(_ request: PostMutesUsersDestroyRequestV1) -> TwitterAPISessionJSONTask { return blockAndMute.postUnmuteUser(request) } + /// Reports a user as spam. + /// - Parameter request: The request parameters containing the user to report. + /// - Returns: A JSON task that will return the response. func postReportSpam(_ request: PostUsersReportSpamRequestV1) -> TwitterAPISessionJSONTask { return blockAndMute.postReportSpam(request) } // MARK: - CollectionAPIv1 + /// Retrieves entries from a collection. + /// - Parameter request: The request parameters for retrieving collection entries. + /// - Returns: A JSON task that will return the collection entries. func getCollectionEntries(_ request: GetCollectionsEntriesRequestV1) -> TwitterAPISessionJSONTask { return collection.getCollectionEntries(request) } + /// Retrieves a list of collections owned by a user. + /// - Parameter request: The request parameters for retrieving collections. + /// - Returns: A JSON task that will return the list of collections. func getCollections(_ request: GetCollectionsListRequestV1) -> TwitterAPISessionJSONTask { return collection.getCollections(request) } + /// Retrieves information about a specific collection. + /// - Parameter request: The request parameters for retrieving the collection. + /// - Returns: A JSON task that will return the collection information. func getCollection(_ request: GetCollectionsShowRequestV1) -> TwitterAPISessionJSONTask { return collection.getCollection(request) } + /// Creates a new collection. + /// - Parameter request: The request parameters for creating the collection. + /// - Returns: A JSON task that will return the created collection. func postCreateCollection(_ request: PostCollectionsCreateRequestV1) -> TwitterAPISessionJSONTask { return collection.postCreateCollection(request) } + /// Deletes a collection. + /// - Parameter request: The request parameters for deleting the collection. + /// - Returns: A JSON task that will return the response. func postDestroyCollection(_ request: PostCollectionsDestroyRequestV1) -> TwitterAPISessionJSONTask { return collection.postDestroyCollection(request) } + /// Adds a tweet to a collection. + /// - Parameter request: The request parameters for adding the tweet. + /// - Returns: A JSON task that will return the response. func postCollectionAddEntry(_ request: PostCollectionsEntriesAddRequestV1) -> TwitterAPISessionJSONTask { return collection.postCollectionAddEntry(request) } + /// Curates tweets in a collection. + /// - Parameter request: The request parameters for curating the collection. + /// - Returns: A JSON task that will return the response. func postCollectionCurate(_ request: PostCollectionsEntriesCurateRequestV1) -> TwitterAPISessionJSONTask { return collection.postCollectionCurate(request) } + /// Moves a tweet to a different position in a collection. + /// - Parameter request: The request parameters for moving the tweet. + /// - Returns: A JSON task that will return the response. func postCollectionMoveEntry(_ request: PostCollectionsEntriesMoveRequestV1) -> TwitterAPISessionJSONTask { return collection.postCollectionMoveEntry(request) } + /// Removes a tweet from a collection. + /// - Parameter request: The request parameters for removing the tweet. + /// - Returns: A JSON task that will return the response. func postCollectionRemoveEntry(_ request: PostCollectionsEntriesRemoveRequestV1) -> TwitterAPISessionJSONTask { return collection.postCollectionRemoveEntry(request) } + /// Updates a collection's metadata. + /// - Parameter request: The request parameters containing the updated metadata. + /// - Returns: A JSON task that will return the updated collection. func postCollectionUpdate(_ request: PostCollectionsUpdateRequestV1) -> TwitterAPISessionJSONTask { return collection.postCollectionUpdate(request) } // MARK: - DirectMessageAPIv1 + /// Sends a new direct message. + /// - Parameter request: The request parameters containing the message content. + /// - Returns: A JSON task that will return the sent message. func postDirectMessage(_ request: PostDirectMessageRequestV1) -> TwitterAPISessionJSONTask { return directMessage.postDirectMessage(request) } + /// Deletes a direct message. + /// - Parameter request: The request parameters containing the message to delete. + /// - Returns: A data task that will return the response. func deleteDirectMessage(_ request: DeleteDirectMessageRequestV1) -> TwitterAPISessionDataTask { return directMessage.deleteDirectMessage(request) } + /// Retrieves a specific direct message. + /// - Parameter request: The request parameters for retrieving the message. + /// - Returns: A JSON task that will return the message. func getDirectMessage(_ request: GetDirectMessageRequestV1) -> TwitterAPISessionJSONTask { return directMessage.getDirectMessage(request) } + /// Retrieves a list of direct messages. + /// - Parameter request: The request parameters for retrieving messages. + /// - Returns: A JSON task that will return the list of messages. func getDirectMessageList(_ request: GetDirectMessageListRequestV1) -> TwitterAPISessionJSONTask { return directMessage.getDirectMessageList(request) } + /// Marks a direct message as read. + /// - Parameter request: The request parameters containing the message to mark. + /// - Returns: A data task that will return the response. func postDirectMessageMarkRead(_ request: PostDirectMessagesMarkReadRequestV1) -> TwitterAPISessionDataTask { return directMessage.postDirectMessageMarkRead(request) } + /// Indicates that the user is typing a direct message. + /// - Parameter request: The request parameters for the typing indicator. + /// - Returns: A data task that will return the response. func postDirectMessageTypingIndicator(_ request: PostDirectMessagesIndicateTypingRequestV1) -> TwitterAPISessionDataTask { @@ -233,180 +382,308 @@ public extension TwitterAPIv1 { // MARK: - FavoriteAPIv1 + /// Favorites (likes) a tweet. + /// - Parameter request: The request parameters containing the tweet to favorite. + /// - Returns: A JSON task that will return the favorited tweet. func postFavorite(_ request: PostFavoriteRequestV1) -> TwitterAPISessionJSONTask { return favorite.postFavorite(request) } + /// Removes a favorite (unlike) from a tweet. + /// - Parameter request: The request parameters containing the tweet to unfavorite. + /// - Returns: A JSON task that will return the unfavorited tweet. func postUnFavorite(_ request: PostUnFavoriteRequestV1) -> TwitterAPISessionJSONTask { return favorite.postUnFavorite(request) } + /// Retrieves tweets favorited by a user. + /// - Parameter request: The request parameters containing the user identifier. + /// - Returns: A JSON task that will return the list of favorited tweets. func getFavorites(_ request: GetFavoritesRequestV1) -> TwitterAPISessionJSONTask { return favorite.getFavorites(request) } // MARK: - FriendshipsAPIv1 + /// Retrieves IDs of users following a specified user. + /// - Parameter request: The request parameters containing the user identifier. + /// - Returns: A JSON task that will return the list of follower IDs. func getFollowerIDs(_ request: GetFollowersIDsRequestV1) -> TwitterAPISessionJSONTask { return friendships.getFollowerIDs(request) } + /// Retrieves detailed information about users following a specified user. + /// - Parameter request: The request parameters containing the user identifier. + /// - Returns: A JSON task that will return the list of followers. func getFollowers(_ request: GetFollowersListRequestV1) -> TwitterAPISessionJSONTask { return friendships.getFollowers(request) } + /// Retrieves IDs of users a specified user is following. + /// - Parameter request: The request parameters containing the user identifier. + /// - Returns: A JSON task that will return the list of friend IDs. func getFriendIDs(_ request: GetFriendsIDsRequestV1) -> TwitterAPISessionJSONTask { return friendships.getFriendIDs(request) } + /// Retrieves detailed information about users a specified user is following. + /// - Parameter request: The request parameters containing the user identifier. + /// - Returns: A JSON task that will return the list of friends. func getFriends(_ request: GetFriendsListRequestV1) -> TwitterAPISessionJSONTask { return friendships.getFriends(request) } + /// Retrieves incoming follow requests for the authenticated user. + /// - Parameter request: The request parameters for retrieving incoming requests. + /// - Returns: A JSON task that will return the list of pending followers. func getFriendshipsIncoming(_ request: GetFriendshipsIncomingRequestV1) -> TwitterAPISessionJSONTask { return friendships.getFriendshipsIncoming(request) } + /// Retrieves detailed friendship information between users. + /// - Parameter request: The request parameters containing the user identifiers. + /// - Returns: A JSON task that will return the friendship details. func getFriendshipsLookup(_ request: GetFriendshipsLookupRequestV1) -> TwitterAPISessionJSONTask { return friendships.getFriendshipsLookup(request) } + /// Retrieves IDs of users whose retweets are disabled. + /// - Parameter request: The request parameters for retrieving no-retweet IDs. + /// - Returns: A JSON task that will return the list of user IDs. func getFriendshipsNoRetweetsIDs(_ request: GetFriendshipsNoRetweetsIDsRequestV1) -> TwitterAPISessionJSONTask { return friendships.getFriendshipsNoRetweetsIDs(request) } + /// Retrieves outgoing follow requests from the authenticated user. + /// - Parameter request: The request parameters for retrieving outgoing requests. + /// - Returns: A JSON task that will return the list of pending friends. func getFriendshipsOutgoing(_ request: GetFriendshipsOutgoingRequestV1) -> TwitterAPISessionJSONTask { return friendships.getFriendshipsOutgoing(request) } + /// Retrieves detailed friendship information between two users. + /// - Parameter request: The request parameters containing the user identifiers. + /// - Returns: A JSON task that will return the friendship details. func getFriendships(_ request: GetFriendshipsShowRequestV1) -> TwitterAPISessionJSONTask { return friendships.getFriendships(request) } + /// Follows a user. + /// - Parameter request: The request parameters containing the user to follow. + /// - Returns: A JSON task that will return the followed user information. func postFollowUser(_ request: PostFriendshipsCreateRequestV1) -> TwitterAPISessionJSONTask { return friendships.postFollowUser(request) } + /// Unfollows a user. + /// - Parameter request: The request parameters containing the user to unfollow. + /// - Returns: A JSON task that will return the unfollowed user information. func postUnfollowUser(_ request: PostFriendshipsDestroyRequestV1) -> TwitterAPISessionJSONTask { return friendships.postUnfollowUser(request) } + /// Updates friendship settings with a user. + /// - Parameter request: The request parameters containing the settings to update. + /// - Returns: A JSON task that will return the updated friendship information. func postFriendshipsUpdate(_ request: PostFriendshipsUpdateRequestV1) -> TwitterAPISessionJSONTask { return friendships.postFriendshipsUpdate(request) } // MARK: - GeoAPIv1 + /// Retrieves location information for given coordinates. + /// - Parameter request: The request parameters containing the coordinates. + /// - Returns: A JSON task that will return the location information. func getReverseGeocode(_ request: GetGeoReverseGeocodeRequestV1) -> TwitterAPISessionJSONTask { return geo.getReverseGeocode(request) } + /// Retrieves information about a specific place. + /// - Parameter request: The request parameters containing the place ID. + /// - Returns: A JSON task that will return the place information. func getGeoPlace(_ request: GetGeoPlaceIDRequestV1) -> TwitterAPISessionJSONTask { return geo.getGeoPlace(request) } + /// Searches for places matching specified criteria. + /// - Parameter request: The request parameters containing the search criteria. + /// - Returns: A JSON task that will return the matching places. func searchGeo(_ request: GetGeoSearchRequestV1) -> TwitterAPISessionJSONTask { return geo.searchGeo(request) } // MARK: - HelpAPIv1 + /// Retrieves the list of languages supported by Twitter. + /// - Parameter request: The request parameters for retrieving languages. + /// - Returns: A JSON task that will return the supported languages. func getSupportedLanguages(_ request: GetHelpLanguagesRequestV1) -> TwitterAPISessionJSONTask { return help.getSupportedLanguages(request) } // MARK: - ListAPIv1 + /// Retrieves lists owned by a user. + /// - Parameter request: The request parameters containing the user identifier. + /// - Returns: A JSON task that will return the owned lists. func getLists(_ request: GetListsListRequestV1) -> TwitterAPISessionJSONTask { return list.getLists(request) } + /// Retrieves members of a list. + /// - Parameter request: The request parameters containing the list ID. + /// - Returns: A JSON task that will return the list members. func getListMembers(_ request: GetListsMembersRequestV1) -> TwitterAPISessionJSONTask { return list.getListMembers(request) } + /// Checks if a user is a member of a list. + /// - Parameter request: The request parameters containing the user and list identifiers. + /// - Returns: A JSON task that will return the membership status. func getListMember(_ request: GetListsMembersShowRequestV1) -> TwitterAPISessionJSONTask { return list.getListMember(request) } + /// Retrieves lists that a user is a member of. + /// - Parameter request: The request parameters containing the user identifier. + /// - Returns: A JSON task that will return the list memberships. func getListMemberships(_ request: GetListsMembershipsRequestV1) -> TwitterAPISessionJSONTask { return list.getListMemberships(request) } + /// Retrieves lists owned by a user. + /// - Parameter request: The request parameters containing the user identifier. + /// - Returns: A JSON task that will return the owned lists. func getListOwnerships(_ request: GetListsOwnershipsRequestV1) -> TwitterAPISessionJSONTask { return list.getListOwnerships(request) } + /// Retrieves information about a specific list. + /// - Parameter request: The request parameters containing the list ID. + /// - Returns: A JSON task that will return the list information. func getList(_ request: GetListsShowRequestV1) -> TwitterAPISessionJSONTask { return list.getList(request) } + /// Retrieves tweets from a list. + /// - Parameter request: The request parameters containing the list ID. + /// - Returns: A JSON task that will return the list tweets. func getListStatuses(_ request: GetListsStatusesRequestV1) -> TwitterAPISessionJSONTask { return list.getListStatuses(request) } + /// Retrieves subscribers of a list. + /// - Parameter request: The request parameters containing the list ID. + /// - Returns: A JSON task that will return the list subscribers. func getListSubscribers(_ request: GetListsSubscribersRequestV1) -> TwitterAPISessionJSONTask { return list.getListSubscribers(request) } + /// Checks if a user is subscribed to a list. + /// - Parameter request: The request parameters containing the user and list identifiers. + /// - Returns: A JSON task that will return the subscription status. func getListSubscriber(_ request: GetListsSubscribersShowRequestV1) -> TwitterAPISessionJSONTask { return list.getListSubscriber(request) } + /// Retrieves lists that a user is subscribed to. + /// - Parameter request: The request parameters containing the user identifier. + /// - Returns: A JSON task that will return the subscribed lists. func getListSubscriptions(_ request: GetListsSubscriptionsRequestV1) -> TwitterAPISessionJSONTask { return list.getListSubscriptions(request) } + /// Creates a new list. + /// - Parameter request: The request parameters for creating the list. + /// - Returns: A JSON task that will return the created list. func postCreateList(_ request: PostListsCreateRequestV1) -> TwitterAPISessionJSONTask { return list.postCreateList(request) } + /// Deletes a list. + /// - Parameter request: The request parameters containing the list to delete. + /// - Returns: A JSON task that will return the response. func postDestroyList(_ request: PostListsDestroyRequestV1) -> TwitterAPISessionJSONTask { return list.postDestroyList(request) } + /// Adds a member to a list. + /// - Parameter request: The request parameters containing the user and list. + /// - Returns: A JSON task that will return the response. func postAddListMember(_ request: PostListsMembersCreateRequestV1) -> TwitterAPISessionJSONTask { return list.postAddListMember(request) } + /// Adds multiple members to a list. + /// - Parameter request: The request parameters containing the users and list. + /// - Returns: A JSON task that will return the response. func postAddListMembers(_ request: PostListsMembersCreateAllRequestV1) -> TwitterAPISessionJSONTask { return list.postAddListMembers(request) } + /// Removes a member from a list. + /// - Parameter request: The request parameters containing the user and list. + /// - Returns: A JSON task that will return the response. func postRemoveListMember(_ request: PostListsMembersDestroyRequestV1) -> TwitterAPISessionJSONTask { return list.postRemoveListMember(request) } + /// Removes multiple members from a list. + /// - Parameter request: The request parameters containing the users and list. + /// - Returns: A JSON task that will return the response. func postRemoveListMembers(_ request: PostListsMembersDestroyAllRequestV1) -> TwitterAPISessionJSONTask { return list.postRemoveListMembers(request) } + /// Subscribes the authenticated user to a list. + /// - Parameter request: The request parameters containing the list to subscribe to. + /// - Returns: A JSON task that will return the response. func postSubscribeList(_ request: PostListsSubscribersCreateRequestV1) -> TwitterAPISessionJSONTask { return list.postSubscribeList(request) } + /// Unsubscribes the authenticated user from a list. + /// - Parameter request: The request parameters containing the list to unsubscribe from. + /// - Returns: A JSON task that will return the response. func postUnsubscribeList(_ request: PostListsSubscribersDestroyRequestV1) -> TwitterAPISessionJSONTask { return list.postUnsubscribeList(request) } + /// Updates a list's metadata. + /// - Parameter request: The request parameters containing the updated information. + /// - Returns: A JSON task that will return the updated list. func postUpdateList(_ request: PostListsUpdateRequestV1) -> TwitterAPISessionJSONTask { return list.postUpdateList(request) } // MARK: - MediaAPIv1 + /// Retrieves the status of a media upload. + /// - Parameter request: The request parameters for checking upload status. + /// - Returns: A JSON task that will return the upload status. func getUploadMediaStatus(_ request: GetUploadMediaStatusRequestV1) -> TwitterAPISessionJSONTask { return media.getUploadMediaStatus(request) } + /// Initializes a media upload. + /// - Parameter request: The request parameters for initializing the upload. + /// - Returns: A JSON task that will return the initialization response. func uploadMediaInit(_ request: UploadMediaInitRequestV1) -> TwitterAPISessionJSONTask { return media.uploadMediaInit(request) } + /// Appends media data to an initialized upload. + /// - Parameter request: The request parameters containing the media chunk. + /// - Returns: A JSON task that will return the append response. func uploadMediaAppend(_ request: UploadMediaAppendRequestV1) -> TwitterAPISessionJSONTask { return media.uploadMediaAppend(request) } + /// Appends media data in chunks to an initialized upload. + /// - Parameters: + /// - request: The request parameters containing the media data. + /// - maxBytes: The maximum size of each chunk in bytes (default: 5MB). + /// - Returns: An array of tasks that will return the media ID for each chunk. func uploadMediaAppendSplitChunks(_ request: UploadMediaAppendRequestV1, maxBytes: Int = 5_242_880) -> [TwitterAPISessionSpecializedTask< String /* mediaID */ @@ -414,10 +691,17 @@ public extension TwitterAPIv1 { return media.uploadMediaAppendSplitChunks(request, maxBytes: maxBytes) } + /// Finalizes a media upload. + /// - Parameter request: The request parameters for finalizing the upload. + /// - Returns: A JSON task that will return the finalization response. func uploadMediaFinalize(_ request: UploadMediaFinalizeRequestV1) -> TwitterAPISessionJSONTask { return media.uploadMediaFinalize(request) } + /// Uploads media in a single operation. + /// - Parameters: + /// - parameters: The parameters for the media upload. + /// - completionHandler: A closure to be called with the upload response. func uploadMedia( _ parameters: UploadMediaRequestParameters, completionHandler: @escaping (TwitterAPIResponse) -> Void @@ -425,6 +709,11 @@ public extension TwitterAPIv1 { media.uploadMedia(parameters, completionHandler: completionHandler) } + /// Waits for media processing to complete with a specified initial wait time. + /// - Parameters: + /// - mediaID: The ID of the media to wait for. + /// - initialWaitSec: The number of seconds to wait initially. + /// - completionHandler: A closure to be called with the processing status. func waitMediaProcessing( mediaID: String, initialWaitSec: Int, @@ -437,6 +726,10 @@ public extension TwitterAPIv1 { ) } + /// Waits for media processing to complete with default wait time. + /// - Parameters: + /// - mediaID: The ID of the media to wait for. + /// - completionHandler: A closure to be called with the processing status. func waitMediaProcessing( mediaID: String, completionHandler: @escaping (TwitterAPIResponse) -> Void @@ -444,118 +737,196 @@ public extension TwitterAPIv1 { media.waitMediaProcessing(mediaID: mediaID, completionHandler: completionHandler) } + /// Creates metadata for uploaded media. + /// - Parameter request: The request parameters containing the metadata. + /// - Returns: A data task that will return the response. func createMediaMetadata(_ request: PostMediaMetadataCreateRequestV1) -> TwitterAPISessionDataTask { return media.createMediaMetadata(request) } + /// Creates subtitles for media. + /// - Parameter request: The request parameters containing the subtitle data. + /// - Returns: A data task that will return the response. func createSubtitle(_ request: PostMediaSubtitlesCreateRequestV1) -> TwitterAPISessionDataTask { return media.createSubtitle(request) } + /// Deletes subtitles from media. + /// - Parameter request: The request parameters identifying the subtitles to delete. + /// - Returns: A data task that will return the response. func deleteSubtitle(_ request: PostMediaSubtitlesDeleteRequestV1) -> TwitterAPISessionDataTask { return media.deleteSubtitle(request) } // MARK: - RetweetAPIv1 + /// Creates a retweet of a tweet. + /// - Parameter request: The request parameters containing the tweet to retweet. + /// - Returns: A JSON task that will return the retweet. func postRetweet(_ request: PostRetweetRequestV1) -> TwitterAPISessionJSONTask { return retweet.postRetweet(request) } + /// Removes a retweet of a tweet. + /// - Parameter request: The request parameters containing the retweet to remove. + /// - Returns: A JSON task that will return the response. func postUnRetweet(_ request: PostUnRetweetRequestV1) -> TwitterAPISessionJSONTask { return retweet.postUnRetweet(request) } + /// Retrieves retweets of a tweet. + /// - Parameter request: The request parameters for retrieving retweets. + /// - Returns: A JSON task that will return the list of retweets. func getRetweets(_ request: GetRetweetsRequestV1) -> TwitterAPISessionJSONTask { return retweet.getRetweets(request) } + /// Retrieves tweets of the authenticated user that have been retweeted. + /// - Parameter request: The request parameters for retrieving retweeted tweets. + /// - Returns: A JSON task that will return the list of tweets. func getRetweetsOfMe(_ request: GetRetweetsOfMeRequestV1) -> TwitterAPISessionJSONTask { return retweet.getRetweetsOfMe(request) } + /// Retrieves users who have retweeted a tweet. + /// - Parameter request: The request parameters for retrieving retweeters. + /// - Returns: A JSON task that will return the list of users. func getRetweeters(_ request: GetRetweetersRequestV1) -> TwitterAPISessionJSONTask { return retweet.getRetweeters(request) } // MARK: - SearchAPIv1 + /// Searches for tweets matching a query. + /// - Parameter request: The request parameters containing the search query. + /// - Returns: A JSON task that will return the matching tweets. func searchTweets(_ request: GetSearchTweetsRequestV1) -> TwitterAPISessionJSONTask { return search.searchTweets(request) } + /// Retrieves the authenticated user's saved searches. + /// - Parameter request: The request parameters for retrieving saved searches. + /// - Returns: A JSON task that will return the list of saved searches. func getSavedSearches(_ request: GetSavedSearchesListRequestV1) -> TwitterAPISessionJSONTask { return search.getSavedSearches(request) } + /// Creates a new saved search for the authenticated user. + /// - Parameter request: The request parameters containing the search to save. + /// - Returns: A JSON task that will return the saved search. func postCreateSavedSearch(_ request: PostSavedSearchesCreateRequestV1) -> TwitterAPISessionJSONTask { return search.postCreateSavedSearch(request) } + /// Deletes a saved search belonging to the authenticated user. + /// - Parameter request: The request parameters containing the search to delete. + /// - Returns: A JSON task that will return the response. func postDestroySavedSearch(_ request: PostSavedSearchesCreateRequestV1) -> TwitterAPISessionJSONTask { return search.postDestroySavedSearch(request) } // MARK: - TimelineAPIv1 + /// Retrieves the authenticated user's home timeline. + /// - Parameter request: The request parameters for retrieving the timeline. + /// - Returns: A JSON task that will return the timeline tweets. func getHomeTimeline(_ request: GetStatusesHomeTimelineRequestV1) -> TwitterAPISessionJSONTask { return timeline.getHomeTimeline(request) } + /// Retrieves tweets mentioning the authenticated user. + /// - Parameter request: The request parameters for retrieving mentions. + /// - Returns: A JSON task that will return the mentions. func getMentionsTimeline(_ request: GetStatusesMentionsTimelineRequestV1) -> TwitterAPISessionJSONTask { return timeline.getMentionsTimeline(request) } + /// Retrieves a user's timeline. + /// - Parameter request: The request parameters for retrieving the user timeline. + /// - Returns: A JSON task that will return the timeline tweets. func getUserTimeline(_ request: GetStatusesUserTimelineRequestV1) -> TwitterAPISessionJSONTask { return timeline.getUserTimeline(request) } // MARK: - TrendAPIv1 + /// Retrieves locations where trending topics are available. + /// - Parameter request: The request parameters for retrieving trend locations. + /// - Returns: A JSON task that will return the available locations. func getTrendsAvailable(_ request: GetTrendsAvailableRequestV1) -> TwitterAPISessionJSONTask { return trend.getTrendsAvailable(request) } + /// Retrieves locations closest to a specified location where trends are available. + /// - Parameter request: The request parameters containing the location. + /// - Returns: A JSON task that will return the closest trend locations. func getTrendsClosest(_ request: GetTrendsClosestRequestV1) -> TwitterAPISessionJSONTask { return trend.getTrendsClosest(request) } + /// Retrieves trending topics for a specific location. + /// - Parameter request: The request parameters containing the location. + /// - Returns: A JSON task that will return the trending topics. func getTrends(_ request: GetTrendsPlaceRequestV1) -> TwitterAPISessionJSONTask { return trend.getTrends(request) } // MARK: - TweetAPIv1 + /// Posts a new tweet. + /// - Parameter request: The request parameters containing the tweet content. + /// - Returns: A JSON task that will return the posted tweet. func postUpdateStatus(_ request: PostStatusesUpdateRequestV1) -> TwitterAPISessionJSONTask { return tweet.postUpdateStatus(request) } + /// Deletes a tweet. + /// - Parameter request: The request parameters containing the tweet to delete. + /// - Returns: A JSON task that will return the response. func postDestroyStatus(_ request: PostStatusesDestroyRequestV1) -> TwitterAPISessionJSONTask { return tweet.postDestroyStatus(request) } + /// Retrieves a single tweet. + /// - Parameter request: The request parameters containing the tweet ID. + /// - Returns: A JSON task that will return the tweet. func getShowStatus(_ request: GetStatusesShowRequestV1) -> TwitterAPISessionJSONTask { return tweet.getShowStatus(request) } + /// Retrieves multiple tweets by their IDs. + /// - Parameter request: The request parameters containing the tweet IDs. + /// - Returns: A JSON task that will return the tweets. func getLookupStatuses(_ request: GetStatusesLookupRequestV1) -> TwitterAPISessionJSONTask { return tweet.getLookupStatuses(request) } // MARK: - UserAPIv1 + /// Retrieves detailed information about multiple users. + /// - Parameter request: The request parameters containing the user identifiers. + /// - Returns: A JSON task that will return the user information. func getUsers(_ request: GetUsersLookupRequestV1) -> TwitterAPISessionJSONTask { return user.getUsers(request) } + /// Retrieves detailed information about a single user. + /// - Parameter request: The request parameters containing the user identifier. + /// - Returns: A JSON task that will return the user information. func getUser(_ request: GetUsersShowRequestV1) -> TwitterAPISessionJSONTask { return user.getUser(request) } + /// Searches for users matching a query. + /// - Parameter request: The request parameters containing the search query. + /// - Returns: A JSON task that will return the matching users. func searchUser(_ request: GetUsersShowRequestV1) -> TwitterAPISessionJSONTask { return user.searchUser(request) } + /// Retrieves a user's profile banner. + /// - Parameter request: The request parameters containing the user identifier. + /// - Returns: A JSON task that will return the banner information. func getUserProfileBanner(_ request: GetUsersProfileBannerRequestV1) -> TwitterAPISessionJSONTask { return user.getUserProfileBanner(request) } @@ -564,242 +935,407 @@ public extension TwitterAPIv1 { public extension TwitterAPIv2 { // MARK: - BlockAndMuteAPIv2 + /// Retrieves users blocked by the authenticated user. + /// - Parameter request: The request parameters for retrieving blocked users. + /// - Returns: A JSON task that will return the list of blocked users. func getBlockUsers(_ request: GetUsersBlockingRequestV2) -> TwitterAPISessionJSONTask { return blockAndMute.getBlockUsers(request) } + /// Blocks a user. + /// - Parameter request: The request parameters containing the user to block. + /// - Returns: A JSON task that will return the response. func blockUser(_ request: PostUsersBlockingRequestV2) -> TwitterAPISessionJSONTask { return blockAndMute.blockUser(request) } + /// Unblocks a user. + /// - Parameter request: The request parameters containing the user to unblock. + /// - Returns: A JSON task that will return the response. func unblockUser(_ request: DeleteUsersBlockingRequestV2) -> TwitterAPISessionJSONTask { return blockAndMute.unblockUser(request) } + /// Retrieves users muted by the authenticated user. + /// - Parameter request: The request parameters for retrieving muted users. + /// - Returns: A JSON task that will return the list of muted users. func getMuteUsers(_ request: GetUsersMutingRequestV2) -> TwitterAPISessionJSONTask { return blockAndMute.getMuteUsers(request) } + /// Mutes a user. + /// - Parameter request: The request parameters containing the user to mute. + /// - Returns: A JSON task that will return the response. func muteUser(_ request: PostUsersMutingRequestV2) -> TwitterAPISessionJSONTask { return blockAndMute.muteUser(request) } + /// Unmutes a user. + /// - Parameter request: The request parameters containing the user to unmute. + /// - Returns: A JSON task that will return the response. func unmuteUser(_ request: DeleteUsersMutingRequestV2) -> TwitterAPISessionJSONTask { return blockAndMute.unmuteUser(request) } // MARK: - BookmarksAPIv2 + /// Retrieves the authenticated user's bookmarked tweets. + /// - Parameter request: The request parameters for retrieving bookmarks. + /// - Returns: A JSON task that will return the bookmarked tweets. func getBookmarks(_ request: GetUsersBookmarksRequestV2) -> TwitterAPISessionJSONTask { return bookmarks.getBookmarks(request) } + /// Bookmarks a tweet. + /// - Parameter request: The request parameters containing the tweet to bookmark. + /// - Returns: A JSON task that will return the response. func createBookmark(_ request: PostUsersBookmarksRequestV2) -> TwitterAPISessionJSONTask { return bookmarks.createBookmark(request) } + /// Removes a tweet from bookmarks. + /// - Parameter request: The request parameters containing the tweet to remove. + /// - Returns: A JSON task that will return the response. func deleteBookmark(_ request: DeleteUsersBookmarksRequestV2) -> TwitterAPISessionJSONTask { return bookmarks.deleteBookmark(request) } // MARK: - ComplianceAPIv2 + /// Retrieves information about a specific compliance job. + /// - Parameter request: The request parameters containing the job ID. + /// - Returns: A JSON task that will return the job information. func getComplianceJob(_ request: GetComplianceJobRequestV2) -> TwitterAPISessionJSONTask { return compliance.getComplianceJob(request) } + /// Retrieves a list of compliance jobs. + /// - Parameter request: The request parameters for retrieving compliance jobs. + /// - Returns: A JSON task that will return the list of jobs. func getComplianceJobj(_ request: GetComplianceJobsRequestV2) -> TwitterAPISessionJSONTask { return compliance.getComplianceJobj(request) } + /// Creates a new compliance job. + /// - Parameter request: The request parameters for creating the job. + /// - Returns: A JSON task that will return the created job. func createComplianceJob(_ request: PostComplianceJobsRequestV2) -> TwitterAPISessionJSONTask { return compliance.createComplianceJob(request) } // MARK: - FriendshipsAPIv2 + /// Retrieves users that a specified user is following. + /// - Parameter request: The request parameters containing the user identifier. + /// - Returns: A JSON task that will return the list of followed users. func getFollowing(_ request: GetUsersFollowingRequestV2) -> TwitterAPISessionJSONTask { return friendships.getFollowing(request) } + /// Retrieves followers of a specified user. + /// - Parameter request: The request parameters containing the user identifier. + /// - Returns: A JSON task that will return the list of followers. func getFollowers(_ request: GetUsersFollowersRequestV2) -> TwitterAPISessionJSONTask { return friendships.getFollowers(request) } + /// Follows a user. + /// - Parameter request: The request parameters containing the user to follow. + /// - Returns: A JSON task that will return the response. func follow(_ request: PostUsersFollowingRequestV2) -> TwitterAPISessionJSONTask { return friendships.follow(request) } + /// Unfollows a user. + /// - Parameter request: The request parameters containing the user to unfollow. + /// - Returns: A JSON task that will return the response. func unfollow(_ request: DeleteUsersFollowingRequestV2) -> TwitterAPISessionJSONTask { return friendships.unfollow(request) } // MARK: - LikeAPIv2 + /// Retrieves users who have liked a tweet. + /// - Parameter request: The request parameters containing the tweet ID. + /// - Returns: A JSON task that will return the list of users. func getLikingUsers(_ request: GetTweetsLikingUsersRequestV2) -> TwitterAPISessionJSONTask { return like.getLikingUsers(request) } + /// Retrieves tweets liked by a user. + /// - Parameter request: The request parameters containing the user identifier. + /// - Returns: A JSON task that will return the list of liked tweets. func getLikedTweets(_ request: GetUsersLikedTweetsRequestV2) -> TwitterAPISessionJSONTask { return like.getLikedTweets(request) } + /// Likes a tweet. + /// - Parameter request: The request parameters containing the tweet to like. + /// - Returns: A JSON task that will return the response. func postLike(_ request: PostUsersLikesRequestV2) -> TwitterAPISessionJSONTask { return like.postLike(request) } + /// Unlikes a tweet. + /// - Parameter request: The request parameters containing the tweet to unlike. + /// - Returns: A JSON task that will return the response. func deleteLike(_ request: DeleteUsersLikesRequestV2) -> TwitterAPISessionJSONTask { return like.deleteLike(request) } // MARK: - ListAPIv2 + /// Retrieves tweets from a list. + /// - Parameter request: The request parameters containing the list ID. + /// - Returns: A JSON task that will return the list tweets. func getListTweets(_ request: GetListsTweetsRequestV2) -> TwitterAPISessionJSONTask { return list.getListTweets(request) } + /// Retrieves information about a specific list. + /// - Parameter request: The request parameters containing the list ID. + /// - Returns: A JSON task that will return the list information. func getList(_ request: GetListRequestV2) -> TwitterAPISessionJSONTask { return list.getList(request) } + /// Retrieves lists owned by a user. + /// - Parameter request: The request parameters containing the user identifier. + /// - Returns: A JSON task that will return the owned lists. func getLists(_ request: GetUsersOwnedListsRequestV2) -> TwitterAPISessionJSONTask { return list.getLists(request) } + /// Follows a list. + /// - Parameter request: The request parameters containing the list to follow. + /// - Returns: A JSON task that will return the response. func followList(_ request: PostUsersFollowedListsRequestV2) -> TwitterAPISessionJSONTask { return list.followList(request) } + /// Unfollows a list. + /// - Parameter request: The request parameters containing the list to unfollow. + /// - Returns: A JSON task that will return the response. func unfollowList(_ request: DeleteUsersFollowedListsRequestV2) -> TwitterAPISessionJSONTask { return list.unfollowList(request) } + /// Retrieves followers of a list. + /// - Parameter request: The request parameters containing the list ID. + /// - Returns: A JSON task that will return the list followers. func listFollowers(_ request: GetListsFollowersRequestV2) -> TwitterAPISessionJSONTask { return list.listFollowers(request) } + /// Retrieves lists followed by a user. + /// - Parameter request: The request parameters containing the user identifier. + /// - Returns: A JSON task that will return the followed lists. func followedLists(_ request: GetUsersFollowedListsRequestV2) -> TwitterAPISessionJSONTask { return list.followedLists(request) } + /// Adds a member to a list. + /// - Parameter request: The request parameters containing the user and list. + /// - Returns: A JSON task that will return the response. func addListMember(_ request: PostListsMembersRequestV2) -> TwitterAPISessionJSONTask { return list.addListMember(request) } + /// Removes a member from a list. + /// - Parameter request: The request parameters containing the user and list. + /// - Returns: A JSON task that will return the response. func removeListMember(_ request: DeleteListsMembersRequestV2) -> TwitterAPISessionJSONTask { return list.removeListMember(request) } + /// Retrieves lists that a user is a member of. + /// - Parameter request: The request parameters containing the user identifier. + /// - Returns: A JSON task that will return the list memberships. func getListMemberships(_ request: GetUsersListMembershipsRequestV2) -> TwitterAPISessionJSONTask { return list.getListMemberships(request) } + /// Retrieves members of a list. + /// - Parameter request: The request parameters containing the list ID. + /// - Returns: A JSON task that will return the list members. func getListMembers(_ request: GetListsMembersRequestV2) -> TwitterAPISessionJSONTask { return list.getListMembers(request) } + /// Creates a new list. + /// - Parameter request: The request parameters for creating the list. + /// - Returns: A JSON task that will return the created list. func createList(_ request: PostListsRequestV2) -> TwitterAPISessionJSONTask { return list.createList(request) } + /// Updates a list's metadata. + /// - Parameter request: The request parameters containing the updated information. + /// - Returns: A JSON task that will return the updated list. func updateList(_ request: PutListRequestV2) -> TwitterAPISessionJSONTask { return list.updateList(request) } + /// Deletes a list. + /// - Parameter request: The request parameters containing the list to delete. + /// - Returns: A JSON task that will return the response. func deleteList(_ request: DeleteListRequestV2) -> TwitterAPISessionJSONTask { return list.deleteList(request) } + /// Retrieves a user's pinned lists. + /// - Parameter request: The request parameters containing the user identifier. + /// - Returns: A JSON task that will return the pinned lists. func pinnedList(_ request: GetUsersPinnedListsRequestV2) -> TwitterAPISessionJSONTask { return list.pinnedList(request) } + /// Pins a list to the user's profile. + /// - Parameter request: The request parameters containing the list to pin. + /// - Returns: A JSON task that will return the response. func pinList(_ request: PostUsersPinnedListsRequestV2) -> TwitterAPISessionJSONTask { return list.pinList(request) } + /// Unpins a list from the user's profile. + /// - Parameter request: The request parameters containing the list to unpin. + /// - Returns: A JSON task that will return the response. func unpinList(_ request: DeleteUsersPinnedListsRequestV2) -> TwitterAPISessionJSONTask { return list.unpinList(request) } // MARK: - RetweetAPIv2 + /// Retrieves users who have retweeted a tweet. + /// - Parameter request: The request parameters containing the tweet ID. + /// - Returns: A JSON task that will return the list of users. func getRetweetedBy(_ request: GetTweetsRetweetedByRequestV2) -> TwitterAPISessionJSONTask { return retweet.getRetweetedBy(request) } + /// Creates a retweet of a tweet. + /// - Parameter request: The request parameters containing the tweet to retweet. + /// - Returns: A JSON task that will return the response. func postRetweet(_ request: PostUsersRetweetsRequestV2) -> TwitterAPISessionJSONTask { return retweet.postRetweet(request) } + /// Removes a retweet of a tweet. + /// - Parameter request: The request parameters containing the retweet to remove. + /// - Returns: A JSON task that will return the response. func deleteRetweet(_ request: DeleteUsersRetweetsRequestV2) -> TwitterAPISessionJSONTask { return retweet.deleteRetweet(request) } // MARK: - SearchAPIv2 + /// Searches for recent tweets matching a query. + /// - Parameter request: The request parameters containing the search query. + /// - Returns: A JSON task that will return the matching tweets. func searchTweetsRecent(_ request: GetTweetsSearchRecentRequestV2) -> TwitterAPISessionJSONTask { return search.searchTweetsRecent(request) } + /// Searches for all tweets matching a query. + /// - Parameter request: The request parameters containing the search query. + /// - Returns: A JSON task that will return the matching tweets. func searchTweetsAll(_ request: GetTweetsSearchAllRequestV2) -> TwitterAPISessionJSONTask { return search.searchTweetsAll(request) } // MARK: - SpacesAPIv2 + /// Retrieves information about a specific space. + /// - Parameter request: The request parameters containing the space ID. + /// - Returns: A JSON task that will return the space information. func getSpace(_ request: GetSpaceRequestV2) -> TwitterAPISessionJSONTask { return spaces.getSpace(request) } + /// Retrieves information about multiple spaces. + /// - Parameter request: The request parameters containing the space IDs. + /// - Returns: A JSON task that will return the spaces information. func getSpaces(_ request: GetSpacesRequestV2) -> TwitterAPISessionJSONTask { return spaces.getSpaces(request) } + /// Retrieves spaces created by specified users. + /// - Parameter request: The request parameters containing the creator IDs. + /// - Returns: A JSON task that will return the spaces information. func getSpacesByCreators(_ request: GetSpacesByCreatorIDsRequestV2) -> TwitterAPISessionJSONTask { return spaces.getSpacesByCreators(request) } + /// Retrieves users who have purchased tickets to a space. + /// - Parameter request: The request parameters containing the space ID. + /// - Returns: A JSON task that will return the list of buyers. func getSpacesBuyers(_ request: GetSpacesBuyersRequestV2) -> TwitterAPISessionJSONTask { return spaces.getSpacesBuyers(request) } + /// Retrieves tweets shared in a space. + /// - Parameter request: The request parameters containing the space ID. + /// - Returns: A JSON task that will return the tweets. func getSPacesTweets(_ request: GetSpacesTweetsRequestV2) -> TwitterAPISessionJSONTask { return spaces.getSPacesTweets(request) } + /// Searches for spaces matching a query. + /// - Parameter request: The request parameters containing the search query. + /// - Returns: A JSON task that will return the matching spaces. func searchSpaces(_ request: GetSpacesSearchRequestV2) -> TwitterAPISessionJSONTask { return spaces.searchSpaces(request) } // MARK: - StreamAPIv2 + /// Connects to the sample stream of tweets. + /// - Parameter request: The request parameters for the sample stream. + /// - Returns: A stream task that will provide tweets in real-time. func sampleStream(_ request: GetTweetsSampleStreamRequestV2) -> TwitterAPISessionStreamTask { return stream.sampleStream(request) } + /// Retrieves rules for filtered stream. + /// - Parameter request: The request parameters for retrieving stream rules. + /// - Returns: A JSON task that will return the stream rules. func getSearchStreamRules(_ request: GetTweetsSearchStreamRulesRequestV2) -> TwitterAPISessionJSONTask { return stream.getSearchStreamRules(request) } + /// Updates rules for filtered stream. + /// - Parameter request: The request parameters containing the rule updates. + /// - Returns: A JSON task that will return the updated rules. func postSearchStreamRules(_ request: PostTweetsSearchStreamRulesRequestV2) -> TwitterAPISessionJSONTask { return stream.postSearchStreamRules(request) } + /// Connects to the filtered stream of tweets. + /// - Parameter request: The request parameters for the filtered stream. + /// - Returns: A stream task that will provide filtered tweets in real-time. func searchStream(_ request: GetTweetsSearchStreamRequestV2) -> TwitterAPISessionStreamTask { return stream.searchStream(request) } // MARK: - TimelineAPIv2 + /// Retrieves tweets posted by a user. + /// - Parameter request: The request parameters containing the user identifier. + /// - Returns: A JSON task that will return the user's tweets. func getUserTweets(_ request: GetUsersTweetsRequestV2) -> TwitterAPISessionJSONTask { return timeline.getUserTweets(request) } + /// Retrieves tweets mentioning a user. + /// - Parameter request: The request parameters containing the user identifier. + /// - Returns: A JSON task that will return the mentions. func getUserMensions(_ request: GetUsersMentionsRequestV2) -> TwitterAPISessionJSONTask { return timeline.getUserMensions(request) } + /// Retrieves a user's reverse chronological timeline. + /// - Parameter request: The request parameters containing the user identifier. + /// - Returns: A JSON task that will return the timeline tweets. func getUserReverseChronological(_ request: GetUsersTimelinesReverseChronologicalRequestV2) -> TwitterAPISessionJSONTask { @@ -808,86 +1344,143 @@ public extension TwitterAPIv2 { // MARK: - TweetAPIv2 + /// Retrieves multiple tweets by their IDs. + /// - Parameter request: The request parameters containing the tweet IDs. + /// - Returns: A JSON task that will return the tweets. func getTweets(_ request: GetTweetsRequestV2) -> TwitterAPISessionJSONTask { return tweet.getTweets(request) } + /// Retrieves a single tweet. + /// - Parameter request: The request parameters containing the tweet ID. + /// - Returns: A JSON task that will return the tweet. func getTweet(_ request: GetTweetRequestV2) -> TwitterAPISessionJSONTask { return tweet.getTweet(request) } + /// Retrieves tweets quoting a tweet. + /// - Parameter request: The request parameters containing the tweet ID. + /// - Returns: A JSON task that will return the quote tweets. func getQuoteTweets(_ request: GetTweetsQuoteTweetsRequestV2) -> TwitterAPISessionJSONTask { return tweet.getQuoteTweets(request) } + /// Deletes a tweet. + /// - Parameter request: The request parameters containing the tweet to delete. + /// - Returns: A JSON task that will return the response. func deleteTweet(_ request: DeleteTweetRequestV2) -> TwitterAPISessionJSONTask { return tweet.deleteTweet(request) } + /// Posts a new tweet. + /// - Parameter request: The request parameters containing the tweet content. + /// - Returns: A JSON task that will return the posted tweet. func postTweet(_ request: PostTweetsRequestV2) -> TwitterAPISessionJSONTask { return tweet.postTweet(request) } + /// Hides a reply to a tweet. + /// - Parameter request: The request parameters containing the reply to hide. + /// - Returns: A JSON task that will return the response. func hideReply(_ request: PutTweetsHiddenRequestV2) -> TwitterAPISessionJSONTask { return tweet.hideReply(request) } // MARK: - TweetCountAPIv2 + /// Retrieves count of recent tweets matching a query. + /// - Parameter request: The request parameters containing the search query. + /// - Returns: A JSON task that will return the tweet count. func getTweetCountRecent(_ request: GetTweetsCountsRecentRequestV2) -> TwitterAPISessionJSONTask { return tweetCount.getTweetCountRecent(request) } + /// Retrieves count of all tweets matching a query. + /// - Parameter request: The request parameters containing the search query. + /// - Returns: A JSON task that will return the tweet count. func getTweetCountAll(_ request: GetTweetsCountsAllRequestV2) -> TwitterAPISessionJSONTask { return tweetCount.getTweetCountAll(request) } // MARK: - UserAPIv2 + /// Retrieves information about a specific user. + /// - Parameter request: The request parameters containing the user ID. + /// - Returns: A JSON task that will return the user information. func getUser(_ request: GetUserRequestV2) -> TwitterAPISessionJSONTask { return user.getUser(request) } + /// Retrieves information about multiple users. + /// - Parameter request: The request parameters containing the user IDs. + /// - Returns: A JSON task that will return the users information. func getUsers(_ request: GetUsersRequestV2) -> TwitterAPISessionJSONTask { return user.getUsers(request) } + /// Retrieves a user by their username. + /// - Parameter request: The request parameters containing the username. + /// - Returns: A JSON task that will return the user information. func getUserByUsername(_ request: GetUsersByUsernameRequestV2) -> TwitterAPISessionJSONTask { return user.getUserByUsername(request) } + /// Retrieves multiple users by their usernames. + /// - Parameter request: The request parameters containing the usernames. + /// - Returns: A JSON task that will return the users information. func getUsersByUsernames(_ request: GetUsersByRequestV2) -> TwitterAPISessionJSONTask { return user.getUsersByUsernames(request) } + /// Retrieves information about the authenticated user. + /// - Parameter request: The request parameters for retrieving user information. + /// - Returns: A JSON task that will return the user information. func getMe(_ request: GetUsersMeRequestV2) -> TwitterAPISessionJSONTask { return user.getMe(request) } // MARK: - DirectMessageAPIv2 + /// Retrieves direct message events. + /// - Parameter request: The request parameters for retrieving DM events. + /// - Returns: A JSON task that will return the DM events. func getDmEvents(_ request: GetDmEventsRequestV2) -> TwitterAPISessionJSONTask { return dm.getDmEvents(request) } + /// Retrieves direct message events with a specific participant. + /// - Parameter request: The request parameters containing the participant ID. + /// - Returns: A JSON task that will return the DM events. func getDmEventsWithParticipantId(_ request: GetDmConversationsWithParticipantIdDmEventsRequestV2) -> TwitterAPISessionJSONTask { return dm.getDmEventsWithParticipantId(request) } + /// Retrieves direct message events from a specific conversation. + /// - Parameter request: The request parameters containing the conversation ID. + /// - Returns: A JSON task that will return the DM events. func getDmEventsByConversationsId(_ request: GetDmConversationsIdDmEventsRequestV2) -> TwitterAPISessionJSONTask { return dm.getDmEventsByConversationsId(request) } + /// Posts a new direct message conversation. + /// - Parameter request: The request parameters for creating a new conversation. + /// - Returns: A JSON task that will return the created conversation. func postDmConversationById(_ request: PostDmConversationByIdRequestV2) -> TwitterAPISessionJSONTask { return dm.postDmConversationById(request) } + /// Posts a new direct message conversation with a specific user. + /// - Parameter request: The request parameters containing the user and message. + /// - Returns: A JSON task that will return the created conversation. func postDmConversationWithUser(_ request: PostDmConversationWithUserRequestV2) -> TwitterAPISessionJSONTask { return dm.postDmConversationWithUser(request) } + /// Posts a new direct message conversation with multiple participants. + /// - Parameter request: The request parameters containing the participants and message. + /// - Returns: A JSON task that will return the created conversation. func postDmConversation(_ request: PostDmConversationRequestV2) -> TwitterAPISessionJSONTask { return dm.postDmConversation(request) } diff --git a/Sources/TwitterAPIKit/TwitterAPIKitError.swift b/Sources/TwitterAPIKit/TwitterAPIKitError.swift index c4815ca9..4a81a53f 100644 --- a/Sources/TwitterAPIKit/TwitterAPIKitError.swift +++ b/Sources/TwitterAPIKit/TwitterAPIKitError.swift @@ -5,42 +5,73 @@ import Foundation +/// Represents errors that can occur while using the Twitter API Kit. public enum TwitterAPIKitError: Error { case requestFailed(reason: RequestFailureReason) + + /// Represents specific reasons why a request might fail. public enum RequestFailureReason { + /// Indicates that the provided URL was invalid. case invalidURL(url: String) + + /// Indicates that a parameter was invalid with details about why. case invalidParameter(parameter: [String: Any], cause: String) - + + /// Indicates that a string could not be encoded to data. case cannotEncodeStringToData(string: String) + + /// Indicates that JSON serialization failed for an object. case jsonSerializationFailed(obj: Any) } case responseFailed(reason: ResponseFailureReason) + + /// Represents specific reasons why a response might fail. public enum ResponseFailureReason { + /// Indicates that the response was invalid. case invalidResponse(error: Error?) + + /// Indicates that the response status code was unacceptable. case unacceptableStatusCode(statusCode: Int, error: TwitterAPIErrorResponse, rateLimit: TwitterRateLimit?) } case responseSerializeFailed(reason: ResponseSerializationFailureReason) + + /// Represents specific reasons why response serialization might fail. public enum ResponseSerializationFailureReason { + /// Indicates that JSON serialization failed. case jsonSerializationFailed(error: Error) + + /// Indicates that JSON decoding failed. case jsonDecodeFailed(error: Error) + + /// Indicates that data could not be converted to the expected type. case cannotConvert(data: Data, toTypeName: String) } case uploadMediaFailed(reason: UploadMediaFailureReason) + + /// Represents specific reasons why media upload might fail. public enum UploadMediaFailureReason { + /// Indicates that media processing failed. case processingFailed(error: UploadMediaError) } case refreshOAuth20TokenFailed(reason: RefreshOAuth20TokenFailureReason) + + /// Represents specific reasons why OAuth 2.0 token refresh might fail. public enum RefreshOAuth20TokenFailureReason { + /// Indicates that the authentication method was invalid. case invalidAuthenticationMethod(TwitterAuthenticationMethod) + + /// Indicates that the refresh token is missing. case refreshTokenIsMissing } case unkonwn(error: Error) + /// Initializes a TwitterAPIKitError from a generic Error. + /// - Parameter error: The error to convert to TwitterAPIKitError. public init(error: Error) { if let error = error as? Self { self = error @@ -51,36 +82,43 @@ public enum TwitterAPIKitError: Error { } public extension TwitterAPIKitError { + /// Indicates whether the error is a request failure. var isRequestFailed: Bool { if case .requestFailed = self { return true } return false } + /// Indicates whether the error is a response failure. var isResponseFailed: Bool { if case .responseFailed = self { return true } return false } + /// Indicates whether the error is a response serialization failure. var isResponseSerializeFailed: Bool { if case .responseSerializeFailed = self { return true } return false } + /// Indicates whether the error is a media upload failure. var isUploadMediaFailed: Bool { if case .uploadMediaFailed = self { return true } return false } + /// Indicates whether the error is an OAuth 2.0 token refresh failure. var isRefreshOAuth20TokenFailed: Bool { if case .refreshOAuth20TokenFailed = self { return true } return false } + /// Indicates whether the error is unknown. var isUnkonwn: Bool { if case .unkonwn = self { return true } return false } + /// The underlying error if one exists. var underlyingError: Error? { switch self { case let .requestFailed(reason): @@ -98,6 +136,7 @@ public extension TwitterAPIKitError { } } + /// Indicates whether the error was due to request cancellation. var isCancelled: Bool { guard let error = underlyingError as? URLError else { return false @@ -107,11 +146,22 @@ public extension TwitterAPIKitError { } public extension TwitterAPIKitError { + /// Represents an error that occurred during media upload. struct UploadMediaError: Decodable, Error { + /// The error code returned by the Twitter API. public let code: Int + + /// The name of the error. public let name: String + + /// A detailed message describing the error. public let message: String + /// Initializes a new UploadMediaError. + /// - Parameters: + /// - code: The error code + /// - name: The error name + /// - message: The error message public init(code: Int, name: String, message: String) { self.code = code self.name = name @@ -140,12 +190,14 @@ extension TwitterAPIKitError: LocalizedError { } extension TwitterAPIKitError.UploadMediaError: LocalizedError { + /// A localized description of the error. public var errorDescription: String? { return "\(name)[code:\(code)]: \(message)" } } public extension TwitterAPIKitError.RequestFailureReason { + /// A localized description of the request failure reason. var localizedDescription: String { switch self { case let .invalidURL(url): @@ -159,6 +211,7 @@ public extension TwitterAPIKitError.RequestFailureReason { } } + /// The underlying error if one exists. var underlyingError: Error? { switch self { case .invalidURL, @@ -171,6 +224,7 @@ public extension TwitterAPIKitError.RequestFailureReason { } public extension TwitterAPIKitError.ResponseFailureReason { + /// A localized description of the response failure reason. var localizedDescription: String { switch self { case let .invalidResponse(error: error): @@ -183,6 +237,7 @@ public extension TwitterAPIKitError.ResponseFailureReason { } } + /// The underlying error if one exists. var underlyingError: Error? { switch self { case let .invalidResponse(error: error): @@ -192,7 +247,7 @@ public extension TwitterAPIKitError.ResponseFailureReason { } } - /// A status code in the case of unacceptableStatusCode. + /// The status code in the case of unacceptableStatusCode. var statusCode: Int? { if case .unacceptableStatusCode(statusCode: let statusCode, error: _, rateLimit: _) = self { return statusCode @@ -200,7 +255,7 @@ public extension TwitterAPIKitError.ResponseFailureReason { return nil } - /// A rate limit in the case of unacceptableStatusCode. + /// The rate limit in the case of unacceptableStatusCode. var rateLimit: TwitterRateLimit? { if case .unacceptableStatusCode(statusCode: _, error: _, rateLimit: let rateLimit) = self { return rateLimit @@ -210,6 +265,7 @@ public extension TwitterAPIKitError.ResponseFailureReason { } public extension TwitterAPIKitError.ResponseSerializationFailureReason { + /// A localized description of the response serialization failure reason. var localizedDescription: String { switch self { case let .jsonSerializationFailed(error): @@ -221,6 +277,7 @@ public extension TwitterAPIKitError.ResponseSerializationFailureReason { } } + /// The underlying error if one exists. var underlyingError: Error? { switch self { case let .jsonSerializationFailed(error: error), @@ -233,6 +290,7 @@ public extension TwitterAPIKitError.ResponseSerializationFailureReason { } public extension TwitterAPIKitError.UploadMediaFailureReason { + /// A localized description of the upload media failure reason. var localizedDescription: String { switch self { case let .processingFailed(error): @@ -240,6 +298,7 @@ public extension TwitterAPIKitError.UploadMediaFailureReason { } } + /// The underlying error if one exists. var underlyingError: Error? { switch self { case let .processingFailed(error: error): diff --git a/Sources/TwitterAPIKit/TwitterAPIRequest.swift b/Sources/TwitterAPIKit/TwitterAPIRequest.swift index 44ff754c..993985a0 100644 --- a/Sources/TwitterAPIKit/TwitterAPIRequest.swift +++ b/Sources/TwitterAPIKit/TwitterAPIRequest.swift @@ -5,12 +5,18 @@ import Foundation +/// Represents HTTP methods supported by the Twitter API. public enum HTTPMethod: String { + /// DELETE method, typically used for removing resources. + case delete = "DELETE" + /// GET method, typically used for retrieving resources. case get = "GET" + /// POST method, typically used for creating new resources. case post = "POST" + /// PUT method, typically used for updating existing resources. case put = "PUT" - case delete = "DELETE" + /// Indicates whether the method prefers parameters to be sent as query parameters. public var prefersQueryParameters: Bool { switch self { case .get, .delete: @@ -21,19 +27,29 @@ public enum HTTPMethod: String { } } +/// Represents the content type of the request body. public enum BodyContentType: String { - case wwwFormUrlEncoded = "application/x-www-form-urlencoded" - - /// In this case use MultipartFormDataPart as a parameter - /// example: UploadMediaAppendRequestV1.swift - case multipartFormData = "multipart/form-data" + /// JSON content type with UTF-8 encoding. case json = "application/json; charset=UTF-8" + + /// Multipart form data content type, used for file uploads. + /// Use MultipartFormDataPart as a parameter. + /// Example: UploadMediaAppendRequestV1.swift + case multipartFormData = "multipart/form-data" + + /// URL-encoded form data content type. + case wwwFormUrlEncoded = "application/x-www-form-urlencoded" } +/// Represents a part of a multipart form data request. public enum MultipartFormDataPart { - case value(name: String, value: Any) // value is stringified with "String(describing:)" + /// A simple key-value pair where the value is stringified using String(describing:). + case value(name: String, value: Any) + + /// A file upload part containing binary data and metadata. case data(name: String, value: Data, filename: String, mimeType: String) + /// The name of the form part. var name: String { switch self { case let .value(name, _): @@ -63,29 +79,48 @@ extension MultipartFormDataPart: Equatable { } } +/// Protocol defining the requirements for a Twitter API request. public protocol TwitterAPIRequest { + /// The HTTP method to be used for the request. var method: HTTPMethod { get } + + /// The base URL type for the request (api, upload, etc.). var baseURLType: TwitterBaseURLType { get } + + /// The path component of the request URL. var path: String { get } + + /// The complete set of parameters for the request. var parameters: [String: Any] { get } + + /// Parameters to be included in the URL query string. var queryParameters: [String: Any] { get } + + /// Parameters to be included in the request body. var bodyParameters: [String: Any] { get } + + /// The content type of the request body. var bodyContentType: BodyContentType { get } } +/// Default implementations for TwitterAPIRequest. public extension TwitterAPIRequest { + /// Default base URL type is .api. var baseURLType: TwitterBaseURLType { return .api } + /// Default body content type is .wwwFormUrlEncoded. var bodyContentType: BodyContentType { return .wwwFormUrlEncoded } + /// Default parameters is an empty dictionary. var parameters: [String: Any] { return [:] } + /// Query parameters are derived from parameters if the method prefers query parameters. var queryParameters: [String: Any] { if method.prefersQueryParameters { return parameters @@ -93,6 +128,7 @@ public extension TwitterAPIRequest { return [:] } + /// Body parameters are derived from parameters if the method doesn't prefer query parameters. var bodyParameters: [String: Any] { if !method.prefersQueryParameters { return parameters diff --git a/Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift b/Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift index 67cce7ee..6ffd4bd0 100644 --- a/Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift +++ b/Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift @@ -5,7 +5,15 @@ import Foundation +/// Represents different methods of authentication available for Twitter API requests. public enum TwitterAuthenticationMethod { + /// No authentication method specified. + case basic(apiKey: String, apiSecretKey: String) + + /// Bearer token authentication for OAuth2 app-only access. + case bearer(String) + + /// No authentication required. case none @available(*, deprecated, renamed: "oauth10a") @@ -15,28 +23,39 @@ public enum TwitterAuthenticationMethod { oauthToken: String?, oauthTokenSecret: String? ) - /// Use the token created by "3-legged OAuth flow". + + /// Authentication using OAuth 1.0a protocol. case oauth10a(OAuth10a) - /// Use the token created by "OAuth 2.0 Authorization Code Flow with PKCE". + /// Authentication using OAuth 2.0 protocol. case oauth20(OAuth20) - // Used to execute the "OAuth 2.0 Authorization Code Flow with PKCE" authentication flow. + /// Used to execute the OAuth 2.0 Authorization Code Flow with PKCE authentication flow. case requestOAuth20WithPKCE(OAuth20WithPKCEClientType) - - case basic(apiKey: String, apiSecretKey: String) - - /// For OAuth2 app-only - case bearer(String) } +/// Extension containing OAuth-related types and functionality. public extension TwitterAuthenticationMethod { + /// Represents OAuth 1.0a authentication credentials. struct OAuth10a: Codable { + /// The consumer key (API key) provided by Twitter. public var consumerKey: String + + /// The consumer secret (API secret key) provided by Twitter. public var consumerSecret: String + + /// The OAuth token obtained after user authorization. public var oauthToken: String? + + /// The OAuth token secret obtained after user authorization. public var oauthTokenSecret: String? + /// Initializes a new OAuth10a authentication structure. + /// - Parameters: + /// - consumerKey: The consumer key (API key) provided by Twitter + /// - consumerSecret: The consumer secret (API secret key) provided by Twitter + /// - oauthToken: The OAuth token obtained after user authorization + /// - oauthTokenSecret: The OAuth token secret obtained after user authorization public init( consumerKey: String, consumerSecret: String, @@ -50,17 +69,28 @@ public extension TwitterAuthenticationMethod { } } + /// Represents OAuth 2.0 authentication credentials and state. struct OAuth20: Codable { + /// The client ID provided by Twitter. public var clientID: String - public var scope: [String] - public var tokenType: String + + /// The creation timestamp of the token. + public var createdAt: Date + + /// The time in seconds until the token expires. public var expiresIn: Int + + /// The OAuth 2.0 access token. public var accessToken: String - - /// Only Public Client + + /// The refresh token for obtaining new access tokens (only for Public Client). public var refreshToken: String? - - public var createdAt: Date + + /// The authorized scopes for this token. + public var scope: [String] + + /// The type of token (usually "bearer"). + public var tokenType: String /// Estimates the expiration time of a token based on "expiresIn" and "createdAt". /// Since the server response does not include the creation time of the token, it contains a margin of error of @@ -69,10 +99,20 @@ public extension TwitterAuthenticationMethod { return createdAt.addingTimeInterval(TimeInterval(expiresIn)) } + /// Indicates whether the token has expired. public var expired: Bool { return expiresAt <= Date() } + /// Initializes a new OAuth20 authentication structure. + /// - Parameters: + /// - clientID: The client ID provided by Twitter + /// - scope: The authorized scopes for this token + /// - tokenType: The type of token (usually "bearer") + /// - expiresIn: The time in seconds until the token expires + /// - accessToken: The OAuth 2.0 access token + /// - refreshToken: The refresh token for obtaining new access tokens + /// - createdAt: The creation timestamp of the token public init( clientID: String, scope: [String], @@ -91,6 +131,11 @@ public extension TwitterAuthenticationMethod { self.createdAt = createdAt } + /// Initializes a new OAuth20 authentication structure from a Twitter OAuth2 access token. + /// - Parameters: + /// - clientID: The client ID provided by Twitter + /// - token: The Twitter OAuth2 access token + /// - createdAt: The creation timestamp of the token public init(clientID: String, token: TwitterOAuth2AccessToken, createdAt: Date = Date()) { self.init( clientID: clientID, @@ -103,6 +148,10 @@ public extension TwitterAuthenticationMethod { ) } + /// Refreshes the OAuth20 token with new values. + /// - Parameters: + /// - token: The new Twitter OAuth2 access token + /// - refreshedAt: The timestamp when the token was refreshed public mutating func refresh(token: TwitterOAuth2AccessToken, refreshedAt: Date = Date()) { scope = token.scope tokenType = token.tokenType @@ -113,8 +162,11 @@ public extension TwitterAuthenticationMethod { } } + /// Represents the client type for OAuth 2.0 with PKCE flow. enum OAuth20WithPKCEClientType { + /// A confidential client with client ID and secret. case confidentialClient(clientID: String, clientSecret: String) + /// A public client without a client secret. case publicClient } } diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift index 5339e356..df613bad 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift @@ -7,6 +7,17 @@ import TwitterAPIKit import XCTest internal class UploadMediaUtilTests: XCTestCase { + + // Helper function to safely serialize JSON + private func serializeJSON(_ object: [String: Any]) throws -> Data { + do { + return try JSONSerialization.data(withJSONObject: object, options: []) + } catch { + XCTFail("Failed to serialize JSON: \(error)") + throw error + } + } + override public func tearDownWithError() throws { MockURLProtocol.cleanup() } @@ -21,7 +32,11 @@ internal class UploadMediaUtilTests: XCTestCase { ) var requestCount = 0 - MockURLProtocol.requestHandler = { request in + MockURLProtocol.requestHandler = { [weak self] request in + guard let self else { + throw URLError(.unknown) + } + defer { requestCount += 1 } @@ -35,77 +50,101 @@ internal class UploadMediaUtilTests: XCTestCase { switch requestCount { case 0: // INIT XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") - XCTAssertTrue(requestBodyString!.contains("command=INIT")) - - data = try! JSONSerialization.data( - withJSONObject: [ - "media_id_string": "123", - "expires_after_secs": 1_000, - ], options: [] - ) + if let bodyString = requestBodyString { + XCTAssertTrue(bodyString.contains("command=INIT")) + } else { + XCTFail("Request body string is nil") + } + + data = try self.serializeJSON([ + "media_id_string": "123", + "expires_after_secs": 1_000, + ]) case 1: // APPEND XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") - XCTAssertTrue(requestBodyString!.contains("\r\nAPPEND\r\n")) + if let bodyString = requestBodyString { + XCTAssertTrue(bodyString.contains("\r\nAPPEND\r\n")) + } else { + XCTFail("Request body string is nil") + } case 2: // APPEND XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") - XCTAssertTrue(requestBodyString!.contains("\r\nAPPEND\r\n")) + if let bodyString = requestBodyString { + XCTAssertTrue(bodyString.contains("\r\nAPPEND\r\n")) + } else { + XCTFail("Request body string is nil") + } case 3: // FINALIZE XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") - XCTAssertTrue(requestBodyString!.contains("command=FINALIZE")) - - data = try! JSONSerialization.data( - withJSONObject: [ - "media_id_string": "123", - "size": 10, - "expires_after_secs": 200, - "processingInfo": [ - "state": "pending", - "check_after_secs": 0, - ], - ], options: [] - ) + if let bodyString = requestBodyString { + XCTAssertTrue(bodyString.contains("command=FINALIZE")) + } else { + XCTFail("Request body string is nil") + } + + data = try self.serializeJSON([ + "media_id_string": "123", + "size": 10, + "expires_after_secs": 200, + "processingInfo": [ + "state": "pending", + "check_after_secs": 0, + ], + ]) case 4: - XCTAssertEqual(request.httpMethod, "GET") XCTAssertEqual(request.url?.path, "/1.1/media/upload.json") - XCTAssertTrue(request.url!.query!.contains("command=STATUS")) - - data = try! JSONSerialization.data( - withJSONObject: [ - "media_id_string": "123", - "processing_info": [ - "state": "in_progress", - "progress_percent": 99, - "check_after_secs": 0, - ], - ], options: [] - ) + if let url = request.url, let query = url.query { + XCTAssertTrue(query.contains("command=STATUS")) + } else { + XCTFail("URL or query is nil") + } + + data = try self.serializeJSON([ + "media_id_string": "123", + "processing_info": [ + "state": "in_progress", + "progress_percent": 99, + "check_after_secs": 0, + ], + ]) case 5: - XCTAssertEqual(request.httpMethod, "GET") XCTAssertEqual(request.url?.path, "/1.1/media/upload.json") - XCTAssertTrue(request.url!.query!.contains("command=STATUS")) - - data = try! JSONSerialization.data( - withJSONObject: [ - "media_id_string": "123", - "video": [ - "video_type": "video/mp4", - ], - "processing_info": [ - "state": "succeeded", - "progress_percent": 100, - ], - ], options: [] - ) + if let url = request.url, let query = url.query { + XCTAssertTrue(query.contains("command=STATUS")) + } else { + XCTFail("URL or query is nil") + } + + data = try self.serializeJSON([ + "media_id_string": "123", + "video": [ + "video_type": "video/mp4", + ], + "processing_info": [ + "state": "succeeded", + "progress_percent": 100, + ], + ]) default: XCTFail("Invalid Response") } - return ( - HTTPURLResponse(url: request.url!, statusCode: 200, httpVersion: "2.0", headerFields: [:])!, - data - ) + if let url = request.url { + return ( + HTTPURLResponse( + url: url, + statusCode: 200, + httpVersion: "2.0", + headerFields: [:] + ) ?? HTTPURLResponse(), + data + ) + } else { + XCTFail("Request URL is nil") + return (HTTPURLResponse(), data) + } } let exp = expectation(description: "") @@ -145,18 +184,31 @@ internal class UploadMediaUtilTests: XCTestCase { switch requestCount { case 0: // INIT XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") - XCTAssertTrue(requestBodyString!.contains("command=INIT")) - + if let bodyString = requestBodyString { + XCTAssertTrue(bodyString.contains("command=INIT")) + } else { + XCTFail("Request body string is nil") + } statusCode = 404 default: XCTFail("Invalid Response") } - return ( - HTTPURLResponse(url: request.url!, statusCode: statusCode, httpVersion: "2.0", headerFields: [:])!, - data - ) + if let url = request.url { + return ( + HTTPURLResponse( + url: url, + statusCode: statusCode, + httpVersion: "2.0", + headerFields: [:] + ) ?? HTTPURLResponse(), + data + ) + } else { + XCTFail("Request URL is nil") + return (HTTPURLResponse(), data) + } } let exp = expectation(description: "") @@ -180,7 +232,7 @@ internal class UploadMediaUtilTests: XCTestCase { public func testAppendError() throws { let config = URLSessionConfiguration.default - config.protocolinternal classes = [MockURLProtocol.self] + config.protocolClasses = [MockURLProtocol.self] let client = TwitterAPIClient( .oauth10a(.init(consumerKey: "", consumerSecret: "", oauthToken: "", oauthTokenSecret: "")), @@ -188,7 +240,11 @@ internal class UploadMediaUtilTests: XCTestCase { ) var requestCount = 0 - MockURLProtocol.requestHandler = { request in + MockURLProtocol.requestHandler = { [weak self] request in + guard let self else { + throw URLError(.unknown) + } + defer { requestCount += 1 } @@ -203,30 +259,50 @@ internal class UploadMediaUtilTests: XCTestCase { switch requestCount { case 0: // INIT XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") - XCTAssertTrue(requestBodyString!.contains("command=INIT")) - - data = try! JSONSerialization.data( - withJSONObject: [ - "media_id_string": "123", - "expires_after_secs": 1_000, - ], options: [] - ) + if let bodyString = requestBodyString { + XCTAssertTrue(bodyString.contains("command=INIT")) + } else { + XCTFail("Request body string is nil") + } + + data = try self.serializeJSON([ + "media_id_string": "123", + "expires_after_secs": 1_000, + ]) case 1: // APPEND XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") - XCTAssertTrue(requestBodyString!.contains("\r\nAPPEND\r\n")) + if let bodyString = requestBodyString { + XCTAssertTrue(bodyString.contains("\r\nAPPEND\r\n")) + } else { + XCTFail("Request body string is nil") + } statusCode = 400 case 2: // APPEND XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") - XCTAssertTrue(requestBodyString!.contains("\r\nAPPEND\r\n")) + if let bodyString = requestBodyString { + XCTAssertTrue(bodyString.contains("\r\nAPPEND\r\n")) + } else { + XCTFail("Request body string is nil") + } statusCode = 200 default: XCTFail("Invalid Response") } - return ( - HTTPURLResponse(url: request.url!, statusCode: statusCode, httpVersion: "2.0", headerFields: [:])!, - data - ) + if let url = request.url { + return ( + HTTPURLResponse( + url: url, + statusCode: statusCode, + httpVersion: "2.0", + headerFields: [:] + ) ?? HTTPURLResponse(), + data + ) + } else { + XCTFail("Request URL is nil") + return (HTTPURLResponse(), data) + } } let exp = expectation(description: "") @@ -250,7 +326,7 @@ internal class UploadMediaUtilTests: XCTestCase { public func testFinalizeError() throws { let config = URLSessionConfiguration.default - config.protocolinternal classes = [MockURLProtocol.self] + config.protocolClasses = [MockURLProtocol.self] let client = TwitterAPIClient( .oauth10a(.init(consumerKey: "", consumerSecret: "", oauthToken: "", oauthTokenSecret: "")), @@ -259,7 +335,11 @@ internal class UploadMediaUtilTests: XCTestCase { var statusCode = 200 var requestCount = 0 - MockURLProtocol.requestHandler = { request in + MockURLProtocol.requestHandler = { [weak self] request in + guard let self else { + throw URLError(.unknown) + } + defer { requestCount += 1 } @@ -273,32 +353,56 @@ internal class UploadMediaUtilTests: XCTestCase { switch requestCount { case 0: // INIT XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") - XCTAssertTrue(requestBodyString!.contains("command=INIT")) - - data = try! JSONSerialization.data( - withJSONObject: [ - "media_id_string": "123", - "expires_after_secs": 1_000, - ], options: [] - ) + if let bodyString = requestBodyString { + XCTAssertTrue(bodyString.contains("command=INIT")) + } else { + XCTFail("Request body string is nil") + } + + data = try self.serializeJSON([ + "media_id_string": "123", + "expires_after_secs": 1_000, + ]) case 1: // APPEND XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") - XCTAssertTrue(requestBodyString!.contains("\r\nAPPEND\r\n")) + if let bodyString = requestBodyString { + XCTAssertTrue(bodyString.contains("\r\nAPPEND\r\n")) + } else { + XCTFail("Request body string is nil") + } case 2: // APPEND XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") - XCTAssertTrue(requestBodyString!.contains("\r\nAPPEND\r\n")) + if let bodyString = requestBodyString { + XCTAssertTrue(bodyString.contains("\r\nAPPEND\r\n")) + } else { + XCTFail("Request body string is nil") + } case 3: // FINALIZE XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") - XCTAssertTrue(requestBodyString!.contains("command=FINALIZE")) + if let bodyString = requestBodyString { + XCTAssertTrue(bodyString.contains("command=FINALIZE")) + } else { + XCTFail("Request body string is nil") + } statusCode = 500 default: XCTFail("Invalid Response") } - return ( - HTTPURLResponse(url: request.url!, statusCode: statusCode, httpVersion: "2.0", headerFields: [:])!, - data - ) + if let url = request.url { + return ( + HTTPURLResponse( + url: url, + statusCode: statusCode, + httpVersion: "2.0", + headerFields: [:] + ) ?? HTTPURLResponse(), + data + ) + } else { + XCTFail("Request URL is nil") + return (HTTPURLResponse(), data) + } } let exp = expectation(description: "") @@ -321,7 +425,7 @@ internal class UploadMediaUtilTests: XCTestCase { public func testWithProcessingError() throws { let config = URLSessionConfiguration.default - config.protocolinternal classes = [MockURLProtocol.self] + config.protocolClasses = [MockURLProtocol.self] let client = TwitterAPIClient( .oauth10a(.init(consumerKey: "", consumerSecret: "", oauthToken: "", oauthTokenSecret: "")), @@ -329,7 +433,11 @@ internal class UploadMediaUtilTests: XCTestCase { ) var requestCount = 0 - MockURLProtocol.requestHandler = { request in + MockURLProtocol.requestHandler = { [weak self] request in + guard let self else { + throw URLError(.unknown) + } + defer { requestCount += 1 } @@ -343,79 +451,101 @@ internal class UploadMediaUtilTests: XCTestCase { switch requestCount { case 0: // INIT XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") - XCTAssertTrue(requestBodyString!.contains("command=INIT")) - - data = try! JSONSerialization.data( - withJSONObject: [ - "media_id_string": "123", - "expires_after_secs": 1_000, - ], options: [] - ) + if let bodyString = requestBodyString { + XCTAssertTrue(bodyString.contains("command=INIT")) + } else { + XCTFail("Request body string is nil") + } + + data = try self.serializeJSON([ + "media_id_string": "123", + "expires_after_secs": 1_000, + ]) case 1: // APPEND XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") - XCTAssertTrue(requestBodyString!.contains("\r\nAPPEND\r\n")) + if let bodyString = requestBodyString { + XCTAssertTrue(bodyString.contains("\r\nAPPEND\r\n")) + } else { + XCTFail("Request body string is nil") + } case 2: // APPEND XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") - XCTAssertTrue(requestBodyString!.contains("\r\nAPPEND\r\n")) + if let bodyString = requestBodyString { + XCTAssertTrue(bodyString.contains("\r\nAPPEND\r\n")) + } else { + XCTFail("Request body string is nil") + } case 3: // FINALIZE XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") - XCTAssertTrue(requestBodyString!.contains("command=FINALIZE")) - - data = try! JSONSerialization.data( - withJSONObject: [ - "media_id_string": "123", - "size": 10, - "expires_after_secs": 200, - "processingInfo": [ - "state": "pending", - "check_after_secs": 0, - ], - ], options: [] - ) + if let bodyString = requestBodyString { + XCTAssertTrue(bodyString.contains("command=FINALIZE")) + } else { + XCTFail("Request body string is nil") + } + + data = try self.serializeJSON([ + "media_id_string": "123", + "size": 10, + "expires_after_secs": 200, + "processingInfo": [ + "state": "pending", + "check_after_secs": 0, + ], + ]) case 4: - XCTAssertEqual(request.httpMethod, "GET") XCTAssertEqual(request.url?.path, "/1.1/media/upload.json") - XCTAssertTrue(request.url!.query!.contains("command=STATUS")) - - data = try! JSONSerialization.data( - withJSONObject: [ - "media_id_string": "123", - "processing_info": [ - "state": "in_progress", - "progress_percent": 99, - "check_after_secs": 0, - ], - ], options: [] - ) + if let url = request.url, let query = url.query { + XCTAssertTrue(query.contains("command=STATUS")) + } else { + XCTFail("URL or query is nil") + } + + data = try self.serializeJSON([ + "media_id_string": "123", + "processing_info": [ + "state": "in_progress", + "progress_percent": 99, + "check_after_secs": 0, + ], + ]) case 5: - XCTAssertEqual(request.httpMethod, "GET") XCTAssertEqual(request.url?.path, "/1.1/media/upload.json") - XCTAssertTrue(request.url!.query!.contains("command=STATUS")) - - data = try! JSONSerialization.data( - withJSONObject: [ - "media_id_string": "123", - "processing_info": [ - "state": "failed", - "progress_percent": 99, - "error": [ - "code": 1, - "name": "InvalidMedia", - "message": "Unsupported video format", - ], + if let url = request.url, let query = url.query { + XCTAssertTrue(query.contains("command=STATUS")) + } else { + XCTFail("URL or query is nil") + } + + data = try self.serializeJSON([ + "media_id_string": "123", + "processing_info": [ + "state": "failed", + "error": [ + "message": "Invalid media", + "code": 1, ], - ], options: [] - ) + ], + ]) default: XCTFail("Invalid Response") } - return ( - HTTPURLResponse(url: request.url!, statusCode: 200, httpVersion: "2.0", headerFields: [:])!, - data - ) + if let url = request.url { + return ( + HTTPURLResponse( + url: url, + statusCode: 200, + httpVersion: "2.0", + headerFields: [:] + ) ?? HTTPURLResponse(), + data + ) + } else { + XCTFail("Request URL is nil") + return (HTTPURLResponse(), data) + } } let exp = expectation(description: "") @@ -453,39 +583,71 @@ internal class UploadMediaUtilTests: XCTestCase { switch requestCount { case 0: // INIT XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") - XCTAssertTrue(requestBodyString!.contains("command=INIT")) - - data = try! JSONSerialization.data( - withJSONObject: [ - "media_id_string": "123", - "expires_after_secs": 1_000, - ], options: [] - ) + if let bodyString = requestBodyString { + XCTAssertTrue(bodyString.contains("command=INIT")) + } else { + XCTFail("Request body string is nil") + } + + do { + data = try JSONSerialization.data( + withJSONObject: [ + "media_id_string": "123", + "expires_after_secs": 1_000, + ], + options: [] + ) + } catch { + XCTFail("Failed to serialize JSON: \(error)") + } case 1: // APPEND XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") - XCTAssertTrue(requestBodyString!.contains("\r\nAPPEND\r\n")) + if let bodyString = requestBodyString { + XCTAssertTrue(bodyString.contains("\r\nAPPEND\r\n")) + } else { + XCTFail("Request body string is nil") + } case 2: // FINALIZE XCTAssertEqual(request.url?.absoluteString, "https://upload.twitter.com/1.1/media/upload.json") - XCTAssertTrue(requestBodyString!.contains("command=FINALIZE")) - - data = try! JSONSerialization.data( - withJSONObject: [ - "media_id_string": "123", - "size": 10, - "expires_after_secs": 200, - ], options: [] - ) + if let bodyString = requestBodyString { + XCTAssertTrue(bodyString.contains("command=FINALIZE")) + } else { + XCTFail("Request body string is nil") + } + + do { + data = try JSONSerialization.data( + withJSONObject: [ + "media_id_string": "123", + "size": 10, + "expires_after_secs": 200, + ], + options: [] + ) + } catch { + XCTFail("Failed to serialize JSON: \(error)") + } default: XCTFail("Invalid Response") } - return ( - HTTPURLResponse(url: request.url!, statusCode: 200, httpVersion: "2.0", headerFields: [:])!, - data - ) + if let url = request.url { + return ( + HTTPURLResponse( + url: url, + statusCode: 200, + httpVersion: "2.0", + headerFields: [:] + ) ?? HTTPURLResponse(), + data + ) + } else { + XCTFail("Request URL is nil") + return (HTTPURLResponse(), data) + } } let exp = expectation(description: "") diff --git a/Tests/TwitterAPIKitTests/Extensions/DataTests.swift b/Tests/TwitterAPIKitTests/Extensions/DataTests.swift index 4075c040..0a9eb764 100644 --- a/Tests/TwitterAPIKitTests/Extensions/DataTests.swift +++ b/Tests/TwitterAPIKitTests/Extensions/DataTests.swift @@ -18,7 +18,11 @@ internal class DataTests: XCTestCase { XCTContext.runActivity(named: "failure") { _ in let data = Data() let serialized = data.serialize() - XCTAssertTrue(serialized.error!.isResponseSerializeFailed) + guard let error = serialized.error else { + XCTFail("Expected error but got nil") + return + } + XCTAssertTrue(error.isResponseSerializeFailed) } } @@ -35,7 +39,11 @@ internal class DataTests: XCTestCase { XCTContext.runActivity(named: "failure") { _ in let data = Data() let serialized = data.decode(Obj.self, decoder: JSONDecoder()) - XCTAssertTrue(serialized.error!.isResponseSerializeFailed) + guard let error = serialized.error else { + XCTFail("Expected error but got nil") + return + } + XCTAssertTrue(error.isResponseSerializeFailed) } } diff --git a/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift b/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift index c8c33e52..8ac072fb 100644 --- a/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift +++ b/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift @@ -14,17 +14,17 @@ public struct CombinationsSequence { /// /// - Note: This may be `nil` if the attempted range entirely exceeds the /// upper bounds of the size of the `base` collection. - @usableFromInline internal let kRange: Range? + @usableFromInline internal let combinationRange: Range? /// Initializes a `CombinationsSequence` for all combinations of `base` of /// size `k`. /// /// - Parameters: /// - base: The collection to iterate over for combinations. - /// - k: The expected size of each combination. + /// - size: The expected size of each combination. @inlinable - internal init(_ base: Base, k: Int) { - self.init(base, kRange: k ... k) + internal init(_ base: Base, size: Int) { + self.init(base, kRange: size ... size) } /// Initializes a `CombinationsSequence` for all combinations of `base` of @@ -42,7 +42,7 @@ public struct CombinationsSequence { let baseCount = base.count self.baseCount = baseCount let upperBound = baseCount + 1 - self.kRange = + self.combinationRange = range.lowerBound < upperBound ? range.clamped(to: 0 ..< upperBound) : nil @@ -51,23 +51,23 @@ public struct CombinationsSequence { /// The total number of combinations. @inlinable public var count: Int { - guard let k = kRange else { return 0 } - let n = baseCount - if k == 0 ..< (n + 1) { - return 1 << n + guard let range = combinationRange else { return 0 } + let total = baseCount + if range == 0 ..< (total + 1) { + return 1 << total } - internal func binomial(n: Int, k: Int) -> Int { - switch k { - case n, 0: return 1 - case n...: return 0 - case (n / 2 + 1)...: return binomial(n: n, k: n - k) - default: return n * binomial(n: n - 1, k: k - 1) / k + internal func binomial(total: Int, size: Int) -> Int { + switch size { + case total, 0: return 1 + case total...: return 0 + case (total / 2 + 1)...: return binomial(total: total, size: total - size) + default: return total * binomial(total: total - 1, size: size - 1) / size } } - return k.map { - binomial(n: n, k: $0) + return range.map { + binomial(total: total, size: $0) }.reduce(0, +) } } @@ -98,7 +98,7 @@ extension CombinationsSequence: Sequence { @inlinable internal init(_ combinations: CombinationsSequence) { base = combinations.base - kRange = combinations.kRange ?? 0 ..< 0 + kRange = combinations.combinationRange ?? 0 ..< 0 indexes = Array(combinations.base.indices.prefix(kRange.lowerBound)) } @@ -122,8 +122,8 @@ extension CombinationsSequence: Sequence { /// // so the iteration is finished. @inlinable internal mutating func advance() { - /// Advances `kRange` by incrementing its `lowerBound` until the range is - /// empty, when iteration is finished. + // Advances `kRange` by incrementing its `lowerBound` until the range is + // empty, when iteration is finished. internal func advanceKRange() { if kRange.lowerBound < kRange.upperBound { let advancedLowerBound = kRange.lowerBound + 1 @@ -141,23 +141,23 @@ extension CombinationsSequence: Sequence { return } - let i = indexes.count - 1 - base.formIndex(after: &indexes[i]) - if indexes[i] != base.endIndex { return } + let lastIndex = indexes.count - 1 + base.formIndex(after: &indexes[lastIndex]) + if indexes[lastIndex] != base.endIndex { return } - var j = i - while indexes[i] == base.endIndex { - j -= 1 - guard j >= 0 else { + var currentIndex = lastIndex + while indexes[lastIndex] == base.endIndex { + currentIndex -= 1 + guard currentIndex >= 0 else { // Finished iterating over combinations of this size. advanceKRange() return } - base.formIndex(after: &indexes[j]) - for k in indexes.indices[(j + 1)...] { - indexes[k] = base.index(after: indexes[k - 1]) - if indexes[k] == base.endIndex { + base.formIndex(after: &indexes[currentIndex]) + for nextIndex in indexes.indices[(currentIndex + 1)...] { + indexes[nextIndex] = base.index(after: indexes[nextIndex - 1]) + if indexes[nextIndex] == base.endIndex { break } } @@ -168,7 +168,7 @@ extension CombinationsSequence: Sequence { public mutating func next() -> [Base.Element]? { guard !isFinished else { return nil } defer { advance() } - return indexes.map { i in base[i] } + return indexes.map { index in base[index] } } } @@ -248,44 +248,23 @@ public extension Collection { /// is the number of elements in the base collection, since /// `CombinationsSequence` accesses the `count` of the base collection. @inlinable - func combinations( - ofCount kRange: R + public func combinations( + ofCount range: R ) -> CombinationsSequence where R.Bound == Int { - CombinationsSequence(self, kRange: kRange) + return CombinationsSequence(self, kRange: range) } /// Returns a collection of combinations of this collection's elements, with /// each combination having the specified number of elements. /// - /// This example prints the different combinations of three from an array of - /// four colors: - /// - /// let colors = ["fuchsia", "cyan", "mauve", "magenta"] - /// for combo in colors.combinations(ofCount: 3) { - /// print(combo.joined(separator: ", ")) - /// } - /// // fuchsia, cyan, mauve - /// // fuchsia, cyan, magenta - /// // fuchsia, mauve, magenta - /// // cyan, mauve, magenta - /// - /// The returned collection presents combinations in a consistent order, where - /// the indices in each combination are in ascending lexicographical order. - /// That is, in the example above, the combinations in order are the elements - /// at `[0, 1, 2]`, `[0, 1, 3]`, `[0, 2, 3]`, and finally `[1, 2, 3]`. - /// - /// If `k` is zero, the resulting sequence has exactly one element, an empty - /// array. If `k` is greater than the number of elements in this sequence, - /// the resulting sequence has no elements. - /// - /// - Parameter k: The number of elements to include in each combination. + /// - Parameter size: The number of elements to include in each combination. /// /// - Complexity: O(1) for random-access base collections. O(*n*) where *n* - /// is the number of elements in the base collection, since - /// `CombinationsSequence` accesses the `count` of the base collection. + /// is the number of elements in the base collection, since + /// `CombinationsSequence` accesses the `count` of the base collection. @inlinable - func combinations(ofCount k: Int) -> CombinationsSequence { - precondition(k >= 0, "Can't have combinations with a negative number of elements.") - return CombinationsSequence(self, k: k) + public func combinations(ofCount size: Int) -> CombinationsSequence { + precondition(size >= 0, "Can't have combinations with a negative number of elements.") + return CombinationsSequence(self, size: size) } } diff --git a/Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift b/Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift index f784ce19..78da7037 100644 --- a/Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift +++ b/Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift @@ -23,15 +23,24 @@ internal class MockURLProtocol: URLProtocol { } override public func startLoading() { - let handler: (URLRequest) throws -> (HTTPURLResponse, Data?) - if let reqHandler = Self.requestHandler { - handler = reqHandler - } else { - handler = { request in - ( - HTTPURLResponse(url: request.url!, statusCode: 200, httpVersion: "2.0", headerFields: nil)!, Data() - ) + guard let url = request.url else { + client?.urlProtocol(self, didFailWithError: URLError(.badURL)) + return + } + + let handler: (URLRequest) throws -> (HTTPURLResponse, Data?) = Self.requestHandler ?? { request in + guard let requestURL = request.url else { + throw URLError(.badURL) } + return ( + HTTPURLResponse( + url: requestURL, + statusCode: 200, + httpVersion: "2.0", + headerFields: nil + ) ?? HTTPURLResponse(), + Data() + ) } do { diff --git a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift index 0ffdc8b1..4c5e0e8e 100644 --- a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift +++ b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift @@ -13,14 +13,25 @@ internal class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { override public func tearDownWithError() throws {} public func testProps() throws { - let cReq = URLRequest(url: URL(string: "http://example.com/current")!) - let oReq = URLRequest(url: URL(string: "http://example.com/original")!) - let resp = HTTPURLResponse( - url: URL(string: "https://example.com")!, + guard let currentURL = URL(string: "http://example.com/current"), + let originalURL = URL(string: "http://example.com/original"), + let responseURL = URL(string: "https://example.com") else { + XCTFail("Failed to create test URLs") + return + } + + let cReq = URLRequest(url: currentURL) + let oReq = URLRequest(url: originalURL) + guard let resp = HTTPURLResponse( + url: responseURL, statusCode: 200, httpVersion: "1.1", headerFields: [:] - ) + ) else { + XCTFail("Failed to create test response") + return + } + let mockTask = MockTwitterAPISessionTask( taskIdentifier: 1, currentRequest: cReq, @@ -36,12 +47,9 @@ internal class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { } public func test() throws { - let mockTask = MockTwitterAPISessionTask( - taskIdentifier: 1, - currentRequest: nil, - originalRequest: nil, - httpResponse: HTTPURLResponse( - url: URL(string: "https://example.com")!, + guard let responseURL = URL(string: "https://example.com"), + let response = HTTPURLResponse( + url: responseURL, statusCode: 200, httpVersion: "1.1", headerFields: [ @@ -49,7 +57,16 @@ internal class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { "x-rate-limit-remaining": "1", "x-rate-limit-reset": "1647099944", ] - ) + ) else { + XCTFail("Failed to create test response") + return + } + + let mockTask = MockTwitterAPISessionTask( + taskIdentifier: 1, + currentRequest: nil, + originalRequest: nil, + httpResponse: response ) let task = TwitterAPISessionDelegatedStreamTask(task: mockTask) @@ -66,13 +83,16 @@ internal class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { var count = 0 task .streamResponse { response in - XCTAssertTrue(Thread.isMainThread) - XCTAssertNotNil(response.rateLimit) - XCTAssertEqual(response.rateLimit?.limit, 15) - XCTAssertEqual(response.rateLimit?.remaining, 1) - XCTAssertEqual(response.rateLimit?.reset, 1_647_099_944) + guard let rateLimit = response.rateLimit else { + XCTFail("Rate limit should not be nil") + return + } + + XCTAssertEqual(rateLimit.limit, 15) + XCTAssertEqual(rateLimit.remaining, 1) + XCTAssertEqual(rateLimit.reset, 1_647_099_944) switch count { case 0: @@ -100,12 +120,9 @@ internal class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { } public func testInvalidStatusCode() throws { - let mockTask = MockTwitterAPISessionTask( - taskIdentifier: 2, - currentRequest: nil, - originalRequest: nil, - httpResponse: HTTPURLResponse( - url: URL(string: "https://example.com")!, + guard let responseURL = URL(string: "https://example.com"), + let response = HTTPURLResponse( + url: responseURL, statusCode: 400, httpVersion: "1.1", headerFields: [ @@ -113,7 +130,16 @@ internal class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { "x-rate-limit-remaining": "1", "x-rate-limit-reset": "1647099944", ] - ) + ) else { + XCTFail("Failed to create test response") + return + } + + let mockTask = MockTwitterAPISessionTask( + taskIdentifier: 2, + currentRequest: nil, + originalRequest: nil, + httpResponse: response ) let task = TwitterAPISessionDelegatedStreamTask(task: mockTask) @@ -134,17 +160,24 @@ internal class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { var count = 0 task .streamResponse { response in - XCTAssertTrue(Thread.isMainThread) - XCTAssertNotNil(response.rateLimit) - XCTAssertEqual(response.rateLimit?.limit, 15) - XCTAssertEqual(response.rateLimit?.remaining, 1) - XCTAssertEqual(response.rateLimit?.reset, 1_647_099_944) + guard let rateLimit = response.rateLimit else { + XCTFail("Rate limit should not be nil") + return + } + + XCTAssertEqual(rateLimit.limit, 15) + XCTAssertEqual(rateLimit.remaining, 1) + XCTAssertEqual(rateLimit.reset, 1_647_099_944) switch count { case 0: - XCTAssertTrue(response.error!.isResponseFailed) + guard let error = response.error else { + XCTFail("Expected error but got nil") + return + } + XCTAssertTrue(error.isResponseFailed) default: XCTFail("Invalid Response") } @@ -154,7 +187,11 @@ internal class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { } .streamResponse(queue: .global(qos: .default)) { response in XCTAssertFalse(Thread.isMainThread) - XCTAssertTrue(response.error!.isResponseFailed) + guard let error = response.error else { + XCTFail("Expected error but got nil") + return + } + XCTAssertTrue(error.isResponseFailed) exp.fulfill() } @@ -182,13 +219,16 @@ internal class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { var count = 0 task .streamResponse { response in - XCTAssertTrue(Thread.isMainThread) switch count { case 0: XCTAssertTrue(response.isError) - XCTAssertTrue(response.error!.isResponseFailed) + guard let error = response.error else { + XCTFail("Expected error but got nil") + return + } + XCTAssertTrue(error.isResponseFailed) default: XCTFail("Invalid Response") } @@ -201,7 +241,7 @@ internal class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { exp.fulfill() } - wait(for: [exp], timeout: 10) + wait(for: [exp], timeout: 100) XCTAssertEqual(count, 1) } diff --git a/Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift index 64c69e86..80ea6e14 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift @@ -31,6 +31,10 @@ internal class TwitterAPIClientTests: XCTestCase { ) MockURLProtocol.requestHandler = { request in + guard let url = request.url else { + throw URLError(.badURL) + } + let data = Data( #""" { @@ -42,9 +46,17 @@ internal class TwitterAPIClientTests: XCTestCase { } """#.utf8 ) - return ( - HTTPURLResponse(url: request.url!, statusCode: 200, httpVersion: "2.0", headerFields: nil)!, data - ) + + guard let response = HTTPURLResponse( + url: url, + statusCode: 200, + httpVersion: "2.0", + headerFields: nil + ) else { + throw URLError(.badServerResponse) + } + + return (response, data) } if case let .oauth20(token) = client.apiAuth { @@ -89,6 +101,10 @@ internal class TwitterAPIClientTests: XCTestCase { ) MockURLProtocol.requestHandler = { request in + guard let url = request.url else { + throw URLError(.badURL) + } + let data = Data( #""" { @@ -100,9 +116,17 @@ internal class TwitterAPIClientTests: XCTestCase { } """#.utf8 ) - return ( - HTTPURLResponse(url: request.url!, statusCode: 200, httpVersion: "2.0", headerFields: nil)!, data - ) + + guard let response = HTTPURLResponse( + url: url, + statusCode: 200, + httpVersion: "2.0", + headerFields: nil + ) else { + throw URLError(.badServerResponse) + } + + return (response, data) } let exp = expectation(description: "") @@ -216,6 +240,10 @@ internal class TwitterAPIClientTests: XCTestCase { ) MockURLProtocol.requestHandler = { request in + guard let url = request.url else { + throw URLError(.badURL) + } + let data = Data( #""" { @@ -227,9 +255,17 @@ internal class TwitterAPIClientTests: XCTestCase { } """#.utf8 ) - return ( - HTTPURLResponse(url: request.url!, statusCode: 200, httpVersion: "2.0", headerFields: nil)!, data - ) + + guard let response = HTTPURLResponse( + url: url, + statusCode: 200, + httpVersion: "2.0", + headerFields: nil + ) else { + throw URLError(.badServerResponse) + } + + return (response, data) } let newToken = try await client.refreshOAuth20Token(type: .publicClient) diff --git a/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift b/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift index e29e6938..9e882b89 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift @@ -215,13 +215,21 @@ internal class TwitterAPIRequestTests: XCTestCase { bodyContentType: .multipartFormData ).buildRequest(environment: env) - let contentType = try XCTUnwrap(req.allHTTPHeaderFields?["Content-Type"]) + guard let contentType = req.allHTTPHeaderFields?["Content-Type"] else { + XCTFail("Content-Type header not found") + return + } XCTAssertTrue(contentType.hasPrefix("multipart/form-data; boundary=TwitterAPIKit-")) let boundary = contentType.replacingOccurrences( of: "multipart/form-data; boundary=", with: "" ) - let body = try XCTUnwrap(String(data: req.httpBody!, encoding: .utf8)) + + guard let httpBody = req.httpBody, + let body = String(data: httpBody, encoding: .utf8) else { + XCTFail("Failed to get HTTP body or decode as UTF-8") + return + } let expect = """ --\(boundary)\r\n @@ -294,13 +302,18 @@ internal class TwitterAPIRequestTests: XCTestCase { public func testInvalidJSONValue() throws { try XCTContext.runActivity(named: "Invalid value") { _ in + // Create invalid UTF-16 string bytes + let invalidBytes: [UInt8] = [0xD8, 0x00] + + guard let invalidString = String(bytes: invalidBytes, encoding: .utf16BigEndian) else { + XCTFail("Failed to create test string") + return + } + XCTAssertThrowsError( try MockTwitterAPIRequest( method: .post, - parameters: [ - String(bytes: [0xD8, 0x00] as [UInt8], encoding: String.Encoding.utf16BigEndian)!: - String(bytes: [0xD8, 0x00] as [UInt8], encoding: String.Encoding.utf16BigEndian)!, - ], + parameters: [invalidString: invalidString], bodyContentType: .json ).buildRequest(environment: env) ) { error in diff --git a/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift b/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift index e94419e7..ceec4cf7 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift @@ -44,11 +44,18 @@ private class EmptyRequest: TwitterAPIRequest { } internal class TwitterAPISessionTests: XCTestCase { - private let environment = TwitterAPIEnvironment( - twitterURL: URL(string: "https://twitter.example.com")!, - apiURL: URL(string: "https://api.example.com")!, - uploadURL: URL(string: "https://upload.xample.com")! - ) + private let environment: TwitterAPIEnvironment = { + guard let twitterURL = URL(string: "https://twitter.example.com"), + let apiURL = URL(string: "https://api.example.com"), + let uploadURL = URL(string: "https://upload.xample.com") else { + fatalError("Invalid test URLs") + } + return TwitterAPIEnvironment( + twitterURL: twitterURL, + apiURL: apiURL, + uploadURL: uploadURL + ) + }() private lazy var session: TwitterAPISession = { let config = URLSessionConfiguration.default @@ -84,9 +91,22 @@ internal class TwitterAPISessionTests: XCTestCase { XCTAssertEqual(request.httpMethod, "POST") XCTAssertEqual(request.url?.absoluteString, "https://api.example.com/post.json") XCTAssertNil(request.httpBody) - let data = try! Data(reading: request.httpBodyStream!) - let body = String(data: data, encoding: .utf8)! - XCTAssertEqual(body, "hoge=%F0%9F%98%80") + + guard let bodyStream = request.httpBodyStream else { + XCTFail("HTTP body stream is nil") + return + } + + do { + let data = try Data(reading: bodyStream) + guard let body = String(data: data, encoding: .utf8) else { + XCTFail("Failed to decode body data as UTF-8") + return + } + XCTAssertEqual(body, "hoge=%F0%9F%98%80") + } catch { + XCTFail("Failed to read HTTP body stream: \(error)") + } } let exp = expectation(description: "") @@ -121,11 +141,21 @@ internal class TwitterAPISessionTests: XCTestCase { ) MockURLProtocol.requestHandler = { request in + guard let url = request.url else { + throw URLError(.badURL) + } + let data = Data("aaaa\r\nbbbb\r\n".utf8) + guard let response = HTTPURLResponse( + url: url, + statusCode: 200, + httpVersion: "2.0", + headerFields: nil + ) else { + throw URLError(.badServerResponse) + } - return ( - HTTPURLResponse(url: request.url!, statusCode: 200, httpVersion: "2.0", headerFields: nil)!, data - ) + return (response, data) } MockURLProtocol.requestAssert = { request in From 089da08c62e79eef585bb810b0beb835239311a7 Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Sat, 17 May 2025 10:51:00 -0600 Subject: [PATCH 17/26] fix: fix lints --- .../AuthAPI/TwitterAuthAPI.swift | 7 +++ .../AuthAPI/TwitterOAuthAccessTokenV1.swift | 25 ++++++++--- .../TwitterAPIKit/TwitterAPIResponse.swift | 43 ++++++++++++++++++- Sources/TwitterAPIKit/TwitterAPISession.swift | 20 +++++++++ 4 files changed, 89 insertions(+), 6 deletions(-) diff --git a/Sources/TwitterAPIKit/AuthAPI/TwitterAuthAPI.swift b/Sources/TwitterAPIKit/AuthAPI/TwitterAuthAPI.swift index 9dea40b4..b1c13817 100644 --- a/Sources/TwitterAPIKit/AuthAPI/TwitterAuthAPI.swift +++ b/Sources/TwitterAPIKit/AuthAPI/TwitterAuthAPI.swift @@ -3,10 +3,17 @@ // All source code and related assets are the property of GetAutomaApp. // All rights reserved. +/// A class that provides access to Twitter's authentication APIs. +/// This class supports both OAuth 1.0a and OAuth 2.0 authentication methods. open class TwitterAuthAPI { + /// The OAuth 1.0a API client for legacy authentication. public let oauth10a: OAuth10aAPI + + /// The OAuth 2.0 API client for modern authentication. public let oauth20: OAuth20API + /// Creates a new TwitterAuthAPI instance. + /// - Parameter session: The Twitter API session to use for making requests. public init(session: TwitterAPISession) { oauth10a = .init(session: session) oauth20 = .init(session: session) diff --git a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift index eb45a2f2..5db570df 100644 --- a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift @@ -5,21 +5,30 @@ import Foundation +/// Represents an OAuth 1.0a access token for Twitter API v1 authentication. public struct TwitterOAuthAccessTokenV1 { + /// The OAuth token string used for authentication. public let oauthToken: String + + /// The OAuth token secret used for signing requests. public let oauthTokenSecret: String // According to RFC5849, there is no mention of the user_id and screen_name parameters, // but TwitterAPI does include them in its response. + /// The unique identifier of the authenticated user. public let userID: String? + + /// The screen name (username) of the authenticated user. public let screenName: String? - /// From: - /// oauth_token=your_oauth_token - /// &oauth_token_secret=your_oauth_token_secret - /// &user_id=numeric_user_id - /// &screen_name=your_screen_name + /// Creates an OAuth access token from a query string response. + /// - Parameter queryStringData: The raw data containing the OAuth response in query string format. + /// The expected format is: + /// ``` + /// oauth_token=your_oauth_token&oauth_token_secret=your_oauth_token_secret&user_id=numeric_user_id&screen_name=your_screen_name + /// ``` + /// - Returns: An initialized access token if the query string contains valid OAuth token and secret, nil otherwise. public init?(queryStringData: Data) { let query = String(data: queryStringData, encoding: .utf8) @@ -37,6 +46,12 @@ public struct TwitterOAuthAccessTokenV1 { screenName = comp.queryItems?.first { $0.name == "screen_name" }?.value } + /// Creates an OAuth access token with the specified values. + /// - Parameters: + /// - oauthToken: The OAuth token string. + /// - oauthTokenSecret: The OAuth token secret. + /// - userID: The unique identifier of the authenticated user (optional). + /// - screenName: The screen name of the authenticated user (optional). public init( oauthToken: String, oauthTokenSecret: String, diff --git a/Sources/TwitterAPIKit/TwitterAPIResponse.swift b/Sources/TwitterAPIKit/TwitterAPIResponse.swift index 951e46f7..af4fe469 100644 --- a/Sources/TwitterAPIKit/TwitterAPIResponse.swift +++ b/Sources/TwitterAPIKit/TwitterAPIResponse.swift @@ -5,18 +5,39 @@ import Foundation +/// A generic response type that encapsulates the result of a Twitter API request. public struct TwitterAPIResponse { + /// The original URL request that was sent to the Twitter API. public let request: URLRequest? + + /// The HTTP response received from the Twitter API. public let response: HTTPURLResponse? + /// The raw data received in the response. public let data: Data? + + /// The result of the API call, containing either the successful response or an error. public let result: Result + + /// Rate limit information returned by the Twitter API. public let rateLimit: TwitterRateLimit? + /// The successful response value if the request succeeded, nil otherwise. public var success: Success? { return result.success } + + /// The error that occurred during the request, if any. public var error: TwitterAPIKitError? { return result.error } + + /// A boolean indicating whether the request resulted in an error. public var isError: Bool { return error != nil } + /// Creates a new TwitterAPIResponse instance. + /// - Parameters: + /// - request: The original URL request sent to the API. + /// - response: The HTTP response received from the API. + /// - data: The raw data received in the response. + /// - result: The result containing either success or error. + /// - rateLimit: Rate limit information from the API. public init( request: URLRequest?, response: HTTPURLResponse?, @@ -33,6 +54,9 @@ public struct TwitterAPIResponse { } public extension TwitterAPIResponse { + /// Transforms the successful result to a new type using the provided transform function. + /// - Parameter transform: A closure that takes the current success value and returns a new value. + /// - Returns: A new TwitterAPIResponse with the transformed success type. func map(_ transform: (Success) -> NewSuccess) -> TwitterAPIResponse { return .init( request: request, @@ -43,6 +67,9 @@ public extension TwitterAPIResponse { ) } + /// Transforms the successful result to a new type using a transform function that can return a Result. + /// - Parameter transform: A closure that takes the current success value and returns a Result. + /// - Returns: A new TwitterAPIResponse with the transformed success type. func flatMap(_ transform: (Success) -> Result) -> TwitterAPIResponse { @@ -55,6 +82,9 @@ public extension TwitterAPIResponse { ) } + /// Transforms the successful result to a new type using a transform function that can throw errors. + /// - Parameter transform: A closure that takes the current success value and can throw an error. + /// - Returns: A new TwitterAPIResponse with the transformed success type. func tryMap(_ transform: (Success) throws -> NewSuccess) -> TwitterAPIResponse { let nextResult: Result = result.flatMap { data in let result: Result = .init { @@ -71,6 +101,9 @@ public extension TwitterAPIResponse { ) } + /// Transforms the error in the response using the provided transform function. + /// - Parameter tranform: A closure that takes the current error and returns a new error. + /// - Returns: A new TwitterAPIResponse with the transformed error. func mapError(_ tranform: (TwitterAPIKitError) -> TwitterAPIKitError) -> TwitterAPIResponse { return .init( request: request, @@ -83,7 +116,15 @@ public extension TwitterAPIResponse { } public extension TwitterAPIResponse { - /// for debug + /// Returns a formatted string representation of the API response for debugging purposes. + /// The string includes: + /// - Request method and URL + /// - Request headers (Content-Type, Content-Length) + /// - Response status code + /// - Response headers + /// - Rate limit information + /// - Response body (prettified if JSON) + /// - Error description (if any) var prettyString: String { let body = data.map { data in diff --git a/Sources/TwitterAPIKit/TwitterAPISession.swift b/Sources/TwitterAPIKit/TwitterAPISession.swift index b0dadff1..8593b6e3 100644 --- a/Sources/TwitterAPIKit/TwitterAPISession.swift +++ b/Sources/TwitterAPIKit/TwitterAPISession.swift @@ -5,12 +5,26 @@ import Foundation +/// A session class that handles Twitter API requests and authentication. +/// This class manages the authentication state, network requests, and environment configuration. open class TwitterAPISession { + /// The current authentication method being used for API requests. + /// This property can be read publicly but only modified internally. public private(set) var auth: TwitterAuthenticationMethod + + /// The URLSession instance used for making network requests. public let session: URLSession + + /// The Twitter API environment configuration (e.g., API endpoints, version). public let environment: TwitterAPIEnvironment + internal let sessionDelegate = TwitterAPISessionDelegate() + /// Creates a new TwitterAPISession instance. + /// - Parameters: + /// - auth: The authentication method to use for API requests. + /// - configuration: The URLSession configuration to use for network requests. + /// - environment: The Twitter API environment configuration. public init( auth: TwitterAuthenticationMethod, configuration: URLSessionConfiguration, @@ -25,6 +39,9 @@ open class TwitterAPISession { session.invalidateAndCancel() } + /// Sends a Twitter API request and returns a JSON task. + /// - Parameter request: The Twitter API request to send. + /// - Returns: A task that will return JSON data when completed. public func send(_ request: TwitterAPIRequest) -> TwitterAPISessionJSONTask { do { let urlRequest: URLRequest = try tryBuildURLRequest(request) @@ -35,6 +52,9 @@ open class TwitterAPISession { } } + /// Sends a streaming Twitter API request. + /// - Parameter streamRequest: The Twitter API request to stream. + /// - Returns: A task that will stream data continuously. public func send(streamRequest: TwitterAPIRequest) -> TwitterAPISessionStreamTask { do { let urlRequest: URLRequest = try tryBuildURLRequest(streamRequest) From 5bc6f41b0c47f7a95afa2f9073dcc0839eccb702 Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Sat, 17 May 2025 11:04:07 -0600 Subject: [PATCH 18/26] fix: fix more lints --- ...ift => UploadMediaRequestParameters.swift} | 22 +++++- .../TwitterAPIKit/APIv1/TwitterAPIv1.swift | 38 +++++++++ .../APIv1/TwitterListIdentifierV1.swift | 9 +++ .../APIv1/TwitterListModeV1.swift | 7 +- .../APIv1/TwitterUserIdentifierV1.swift | 12 +++ .../TwitterAPIKit/APIv2/TwitterAPIv2.swift | 37 +++++++++ .../AuthAPI/TwitterOAuth2AccessToken.swift | 26 ++++++- .../AuthAPI/TwitterOAuth2BearerToken.swift | 12 ++- .../AuthAPI/TwitterOAuthTokenV1.swift | 18 ++++- .../Extensions/Concurrency.swift | 28 +++++++ .../SessionTask/TwitterAPISessionTask.swift | 18 +++++ Sources/TwitterAPIKit/TwitterAPIClient.swift | 47 ++++++++++- .../TwitterAPIErrorResponse.swift | 77 +++++++++++++++++-- Sources/TwitterAPIKit/TwitterAPIKit.swift | 22 +++++- .../TwitterAPIKit/TwitterAPIKitError.swift | 15 ++++ Sources/TwitterAPIKit/TwitterRateLimit.swift | 22 +++++- 16 files changed, 385 insertions(+), 25 deletions(-) rename Sources/TwitterAPIKit/APIv1/Media/{UploadMediaEntity.swift => UploadMediaRequestParameters.swift} (77%) diff --git a/Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift b/Sources/TwitterAPIKit/APIv1/Media/UploadMediaRequestParameters.swift similarity index 77% rename from Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift rename to Sources/TwitterAPIKit/APIv1/Media/UploadMediaRequestParameters.swift index d6433a04..3f9a3e61 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/UploadMediaRequestParameters.swift @@ -5,16 +5,34 @@ import Foundation +/// Parameters for uploading media to Twitter's API. public struct UploadMediaRequestParameters { + /// The raw media data to upload. public let media: Data + + /// The MIME type of the media (e.g., "image/jpeg", "video/mp4"). public let mediaType: String + + /// The filename to use for the uploaded media. public let filename: String + + /// The category of media being uploaded (e.g., "tweet_image", "tweet_video"). public let mediaCategory: String? + + /// Additional Twitter user IDs that should have permission to use this media. public let additionalOwners: [String]? - /// Byte + + /// The size of each chunk when uploading large media files, in bytes. public let uploadChunkSize: Int? - /// filename can be any value. ex) hoge.mp4 + /// Creates parameters for a media upload request. + /// - Parameters: + /// - media: The raw media data to upload. + /// - mediaType: The MIME type of the media. + /// - filename: The filename to use (can be any value, e.g., "photo.jpg"). + /// - mediaCategory: The category of media being uploaded (optional). + /// - additionalOwners: Additional user IDs that can use this media (optional). + /// - uploadChunkSize: Size of each chunk for chunked uploads, in bytes (optional). public init( media: Data, mediaType: String, diff --git a/Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift b/Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift index 3eab6152..82474bb8 100644 --- a/Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift @@ -3,25 +3,63 @@ // All source code and related assets are the property of GetAutomaApp. // All rights reserved. +/// Main class for accessing Twitter API v1.1 endpoints. +/// This class provides access to all Twitter API v1.1 functionality through specialized API clients. +/// Each property represents a group of related API endpoints. open class TwitterAPIv1 { + /// API client for managing Twitter account settings and profile information. public let account: AccountAPIv1 + + /// API client for accessing application-level information and rate limits. public let application: ApplicationAPIv1 + + /// API client for managing blocked and muted users. public let blockAndMute: BlockAndMuteAPIv1 + + /// API client for managing Twitter collections (curated groups of tweets). public let collection: CollectionAPIv1 + + /// API client for sending and receiving direct messages. public let directMessage: DirectMessageAPIv1 + + /// API client for managing tweet favorites (likes). public let favorite: FavoriteAPIv1 + + /// API client for managing user relationships (following/followers). public let friendships: FriendshipsAPIv1 + + /// API client for accessing Twitter's geo-location features. public let geo: GeoAPIv1 + + /// API client for accessing Twitter platform information and supported features. public let help: HelpAPIv1 + + /// API client for managing Twitter lists. public let list: ListAPIv1 + + /// API client for uploading and managing media attachments. public let media: MediaAPIv1 + + /// API client for managing retweets. public let retweet: RetweetAPIv1 + + /// API client for searching tweets and managing saved searches. public let search: SearchAPIv1 + + /// API client for accessing user timelines. public let timeline: TimelineAPIv1 + + /// API client for accessing trending topics. public let trend: TrendAPIv1 + + /// API client for creating, deleting, and retrieving tweets. public let tweet: TweetAPIv1 + + /// API client for managing and retrieving user information. public let user: UserAPIv1 + /// Creates a new Twitter API v1.1 client. + /// - Parameter session: The Twitter API session to use for making requests. public init(session: TwitterAPISession) { account = .init(session: session) application = .init(session: session) diff --git a/Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift b/Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift index c751c13e..b4baae84 100644 --- a/Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift +++ b/Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift @@ -5,8 +5,17 @@ import Foundation +/// Represents different ways to identify a Twitter list in API v1.1. +/// Lists can be identified either by their unique ID or by a combination of slug and owner. public enum TwitterListIdentifierV1 { + /// Identifies a list by its unique numeric ID. + /// - Parameter listID: The unique identifier of the list. case listID(String) + + /// Identifies a list by its slug (URL-friendly name) and owner. + /// - Parameters: + /// - slug: The URL-friendly name of the list. + /// - owner: The identifier of the list's owner. case slug(slug: String, owner: TwitterUserIdentifierV1) } diff --git a/Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift b/Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift index dd567ab8..bf10f728 100644 --- a/Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift +++ b/Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift @@ -5,12 +5,17 @@ import Foundation +/// Represents the visibility mode of a Twitter list in API v1.1. +/// Lists can be either public (visible to all users) or private (visible only to the owner). public enum TwitterListModeV1 { + /// The list is publicly visible to all Twitter users. case `public` + + /// The list is private and only visible to its owner. case `private` } -extension TwitterListModeV1 { +public extension TwitterListModeV1 { func bind(param: inout [String: Any]) { switch self { case .public: diff --git a/Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift b/Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift index d0eea610..786c6523 100644 --- a/Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift +++ b/Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift @@ -5,13 +5,25 @@ import Foundation +/// Represents a way to identify a single Twitter user in the v1.1 API. public enum TwitterUserIdentifierV1 { + /// Identifies a user by their numeric user ID. + /// - Parameter String: The user's unique numeric ID. case userID(String) + + /// Identifies a user by their screen name (username). + /// - Parameter String: The user's screen name without the @ symbol. case screenName(String) } +/// Represents a way to identify multiple Twitter users in the v1.1 API. public enum TwitterUsersIdentifierV1 { + /// Identifies multiple users by their numeric user IDs. + /// - Parameter [String]: An array of user IDs. case userIDs([String]) + + /// Identifies multiple users by their screen names (usernames). + /// - Parameter [String]: An array of screen names without the @ symbol. case screenNames([String]) } diff --git a/Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift b/Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift index 6200ac8e..35bc043d 100644 --- a/Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift @@ -7,23 +7,57 @@ import Foundation // https://developer.twitter.com/en/docs/api-reference-index +/// Main class for interacting with Twitter API v2 endpoints. +/// This class provides access to various API modules for different Twitter functionalities. +/// Each property represents a specialized API client for specific Twitter features. open class TwitterAPIv2 { + /// Client for managing block and mute relationships between users. public let blockAndMute: BlockAndMuteAPIv2 + + /// Client for managing tweet bookmarks. public let bookmarks: BookmarksAPIv2 + + /// Client for accessing Twitter's compliance and data management endpoints. public let compliance: ComplianceAPIv2 + + /// Client for managing follow relationships between users. public let friendships: FriendshipsAPIv2 + + /// Client for managing tweet likes (favorites). public let like: LikeAPIv2 + + /// Client for managing Twitter lists. public let list: ListAPIv2 + + /// Client for managing retweets. public let retweet: RetweetAPIv2 + + /// Client for searching tweets. public let search: SearchAPIv2 + + /// Client for managing Twitter Spaces. public let spaces: SpacesAPIv2 + + /// Client for accessing Twitter's streaming endpoints. public let stream: StreamAPIv2 + + /// Client for accessing user timelines. public let timeline: TimelineAPIv2 + + /// Client for managing tweets. public let tweet: TweetAPIv2 + + /// Client for retrieving tweet counts and metrics. public let tweetCount: TweetCountAPIv2 + + /// Client for managing user profiles and information. public let user: UserAPIv2 + + /// Client for managing direct messages. public let dm: DirectMessageAPIv2 + /// Initializes a new TwitterAPIv2 instance. + /// - Parameter session: The session to use for making API requests. public init(session: TwitterAPISession) { blockAndMute = .init(session: session) bookmarks = .init(session: session) @@ -47,11 +81,14 @@ open class TwitterAPIv2 { } } +/// Protocol defining parameters that can be used in Twitter API v2 requests. public protocol TwitterAPIv2RequestParameter { + /// The string representation of the parameter value. var stringValue: String { get } } extension Collection where Element: TwitterAPIv2RequestParameter { + /// Joins multiple parameter values into a comma-separated string. var commaSeparatedString: String { return map(\.stringValue).sorted().joined(separator: ",") } diff --git a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift index ea9b9b52..205c7e6f 100644 --- a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift +++ b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift @@ -5,8 +5,8 @@ import Foundation -/* ex - confidential client +/* Example responses: + Confidential client: { "scope" : "tweet.write tweet.read", "token_type" : "bearer", @@ -14,7 +14,7 @@ import Foundation "access_token" : "" } - public client + Public client: { "refresh_token" : "", "scope" : "tweet.write tweet.read offline.access", @@ -24,15 +24,29 @@ import Foundation } */ +/// Represents an OAuth 2.0 access token response from Twitter's API. +/// Contains the access token and associated metadata for both confidential and public clients. public struct TwitterOAuth2AccessToken { + /// The scopes granted to this access token, as an array of permission strings. public let scope: [String] + + /// The type of token, typically "bearer". public let tokenType: String + + /// The number of seconds until the token expires. public let expiresIn: Int + + /// The access token string used for API authentication. public let accessToken: String - /// Only Public Client + /// The refresh token for obtaining new access tokens without re-authentication. + /// Only available for public clients using PKCE flow. public let refreshToken: String? + /// Creates an OAuth 2.0 access token from JSON response data. + /// - Parameter jsonData: The raw JSON data from Twitter's OAuth 2.0 token endpoint. + /// - Throws: An error if JSON parsing fails. + /// - Returns: An initialized access token if the JSON contains valid data, nil otherwise. public init?(jsonData: Data) throws { let json = try JSONSerialization.jsonObject(with: jsonData, options: []) @@ -52,6 +66,10 @@ public struct TwitterOAuth2AccessToken { } public extension TwitterOAuth2AccessToken { + /// Creates an OAuth 2.0 access token from a Twitter API response. + /// - Parameter data: The raw response data from Twitter's OAuth 2.0 token endpoint. + /// - Throws: A `TwitterAPIKitError` if parsing fails. + /// - Returns: An initialized access token. static func fromResponse(data: Data) throws -> Self { do { guard let token = try TwitterOAuth2AccessToken(jsonData: data) else { diff --git a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift index d9286783..37d0eef6 100644 --- a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift +++ b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift @@ -5,13 +5,21 @@ import Foundation +/// Represents an OAuth 2.0 bearer token response from Twitter's API. +/// This token type is used for application-only authentication. public struct TwitterOAuth2BearerToken { + /// The type of token, typically "bearer". public let tokenType: String + + /// The bearer token string used for API authentication. public let accessToken: String + /// Creates a bearer token from JSON response data. + /// - Parameter jsonData: The raw JSON data from Twitter's OAuth 2.0 token endpoint. + /// Expected format: `{"token_type":"bearer","access_token":"ACCESS_TOKEN"}` + /// - Throws: An error if JSON parsing fails. + /// - Returns: An initialized bearer token if the JSON contains valid data, nil otherwise. public init?(jsonData: Data) throws { - // {"token_type":"bearer","access_token":"ACCESS_TOKEN"} - let json = try JSONSerialization.jsonObject(with: jsonData, options: []) guard let obj = json as? [String: Any], diff --git a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift index c03c79f9..7d1af635 100644 --- a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift @@ -5,12 +5,23 @@ import Foundation +/// Represents an OAuth 1.0a request token response from Twitter's API. +/// This token is used in the first step of the OAuth 1.0a authentication flow. public struct TwitterOAuthTokenV1 { + /// The OAuth token string used for authentication. public let oauthToken: String + + /// The OAuth token secret used for signing requests. public let oauthTokenSecret: String + + /// Indicates whether the OAuth callback was confirmed by Twitter. + /// This is typically true for OAuth 1.0a requests with a callback URL. public let oauthCallbackConfirmed: Bool? - /// from: oauth_token=zlgW32_NZAAABk&oauth_token_secret=pBYEQzdbyMqIcyDzyn0X7LD&oauth_callback_confirmed=true + /// Creates an OAuth token from a query string response. + /// - Parameter queryStringData: The raw data containing the OAuth response in query string format. + /// Expected format: `oauth_token=TOKEN&oauth_token_secret=SECRET&oauth_callback_confirmed=true` + /// - Returns: An initialized token if the query string contains valid OAuth token and secret, nil otherwise. public init?(queryStringData: Data) { let query = String(data: queryStringData, encoding: .utf8) @@ -32,6 +43,11 @@ public struct TwitterOAuthTokenV1 { self.oauthCallbackConfirmed = oauthCallbackConfirmed } + /// Creates an OAuth token with the specified values. + /// - Parameters: + /// - oauthToken: The OAuth token string. + /// - oauthTokenSecret: The OAuth token secret. + /// - oauthCallbackConfirmed: Whether the OAuth callback was confirmed (optional). public init( oauthToken: String, oauthTokenSecret: String, diff --git a/Sources/TwitterAPIKit/Extensions/Concurrency.swift b/Sources/TwitterAPIKit/Extensions/Concurrency.swift index 3d5c30fe..2d4cce03 100644 --- a/Sources/TwitterAPIKit/Extensions/Concurrency.swift +++ b/Sources/TwitterAPIKit/Extensions/Concurrency.swift @@ -9,8 +9,12 @@ import Foundation // I'm not that familiar with Swift Concurrency, so please report any problems. + /// Adds async/await support to TwitterAPISessionDataTask. @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public extension TwitterAPISessionDataTask { + /// Asynchronously retrieves the response data from the API request. + /// This property provides an async interface to the completion handler-based API. + /// - Returns: A TwitterAPIResponse containing the raw data response. var responseData: TwitterAPIResponse { get async { await withTaskCancellationHandler( @@ -29,8 +33,12 @@ import Foundation } } + /// Adds async/await support to TwitterAPISessionJSONTask. @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public extension TwitterAPISessionJSONTask { + /// Asynchronously retrieves the JSON response as a generic object. + /// This property provides an async interface to the completion handler-based API. + /// - Returns: A TwitterAPIResponse containing the parsed JSON object. var responseObject: TwitterAPIResponse { get async { await withTaskCancellationHandler( @@ -48,6 +56,11 @@ import Foundation } } + /// Asynchronously decodes the JSON response into a specified Decodable type. + /// - Parameters: + /// - type: The Decodable type to decode the response into. + /// - decoder: The JSONDecoder to use for decoding. Defaults to TwitterAPIClient.defaultJSONDecoder. + /// - Returns: A TwitterAPIResponse containing the decoded object. func responseDecodable( type: T.Type, decoder _: JSONDecoder = TwitterAPIClient.defaultJSONDecoder @@ -67,8 +80,12 @@ import Foundation } } + /// Adds async/await support to TwitterAPISessionSpecializedTask. @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public extension TwitterAPISessionSpecializedTask { + /// Asynchronously retrieves the specialized response object. + /// This property provides an async interface to the completion handler-based API. + /// - Returns: A TwitterAPIResponse containing the specialized success type. var responseObject: TwitterAPIResponse { get async { await withTaskCancellationHandler( @@ -86,8 +103,12 @@ import Foundation } } + /// Adds async/await support to TwitterAPISessionStreamTask. @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public extension TwitterAPISessionStreamTask { + /// Creates an AsyncStream for receiving streaming responses from the API. + /// - Parameter queue: The dispatch queue on which to receive responses. Defaults to the main queue. + /// - Returns: An AsyncStream that yields TwitterAPIResponse values. func streamResponse(queue: DispatchQueue = .main) -> AsyncStream> { return AsyncStream { continuation in streamResponse(queue: queue) { response in @@ -103,8 +124,15 @@ import Foundation } } + /// Adds async/await support to TwitterAPIClient. @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public extension TwitterAPIClient { + /// Asynchronously refreshes the OAuth 2.0 token. + /// - Parameters: + /// - type: The type of OAuth 2.0 client to use for token refresh. + /// - forceRefresh: Whether to force a token refresh even if the current token is still valid. + /// - Returns: The result of the token refresh operation. + /// - Throws: A TwitterAPIKitError if the token refresh fails. func refreshOAuth20Token( type: TwitterAuthenticationMethod.OAuth20WithPKCEClientType, forceRefresh: Bool = false diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift index 89a85247..be39e2d1 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift @@ -5,16 +5,34 @@ import Foundation +/// A protocol that defines the interface for network tasks used in Twitter API requests. +/// This protocol provides access to task identifiers, request information, and response data, +/// as well as the ability to cancel ongoing requests. public protocol TwitterAPISessionTask { + /// A unique identifier for the task. + /// This can be used to track and manage multiple concurrent tasks. var taskIdentifier: Int { get } + + /// The current URL request being processed by the task. + /// This may differ from the original request if the request was modified (e.g., due to redirects). var currentRequest: URLRequest? { get } + + /// The original URL request that initiated this task. + /// This remains unchanged even if the request is modified during processing. var originalRequest: URLRequest? { get } + + /// The HTTP response received from the server, if any. + /// This property is nil until a response is received. var httpResponse: HTTPURLResponse? { get } + /// Cancels the task. + /// Once cancelled, a task cannot be resumed and must be recreated if needed. func cancel() } extension URLSessionTask: TwitterAPISessionTask { + /// The HTTP response received from the server, if any. + /// This implementation casts the URLSessionTask's response to HTTPURLResponse. public var httpResponse: HTTPURLResponse? { return response as? HTTPURLResponse } diff --git a/Sources/TwitterAPIKit/TwitterAPIClient.swift b/Sources/TwitterAPIKit/TwitterAPIClient.swift index 43dd1679..1109ffc6 100644 --- a/Sources/TwitterAPIKit/TwitterAPIClient.swift +++ b/Sources/TwitterAPIKit/TwitterAPIClient.swift @@ -5,7 +5,12 @@ import Foundation +/// Main client class for interacting with the Twitter API. +/// This class provides access to both v1.1 and v2 Twitter APIs, as well as authentication endpoints. +/// It handles authentication, request signing, and provides specialized API clients for different Twitter features. open class TwitterAPIClient { + /// Default JSON decoder configured for Twitter API responses. + /// This decoder handles both v1 and v2 date formats and uses snake_case key decoding. public static var defaultJSONDecoder: JSONDecoder = { let decoder = JSONDecoder() decoder.keyDecodingStrategy = .convertFromSnakeCase @@ -39,18 +44,31 @@ open class TwitterAPIClient { return decoder }() + /// Client for handling Twitter authentication flows (OAuth 1.0a and OAuth 2.0). public let auth: TwitterAuthAPI + + /// Client for accessing Twitter API v1.1 endpoints. public let v1: TwitterAPIv1 + + /// Client for accessing Twitter API v2 endpoints. public let v2: TwitterAPIv2 + /// The session used for making API requests. public let session: TwitterAPISession + + /// The current authentication method being used. public var apiAuth: TwitterAuthenticationMethod { return session.auth } - /// for refresh token + /// Client used for refreshing OAuth 2.0 tokens. private var refreshOAuth20TokenClient: TwitterAPIClient? + /// Creates a new TwitterAPIClient instance. + /// - Parameters: + /// - auth: The authentication method to use for API requests. + /// - configuration: The URLSession configuration to use. Defaults to .default. + /// - environment: The Twitter API environment configuration. Defaults to standard Twitter endpoints. public init( _ auth: TwitterAuthenticationMethod, configuration: URLSessionConfiguration = .default, @@ -66,7 +84,12 @@ open class TwitterAPIClient { v2 = TwitterAPIv2(session: session) } - /// for OAuth1.0a + /// Convenience initializer for OAuth 1.0a authentication. + /// - Parameters: + /// - consumerKey: The application's consumer key. + /// - consumerSecret: The application's consumer secret. + /// - oauthToken: The user's OAuth token. + /// - oauthTokenSecret: The user's OAuth token secret. public convenience init( consumerKey: String, consumerSecret: String, @@ -93,9 +116,16 @@ open class TwitterAPIClient { // MARK: - Refresh OAuth2.0 token +/// Extension providing OAuth 2.0 token refresh functionality. public extension TwitterAPIClient { + /// Type alias for the result of a token refresh operation. typealias RefreshOAuth20TokenResultValue = (token: TwitterAuthenticationMethod.OAuth20, refreshed: Bool) - /// Refresh OAuth2.0 token + + /// Refreshes the OAuth 2.0 access token if necessary. + /// - Parameters: + /// - type: The type of OAuth 2.0 client to use for token refresh. + /// - forceRefresh: Whether to force a token refresh even if the current token is still valid. + /// - block: Completion handler called with the result of the token refresh. func refreshOAuth20Token( type: TwitterAuthenticationMethod.OAuth20WithPKCEClientType, forceRefresh: Bool = false, @@ -146,16 +176,25 @@ public extension TwitterAPIClient { } } +/// Base class for Twitter API clients. +/// Provides common functionality and session management for API clients. open class TwitterAPIBase { + /// The session used for making API requests. public let session: TwitterAPISession + + /// Creates a new TwitterAPIBase instance. + /// - Parameter session: The session to use for making API requests. public init(session: TwitterAPISession) { self.session = session } } +/// Extension providing notification names and user info keys for OAuth 2.0 token refresh events. public extension TwitterAPIClient { - // swift-format-ignore + /// Notification posted when an OAuth 2.0 token is refreshed. static let didRefreshOAuth20Token = Notification .Name(rawValue: "TwitterAPIKit.TwitterAPIClient.Notification.didRefreshOAuth20Token") + + /// User info key for accessing the refreshed token in the notification. static let tokenUserInfoKey = "TwitterAPIKit.TwitterAPIClient.UserInfoKey.tokenUser" } diff --git a/Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift b/Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift index ce1a2d83..5968e1aa 100644 --- a/Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift +++ b/Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift @@ -5,11 +5,21 @@ import Foundation +/// Represents error responses from the Twitter API. +/// This enum can handle both v1 and v2 API error formats, as well as unknown error responses. public enum TwitterAPIErrorResponse: Equatable { + /// An error response from the Twitter API v1.1. case v1(TwitterAPIErrorResponseV1) + + /// An error response from the Twitter API v2. case v2(TwitterAPIErrorResponseV2) + + /// An unknown error response containing raw data. case unknown(Data) + /// Creates a new TwitterAPIErrorResponse from raw response data. + /// Attempts to parse the data as either a v1 or v2 error response. + /// - Parameter data: The raw response data from the Twitter API. public init(data: Data) { guard let obj = try? JSONSerialization.jsonObject(with: data, options: []) as? [String: Any] else { self = .unknown(data) @@ -27,6 +37,10 @@ public enum TwitterAPIErrorResponse: Equatable { } public extension TwitterAPIErrorResponse { + /// The error message from the response. + /// For v1 errors, this is the first error message. + /// For v2 errors, this is the detail field. + /// For unknown errors, this is the raw data as a string. var message: String { switch self { case let .v1(twitterAPIErrorResponseV1): @@ -38,6 +52,8 @@ public extension TwitterAPIErrorResponse { } } + /// The error code from the response. + /// Only available for v1 errors. var code: Int? { if case let .v1(v1) = self { return v1.code @@ -45,10 +61,12 @@ public extension TwitterAPIErrorResponse { return nil } + /// Indicates whether this is a v1 error response. var isV1: Bool { return v1 != nil } + /// The v1 error response if this is a v1 error, nil otherwise. var v1: TwitterAPIErrorResponseV1? { if case let .v1(v1) = self { return v1 @@ -56,10 +74,12 @@ public extension TwitterAPIErrorResponse { return nil } + /// Indicates whether this is a v2 error response. var isV2: Bool { return v2 != nil } + /// The v2 error response if this is a v2 error, nil otherwise. var v2: TwitterAPIErrorResponseV2? { if case let .v2(v2) = self { return v2 @@ -67,10 +87,12 @@ public extension TwitterAPIErrorResponse { return nil } + /// Indicates whether this is an unknown error response. var isUnknown: Bool { return unknownData != nil } + /// The raw data if this is an unknown error, nil otherwise. var unknownData: Data? { if case let .unknown(data) = self { return data @@ -79,21 +101,32 @@ public extension TwitterAPIErrorResponse { } } -/// https://developer.twitter.com/ja/docs/basics/response-codes +/// Represents an error response from the Twitter API v1.1. +/// Format: {"errors":[{"message":"Sorry, that page does not exist","code":34}]} public struct TwitterAPIErrorResponseV1 { - /// first error message + /// The first error message in the response. public let message: String - /// first error code + + /// The first error code in the response. public let code: Int + + /// All errors included in the response. public let errors: [Self] + /// Creates a new TwitterAPIErrorResponseV1. + /// - Parameters: + /// - message: The error message. + /// - code: The error code. + /// - errors: Additional errors in the response. public init(message: String, code: Int, errors: [Self]) { self.message = message self.code = code self.errors = errors } - /// {"errors":[{"message":"Sorry, that page does not exist","code":34}]} + /// Creates a new TwitterAPIErrorResponseV1 from a dictionary. + /// - Parameter obj: A dictionary containing the error response data. + /// - Returns: An initialized error response if the dictionary contains valid data, nil otherwise. public init?(obj: [String: Any]) { guard let errors = obj["errors"] as? [[String: Any]] else { return nil @@ -113,6 +146,9 @@ public struct TwitterAPIErrorResponseV1 { self.errors = tErrors } + /// Checks if this error response contains a specific error code. + /// - Parameter code: The error code to check for. + /// - Returns: true if the error code is present in this response or any nested errors. public func contains(code: Int) -> Bool { return code == self.code || errors.contains { $0.code == code } } @@ -121,27 +157,52 @@ public struct TwitterAPIErrorResponseV1 { extension TwitterAPIErrorResponseV1: Equatable {} /// https://developer.twitter.com/en/support/twitter-api/error-troubleshooting +/// Represents an error response from the Twitter API v2. +/// See: https://developer.twitter.com/en/support/twitter-api/error-troubleshooting public struct TwitterAPIErrorResponseV2 { + /// Represents a specific error in a v2 error response. public struct Error: Equatable { + /// The error message. public let message: String - public let parameters: [String /* paramter name */: [String] /* values */ ] - + + /// Additional parameters associated with the error. + public let parameters: [String: [String]] + + /// Creates a new Error. + /// - Parameters: + /// - message: The error message. + /// - parameters: Additional parameters describing the error. public init(message: String, parameters: [String: [String]]) { self.message = message self.parameters = parameters } + /// Creates a new Error from a dictionary. + /// - Parameter obj: A dictionary containing the error data. public init(obj: [String: Any]) { message = obj["message"].map { String(describing: $0) } ?? "" parameters = (obj["parameters"] as? [String: [String]]) ?? [:] } } + /// The title of the error. public let title: String + + /// A detailed description of the error. public let detail: String + + /// The type of error. public let type: String + + /// Specific errors included in the response. public let errors: [Error] + /// Creates a new TwitterAPIErrorResponseV2. + /// - Parameters: + /// - title: The error title. + /// - detail: The detailed error description. + /// - type: The error type. + /// - errors: Specific errors included in the response. public init( title: String, detail: String, @@ -154,6 +215,9 @@ public struct TwitterAPIErrorResponseV2 { self.errors = errors } + /// Creates a new TwitterAPIErrorResponseV2 from a dictionary. + /// - Parameter obj: A dictionary containing the error response data. + /// - Returns: An initialized error response if the dictionary contains valid data, nil otherwise. public init?(obj: [String: Any]) { guard let title = obj["title"] as? String, let detail = obj["detail"] as? String, @@ -170,3 +234,4 @@ public struct TwitterAPIErrorResponseV2 { } extension TwitterAPIErrorResponseV2: Equatable {} + diff --git a/Sources/TwitterAPIKit/TwitterAPIKit.swift b/Sources/TwitterAPIKit/TwitterAPIKit.swift index df794f93..1b268470 100644 --- a/Sources/TwitterAPIKit/TwitterAPIKit.swift +++ b/Sources/TwitterAPIKit/TwitterAPIKit.swift @@ -9,19 +9,39 @@ import Foundation @_exported import FoundationNetworking #endif +/// Specifies the type of Twitter API base URL to use. public enum TwitterBaseURLType { + /// The main Twitter API endpoint (api.twitter.com). case api + + /// The Twitter web endpoint (twitter.com). case twitter + + /// The Twitter media upload endpoint (upload.twitter.com). case upload } -/// Twitter Environment Setup +/// Configuration for Twitter API endpoints. +/// This struct defines the base URLs used for different Twitter API services. public struct TwitterAPIEnvironment { + /// The base URL for Twitter web services. + /// Default: "https://twitter.com" public let twitterURL: URL + + /// The base URL for Twitter API services. + /// Default: "https://api.twitter.com" public let apiURL: URL + + /// The base URL for Twitter media upload services. + /// Default: "https://upload.twitter.com" public let uploadURL: URL // swiftlint:disable force_unwrapping + /// Creates a new Twitter API environment configuration. + /// - Parameters: + /// - twitterURL: The base URL for Twitter web services. Defaults to "https://twitter.com". + /// - apiURL: The base URL for Twitter API services. Defaults to "https://api.twitter.com". + /// - uploadURL: The base URL for Twitter media upload services. Defaults to "https://upload.twitter.com". public init( twitterURL: URL = URL(string: "https://twitter.com")!, apiURL: URL = URL(string: "https://api.twitter.com")!, diff --git a/Sources/TwitterAPIKit/TwitterAPIKitError.swift b/Sources/TwitterAPIKit/TwitterAPIKitError.swift index 4a81a53f..c483dfd9 100644 --- a/Sources/TwitterAPIKit/TwitterAPIKitError.swift +++ b/Sources/TwitterAPIKit/TwitterAPIKitError.swift @@ -327,23 +327,38 @@ public extension TwitterAPIKitError.RefreshOAuth20TokenFailureReason { } public extension TwitterAPIKitError { + /// Returns the request failure reason if this error represents a request failure. + /// - Returns: The `RequestFailureReason` if present, nil otherwise. var requestFailureReason: RequestFailureReason? { guard case let .requestFailed(reason: reason) = self else { return nil } return reason } + /// Returns the response failure reason if this error represents a response failure. + /// - Returns: The `ResponseFailureReason` if present, nil otherwise. var responseFailureReason: ResponseFailureReason? { guard case let .responseFailed(reason) = self else { return nil } return reason } + /// Returns the response serialization failure reason if this error represents a serialization failure. + /// - Returns: The `ResponseSerializationFailureReason` if present, nil otherwise. var responseSerializationFailureReason: ResponseSerializationFailureReason? { guard case let .responseSerializeFailed(reason) = self else { return nil } return reason } + /// Returns the OAuth 2.0 token refresh failure reason if this error represents a token refresh failure. + /// - Returns: The `RefreshOAuth20TokenFailureReason` if present, nil otherwise. var refreshOAuth20TokenFailureReason: RefreshOAuth20TokenFailureReason? { guard case let .refreshOAuth20TokenFailed(reason) = self else { return nil } return reason } + + /// Returns the upload media failure reason if this error represents a media upload failure. + /// - Returns: The `UploadMediaFailureReason` if present, nil otherwise. + var uploadMediaFailureReason: UploadMediaFailureReason? { + guard case let .uploadMediaFailed(reason) = self else { return nil } + return reason + } } diff --git a/Sources/TwitterAPIKit/TwitterRateLimit.swift b/Sources/TwitterAPIKit/TwitterRateLimit.swift index de4bc30b..aaee71af 100644 --- a/Sources/TwitterAPIKit/TwitterRateLimit.swift +++ b/Sources/TwitterAPIKit/TwitterRateLimit.swift @@ -5,16 +5,28 @@ import Foundation -/// https://developer.twitter.com/en/docs/rate-limits -/// https://developer.twitter.com/en/docs/twitter-api/v1/rate-limits -/// https://developer.twitter.com/en/docs/twitter-api/rate-limits +/// Represents Twitter API rate limit information extracted from response headers. +/// For more information, see: +/// - [Rate Limits Overview](https://developer.twitter.com/en/docs/rate-limits) +/// - [v1 Rate Limits](https://developer.twitter.com/en/docs/twitter-api/v1/rate-limits) +/// - [v2 Rate Limits](https://developer.twitter.com/en/docs/twitter-api/rate-limits) public struct TwitterRateLimit { + /// The maximum number of requests allowed in the current time window. public let limit: Int + + /// The number of requests remaining in the current time window. public let remaining: Int - /// UTC epoch seconds + /// The time when the current rate limit window resets, in UTC epoch seconds. public let reset: TimeInterval + /// Creates a rate limit object from response headers. + /// - Parameter header: The response headers containing rate limit information. + /// Expected headers: + /// - x-rate-limit-limit: Maximum requests allowed + /// - x-rate-limit-remaining: Requests remaining + /// - x-rate-limit-reset: Reset time in epoch seconds + /// - Returns: An initialized rate limit object if the headers contain valid data, nil otherwise. public init?(header: [AnyHashable: Any]) { guard let limit = parse(header, key: "x-rate-limit-limit"), let remaining = parse(header, key: "x-rate-limit-remaining"), @@ -29,6 +41,8 @@ public struct TwitterRateLimit { } public extension TwitterRateLimit { + /// The date when the current rate limit window resets. + /// This is a convenience property that converts the reset timestamp to a Date object. var resetDate: Date { return Date(timeIntervalSince1970: reset) } From 7715cc772c8135927ebc410104adf7dcd0db69ad Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Sat, 17 May 2025 11:20:19 -0600 Subject: [PATCH 19/26] fix: add de-inits everywhere --- ...tApplicationRateLimitStatusRequestV1.swift | 3 + .../Requests/GetBlocksIDsRequestV1.swift | 3 + .../Requests/GetBlocksListRequestV1.swift | 3 + .../Requests/GetMutesUsersIDsRequestV1.swift | 3 + .../Requests/GetMutesUsersListRequestV1.swift | 3 + .../Requests/PostBlocksCreateRequestV1.swift | 3 + .../Requests/PostBlocksDestroyRequestV1.swift | 3 + .../PostMutesUsersCreateRequestV1.swift | 3 + .../PostMutesUsersDestroyRequestV1.swift | 3 + .../PostUsersReportSpamRequestV1.swift | 3 + .../GetCollectionsEntriesRequestV1.swift | 3 + .../GetCollectionsListRequestV1.swift | 3 + .../GetCollectionsShowRequestV1.swift | 3 + .../PostCollectionsCreateRequestV1.swift | 3 + .../PostCollectionsDestroyRequestV1.swift | 3 + .../PostCollectionsEntriesAddRequestV1.swift | 3 + ...ostCollectionsEntriesCurateRequestV1.swift | 3 + .../PostCollectionsEntriesMoveRequestV1.swift | 3 + ...ostCollectionsEntriesRemoveRequestV1.swift | 3 + .../PostCollectionsUpdateRequestV1.swift | 3 + .../DeleteDirectMessageRequestV1.swift | 3 + .../GetDirectMessageListRequestV1.swift | 3 + .../Requests/PostDirectMessageRequestV1.swift | 3 + ...irectMessagesIndicateTypingRequestV1.swift | 3 + .../PostDirectMessagesMarkReadRequestV1.swift | 3 + .../Requests/GetFavoritesRequestV1.swift | 3 + .../Requests/PostFavoriteRequestV1.swift | 3 + .../Requests/PostUnFavoriteRequestV1.swift | 3 + .../Requests/GetFollowersIDsRequestV1.swift | 3 + .../Requests/GetFollowersListRequestV1.swift | 3 + .../Requests/GetFriendsIDsRequestV1.swift | 3 + .../GetFriendshipsIncomingRequestV1.swift | 3 + .../GetFriendshipsLookupRequestV1.swift | 3 + ...GetFriendshipsNoRetweetsIDsRequestV1.swift | 3 + .../GetFriendshipsOutgoingRequestV1.swift | 3 + .../GetFriendshipsShowRequestV1.swift | 3 + .../PostFriendshipsCreateRequestV1.swift | 3 + .../PostFriendshipsDestroyRequestV1.swift | 3 + .../PostFriendshipsUpdateRequestV1.swift | 3 + .../Geo/Requests/GetGeoPlaceIDRequestV1.swift | 3 + .../GetGeoReverseGeocodeRequestV1.swift | 3 + .../Geo/Requests/GetGeoSearchRequestV1.swift | 3 + .../Requests/GetRetweetersRequestV1.swift | 3 + .../Requests/GetRetweetsOfMeRequestV1.swift | 3 + .../Requests/GetRetweetsRequestV1.swift | 3 + .../Requests/PostRetweetRequestV1.swift | 3 + .../Requests/PostUnRetweetRequestV1.swift | 3 + .../Requests/GetSearchTweetsRequestV1.swift | 3 + .../PostSavedSearchesDestroyRequestV1.swift | 3 + .../GetStatusesHomeTimelineRequestV1.swift | 3 + ...GetStatusesMentionsTimelineRequestV1.swift | 3 + .../GetStatusesUserTimelineRequestV1.swift | 3 + .../GetTrendsAvailableRequestV1.swift | 3 + .../Requests/GetTrendsClosestRequestV1.swift | 3 + .../Requests/GetTrendsPlaceRequestV1.swift | 3 + .../Requests/GetStatusesLookupRequestV1.swift | 3 + .../Requests/GetStatusesShowRequestV1.swift | 3 + .../PostStatusesDestroyRequestV1.swift | 3 + .../Requests/PostUpdateStatusRequestV1.swift | 3 + .../DeleteUsersBlockingRequestV2.swift | 3 + .../Requests/DeleteUsersMutingRequestV2.swift | 3 + .../Requests/GetUsersBlockingRequestV2.swift | 3 + .../Requests/GetUsersMutingRequestV2.swift | 3 + .../Requests/PostUsersBlockingRequestV2.swift | 3 + .../Requests/PostUsersMutingRequestV2.swift | 3 + .../DeleteUsersBookmarksRequestV2.swift | 3 + .../Requests/GetUsersBookmarksRequestV2.swift | 3 + .../PostUsersBookmarksRequestV2.swift | 3 + .../Requests/GetComplianceJobRequestV2.swift | 3 + .../Requests/GetComplianceJobsRequestV2.swift | 3 + .../PostComplianceJobsRequestV2.swift | 3 + ...nsWithParticipantIdDmEventsRequestV2.swift | 1 + .../TwitterDirectMessageEventTypeV2.swift | 2 +- .../DeleteUsersFollowingRequestV2.swift | 3 + .../Requests/GetUsersFollowersRequestV2.swift | 3 + .../Requests/GetUsersFollowingRequestV2.swift | 3 + .../PostUsersFollowingRequestV2.swift | 3 + .../Requests/DeleteUsersLikesRequestV2.swift | 3 + .../GetTweetsLikingUsersRequestV2.swift | 3 + .../GetUsersLikedTweetsRequestV2.swift | 3 + .../Requests/PostUsersLikesRequestV2.swift | 3 + .../List/Requests/DeleteListRequestV2.swift | 3 + .../DeleteListsMembersRequestV2.swift | 3 + .../DeleteUsersFollowedListsRequestV2.swift | 3 + .../DeleteUsersPinnedListsRequestV2.swift | 3 + .../List/Requests/GetListRequestV2.swift | 3 + .../Requests/GetListsFollowersRequestV2.swift | 3 + .../Requests/GetListsMembersRequestV2.swift | 3 + .../Requests/GetListsTweetsRequestV2.swift | 3 + .../GetUsersFollowedListsRequestV2.swift | 3 + .../GetUsersListMembershipsRequestV2.swift | 3 + .../GetUsersOwnedListsRequestV2.swift | 3 + .../GetUsersPinnedListsRequestV2.swift | 3 + .../Requests/PostListsMembersRequestV2.swift | 3 + .../List/Requests/PostListsRequestV2.swift | 3 + .../PostUsersFollowedListsRequestV2.swift | 3 + .../PostUsersPinnedListsRequestV2.swift | 3 + .../List/Requests/PutListRequestV2.swift | 3 + .../DeleteUsersRetweetsRequestV2.swift | 3 + .../GetTweetsRetweetedByRequestV2.swift | 3 + .../Requests/PostUsersRetweetsRequestV2.swift | 3 + .../GetTweetsSearchRecentRequestV2.swift | 3 + .../Spaces/Requests/GetSpaceRequestV2.swift | 3 + .../Requests/GetSpacesBuyersRequestV2.swift | 3 + .../GetSpacesByCreatorIDsRequestV2.swift | 3 + .../Spaces/Requests/GetSpacesRequestV2.swift | 3 + .../Requests/GetSpacesSearchRequestV2.swift | 3 + .../Requests/GetSpacesTweetsRequestV2.swift | 3 + .../GetTweetsSampleStreamRequestV2.swift | 3 + .../GetTweetsSearchStreamRequestV2.swift | 3 + .../GetTweetsSearchStreamRulesRequestV2.swift | 3 + ...PostTweetsSearchStreamRulesRequestV2.swift | 3 + .../Requests/GetUsersMentionsRequestV2.swift | 3 + ...melinesReverseChronologicalRequestV2.swift | 3 + .../Requests/GetUsersTweetsRequestV2.swift | 3 + .../Tweet/Requests/DeleteTweetRequestV2.swift | 3 + .../Tweet/Requests/GetTweetRequestV2.swift | 4 + .../GetTweetsQuoteTweetsRequestV2.swift | 3 + .../Tweet/Requests/GetTweetsRequestV2.swift | 6 +- .../Tweet/Requests/PostTweetsRequestV2.swift | 14 +- .../Requests/PutTweetsHiddenRequestV2.swift | 4 + .../GetTweetsCountsAllRequestV2.swift | 3 + .../GetTweetsCountsRecentRequestV2.swift | 3 + .../Users/Requests/GetUserRequestV2.swift | 3 + .../Users/Requests/GetUsersByRequestV2.swift | 3 + .../GetUsersByUsernameRequestV2.swift | 3 + .../Users/Requests/GetUsersMeRequestV2.swift | 3 + .../Users/Requests/GetUsersRequestV2.swift | 3 + .../SessionTask/TwitterAPISessionTask.swift | 18 - .../TwitterAPIErrorResponse.swift | 1 - .../APIv1/List/ListRequestV1Tests.swift | 3 +- .../UploadMediaAppendRequestV1Tests.swift | 2 +- .../APIv1/Media/UploadMediaUtilTests.swift | 1 + .../AuthAPI/TwitterAuthAPITests.swift | 10 +- .../TwitterOAuth2AccessTokenTests.swift | 17 +- .../TwitterOAuth2BearerTokenTests.swift | 5 +- .../AuthAPI/TwitterOAuthTokenV1Tests.swift | 9 +- Tests/TwitterAPIKitTests/Helper/Assert.swift | 11 +- .../Helper/CombinationsSequence.swift | 23 +- .../TwitterAPIKitTests/OAuthHelperTests.swift | 7 +- ...tterAPISessionDelegatedJSONTaskTests.swift | 2 +- ...erAPISessionDelegatedStreamTaskTests.swift | 5 +- .../TwitterAPISessionTests.swift | 5 +- lint.txt | 1094 +++++------------ scripts/.gitignore | 1 - scripts/gen_init_params.swift | 164 --- scripts/gen_v1.js | 119 -- scripts/gen_v2.js | 314 ----- 148 files changed, 749 insertions(+), 1459 deletions(-) delete mode 100644 scripts/.gitignore delete mode 100644 scripts/gen_init_params.swift delete mode 100644 scripts/gen_v1.js delete mode 100644 scripts/gen_v2.js diff --git a/Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift index de81b287..549d4def 100644 --- a/Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift @@ -28,4 +28,7 @@ open class GetApplicationRateLimitStatusRequestV1: TwitterAPIRequest { ) { self.resources = resources } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift index 2cd8ac5b..3f1a0df7 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift @@ -32,4 +32,7 @@ open class GetBlocksIDsRequestV1: TwitterAPIRequest { self.stringifyIDs = stringifyIDs self.cursor = cursor } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift index f3defcc2..5e949059 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift @@ -36,4 +36,7 @@ open class GetBlocksListRequestV1: TwitterAPIRequest { self.skipStatus = skipStatus self.cursor = cursor } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift index cd1e21c6..2c116333 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift @@ -32,4 +32,7 @@ open class GetMutesUsersIDsRequestV1: TwitterAPIRequest { self.stringifyIDs = stringifyIDs self.cursor = cursor } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift index d57e2dc1..5fd605bf 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift @@ -36,4 +36,7 @@ open class GetMutesUsersListRequestV1: TwitterAPIRequest { self.includeEntities = includeEntities self.skipStatus = skipStatus } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift index de2e3090..d0ab4445 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift @@ -36,4 +36,7 @@ open class PostBlocksCreateRequestV1: TwitterAPIRequest { self.includeEntities = includeEntities self.skipStatus = skipStatus } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift index e708380a..6cab56b4 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift @@ -37,4 +37,7 @@ open class PostBlocksDestroyRequestV1: TwitterAPIRequest { self.includeEntities = includeEntities self.skipStatus = skipStatus } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift index 292351af..d6e412ab 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift @@ -28,4 +28,7 @@ open class PostMutesUsersCreateRequestV1: TwitterAPIRequest { ) { self.user = user } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift index 84af18ec..445c498f 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift @@ -28,4 +28,7 @@ open class PostMutesUsersDestroyRequestV1: TwitterAPIRequest { ) { self.user = user } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift index d168a371..d4614d9a 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift @@ -25,4 +25,7 @@ open class PostUsersReportSpamRequestV1: TwitterAPIRequest { self.user = user self.performBlock = performBlock } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift index d092a78a..e992cb75 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift @@ -40,4 +40,7 @@ open class GetCollectionsEntriesRequestV1: TwitterAPIRequest { self.maxPosition = maxPosition self.minPosition = minPosition } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsListRequestV1.swift index 47c67adb..f7219b7c 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsListRequestV1.swift @@ -40,4 +40,7 @@ open class GetCollectionsListRequestV1: TwitterAPIRequest { self.cursor = cursor self.tweetID = tweetID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsShowRequestV1.swift index 695d5090..b1e9d2ba 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsShowRequestV1.swift @@ -28,4 +28,7 @@ open class GetCollectionsShowRequestV1: TwitterAPIRequest { ) { self.id = id } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift index aed8cd2c..1c67b0b4 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift @@ -50,4 +50,7 @@ open class PostCollectionsCreateRequestV1: TwitterAPIRequest { self.description = description self.timelineOrder = timelineOrder } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift index c75a2260..e8047730 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift @@ -28,4 +28,7 @@ open class PostCollectionsDestroyRequestV1: TwitterAPIRequest { ) { self.id = id } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift index 16800a16..f4987ada 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift @@ -40,4 +40,7 @@ open class PostCollectionsEntriesAddRequestV1: TwitterAPIRequest { self.above = above self.relativeTo = relativeTo } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift index 06e5103b..a3e513c6 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift @@ -50,4 +50,7 @@ open class PostCollectionsEntriesCurateRequestV1: TwitterAPIRequest { self.id = id self.changes = changes } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift index cf3c707b..6b82df05 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift @@ -40,4 +40,7 @@ open class PostCollectionsEntriesMoveRequestV1: TwitterAPIRequest { self.above = above self.relativeTo = relativeTo } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift index 2b4906c0..25e60f40 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift @@ -32,4 +32,7 @@ open class PostCollectionsEntriesRemoveRequestV1: TwitterAPIRequest { self.id = id self.tweetID = tweetID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift index b2821486..1ab2e034 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift @@ -40,4 +40,7 @@ open class PostCollectionsUpdateRequestV1: TwitterAPIRequest { self.name = name self.description = description } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift index 25b51cd9..79535ade 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift @@ -26,4 +26,7 @@ open class DeleteDirectMessageRequestV1: TwitterAPIRequest { public init(id: String) { self.id = id } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageListRequestV1.swift index 2652099d..499c1315 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageListRequestV1.swift @@ -32,4 +32,7 @@ open class GetDirectMessageListRequestV1: TwitterAPIRequest { self.count = count self.cursor = cursor } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift index 758e60e3..5be25b09 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift @@ -146,4 +146,7 @@ open class PostDirectMessageRequestV1: TwitterAPIRequest { self.attachment = attachment self.quickReplyOptions = quickReplyOptions } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift index 57822791..f27c7c16 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift @@ -26,4 +26,7 @@ open class PostDirectMessagesIndicateTypingRequestV1: TwitterAPIRequest { ) { self.recipientID = recipientID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift index 9ce443b0..f9be9585 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift @@ -37,4 +37,7 @@ open class PostDirectMessagesMarkReadRequestV1: TwitterAPIRequest { self.lastReadEventID = lastReadEventID self.recipientID = recipientID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/GetFavoritesRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/GetFavoritesRequestV1.swift index 4471460b..3587db2e 100644 --- a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/GetFavoritesRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/GetFavoritesRequestV1.swift @@ -46,4 +46,7 @@ open class GetFavoritesRequestV1: TwitterAPIRequest { self.maxID = maxID self.includeEntities = includeEntities } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostFavoriteRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostFavoriteRequestV1.swift index b7d4742d..da43a442 100644 --- a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostFavoriteRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostFavoriteRequestV1.swift @@ -32,4 +32,7 @@ open class PostFavoriteRequestV1: TwitterAPIRequest { self.id = id self.includeEntities = includeEntities } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostUnFavoriteRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostUnFavoriteRequestV1.swift index 5f4cef32..5a499bf2 100644 --- a/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostUnFavoriteRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostUnFavoriteRequestV1.swift @@ -32,4 +32,7 @@ open class PostUnFavoriteRequestV1: TwitterAPIRequest { self.id = id self.includeEntities = includeEntities } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift index 50ef0d5f..c227ba72 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift @@ -40,4 +40,7 @@ open class GetFollowersIDsRequestV1: TwitterAPIRequest { self.cursor = cursor self.stringifyIDs = stringifyIDs } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift index 62ab7fbc..454a5bc3 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift @@ -44,4 +44,7 @@ open class GetFollowersListRequestV1: TwitterAPIRequest { self.skipStatus = skipStatus self.includeUserEntities = includeUserEntities } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift index b3dc2b38..9d9ec2e6 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift @@ -40,4 +40,7 @@ open class GetFriendsIDsRequestV1: TwitterAPIRequest { self.cursor = cursor self.stringifyIDs = stringifyIDs } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift index 8243b9a7..53da4d0a 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift @@ -32,4 +32,7 @@ open class GetFriendshipsIncomingRequestV1: TwitterAPIRequest { self.cursor = cursor self.stringifyIDs = stringifyIDs } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift index 88ddfebe..11718625 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift @@ -28,4 +28,7 @@ open class GetFriendshipsLookupRequestV1: TwitterAPIRequest { ) { self.users = users } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift index 2d9ec4dd..cc67868b 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift @@ -28,4 +28,7 @@ open class GetFriendshipsNoRetweetsIDsRequestV1: TwitterAPIRequest { ) { self.stringifyIDs = stringifyIDs } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift index 6c8da3c5..e992c707 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift @@ -32,4 +32,7 @@ open class GetFriendshipsOutgoingRequestV1: TwitterAPIRequest { self.cursor = cursor self.stringifyIDs = stringifyIDs } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift index deb26035..b2cb6b0f 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift @@ -32,4 +32,7 @@ open class GetFriendshipsShowRequestV1: TwitterAPIRequest { self.sourceUser = sourceUser self.targetUser = targetUser } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift index a1c66ce0..90b3349e 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift @@ -32,4 +32,7 @@ open class PostFriendshipsCreateRequestV1: TwitterAPIRequest { self.user = user self.follow = follow } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift index 0ec6e3d8..03f83b93 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift @@ -28,4 +28,7 @@ open class PostFriendshipsDestroyRequestV1: TwitterAPIRequest { ) { self.user = user } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift index ac3b1360..75313f00 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift @@ -36,4 +36,7 @@ open class PostFriendshipsUpdateRequestV1: TwitterAPIRequest { self.device = device self.retweets = retweets } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoPlaceIDRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoPlaceIDRequestV1.swift index b97b9777..0b350dd2 100644 --- a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoPlaceIDRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoPlaceIDRequestV1.swift @@ -26,4 +26,7 @@ open class GetGeoPlaceIDRequestV1: TwitterAPIRequest { ) { self.placeID = placeID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoReverseGeocodeRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoReverseGeocodeRequestV1.swift index 6a732dc5..7ea19ab5 100644 --- a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoReverseGeocodeRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoReverseGeocodeRequestV1.swift @@ -40,4 +40,7 @@ open class GetGeoReverseGeocodeRequestV1: TwitterAPIRequest { self.maxResults = maxResults self.granularity = granularity } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift index 07117883..d6578368 100644 --- a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift @@ -52,4 +52,7 @@ open class GetGeoSearchRequestV1: TwitterAPIRequest { self.maxResults = maxResults self.granularity = granularity } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift index 74dd9f6a..46b46454 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift @@ -43,4 +43,7 @@ open class GetRetweetersRequestV1: TwitterAPIRequest { self.cursor = cursor self.stringifyIDs = stringifyIDs } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift index e62e6da7..7e6606f0 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift @@ -50,4 +50,7 @@ open class GetRetweetsOfMeRequestV1: TwitterAPIRequest { self.includeEntities = includeEntities self.includeUserEntities = includeUserEntities } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsRequestV1.swift index efcda097..2af04528 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsRequestV1.swift @@ -37,4 +37,7 @@ open class GetRetweetsRequestV1: TwitterAPIRequest { self.count = count self.trimUser = trimUser } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostRetweetRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostRetweetRequestV1.swift index 57431142..458acdcd 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostRetweetRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostRetweetRequestV1.swift @@ -31,4 +31,7 @@ open class PostRetweetRequestV1: TwitterAPIRequest { self.id = id self.trimUser = trimUser } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostUnRetweetRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostUnRetweetRequestV1.swift index b39b0e38..741a4ae4 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostUnRetweetRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostUnRetweetRequestV1.swift @@ -31,4 +31,7 @@ open class PostUnRetweetRequestV1: TwitterAPIRequest { self.id = id self.trimUser = trimUser } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSearchTweetsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSearchTweetsRequestV1.swift index 81165dc7..d4cf7a17 100644 --- a/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSearchTweetsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSearchTweetsRequestV1.swift @@ -70,4 +70,7 @@ open class GetSearchTweetsRequestV1: TwitterAPIRequest { self.resultType = resultType self.includeEntities = includeEntities } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift index 088411a4..8074938e 100644 --- a/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift @@ -26,4 +26,7 @@ open class PostSavedSearchesDestroyRequestV1: TwitterAPIRequest { ) { self.id = id } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift index fcd2cd1b..dba9d97b 100644 --- a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift @@ -48,4 +48,7 @@ open class GetStatusesHomeTimelineRequestV1: TwitterAPIRequest { self.excludeReplies = excludeReplies self.includeEntities = includeEntities } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesMentionsTimelineRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesMentionsTimelineRequestV1.swift index f3be95ee..4839ad2e 100644 --- a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesMentionsTimelineRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesMentionsTimelineRequestV1.swift @@ -44,4 +44,7 @@ open class GetStatusesMentionsTimelineRequestV1: TwitterAPIRequest { self.trimUser = trimUser self.includeEntities = includeEntities } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesUserTimelineRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesUserTimelineRequestV1.swift index ff537734..95732a5e 100644 --- a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesUserTimelineRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesUserTimelineRequestV1.swift @@ -52,4 +52,7 @@ open class GetStatusesUserTimelineRequestV1: TwitterAPIRequest { self.includeRTs = includeRTs self.excludeReplies = excludeReplies } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift index 5d4e1b7b..5eeb65e0 100644 --- a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift @@ -20,4 +20,7 @@ open class GetTrendsAvailableRequestV1: TwitterAPIRequest { } public init() {} + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift index 0a286372..68430332 100644 --- a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift @@ -28,4 +28,7 @@ open class GetTrendsClosestRequestV1: TwitterAPIRequest { ) { self.location = location } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsPlaceRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsPlaceRequestV1.swift index 5ec9e871..7100d8db 100644 --- a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsPlaceRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsPlaceRequestV1.swift @@ -35,4 +35,7 @@ open class GetTrendsPlaceRequestV1: TwitterAPIRequest { self.woeid = woeid self.exclude = exclude } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesLookupRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesLookupRequestV1.swift index b4e3fb3e..30316349 100644 --- a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesLookupRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesLookupRequestV1.swift @@ -48,4 +48,7 @@ open class GetStatusesLookupRequestV1: TwitterAPIRequest { self.includeEntities = includeEntities self.includeExtAltText = includeExtAltText } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesShowRequestV1.swift index 80fb3929..c99a72b7 100644 --- a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesShowRequestV1.swift @@ -48,4 +48,7 @@ open class GetStatusesShowRequestV1: TwitterAPIRequest { self.includeMyRetweet = includeMyRetweet self.includeExtAltText = includeExtAltText } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostStatusesDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostStatusesDestroyRequestV1.swift index b32b777c..faa5666a 100644 --- a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostStatusesDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostStatusesDestroyRequestV1.swift @@ -31,4 +31,7 @@ open class PostStatusesDestroyRequestV1: TwitterAPIRequest { self.id = id self.trimUser = trimUser } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift index d080e4e7..a761ad01 100644 --- a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift @@ -80,4 +80,7 @@ open class PostStatusesUpdateRequestV1: TwitterAPIRequest { self.failDMcommands = failDMcommands self.cardUri = cardUri } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersBlockingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersBlockingRequestV2.swift index 39463eee..2310fe0d 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersBlockingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersBlockingRequestV2.swift @@ -29,4 +29,7 @@ open class DeleteUsersBlockingRequestV2: TwitterAPIRequest { self.sourceUserID = sourceUserID self.targetUserID = targetUserID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersMutingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersMutingRequestV2.swift index e6c2ab59..4784824d 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersMutingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersMutingRequestV2.swift @@ -29,4 +29,7 @@ open class DeleteUsersMutingRequestV2: TwitterAPIRequest { self.sourceUserID = sourceUserID self.targetUserID = targetUserID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersBlockingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersBlockingRequestV2.swift index 138211ef..9de9812b 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersBlockingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersBlockingRequestV2.swift @@ -47,4 +47,7 @@ open class GetUsersBlockingRequestV2: TwitterAPIRequest { self.tweetFields = tweetFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersMutingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersMutingRequestV2.swift index ea776d10..839fa9a2 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersMutingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersMutingRequestV2.swift @@ -47,4 +47,7 @@ open class GetUsersMutingRequestV2: TwitterAPIRequest { self.tweetFields = tweetFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersBlockingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersBlockingRequestV2.swift index 1706848b..784ff6c2 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersBlockingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersBlockingRequestV2.swift @@ -35,4 +35,7 @@ open class PostUsersBlockingRequestV2: TwitterAPIRequest { self.id = id self.targetUserID = targetUserID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersMutingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersMutingRequestV2.swift index 0799c899..e5bbc93b 100644 --- a/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersMutingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersMutingRequestV2.swift @@ -35,4 +35,7 @@ open class PostUsersMutingRequestV2: TwitterAPIRequest { self.id = id self.targetUserID = targetUserID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/DeleteUsersBookmarksRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/DeleteUsersBookmarksRequestV2.swift index 26a1e0c5..cd5ed1c0 100644 --- a/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/DeleteUsersBookmarksRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/DeleteUsersBookmarksRequestV2.swift @@ -32,4 +32,7 @@ open class DeleteUsersBookmarksRequestV2: TwitterAPIRequest { self.id = id self.tweetID = tweetID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/GetUsersBookmarksRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/GetUsersBookmarksRequestV2.swift index 72a5c9c3..2eeca539 100644 --- a/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/GetUsersBookmarksRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/GetUsersBookmarksRequestV2.swift @@ -60,4 +60,7 @@ open class GetUsersBookmarksRequestV2: TwitterAPIRequest { self.tweetFields = tweetFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/PostUsersBookmarksRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/PostUsersBookmarksRequestV2.swift index 1594a5c8..bc66520d 100644 --- a/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/PostUsersBookmarksRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/PostUsersBookmarksRequestV2.swift @@ -38,4 +38,7 @@ open class PostUsersBookmarksRequestV2: TwitterAPIRequest { self.id = id self.tweetID = tweetID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobRequestV2.swift index 2881400d..519c33cb 100644 --- a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobRequestV2.swift @@ -26,4 +26,7 @@ open class GetComplianceJobRequestV2: TwitterAPIRequest { ) { self.id = id } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift index 9dc8787d..7b1eb5f4 100644 --- a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift @@ -42,4 +42,7 @@ open class GetComplianceJobsRequestV2: TwitterAPIRequest { self.type = type self.status = status } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/PostComplianceJobsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/PostComplianceJobsRequestV2.swift index d3699958..b729964b 100644 --- a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/PostComplianceJobsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/PostComplianceJobsRequestV2.swift @@ -40,4 +40,7 @@ open class PostComplianceJobsRequestV2: TwitterAPIRequest { self.name = name self.resumable = resumable } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift index cb0aa048..eafdc897 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift @@ -5,6 +5,7 @@ import Foundation +// swiflint:disable:next type_name /// Returns DM Events for a DM Conversation /// Required OAuth 2.0 scopes: dm.read, tweet.read, users.read open class GetDmConversationsWithParticipantIdDmEventsRequestV2: TwitterAPIRequest { diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/TwitterDirectMessageEventTypeV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/TwitterDirectMessageEventTypeV2.swift index 0202424b..acd7deb6 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/TwitterDirectMessageEventTypeV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/TwitterDirectMessageEventTypeV2.swift @@ -17,7 +17,7 @@ extension TwitterDirectMessageEventTypeV2: TwitterAPIv2RequestParameter { } extension Set where Element == TwitterDirectMessageEventTypeV2 { - func bind(param: inout [String: Any]) { + public func bind(param: inout [String: Any]) { param["event_types"] = commaSeparatedString } } diff --git a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/DeleteUsersFollowingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/DeleteUsersFollowingRequestV2.swift index fe092515..0d9a640d 100644 --- a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/DeleteUsersFollowingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/DeleteUsersFollowingRequestV2.swift @@ -29,4 +29,7 @@ open class DeleteUsersFollowingRequestV2: TwitterAPIRequest { self.sourceUserID = sourceUserID self.targetUserID = targetUserID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowersRequestV2.swift index 8d79bfc1..d5c41fd2 100644 --- a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowersRequestV2.swift @@ -47,4 +47,7 @@ open class GetUsersFollowersRequestV2: TwitterAPIRequest { self.tweetFields = tweetFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowingRequestV2.swift index 2eaf09f9..ada8e080 100644 --- a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowingRequestV2.swift @@ -47,4 +47,7 @@ open class GetUsersFollowingRequestV2: TwitterAPIRequest { self.tweetFields = tweetFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/PostUsersFollowingRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/PostUsersFollowingRequestV2.swift index 3bf45db7..b0ce7f67 100644 --- a/Sources/TwitterAPIKit/APIv2/Friendships/Requests/PostUsersFollowingRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Friendships/Requests/PostUsersFollowingRequestV2.swift @@ -35,4 +35,7 @@ open class PostUsersFollowingRequestV2: TwitterAPIRequest { self.id = id self.targetUserID = targetUserID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Like/Requests/DeleteUsersLikesRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Like/Requests/DeleteUsersLikesRequestV2.swift index 05c61667..8f48b861 100644 --- a/Sources/TwitterAPIKit/APIv2/Like/Requests/DeleteUsersLikesRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Like/Requests/DeleteUsersLikesRequestV2.swift @@ -30,4 +30,7 @@ open class DeleteUsersLikesRequestV2: TwitterAPIRequest { self.id = id self.tweetID = tweetID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Like/Requests/GetTweetsLikingUsersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Like/Requests/GetTweetsLikingUsersRequestV2.swift index abf291db..50f8c833 100644 --- a/Sources/TwitterAPIKit/APIv2/Like/Requests/GetTweetsLikingUsersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Like/Requests/GetTweetsLikingUsersRequestV2.swift @@ -60,4 +60,7 @@ open class GetTweetsLikingUsersRequestV2: TwitterAPIRequest { self.tweetFields = tweetFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Like/Requests/GetUsersLikedTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Like/Requests/GetUsersLikedTweetsRequestV2.swift index cf2c764a..028fd553 100644 --- a/Sources/TwitterAPIKit/APIv2/Like/Requests/GetUsersLikedTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Like/Requests/GetUsersLikedTweetsRequestV2.swift @@ -60,4 +60,7 @@ open class GetUsersLikedTweetsRequestV2: TwitterAPIRequest { self.tweetFields = tweetFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Like/Requests/PostUsersLikesRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Like/Requests/PostUsersLikesRequestV2.swift index 58c3e313..db24cc7b 100644 --- a/Sources/TwitterAPIKit/APIv2/Like/Requests/PostUsersLikesRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Like/Requests/PostUsersLikesRequestV2.swift @@ -36,4 +36,7 @@ open class PostUsersLikesRequestV2: TwitterAPIRequest { self.id = id self.tweetID = tweetID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListRequestV2.swift index 875376f1..71337123 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListRequestV2.swift @@ -26,4 +26,7 @@ open class DeleteListRequestV2: TwitterAPIRequest { ) { self.id = id } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListsMembersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListsMembersRequestV2.swift index d6974908..d18f7814 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListsMembersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListsMembersRequestV2.swift @@ -29,4 +29,7 @@ open class DeleteListsMembersRequestV2: TwitterAPIRequest { self.id = id self.userID = userID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift index d02bbe8d..cfbef85a 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift @@ -29,4 +29,7 @@ open class DeleteUsersFollowedListsRequestV2: TwitterAPIRequest { self.id = id self.listID = listID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersPinnedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersPinnedListsRequestV2.swift index 4954fc42..706a469c 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersPinnedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersPinnedListsRequestV2.swift @@ -29,4 +29,7 @@ open class DeleteUsersPinnedListsRequestV2: TwitterAPIRequest { self.id = id self.listID = listID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListRequestV2.swift index ffdff07c..78b6cb57 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListRequestV2.swift @@ -39,4 +39,7 @@ open class GetListRequestV2: TwitterAPIRequest { self.listFields = listFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsFollowersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsFollowersRequestV2.swift index 44e9c17b..087a4efd 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsFollowersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsFollowersRequestV2.swift @@ -47,4 +47,7 @@ open class GetListsFollowersRequestV2: TwitterAPIRequest { self.tweetFields = tweetFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsMembersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsMembersRequestV2.swift index 9a5421da..36adf8ff 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsMembersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsMembersRequestV2.swift @@ -48,4 +48,7 @@ open class GetListsMembersRequestV2: TwitterAPIRequest { self.tweetFields = tweetFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsTweetsRequestV2.swift index 4cf5b684..5778b00e 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetListsTweetsRequestV2.swift @@ -47,4 +47,7 @@ open class GetListsTweetsRequestV2: TwitterAPIRequest { self.tweetFields = tweetFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersFollowedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersFollowedListsRequestV2.swift index e7584e1b..24105f9d 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersFollowedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersFollowedListsRequestV2.swift @@ -47,4 +47,7 @@ open class GetUsersFollowedListsRequestV2: TwitterAPIRequest { self.paginationToken = paginationToken self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersListMembershipsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersListMembershipsRequestV2.swift index 02b0686b..bdde1cc6 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersListMembershipsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersListMembershipsRequestV2.swift @@ -48,4 +48,7 @@ open class GetUsersListMembershipsRequestV2: TwitterAPIRequest { self.paginationToken = paginationToken self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersOwnedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersOwnedListsRequestV2.swift index a5dabd0a..f060db0d 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersOwnedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersOwnedListsRequestV2.swift @@ -47,4 +47,7 @@ open class GetUsersOwnedListsRequestV2: TwitterAPIRequest { self.paginationToken = paginationToken self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersPinnedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersPinnedListsRequestV2.swift index 2671d8e5..c0b38f1a 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersPinnedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersPinnedListsRequestV2.swift @@ -39,4 +39,7 @@ open class GetUsersPinnedListsRequestV2: TwitterAPIRequest { self.listFields = listFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsMembersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsMembersRequestV2.swift index 25d6d566..c7651cd3 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsMembersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsMembersRequestV2.swift @@ -35,4 +35,7 @@ open class PostListsMembersRequestV2: TwitterAPIRequest { self.id = id self.userID = userID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsRequestV2.swift index 46784fb9..ef824be3 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/PostListsRequestV2.swift @@ -40,4 +40,7 @@ open class PostListsRequestV2: TwitterAPIRequest { self.description = description self.private = `private` } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersFollowedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersFollowedListsRequestV2.swift index 06a09d87..24858ce9 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersFollowedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersFollowedListsRequestV2.swift @@ -35,4 +35,7 @@ open class PostUsersFollowedListsRequestV2: TwitterAPIRequest { self.id = id self.listID = listID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersPinnedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersPinnedListsRequestV2.swift index d22e6f63..9c5be1bd 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersPinnedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersPinnedListsRequestV2.swift @@ -35,4 +35,7 @@ open class PostUsersPinnedListsRequestV2: TwitterAPIRequest { self.id = id self.listID = listID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/PutListRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/PutListRequestV2.swift index ce3ff1cc..375f9d40 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/PutListRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/PutListRequestV2.swift @@ -43,4 +43,7 @@ open class PutListRequestV2: TwitterAPIRequest { self.name = name self.private = `private` } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Retweet/Requests/DeleteUsersRetweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Retweet/Requests/DeleteUsersRetweetsRequestV2.swift index 1581b7af..9baed0cd 100644 --- a/Sources/TwitterAPIKit/APIv2/Retweet/Requests/DeleteUsersRetweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Retweet/Requests/DeleteUsersRetweetsRequestV2.swift @@ -29,4 +29,7 @@ open class DeleteUsersRetweetsRequestV2: TwitterAPIRequest { self.id = id self.sourceTweetID = sourceTweetID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Retweet/Requests/GetTweetsRetweetedByRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Retweet/Requests/GetTweetsRetweetedByRequestV2.swift index ecf15c49..b9b37ca2 100644 --- a/Sources/TwitterAPIKit/APIv2/Retweet/Requests/GetTweetsRetweetedByRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Retweet/Requests/GetTweetsRetweetedByRequestV2.swift @@ -60,4 +60,7 @@ open class GetTweetsRetweetedByRequestV2: TwitterAPIRequest { self.tweetFields = tweetFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Retweet/Requests/PostUsersRetweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Retweet/Requests/PostUsersRetweetsRequestV2.swift index d37e5404..1b5e77d7 100644 --- a/Sources/TwitterAPIKit/APIv2/Retweet/Requests/PostUsersRetweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Retweet/Requests/PostUsersRetweetsRequestV2.swift @@ -35,4 +35,7 @@ open class PostUsersRetweetsRequestV2: TwitterAPIRequest { self.id = id self.tweetID = tweetID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift index adbc83f7..e9321830 100644 --- a/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift @@ -89,4 +89,7 @@ open class GetTweetsSearchRecentRequestV2: TwitterAPIRequest { self.untilID = untilID self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpaceRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpaceRequestV2.swift index d2dad908..03e05782 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpaceRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpaceRequestV2.swift @@ -43,4 +43,7 @@ open class GetSpaceRequestV2: TwitterAPIRequest { self.topicFields = topicFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesBuyersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesBuyersRequestV2.swift index 10180274..0e3f5f65 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesBuyersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesBuyersRequestV2.swift @@ -51,4 +51,7 @@ open class GetSpacesBuyersRequestV2: TwitterAPIRequest { self.tweetFields = tweetFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesByCreatorIDsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesByCreatorIDsRequestV2.swift index 1994c333..da1c2608 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesByCreatorIDsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesByCreatorIDsRequestV2.swift @@ -44,4 +44,7 @@ open class GetSpacesByCreatorIDsRequestV2: TwitterAPIRequest { self.topicFields = topicFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesRequestV2.swift index 06bed65e..57064267 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesRequestV2.swift @@ -44,4 +44,7 @@ open class GetSpacesRequestV2: TwitterAPIRequest { self.topicFields = topicFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift index e5c102af..31b6c1aa 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift @@ -57,4 +57,7 @@ open class GetSpacesSearchRequestV2: TwitterAPIRequest { self.topicFields = topicFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesTweetsRequestV2.swift index f3a792aa..01e897f3 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesTweetsRequestV2.swift @@ -51,4 +51,7 @@ open class GetSpacesTweetsRequestV2: TwitterAPIRequest { self.tweetFields = tweetFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSampleStreamRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSampleStreamRequestV2.swift index 29a12a9f..9ef0d2fe 100644 --- a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSampleStreamRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSampleStreamRequestV2.swift @@ -52,4 +52,7 @@ open class GetTweetsSampleStreamRequestV2: TwitterAPIRequest { self.tweetFields = tweetFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRequestV2.swift index 955337d9..07d4f0f3 100644 --- a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRequestV2.swift @@ -52,4 +52,7 @@ open class GetTweetsSearchStreamRequestV2: TwitterAPIRequest { self.tweetFields = tweetFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift index 25335148..d92661f6 100644 --- a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift @@ -28,4 +28,7 @@ open class GetTweetsSearchStreamRulesRequestV2: TwitterAPIRequest { ) { self.ids = ids } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift index 7a001783..20c3b1fb 100644 --- a/Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift @@ -67,4 +67,7 @@ open class PostTweetsSearchStreamRulesRequestV2: TwitterAPIRequest { self.operation = operation self.dryRun = dryRun } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersMentionsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersMentionsRequestV2.swift index c0f7ed5f..0cce0f10 100644 --- a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersMentionsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersMentionsRequestV2.swift @@ -75,4 +75,7 @@ open class GetUsersMentionsRequestV2: TwitterAPIRequest { self.untilID = untilID self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTimelinesReverseChronologicalRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTimelinesReverseChronologicalRequestV2.swift index 91e5e420..fbe697bc 100644 --- a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTimelinesReverseChronologicalRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTimelinesReverseChronologicalRequestV2.swift @@ -79,4 +79,7 @@ open class GetUsersTimelinesReverseChronologicalRequestV2: TwitterAPIRequest { self.untilID = untilID self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTweetsRequestV2.swift index 9a9e9ee0..22da8e49 100644 --- a/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTweetsRequestV2.swift @@ -79,4 +79,7 @@ open class GetUsersTweetsRequestV2: TwitterAPIRequest { self.untilID = untilID self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/DeleteTweetRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/DeleteTweetRequestV2.swift index 6b7cbfe7..497353a4 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/DeleteTweetRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/DeleteTweetRequestV2.swift @@ -26,4 +26,7 @@ open class DeleteTweetRequestV2: TwitterAPIRequest { ) { self.id = id } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetRequestV2.swift index f2a71fe2..92eea865 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetRequestV2.swift @@ -51,4 +51,8 @@ open class GetTweetRequestV2: TwitterAPIRequest { self.tweetFields = tweetFields self.userFields = userFields } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsQuoteTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsQuoteTweetsRequestV2.swift index b0c3cb9f..9e589b41 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsQuoteTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsQuoteTweetsRequestV2.swift @@ -59,4 +59,7 @@ open class GetTweetsQuoteTweetsRequestV2: TwitterAPIRequest { self.tweetFields = tweetFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsRequestV2.swift index dd4d7e6d..8998d988 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsRequestV2.swift @@ -50,6 +50,10 @@ open class GetTweetsRequestV2: TwitterAPIRequest { self.placeFields = placeFields self.pollFields = pollFields self.tweetFields = tweetFields - self.userFields = userFields + self.userFields = userFields + } + + deinit { + // De-init Logic Here } } diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift index fecccbc0..c8420d25 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift @@ -14,7 +14,7 @@ open class PostTweetsRequestV2: TwitterAPIRequest { self.placeID = placeID } - func bind(param: inout [String: Any]) { + public func bind(param: inout [String: Any]) { var params = [String: Any]() params["place_id"] = placeID @@ -35,7 +35,7 @@ open class PostTweetsRequestV2: TwitterAPIRequest { self.taggedUserIDs = taggedUserIDs } - func bind(param: inout [String: Any]) { + public func bind(param: inout [String: Any]) { var params = [String: Any]() params["media_ids"] = mediaIDs @@ -57,7 +57,7 @@ open class PostTweetsRequestV2: TwitterAPIRequest { self.options = options } - func bind(param: inout [String: Any]) { + public func bind(param: inout [String: Any]) { var params = [String: Any]() params["duration_minutes"] = durationMinutes @@ -79,7 +79,7 @@ open class PostTweetsRequestV2: TwitterAPIRequest { self.inReplyToTweetID = inReplyToTweetID } - func bind(param: inout [String: Any]) { + public func bind(param: inout [String: Any]) { var params = [String: Any]() excludeReplyUserIDs.map { params["exclude_reply_user_ids"] = $0 } @@ -94,7 +94,7 @@ open class PostTweetsRequestV2: TwitterAPIRequest { case following case everyone - func bind(param: inout [String: Any]) { + public func bind(param: inout [String: Any]) { param["reply_settings"] = rawValue } } @@ -156,4 +156,8 @@ open class PostTweetsRequestV2: TwitterAPIRequest { self.replySettings = replySettings self.text = text } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PutTweetsHiddenRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PutTweetsHiddenRequestV2.swift index 98dabd9d..6e467e86 100644 --- a/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PutTweetsHiddenRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Tweet/Requests/PutTweetsHiddenRequestV2.swift @@ -36,4 +36,8 @@ open class PutTweetsHiddenRequestV2: TwitterAPIRequest { self.id = id self.hidden = hidden } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsAllRequestV2.swift b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsAllRequestV2.swift index ec890788..ac2f4678 100644 --- a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsAllRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsAllRequestV2.swift @@ -52,4 +52,7 @@ open class GetTweetsCountsAllRequestV2: TwitterAPIRequest { self.startTime = startTime self.untilID = untilID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsRecentRequestV2.swift b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsRecentRequestV2.swift index 39824f10..1058ea02 100644 --- a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsRecentRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsRecentRequestV2.swift @@ -48,4 +48,7 @@ open class GetTweetsCountsRecentRequestV2: TwitterAPIRequest { self.startTime = startTime self.untilID = untilID } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUserRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUserRequestV2.swift index 016f6643..a907ecec 100644 --- a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUserRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUserRequestV2.swift @@ -39,4 +39,7 @@ open class GetUserRequestV2: TwitterAPIRequest { self.tweetFields = tweetFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByRequestV2.swift index 65541580..8e88dfa2 100644 --- a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByRequestV2.swift @@ -40,4 +40,7 @@ open class GetUsersByRequestV2: TwitterAPIRequest { self.tweetFields = tweetFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByUsernameRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByUsernameRequestV2.swift index 729d30dc..e8b4f472 100644 --- a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByUsernameRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByUsernameRequestV2.swift @@ -39,4 +39,7 @@ open class GetUsersByUsernameRequestV2: TwitterAPIRequest { self.tweetFields = tweetFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersMeRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersMeRequestV2.swift index f2d92279..6d193126 100644 --- a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersMeRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersMeRequestV2.swift @@ -36,4 +36,7 @@ open class GetUsersMeRequestV2: TwitterAPIRequest { self.tweetFields = tweetFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersRequestV2.swift index 1905d6c5..0ce1ff11 100644 --- a/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersRequestV2.swift @@ -40,4 +40,7 @@ open class GetUsersRequestV2: TwitterAPIRequest { self.tweetFields = tweetFields self.userFields = userFields } + deinit { + // de-init logic here + } } diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift index be39e2d1..89a85247 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift @@ -5,34 +5,16 @@ import Foundation -/// A protocol that defines the interface for network tasks used in Twitter API requests. -/// This protocol provides access to task identifiers, request information, and response data, -/// as well as the ability to cancel ongoing requests. public protocol TwitterAPISessionTask { - /// A unique identifier for the task. - /// This can be used to track and manage multiple concurrent tasks. var taskIdentifier: Int { get } - - /// The current URL request being processed by the task. - /// This may differ from the original request if the request was modified (e.g., due to redirects). var currentRequest: URLRequest? { get } - - /// The original URL request that initiated this task. - /// This remains unchanged even if the request is modified during processing. var originalRequest: URLRequest? { get } - - /// The HTTP response received from the server, if any. - /// This property is nil until a response is received. var httpResponse: HTTPURLResponse? { get } - /// Cancels the task. - /// Once cancelled, a task cannot be resumed and must be recreated if needed. func cancel() } extension URLSessionTask: TwitterAPISessionTask { - /// The HTTP response received from the server, if any. - /// This implementation casts the URLSessionTask's response to HTTPURLResponse. public var httpResponse: HTTPURLResponse? { return response as? HTTPURLResponse } diff --git a/Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift b/Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift index 5968e1aa..15a56c2b 100644 --- a/Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift +++ b/Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift @@ -234,4 +234,3 @@ public struct TwitterAPIErrorResponseV2 { } extension TwitterAPIErrorResponseV2: Equatable {} - diff --git a/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift index 682e5768..750b9378 100644 --- a/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift @@ -36,7 +36,8 @@ internal class CapsuledListsListRequestV1: GetListsListRequestV1 { } internal class ListRequestV1Tests: XCTestCase { - // https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-list + // https://developer.twitter.com/en/docs/twitter-api/v1/ \ + // accounts-and-users/create-manage-lists/api-reference/get-lists-list public func testGetListsListRequestV1() throws { XCTContext.runActivity(named: "with only required parameters") { _ in let list = GetListsListRequestV1(user: .userID("1234")) diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaAppendRequestV1Tests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaAppendRequestV1Tests.swift index 6328d5f7..0166ee2e 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaAppendRequestV1Tests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaAppendRequestV1Tests.swift @@ -22,7 +22,7 @@ internal class UploadMediaAppendRequestV1Tests: XCTestCase { XCTAssertEqual(req.path, "/1.1/media/upload.json") XCTAssertEqual(req.bodyContentType, .multipartFormData) XCTAssertEqual( - req.parameters as! [String: MultipartFormDataPart], + req.parameters as? [String: MultipartFormDataPart], [ "command": MultipartFormDataPart.value(name: "command", value: "APPEND"), "media_id": MultipartFormDataPart.value(name: "media_id", value: "m"), diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift index df613bad..2c5ab724 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift @@ -32,6 +32,7 @@ internal class UploadMediaUtilTests: XCTestCase { ) var requestCount = 0 + // swiftlint:disable:next closure_body_length MockURLProtocol.requestHandler = { [weak self] request in guard let self else { throw URLError(.unknown) diff --git a/Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift b/Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift index 8e0ae207..6a508528 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift @@ -7,11 +7,11 @@ import TwitterAPIKit import XCTest internal class TwitterAuthAPITests: XCTestCase { - var client: TwitterAuthAPI! + public var client: TwitterAuthAPI! override public func setUpWithError() throws { let config = URLSessionConfiguration.default - config.protocolinternal classes = [MockURLProtocol.self] + config.protocolClasses = [MockURLProtocol.self] client = TwitterAPIClient( @@ -59,8 +59,10 @@ internal class TwitterAuthAPITests: XCTestCase { ) XCTAssertEqual( - url!.absoluteString, - "https://twitter.com/i/oauth2/authorize?client_id=cid&code_challenge=challenge&code_challenge_method=plain&redirect_uri=callback&response_type=code&scope=users.read%20tweet.read&state=state" + url?.absoluteString, + "https://twitter.com/i/oauth2/authorize?client_id=cid&code_challenge=challenge&" + + "code_challenge_method=plain&redirect_uri=callback&response_type=code&" + + "scope=users.read%20tweet.read&state=state" ) } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift index c93c3d7a..fb457ec6 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift @@ -42,7 +42,10 @@ internal class TwitterOAuth2AccessTokenTests: XCTestCase { } """#.utf8 ) - let token = try TwitterOAuth2AccessToken(jsonData: data)! +kj guard let token = try TwitterOAuth2AccessToken(jsonData: data) else { + XCTFail("Failed to create test token") + return + } XCTAssertEqual(token.scope, ["tweet.write", "tweet.read", "offline.access"]) XCTAssertEqual(token.tokenType, "bearer") XCTAssertEqual(token.expiresIn, 7_200) @@ -54,13 +57,21 @@ internal class TwitterOAuth2AccessTokenTests: XCTestCase { public func testError() throws { try XCTContext.runActivity(named: "Not json") { _ in XCTAssertThrowsError(try TwitterOAuth2AccessToken.fromResponse(data: Data("aa".utf8))) { error in - XCTAssertTrue((error as! TwitterAPIKitError).isResponseSerializeFailed) + guard error is TwitterAPIKitError else { + XCTFail("Expected TwitterAPIKitError") + return + } + XCTAssertTrue(error.isResponseSerializeFailed) } } try XCTContext.runActivity(named: "valid json but invalid object") { _ in XCTAssertThrowsError(try TwitterOAuth2AccessToken.fromResponse(data: Data("{}".utf8))) { error in - XCTAssertTrue((error as! TwitterAPIKitError).isResponseSerializeFailed) + guard error is TwitterAPIKitError else {kj + XCTFail("Expected TwitterAPIKitError") + return + } + XCTAssertTrue(error.isResponseSerializeFailed) } } } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2BearerTokenTests.swift b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2BearerTokenTests.swift index 131c12c1..0ec0751f 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2BearerTokenTests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2BearerTokenTests.swift @@ -9,7 +9,10 @@ import XCTest internal class TwitterOAuth2BearerTokenTests: XCTestCase { public func testJsonData() throws { let data = Data(#"{"token_type":"bearer","access_token":"token"}"#.utf8) - let token = try TwitterOAuth2BearerToken(jsonData: data)! + guard let token = try TwitterOAuth2BearerToken(jsonData: data) else { + XCTFail("Failed to create test token") + return + } XCTAssertEqual(token.tokenType, "bearer") XCTAssertEqual(token.accessToken, "token") diff --git a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift index a3a18780..505ce8f1 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift @@ -11,16 +11,19 @@ internal class TwitterOAuthTokenV1Tests: XCTestCase { let token = TwitterOAuthTokenV1(oauthToken: "token", oauthTokenSecret: "secret", oauthCallbackConfirmed: true) XCTAssertEqual(token.oauthToken, "token") XCTAssertEqual(token.oauthTokenSecret, "secret") - XCTAssertTrue(token.oauthCallbackConfirmed!) + XCTAssertTrue(token.oauthCallbackConfirmed ?? false) } public func testQueryStringData() { let data = Data("oauth_token=token&oauth_token_secret=secret&oauth_callback_confirmed=true".utf8) - let token = TwitterOAuthTokenV1(queryStringData: data)! + guard let token = TwitterOAuthTokenV1(queryStringData: data) else { + XCTFail("Failed to create test token") + return + } XCTAssertEqual(token.oauthToken, "token") XCTAssertEqual(token.oauthTokenSecret, "secret") - XCTAssertTrue(token.oauthCallbackConfirmed!) + XCTAssertTrue(token.oauthCallbackConfirmed ?? false) } public func testNil() { diff --git a/Tests/TwitterAPIKitTests/Helper/Assert.swift b/Tests/TwitterAPIKitTests/Helper/Assert.swift index ebe5c40e..757f709a 100644 --- a/Tests/TwitterAPIKitTests/Helper/Assert.swift +++ b/Tests/TwitterAPIKitTests/Helper/Assert.swift @@ -6,11 +6,14 @@ import Foundation import XCTest -// swift-format-ignore: AlwaysUseLowerCamelCase -func AssertEqualAnyDict( - _ l: [String: Any], _ r: [String: Any], _ message: @autoclosure () -> String = "", file: StaticString = #filePath, +// swiftlint:disable:next identifier_name +internal func AssertEqualAnyDict( + _ left: [String: Any], + _ right: [String: Any], + _ message: @autoclosure () -> String = "", + file: StaticString = #filePath, line: UInt = #line ) { // It works well most of the time. - XCTAssertEqual(NSDictionary(dictionary: l), NSDictionary(dictionary: r), message(), file: file, line: line) + XCTAssertEqual(NSDictionary(dictionary: left), NSDictionary(dictionary: right), message(), file: file, line: line) } diff --git a/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift b/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift index 8ac072fb..8ff30a51 100644 --- a/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift +++ b/Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift @@ -49,8 +49,7 @@ public struct CombinationsSequence { } /// The total number of combinations. - @inlinable - public var count: Int { + @inlinable public var count: Int { guard let range = combinationRange else { return 0 } let total = baseCount if range == 0 ..< (total + 1) { @@ -66,34 +65,32 @@ public struct CombinationsSequence { } } - return range.map { - binomial(total: total, size: $0) - }.reduce(0, +) + return range + .map { + binomial(total: total, size: $0) + } + .reduce(0, +) } } extension CombinationsSequence: Sequence { /// The iterator for a `CombinationsSequence` instance. public struct Iterator: IteratorProtocol { - @usableFromInline - internal let base: Base + @usableFromInline internal let base: Base /// The current range of accepted sizes of combinations. /// /// - Note: The range is contracted until empty while iterating over /// combinations of different sizes. When the range is empty, iteration is /// finished. - @usableFromInline - internal var kRange: Range + @usableFromInline internal var kRange: Range /// Whether or not iteration is finished (`kRange` is empty) - @inlinable - internal var isFinished: Bool { + @inlinable internal var isFinished: Bool { return kRange.isEmpty } - @usableFromInline - internal var indexes: [Base.Index] + @usableFromInline internal var indexes: [Base.Index] @inlinable internal init(_ combinations: CombinationsSequence) { diff --git a/Tests/TwitterAPIKitTests/OAuthHelperTests.swift b/Tests/TwitterAPIKitTests/OAuthHelperTests.swift index c36e35da..16aefa5b 100644 --- a/Tests/TwitterAPIKitTests/OAuthHelperTests.swift +++ b/Tests/TwitterAPIKitTests/OAuthHelperTests.swift @@ -15,9 +15,14 @@ internal class OAuthHelperTests: XCTestCase { // https://developer.twitter.com/en/docs/authentication/oauth-1-0a/authorizing-a-request // https://developer.twitter.com/en/docs/authentication/oauth-1-0a/creating-a-signature public func test() throws { + guard let url = URL(string: "https://api.twitter.com/1.1/statuses/update.json") else { + XCTFail("Failed to create test URL") + return + } + let header = authorizationHeader( for: .post, - url: URL(string: "https://api.twitter.com/1.1/statuses/update.json")!, + url: url, parameters: ["status": "Hello Ladies + Gentlemen, a signed OAuth request!", "include_entities": true], consumerKey: "xvz1evFS4wEEPTGEFPHBog", consumerSecret: "kAcSOqF21Fu85e7zjz7ZN2U4ZRhfV3WpwPAoE3Z7kBw", diff --git a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift index f4cafcdd..62c04b8a 100644 --- a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift +++ b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift @@ -13,7 +13,7 @@ internal struct DecodableObj: Decodable, Equatable { internal class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { // swiftlint:disable:next force_unwrapping - let testURL = URL(string: "http://example.com")! // This is fine as it's a constant test URL that we know is valid + internal let testURL = URL(string: "http://example.com")! // This is fine as it's a constant test URL that we know is valid public func testSuccess() throws { let mockTask = MockTwitterAPISessionTask(taskIdentifier: 1) diff --git a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift index 4c5e0e8e..c60649f6 100644 --- a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift +++ b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift @@ -147,7 +147,10 @@ internal class TwitterAPISessionDelegatedStreamTaskTests: XCTestCase { DispatchQueue.main.async { task.append( chunk: Data( - "{\"detail\":\"Authenticating with OAuth 1.0a User Context is forbidden for this endpoint. Supported authentication types are [OAuth 2.0 Application-Only].\",\"title\":\"Unsupported Authentication\",\"status\":403,\"type\":\"https://api.twitter.com/2/problems/unsupported-authentication\"}" + "{\"detail\":\"Authenticating with OAuth 1.0a User Context is forbidden for this endpoint. " + + "Supported authentication types are [OAuth 2.0 Application-Only].\",\"title\":\"Unsupported " + + "Authentication\",\"status\":403,\"type\":\"https://api.twitter.com/2/problems/unsupported-" + + "authentication\"}" .utf8 ) ) diff --git a/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift b/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift index ceec4cf7..669423d4 100644 --- a/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift +++ b/Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift @@ -335,6 +335,9 @@ internal class TwitterAPISessionTests: XCTestCase { } public extension Data { + /// Initialize a Data object by reading from an InputStream. + /// - Parameter input: The InputStream to read from. + /// - Throws: An error if the InputStream is nil or an error occurs while reading. init(reading input: InputStream) throws { self.init() input.open() @@ -351,7 +354,7 @@ public extension Data { let read = input.read(buffer, maxLength: bufferSize) if read < 0 { // Stream error occured - throw input.streamError! + throw input.streamError ?? URLError(.unknown) } else if read == 0 { // EOF break diff --git a/lint.txt b/lint.txt index 3293e72a..849078a9 100644 --- a/lint.txt +++ b/lint.txt @@ -2,80 +2,23 @@ > twitterapikit@1.0.0 lint > swiftlint --config=.swiftlint.yml . -::error file=Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift,line=87,col=24::Force tries should be avoided (force_try) -::warning file=Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift,line=48,col=63::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift,line=49,col=55::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift,line=50,col=60::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift,line=87,col=65::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift,line=88,col=59::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift,line=127,col=49::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift,line=127,col=107::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift,line=324,col=40::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/TwitterAPISessionTests.swift,line=308,col=5::public declarations should be documented (missing_docs) -::warning file=Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift,line=32,col=53::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/Mock/MockURLProtocol.swift,line=32,col=111::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/Extensions/DataTests.swift,line=21,col=43::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/Extensions/DataTests.swift,line=38,col=43::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionSpecializedTaskTests.swift,line=17,col=48::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionSpecializedTaskTests.swift,line=44,col=48::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionSpecializedTaskTests.swift,line=48,col=48::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift,line=70,col=55::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift,line=121,col=55::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift,line=171,col=55::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift,line=219,col=55::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift,line=46,col=49::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift,line=46,col=107::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift,line=104,col=49::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift,line=104,col=107::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift,line=231,col=53::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/TwitterAPIClientTests.swift,line=231,col=111::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift,line=16,col=77::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift,line=17,col=78::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift,line=19,col=52::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift,line=44,col=56::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift,line=108,col=56::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift,line=147,col=49::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift,line=157,col=45::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift,line=191,col=49::Force unwrapping should be avoided (force_unwrapping) -::error file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedStreamTaskTests.swift,line=124,col=1::Line should be 200 characters or less; currently it has 311 characters (line_length) -::warning file=Tests/TwitterAPIKitTests/APIv1/List/ListRequestV1Tests.swift,line=39,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) -::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaAppendRequestV1Tests.swift,line=25,col=28::Force casts should be avoided (force_cast) -::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2BearerTokenTests.swift,line=12,col=65::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift,line=16,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) ::warning file=Tests/TwitterAPIKitTests/OAuthHelperTests.swift,line=20,col=81::Force unwrapping should be avoided (force_unwrapping) ::error file=Tests/TwitterAPIKitTests/OAuthHelperTests.swift,line=32,col=1::Line should be 200 characters or less; currently it has 328 characters (line_length) -::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift,line=10,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Tests/TwitterAPIKitTests/AuthAPI/.swift,line=12,col=65::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/AuthAPI/.swift,line=10,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift,line=62,col=16::Force unwrapping should be avoided (force_unwrapping) ::error file=Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift,line=63,col=1::Line should be 200 characters or less; currently it has 202 characters (line_length) -::error file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift,line=57,col=38::Force casts should be avoided (force_cast) -::error file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift,line=63,col=38::Force casts should be avoided (force_cast) -::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift,line=24,col=69::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift,line=45,col=69::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=10,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=10,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) -::error file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=10,col=6::Function name 'AssertEqualAnyDict(_:_:_:file:line:)' should start with a lowercase character (identifier_name) -::error file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=11,col=7::Variable name 'l' should be between 3 and 40 characters long (identifier_name) -::error file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=11,col=27::Variable name 'r' should be between 3 and 40 characters long (identifier_name) -::warning file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=10,col=6::Functions and methods parameters should be either on the same line, or one per line (multiline_parameters) ::warning file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=53,col=12::Attributes should be on their own lines in functions and types, but on the same line as variables and imports (attributes) ::warning file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=79,col=18::Attributes should be on their own lines in functions and types, but on the same line as variables and imports (attributes) ::warning file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=87,col=18::Attributes should be on their own lines in functions and types, but on the same line as variables and imports (attributes) ::warning file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=91,col=18::Attributes should be on their own lines in functions and types, but on the same line as variables and imports (attributes) ::warning file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=96,col=18::Attributes should be on their own lines in functions and types, but on the same line as variables and imports (attributes) -::error file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=26,col=33::Variable name 'k' should be between 3 and 40 characters long (identifier_name) -::error file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=54,col=19::Variable name 'k' should be between 3 and 40 characters long (identifier_name) -::error file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=55,col=13::Variable name 'n' should be between 3 and 40 characters long (identifier_name) -::error file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=60,col=32::Variable name 'n' should be between 3 and 40 characters long (identifier_name) -::error file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=60,col=40::Variable name 'k' should be between 3 and 40 characters long (identifier_name) -::error file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=144,col=17::Variable name 'i' should be between 3 and 40 characters long (identifier_name) -::error file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=148,col=17::Variable name 'j' should be between 3 and 40 characters long (identifier_name) -::error file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=158,col=21::Variable name 'k' should be between 3 and 40 characters long (identifier_name) -::error file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=171,col=34::Variable name 'i' should be between 3 and 40 characters long (identifier_name) -::error file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=287,col=31::Variable name 'k' should be between 3 and 40 characters long (identifier_name) -::warning file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=125,col=13::Prefer regular comments over doc comments in local scopes (local_doc_comment) ::warning file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=71,col=10::Chained function calls should be either on the same line, or one per line (multiline_function_chains) ::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift,line=14,col=51::Force unwrapping should be avoided (force_unwrapping) ::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift,line=19,col=63::Force unwrapping should be avoided (force_unwrapping) ::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift,line=23,col=51::Force unwrapping should be avoided (force_unwrapping) +::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/TwitterDirectMessageEventTypeV2.swift,line=20,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=scripts/gen_init_params.swift,line=23,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=scripts/gen_init_params.swift,line=66,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=scripts/gen_init_params.swift,line=81,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) @@ -91,61 +34,21 @@ ::warning file=scripts/gen_init_params.swift,line=37,col=65::Force unwrapping should be avoided (force_unwrapping) ::warning file=scripts/gen_init_params.swift,line=38,col=66::Force unwrapping should be avoided (force_unwrapping) ::warning file=scripts/gen_init_params.swift,line=96,col=67::Force unwrapping should be avoided (force_unwrapping) -::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=40,col=24::Force tries should be avoided (force_try) -::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=56,col=24::Force tries should be avoided (force_try) -::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=73,col=24::Force tries should be avoided (force_try) -::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=89,col=24::Force tries should be avoided (force_try) -::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=208,col=24::Force tries should be avoided (force_try) -::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=278,col=24::Force tries should be avoided (force_try) -::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=348,col=24::Force tries should be avoided (force_try) -::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=364,col=24::Force tries should be avoided (force_try) -::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=381,col=24::Force tries should be avoided (force_try) -::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=397,col=24::Force tries should be avoided (force_try) -::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=458,col=24::Force tries should be avoided (force_try) -::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=473,col=24::Force tries should be avoided (force_try) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=38,col=48::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=48,col=48::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=51,col=48::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=54,col=48::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=71,col=42::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=71,col=49::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=87,col=42::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=87,col=49::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=106,col=49::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=106,col=107::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=148,col=48::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=157,col=49::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=157,col=114::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=206,col=48::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=216,col=48::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=220,col=48::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=227,col=49::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=227,col=114::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=276,col=48::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=286,col=48::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=289,col=48::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=292,col=48::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=299,col=49::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=299,col=114::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=346,col=48::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=356,col=48::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=359,col=48::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=362,col=48::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=379,col=42::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=379,col=49::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=395,col=42::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=395,col=49::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=416,col=49::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=416,col=107::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=425,col=41::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=456,col=48::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=467,col=48::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=471,col=48::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=486,col=49::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=486,col=107::Force unwrapping should be avoided (force_unwrapping) -::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift,line=10,col=12::Type name 'GetDmConversationsWithParticipantIdDmEventsRequestV2' should be between 3 and 50 characters long (type_name) -::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/TwitterDirectMessageEventTypeV2.swift,line=20,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=10,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=10,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) +::error file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=10,col=6::Function name 'AssertEqualAnyDict(_:_:_:file:line:)' should start with a lowercase character (identifier_name) +::error file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=11,col=7::Variable name 'l' should be between 3 and 40 characters long (identifier_name) +::error file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=11,col=27::Variable name 'r' should be between 3 and 40 characters long (identifier_name) +::warning file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=10,col=6::Functions and methods parameters should be either on the same line, or one per line (multiline_parameters) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=687,col=39::Multiline parameters should have their surrounding brackets in a new line (multiline_parameters_brackets) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=688,col=64::Multiline parameters should have their surrounding brackets in a new line (multiline_parameters_brackets) +::error file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift,line=57,col=38::Force casts should be avoided (force_cast) +::error file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift,line=63,col=38::Force casts should be avoided (force_cast) +::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift,line=24,col=69::Force unwrapping should be avoided (force_unwrapping) +::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift,line=45,col=69::Force unwrapping should be avoided (force_unwrapping) ::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift,line=10,col=12::Type name 'GetDmConversationsWithParticipantIdDmEventsRequestV2' should be between 3 and 50 characters long (type_name) ::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift,line=17,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift,line=38,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) @@ -153,83 +56,31 @@ ::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift,line=82,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift,line=97,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/DeleteTweetRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/PutTweetsHiddenRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/DeleteTweetRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsQuoteTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/Retweet/Requests/GetTweetsRetweetedByRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Retweet/Requests/PostUsersRetweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Retweet/RetweetAPIv2.swift,line=23,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift,line=16,col=1::Line should be 120 characters or less; currently it has 145 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift,line=23,col=1::Line should be 120 characters or less; currently it has 144 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift,line=30,col=1::Line should be 120 characters or less; currently it has 144 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift,line=37,col=1::Line should be 120 characters or less; currently it has 145 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/Retweet/Requests/DeleteUsersRetweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Retweet/Requests/PostUsersRetweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/Like/Requests/DeleteUsersLikesRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/Like/Requests/PostUsersLikesRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/Like/Requests/GetTweetsLikingUsersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/Like/Requests/GetUsersLikedTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSampleStreamRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Retweet/Requests/DeleteUsersRetweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift,line=8,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSampleStreamRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift,line=16,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift,line=23,col=1::Line should be 120 characters or less; currently it has 135 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift,line=8,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpaceRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift,line=14,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesBuyersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesByCreatorIDsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersMutingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersMutingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersMutingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersBlockingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersBlockingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Friendships/FriendshipsAPIv2.swift,line=23,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Friendships/Requests/PostUsersFollowingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersBlockingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Retweet/RetweetAPIv2.swift,line=23,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/Compliance/Requests/PostComplianceJobsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Compliance/TwitterComplianceJobTypeV2.swift,line=12,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift,line=15,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Compliance/ComplianceAPIv2.swift,line=9,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift,line=14,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Search/TwitterSearchTweetsSortOrderV2.swift,line=12,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/Bookmarks/BookmarksAPIv2.swift,line=23,col=1::Line should be 120 characters or less; currently it has 123 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=55,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::error file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=25,col=16::Variable name 'dm' should be between 3 and 40 characters long (identifier_name) -::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=10,col=6::open declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=11,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=12,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=13,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=14,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=15,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=16,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=17,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=18,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=19,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=20,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=21,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=22,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=23,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=24,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=25,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=27,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=50,col=8::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=51,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/PostUsersBookmarksRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/GetUsersBookmarksRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsRecentRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift,line=13,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) -::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift,line=9,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift,line=11,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsAllRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=10,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=13,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=10,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) @@ -253,226 +104,54 @@ ::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=120,col=5::Enum cases should be sorted (sorted_enum_cases) ::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=121,col=5::Enum cases should be sorted (sorted_enum_cases) ::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=122,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesByCreatorIDsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesBuyersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersMutingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersBlockingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersMutingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersMutingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersBlockingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Friendships/FriendshipsAPIv2.swift,line=23,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersBlockingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Friendships/Requests/PostUsersFollowingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Compliance/Requests/PostComplianceJobsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Compliance/TwitterComplianceJobTypeV2.swift,line=12,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=92,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::error file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=57,col=16::Variable name 'dm' should be between 3 and 40 characters long (identifier_name) +::warning file=Sources/TwitterAPIKit/APIv2/Compliance/ComplianceAPIv2.swift,line=9,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift,line=15,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Friendships/Requests/DeleteUsersFollowingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Search/TwitterSearchTweetsSortOrderV2.swift,line=12,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift,line=14,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Bookmarks/BookmarksAPIv2.swift,line=23,col=1::Line should be 120 characters or less; currently it has 123 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/DeleteUsersBookmarksRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/PostUsersBookmarksRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/GetUsersBookmarksRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsAllRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsRecentRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift,line=37,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift,line=65,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift,line=121,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/PutListRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift,line=13,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) +::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift,line=9,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift,line=11,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersListMembershipsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersFollowedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/PostListsMembersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=12,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=16,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=22,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=26,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=30,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=34,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=40,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=46,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=50,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=56,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=60,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=64,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=68,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=74,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=78,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=84,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=92,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=96,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=100,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=104,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=108,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=112,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=116,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=122,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=128,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=132,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=136,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=140,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=144,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=148,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=152,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=156,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=160,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=166,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=170,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=174,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=178,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=182,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=186,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=190,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=194,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=198,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=202,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=208,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=212,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=216,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=220,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=224,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=228,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=236,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=240,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=244,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=250,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=254,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=258,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=262,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=266,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=270,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=274,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=278,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=282,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=286,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=290,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=294,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=300,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=304,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=308,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=314,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=320,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=324,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=328,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=332,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=336,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=340,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=344,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=348,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=352,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=356,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=360,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=364,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=368,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=372,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=376,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=380,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=384,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=388,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=392,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=398,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=402,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=406,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=410,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=417,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=421,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=428,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=440,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=447,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=451,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=455,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=461,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=465,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=469,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=473,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=477,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=483,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=487,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=491,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=495,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=501,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=505,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=509,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=515,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=519,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=523,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=529,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=533,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=537,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=541,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=547,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=551,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=555,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=559,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=567,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=571,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=575,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=579,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=583,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=587,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=593,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=597,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=601,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=607,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=611,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=615,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=621,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=625,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=629,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=633,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=639,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=643,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=647,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=651,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=657,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=661,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=665,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=669,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=673,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=677,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=681,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=685,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=689,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=693,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=697,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=701,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=705,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=709,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=713,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=717,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=721,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=727,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=731,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=735,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=741,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=745,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=751,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=755,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=759,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=763,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=767,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=771,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=777,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=781,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=785,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=789,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=795,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=799,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=803,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=811,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=815,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=819,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=823,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=827,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=831,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=837,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=841,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=847,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=851,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=855,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=859,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=863,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=869,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=873,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=879,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=883,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=887,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=891,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=410,col=39::Multiline parameters should have their surrounding brackets in a new line (multiline_parameters_brackets) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=411,col=64::Multiline parameters should have their surrounding brackets in a new line (multiline_parameters_brackets) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift,line=8,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersPinnedListsRequestV2.swift,line=8,col=1::Line should be 120 characters or less; currently it has 123 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersPinnedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersFollowedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListsMembersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersPinnedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetListsTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersOwnedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift,line=37,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift,line=65,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift,line=121,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/PostListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetListRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetListsMembersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersPinnedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersFollowedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift,line=8,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=106,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=183,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=236,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) @@ -554,18 +233,27 @@ ::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=495,col=5::Enum cases should be sorted (sorted_enum_cases) ::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=496,col=5::Enum cases should be sorted (sorted_enum_cases) ::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=497,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetListsTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersOwnedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/PostListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersPinnedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetListRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetListsMembersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersFollowedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetListsFollowersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/Users/Requests/GetUserRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersPinnedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByUsernameRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/PutListRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersMeRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/Timeline/TimelineAPIv2.swift,line=24,col=1::Line should be 120 characters or less; currently it has 123 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetListsFollowersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersMentionsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTimelinesReverseChronologicalRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift,line=18,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift,line=9,col=5::Enum cases should be sorted (sorted_enum_cases) ::warning file=Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift,line=10,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersMentionsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTimelinesReverseChronologicalRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=8,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=16,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=19,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) @@ -576,109 +264,85 @@ ::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=8,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) ::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=16,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) ::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=16,col=1::Classes should have an explicit deinit method (required_deinit) +::error file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=51,col=16::Variable name 'v1' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=54,col=16::Variable name 'v2' should be between 3 and 40 characters long (identifier_name) +::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=181,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/Extensions/Date.swift,line=10,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/Extensions/Date.swift,line=14,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=12,col=10::Enum element name 'v1' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=15,col=10::Enum element name 'v2' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=29,col=16::Variable name 'v1' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=31,col=23::Variable name 'v2' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=58,col=25::Variable name 'v1' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=70,col=9::Variable name 'v1' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=71,col=25::Variable name 'v1' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=83,col=9::Variable name 'v2' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=84,col=25::Variable name 'v2' should be between 3 and 40 characters long (identifier_name) +::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=12,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=15,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=18,col=5::Enum cases should be sorted (sorted_enum_cases) ::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=37,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=44,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=37,col=5::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) ::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=44,col=5::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) ::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) ::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=26,col=36::Arguments should be either on the same line, or one per line (multiline_arguments) -::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=9,col=10::Enum element name 'v1' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=10,col=10::Enum element name 'v2' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=19,col=16::Variable name 'v1' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=21,col=23::Variable name 'v2' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=42,col=25::Variable name 'v1' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=52,col=9::Variable name 'v1' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=53,col=25::Variable name 'v1' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=63,col=9::Variable name 'v2' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=64,col=25::Variable name 'v2' should be between 3 and 40 characters long (identifier_name) -::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=30,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=41,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=48,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=52,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=59,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=63,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=70,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=74,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=88,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=90,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=116,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=140,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=141,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=142,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=143,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=145,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=157,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=9,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=10,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=11,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/Extensions/Data.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/Extensions/Data.swift,line=28,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/Extensions/Data.swift,line=41,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/Extensions/Date.swift,line=10,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/Extensions/Date.swift,line=14,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/Extensions/DispatchQueue.swift,line=9,col=12::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=53,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=141,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=212,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=216,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=157,col=55::Force unwrapping should be avoided (force_unwrapping) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=66,col=32::Variable name 'ln' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=66,col=43::Variable name 'lv' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=66,col=61::Variable name 'rn' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=66,col=72::Variable name 'rv' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=69,col=25::Variable name 'ln' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=69,col=36::Variable name 'lv' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=69,col=50::Variable name 'lf' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=69,col=64::Variable name 'lm' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=70,col=25::Variable name 'rn' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=70,col=36::Variable name 'rv' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=70,col=50::Variable name 'rf' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=70,col=64::Variable name 'rm' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=153,col=31::Variable name 'a' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=153,col=34::Variable name 'b' should be between 3 and 40 characters long (identifier_name) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=176,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=47,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=50,col=5::Enum cases should be sorted (sorted_enum_cases) ::warning file=Sources/TwitterAPIKit/Extensions/Result.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/Extensions/Result.swift,line=14,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=37,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=105,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=176,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=180,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=121,col=55::Force unwrapping should be avoided (force_unwrapping) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=50,col=32::Variable name 'ln' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=50,col=43::Variable name 'lv' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=50,col=61::Variable name 'rn' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=50,col=72::Variable name 'rv' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=53,col=25::Variable name 'ln' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=53,col=36::Variable name 'lv' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=53,col=50::Variable name 'lf' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=53,col=64::Variable name 'lm' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=54,col=25::Variable name 'rn' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=54,col=36::Variable name 'rv' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=54,col=50::Variable name 'rf' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=54,col=64::Variable name 'rm' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=117,col=31::Variable name 'a' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=117,col=34::Variable name 'b' should be between 3 and 40 characters long (identifier_name) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=140,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=33,col=8::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=34,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=35,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=66,col=8::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=67,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=68,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=69,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=70,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=71,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=72,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=73,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=77,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=81,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=85,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=89,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=96,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=9,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=10,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=11,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=12,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=25,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=30,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=34,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=35,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/Extensions/DispatchQueue.swift,line=9,col=12::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/Extensions/String.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/Extensions/String.swift,line=12,col=97::Force unwrapping should be avoided (force_unwrapping) ::warning file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) -::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=18,col=57::Variable name 'c' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=38,col=57::Variable name 'c' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=57,col=53::Variable name 'c' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=76,col=57::Variable name 'c' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=112,col=64::Variable name 'c' should be between 3 and 40 characters long (identifier_name) -::warning file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=14,col=9::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=34,col=9::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=51,col=9::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=72,col=9::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=91,col=9::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=108,col=9::public declarations should be documented (missing_docs) +::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=22,col=57::Variable name 'c' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=46,col=57::Variable name 'c' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=70,col=53::Variable name 'c' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=93,col=57::Variable name 'c' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=140,col=64::Variable name 'c' should be between 3 and 40 characters long (identifier_name) ::warning file=Sources/TwitterAPIKit/Extensions/Dictionary.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/Extensions/String.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/Extensions/String.swift,line=12,col=97::Force unwrapping should be avoided (force_unwrapping) +::warning file=Sources/TwitterAPIKit/Extensions/Data.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/Extensions/Data.swift,line=28,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/Extensions/Data.swift,line=41,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=315,col=1::Line should be 120 characters or less; currently it has 123 characters (line_length) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=311,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=321,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=10,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=15,col=9::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=21,col=9::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=27,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=38,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=43,col=9::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=49,col=9::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=52,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=60,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=71,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=17,col=10::Avoid naming `case` `none` as the compiler can think you mean `Optional.none`; consider using an Optional value instead (discouraged_none_name) +::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=20,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift,line=8,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift,line=81,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift,line=8,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) +::error file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift,line=8,col=10::Type name 'TwitterAPISessionSpecializedTask_' should only contain alphanumeric and other allowed characters (type_name) ::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=11,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=11,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) ::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=74,col=44::Force unwrapping should be avoided (force_unwrapping) @@ -689,166 +353,65 @@ ::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=40,col=64::Arguments should be either on the same line, or one per line (multiline_arguments) ::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=41,col=43::Multiline arguments should have their surrounding brackets in a new line (multiline_arguments_brackets) ::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=45,col=6::Chained function calls should be either on the same line, or one per line (multiline_function_chains) -::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=9,col=10::Avoid naming `case` `none` as the compiler can think you mean `Optional.none`; consider using an Optional value instead (discouraged_none_name) -::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=8,col=8::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=9,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=12,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=25,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=27,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=116,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=117,col=9::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=118,col=9::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=9,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=11,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=19,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=22,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=25,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=27,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=30,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift,line=8,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift,line=81,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift,line=8,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) -::error file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift,line=8,col=10::Type name 'TwitterAPISessionSpecializedTask_' should only contain alphanumeric and other allowed characters (type_name) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDataTask.swift,line=24,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::error file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=43,col=16::Variable name 'v1' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=44,col=16::Variable name 'v2' should be between 3 and 40 characters long (identifier_name) -::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=8,col=6::open declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=9,col=19::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=42,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=43,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=44,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=46,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=47,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=54,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=97,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=149,col=6::open declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=150,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=151,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=158,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=160,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=149,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=21,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=46,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=80,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=8,col=55::Force unwrapping should be avoided (force_unwrapping) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=8,col=30::Prefer non-optional `Data(_:)` initializer when converting `String` to `Data` (non_optional_string_data_conversion) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=9,col=8::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/DeleteUsersBookmarksRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=8,col=8::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=9,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=10,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=11,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=12,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=14,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=256,col=1::Line should be 120 characters or less; currently it has 123 characters (line_length) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=54,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=59,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=64,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=69,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=74,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=79,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=84,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=101,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=149,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=162,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=174,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=186,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=213,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=224,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=236,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=243,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=252,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=262,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=271,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=276,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=281,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=286,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=9,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=11,col=9::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=14,col=9::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=18,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=24,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=26,col=9::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=28,col=9::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=31,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=36,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=42,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=33,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=44,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=12,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=16,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=23,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=27,col=5::Enum cases should be sorted (sorted_enum_cases) ::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift,line=33,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift,line=84,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=21,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=32,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=8,col=8::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=9,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=10,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=13,col=8::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=14,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=15,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=9,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=10,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=14,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=15,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageListRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift,line=16,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift,line=23,col=1::Line should be 120 characters or less; currently it has 135 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostStatusesDestroyRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesShowRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) +::warning file=Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 124 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift,line=37,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift,line=44,col=1::Line should be 120 characters or less; currently it has 146 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostStatusesDestroyRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) -::warning file=Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesLookupRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostRetweetRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift,line=37,col=5::A doc comment should be attached to a declaration (orphaned_doc_comment) ::warning file=Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift,line=8,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift,line=38,col=8::TODOs should be resolved (↑) (todo) -::warning file=Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesShowRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostRetweetRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 124 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift,line=37,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Friendships/Requests/DeleteUsersFollowingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 126 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostUnRetweetRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=11,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=12,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=13,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=14,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostUnRetweetRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift,line=15,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 126 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsListRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift,line=14,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsListRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageListRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsPlaceRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsShowRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=10,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=17,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) @@ -865,97 +428,63 @@ ::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=40,col=5::Enum cases should be sorted (sorted_enum_cases) ::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=42,col=5::Enum cases should be sorted (sorted_enum_cases) ::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=43,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsShowRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=21,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=46,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=80,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=8,col=55::Force unwrapping should be avoided (force_unwrapping) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=8,col=30::Prefer non-optional `Data(_:)` initializer when converting `String` to `Data` (non_optional_string_data_conversion) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=9,col=8::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift,line=14,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsPlaceRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift,line=19,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift,line=12,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift,line=15,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDataTask.swift,line=24,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift,line=14,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift,line=8,col=8::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift,line=9,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift,line=10,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift,line=9,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift,line=10,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift,line=14,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift,line=8,col=8::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift,line=9,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift,line=10,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift,line=23,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoReverseGeocodeRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=37,col=1::Line should be 120 characters or less; currently it has 126 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=44,col=1::Line should be 120 characters or less; currently it has 130 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=51,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=58,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=65,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=72,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoPlaceIDRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 123 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 128 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoPlaceIDRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 123 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift,line=1,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift,line=2,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift,line=14,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::error file=Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift,line=13,col=14::Enum element name 'ip' should be between 3 and 40 characters long (identifier_name) -::warning file=Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=6,col=6::open declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=7,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=8,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=9,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=10,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=11,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=12,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=13,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=14,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=15,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=16,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=17,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=18,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=19,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=20,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=21,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=22,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=23,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=25,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=6,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostUnFavoriteRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift,line=14,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::error file=Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift,line=13,col=14::Enum element name 'ip' should be between 3 and 40 characters long (identifier_name) +::warning file=Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 134 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostUnFavoriteRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift,line=1,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift,line=2,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostFavoriteRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/Favorite/Requests/GetFavoritesRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=37,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=44,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=51,col=1::Line should be 120 characters or less; currently it has 141 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=58,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=65,col=1::Line should be 120 characters or less; currently it has 140 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 145 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsListRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 130 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 135 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) @@ -968,52 +497,57 @@ ::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=72,col=1::Line should be 120 characters or less; currently it has 141 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=79,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=86,col=1::Line should be 120 characters or less; currently it has 141 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift,line=17,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 145 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostFavoriteRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=37,col=1::Line should be 120 characters or less; currently it has 126 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=44,col=1::Line should be 120 characters or less; currently it has 130 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=51,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=58,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=65,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=72,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=37,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=44,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=51,col=1::Line should be 120 characters or less; currently it has 141 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=58,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=65,col=1::Line should be 120 characters or less; currently it has 140 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsListRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 130 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 134 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift,line=17,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesUserTimelineRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 134 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift,line=224,col=63::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift,line=301,col=105::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/TwitterAPIRequestTests.swift,line=302,col=109::Force unwrapping should be avoided (force_unwrapping) -::warning file=Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesUserTimelineRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/Search/Requests/GetSearchTweetsRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesMentionsTimelineRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 130 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 128 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 144 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Search/Requests/GetSavedSearchesListRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 141 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 144 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 148 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Search/Requests/GetSavedSearchesListRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 140 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 140 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 139 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 144 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 140 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 124 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 128 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 135 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 139 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 124 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 128 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 128 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) @@ -1033,25 +567,46 @@ ::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=121,col=1::Line should be 120 characters or less; currently it has 143 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=128,col=1::Line should be 120 characters or less; currently it has 144 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=135,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesMentionsTimelineRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 140 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 130 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 139 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 140 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 124 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 124 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 128 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 135 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 139 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 128 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 130 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Application/ApplicationAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 146 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 140 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersLookupRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 130 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Application/ApplicationAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 146 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 134 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 134 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 135 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountSettingsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 134 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 141 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountRemoveProfileBannerRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 148 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountVerifyCredentialsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 144 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileBannerRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 148 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileImageRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 147 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Help/HelpAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 128 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountSettingsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 134 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 148 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 152 characters (line_length) @@ -1059,78 +614,15 @@ ::warning file=Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift,line=37,col=1::Line should be 120 characters or less; currently it has 145 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift,line=44,col=1::Line should be 120 characters or less; currently it has 152 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift,line=51,col=1::Line should be 120 characters or less; currently it has 151 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 135 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Help/HelpAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) +::warning file=Sources/TwitterAPIKit/APIv1/Help/Requests/GetHelpLanguagesRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift,line=196,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift,line=203,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountRemoveProfileBannerRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 148 characters (line_length) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift,line=8,col=8::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift,line=9,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift,line=10,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2BearerToken.swift,line=12,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountVerifyCredentialsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 144 characters (line_length) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift,line=8,col=8::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift,line=9,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift,line=10,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift,line=11,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthTokenV1.swift,line=35,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift,line=27,col=8::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift,line=28,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift,line=29,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift,line=30,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift,line=31,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift,line=36,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuth2AccessToken.swift,line=55,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterAuthAPI.swift,line=6,col=6::open declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterAuthAPI.swift,line=7,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterAuthAPI.swift,line=8,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterAuthAPI.swift,line=10,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift,line=8,col=8::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift,line=9,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift,line=10,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift,line=15,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift,line=16,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift,line=40,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=8,col=8::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=9,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=10,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=12,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=13,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=14,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=16,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=17,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=18,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=20,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=36,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=46,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=58,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIResponse.swift,line=74,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) -::warning file=Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift,line=8,col=8::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift,line=9,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift,line=10,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift,line=11,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift,line=12,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/Media/UploadMediaEntity.swift,line=13,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterRateLimit.swift,line=12,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterRateLimit.swift,line=13,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterRateLimit.swift,line=18,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterRateLimit.swift,line=32,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/Help/Requests/GetHelpLanguagesRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) -::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=34,col=26::The disabled 'force_unwrapping' rule was already disabled (blanket_disable_command) -::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=34,col=26::Use 'next', 'this' or 'previous' instead to disable the 'force_unwrapping' rule once, or re-enable it as soon as possible` (blanket_disable_command) +::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift,line=29,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) +::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=54,col=26::The disabled 'force_unwrapping' rule was already disabled (blanket_disable_command) +::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=54,col=26::Use 'next', 'this' or 'previous' instead to disable the 'force_unwrapping' rule once, or re-enable it as soon as possible` (blanket_disable_command) ::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) -::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=12,col=8::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=13,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=14,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=15,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=20,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=21,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=22,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=25,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPISession.swift,line=8,col=6::open declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPISession.swift,line=9,col=25::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPISession.swift,line=10,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPISession.swift,line=11,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPISession.swift,line=14,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPISession.swift,line=28,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPISession.swift,line=38,col=12::public declarations should be documented (missing_docs) +::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=437,col=42::Closure body should span 100 lines or less excluding comments and whitespace: currently spans 106 lines (closure_body_length) +::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=556,col=41::Force unwrapping should be avoided (force_unwrapping) +::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=25,col=17::Function body should span 100 lines or less excluding comments and whitespace: currently spans 123 lines (function_body_length) +::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=427,col=17::Function body should span 100 lines or less excluding comments and whitespace: currently spans 123 lines (function_body_length) diff --git a/scripts/.gitignore b/scripts/.gitignore deleted file mode 100644 index db43c9b1..00000000 --- a/scripts/.gitignore +++ /dev/null @@ -1 +0,0 @@ -gen_init_params diff --git a/scripts/gen_init_params.swift b/scripts/gen_init_params.swift deleted file mode 100644 index 608fc31f..00000000 --- a/scripts/gen_init_params.swift +++ /dev/null @@ -1,164 +0,0 @@ -// gen_init_params.swift -// Copyright (c) 2025 GetAutomaApp -// All source code and related assets are the property of GetAutomaApp. -// All rights reserved. - -import Foundation - -/* - public let target: TwitterUserIdentifierV1 - public let count: Int? - - ↓ - - public init( - target: TwitterUserIdentifierV1, - count: Int? = none - ) { - self.target = target - self.count = count - } - */ - -func initializer(input: String) -> String { - let regex = try! NSRegularExpression(pattern: #"[^ ] ([a-zA-Z]+): ([a-zA-Z\d<>\[\]]+\??)$"#) - - let pairs = input.split(separator: "\n") - .map { line -> String in line.trimmingCharacters(in: .whitespacesAndNewlines) } - .compactMap { line -> (name: String, type: String)? in - guard let match = regex.firstMatch(in: line, options: [], range: .init(location: 0, length: line.count)) - else { - return nil - } - guard match.numberOfRanges == 3 else { - return nil - } - - let firstRange = Range(match.range(at: 1), in: line)! - let secondRange = Range(match.range(at: 2), in: line)! - let name = String(line[firstRange]) - let type = String(line[secondRange]) - return (name: name, type: type) - } - - let initArgs: [String] = pairs.map { (name: String, type: String) in - if type.hasSuffix("?") { - return "\(name): \(type) = .none" - } - return "\(name): \(type)" - } - - let initBody: [String] = pairs.map { (name: String, _: String) in - "self.\(name) = \(name)" - } - - return """ - public init( - \(initArgs.joined(separator: ",\n ")) - ) { - \(initBody.joined(separator: "\n ")) - } - """ -} - -// Thanks https://gist.github.com/dmsl1805/ad9a14b127d0409cf9621dc13d237457 -extension String { - func camelCaseToSnakeCase() -> String { - let acronymPattern = "([A-Z]+)([A-Z][a-z]|[0-9])" - let normalPattern = "([a-z0-9])([A-Z])" - return processCamalCaseRegex(pattern: acronymPattern)? - .processCamalCaseRegex(pattern: normalPattern)?.lowercased() ?? lowercased() - } - - fileprivate func processCamalCaseRegex(pattern: String) -> String? { - let regex = try? NSRegularExpression(pattern: pattern, options: []) - let range = NSRange(location: 0, length: count) - return regex?.stringByReplacingMatches(in: self, options: [], range: range, withTemplate: "$1_$2") - } -} - -extension String { - func preperForSpecialPattern() -> String { - // "XXs" -> "XXS", ex) IDs, RTs -> IDS, RTS - let pattern = "([A-Z]{2})(s)$" - let regex = try? NSRegularExpression(pattern: pattern, options: []) - guard let match = regex?.firstMatch(in: self, options: [], range: NSRange(location: 0, length: count)), - let range = Range(match.range, in: self) - else { return self } - return replacingCharacters(in: range, with: self[range].uppercased()) - } -} - -extension NSRegularExpression { - func matches(in str: String, at index: Int) -> [String] { - return matches(in: str, options: [], range: .init(location: 0, length: str.utf16.count)) - .map { match in - let range = Range(match.range(at: index), in: str)! - let substring = str[range] - return String(substring) - } - } -} - -/* - public let hoge: String - public let fooBar: String? - ↓ ↓ ↓ ↓ - p["hoge"] = hoge - fooBar.map { p["foo_bar"] = $0 } - */ -func body(input: String) -> String { - let primitiveTypes = [": Int", ": String", ": Bool"] - - let regex = try! NSRegularExpression(pattern: "[^ ] ([a-zA-Z\\d]*?): ") - - let params: [String] = input.split(separator: "\n") - .map { $0.trimmingCharacters(in: .whitespacesAndNewlines) } - .compactMap { line in - let names = regex.matches(in: line, at: 1) - guard let name = names.first else { return nil } - let snakeCaseName = name.preperForSpecialPattern().camelCaseToSnakeCase() - - if !primitiveTypes.contains(where: { line.contains($0) }) { - // ex: public let users: TwitterUsersIdentifier - - let optional = line.hasSuffix("?") ? "?" : "" - return "\(name)\(optional).bind(param: &p)" - } else if line.hasSuffix("?") { - if line.hasSuffix("]?") { - // may be optional array. ex: [String]? - // In the case of Dictionary, it breaks. - // additionalOwners.map { p["additional_owners"] = $0.joined(separator: ",") } - return "\(name).map { p[\"\(snakeCaseName)\"] = $0.joined(separator: \",\") }" - } - - // optional value - return "\(name).map { p[\"\(snakeCaseName)\"] = $0 }" - - } else { - return "p[\"\(snakeCaseName)\"] = \(name) " - } - } - return """ - open var parameters: [String: Any] { - var p = [String: Any]() - \(params.joined(separator: "\n ")) - return p - } - """ -} - -func exec() { - let input = FileHandle.standardInput - - guard let input = String(bytes: input.availableData, encoding: .utf8) else { - print("pbpaste | ./gen_init_params.swift") - return - } - - print(body(input: input)) - print("") - print(initializer(input: input)) -} - -exec() diff --git a/scripts/gen_v1.js b/scripts/gen_v1.js deleted file mode 100644 index 0d4e31f0..00000000 --- a/scripts/gen_v1.js +++ /dev/null @@ -1,119 +0,0 @@ - -// In Twitter's API documentation, paste it into the Chrome DevTools console and run it. - -(function () { - /** - * - * @param {{[index: string]: string}} propsMap - * @param {string[]} fromProps - * @param {string} toProp - */ - function replaceProps(propsMap, fromProps, toProp) { - if (fromProps.every(p => !!propsMap[p])) { - fromProps.forEach(p => { - delete propsMap[p] - }) - propsMap[toProp] = "required" - } - } - - const title = document.querySelector("h1").textContent - // POST users/report_spam-> [POST/users/report/spam] - const tokens = title.replace(/([A-Z]+) /g, "$1/").replace("_", "/").split("/") - - const method = tokens[0] - - const className = tokens.reduce((prev, current) => { - const low = current.toLowerCase() - return prev + low.charAt(0).toUpperCase() + low.slice(1); - - }, "").replace("Id", "ID") + "RequestV1" - - - const url = document.querySelector("#resource-url").nextElementSibling.textContent - - const nameToTypeMap = { - "q": "String", - "page": "Int", - "count": "Int", - "cursor": "String", - "description": "String", - "user": "TwitterUserIdentifierV1", - "sourceUser": "TwitterUserIdentifierV1", - "targetUser": "TwitterUserIdentifierV1", - "includeEntities": "Bool", - "includeUserEntities": "Bool", - "includeExtAltText": "Bool", - "includeCardUri": "Bool", - "includeExtAltText": "Bool", - "includeMyRetweet": "Bool", - "includeRTs": "Bool", - "excludeReplies": "Bool", - "trimUser": "Bool", - "maxID": "String", - "sinceID": "String", - "stringifyIDs": "Bool", - "skipStatus": "Bool", - "query": "String", - "follow": "Bool", - "tweetID": "String", - "relativeTo": "String", - } - - function getParameterTableRows() { - - const maybeTable = document.querySelector("#parameters").nextElementSibling - if (maybeTable instanceof HTMLTableElement) { - return Array(...maybeTable.rows) - } - return [] - } - - - const propsMap = getParameterTableRows().slice(1).reduce((prev, row) => { - const [nameElem, requiredElem] = row.children - const required = requiredElem.textContent - const name = nameElem.textContent.replace(/_./g, - function (s) { - return s.charAt(1).toUpperCase(); - }).replace("Id", "ID") - - prev[name] = required - return prev - }, {}) - - - replaceProps(propsMap, ["userID", "screenName"], "user") - replaceProps(propsMap, ["sourceID", "sourceScreenName"], "sourceUser") - replaceProps(propsMap, ["targetID", "targetScreenName"], "targetUser") - - const props = Object.keys(propsMap) - .sort((a, b) => a.length - b.length) - .map(name => { - const type = nameToTypeMap[name] ?? "Unknown" - const optional = propsMap[name] === "required" ? "" : "?" - return `public let ${name}: ${type}${optional}` - }) - - - const source = `import Foundation - - /// ${location.href} - open class ${className}: TwitterAPIRequest { - - ${props.join("\n ")} - - public var method: HTTPMethod { - return .${method.toLowerCase()} - } - - public var path: String { - return "${url.replace("https://api.twitter.com", "")}" - } - - } - ` - console.log(source) - copy(source) -})() - diff --git a/scripts/gen_v2.js b/scripts/gen_v2.js deleted file mode 100644 index 9601e797..00000000 --- a/scripts/gen_v2.js +++ /dev/null @@ -1,314 +0,0 @@ - -/** - * @typedef {{type: string, name: string, rawName: string, required: boolean, kind: "path" | "query" | "json", swiftType?: string, parent: Prop?}} Prop - */ - -// In Twitter's API documentation, paste it into the Chrome DevTools console and run it. - -(function () { - - /** - * @returns {{className: string, method: string}} - */ - function createClassNameAndMethod() { - const title = document.querySelector("h1").textContent - const titleTokens = title.split("/") - - // GET /2/tweets/:id/retweeted_by -> GET /tweets/retweeted_by -> GetTweetsRetweetedByRequestV2 - const removed = titleTokens.filter(s => !s.startsWith(":") && s !== "2").join("/") - const tokens = removed.replace(/([A-Z]+) /g, "$1/").replace("_", "/").split("/") - let name = tokens.reduce((prev, current) => { - const low = current.toLowerCase() - return prev + low.charAt(0).toUpperCase() + low.slice(1); - }, "").replace("Id", "ID") - - // GET /2/tweets -> GetTweetsRequestV2 - // GET /2/tweets/:id -> GetTweetRequestV2 - if (name.endsWith("s") && titleTokens[titleTokens.length - 1] === ":id") { - name = name.slice(0, -1) - } - - const className = name + "RequestV2" - const method = tokens[0].toLowerCase() - return { className, method } - } - - - function createURL() { - const url = Array(...document.querySelectorAll("h3")).find(elem => elem.innerText === "Endpoint URL").nextElementSibling.textContent - return url.split("/").map(s => { - if (s.startsWith(":")) { - const camel = s.replace(":", "").split("_").reduce((prev, current) => { - if (prev.length === 0) { - return current - } - return prev + current.charAt(0).toUpperCase() + current.slice(1) - }, "").replace("Id", "ID") - - return "\\(" + camel + ")" - } - return s - }).join("/") - } - - /** - * // Path parameters or Query parameters - * @param {string} name - * @returns {HTMLTableRowElement[]} - */ - function getParameterTableRows(name) { - - const pathParamHeading = Array(...document.querySelectorAll("h3")).find(elem => elem.innerText === name) - if (!pathParamHeading) { - return [] - } - - const maybeTable = pathParamHeading.nextElementSibling - if (maybeTable instanceof HTMLTableElement) { - return Array(...maybeTable.rows) - } - return [] - } - - - /** - * - * @param {Prop} prop - */ - function bindSwiftType(prop) { - - function toType() { - - if (prop.name === "ids" && prop.type === "string" - || prop.rawName.endsWith("_ids") && prop.type === "string" - ||prop.rawName.endsWith("_ids") && prop.type === "array") { - return "[String]" - } - - if (prop.name === "expansions") { - if (prop.type.includes("enum (attachments.poll_ids, attachments.media_keys")) { - return "Set" - } else if (prop.type.includes("enum (pinned_tweet_id")) { - return "Set" - } else if (prop.type.includes("enum (owner_id)")) { - return "Set" - } else if (prop.type.includes("enum (invited_user_ids, speaker_ids, creator_id, host_ids)")) { - return "Set" - } - } - - const nameToType = { - "media.fields": "Set", - "place.fields": "Set", - "poll.fields": "Set", - "tweet.fields": "Set", - "user.fields": "Set", - "list.fields": "Set", - "space.fields": "Set", - "topic.fields": "Set" - } - - const typeToSwiftType = { - "integer": "Int", - "number": "Int", - "string": "String", - "date (ISO 8601)": "Date", - "boolean": "Bool" - } - - return nameToType[prop.rawName] ?? typeToSwiftType[prop.type] - } - const type = toType() - if (type) { - prop.swiftType = type - } else { - console.warn("Unkown type for", prop) - } - - return prop - } - - /** - * @param {HTMLTableRowElement[]} rows - * @param {"path" | "query" | "json"} kind - * @return {Prop[]} - */ - function pickupProps(rows, kind) { - - /** @type {Prop[]} */ - const init = [] - return rows.slice(1).reduce((prev, row) => { - - const [nameElem, typeElem] = row.children - const required = nameElem.querySelector("small").textContent.trim().toLowerCase() == "required" - const type = typeElem.textContent - const rawName = nameElem.querySelector("code").textContent - const name = rawName.replace(/[_.]./g, - function (s) { - return s.charAt(1).toUpperCase(); - }).replace("Id", "ID") - - const parent = rawName.includes(".") ? prev.find(p => p.rawName === rawName.split(".")[0]) : undefined - - const prop = { - name, - rawName, - type, - required, - kind, - parent, - } - bindSwiftType(prop) - - prev.push(prop) - return prev - }, init) - } - - /** - * - * @param {Prop} prop - * @param {Prop[]} allProps - */ - function swiftPropertyString(prop, allProps) { - const type = prop.swiftType ?? "Unknown" - const optional = prop.required ? "" : "?" - const properties = allProps.filter(p => p.parent && p.parent.name == prop.name) - .map(p => { - const name = p.name.replace(prop.name, "") - const replacedName = name.charAt(0).toLowerCase() + name.slice(1) - const replacedRawName = p.rawName.replace(prop.rawName + ".", "") - return { ...p, name: replacedName, rawName: replacedRawName } - }) - - const structName = properties.length > 0 ? prop.name.charAt(0).toUpperCase() + prop.name.slice(1) : undefined - const structStr = ` - // The properties of ${prop.name} are such a struct. If enum is more suitable, please modify it. - public struct ${structName} { - ${properties.map(p => swiftPropertyString(p, allPathProps)).join("\n")} - - func bind(param: inout [String: Any]) { - var p = [String: Any]() - - ${properties.map(p => { return `p["${p.rawName}"]` }).join("\n")} - - param["${prop.rawName}"] = p - } - }` - - let string = `public let ${prop.name}: ${structName || type}${optional}` - if (properties.length > 0) { - string = `${structStr} - ${string} - ` - } - - return string - } - - /** - * - * @param {Prop[]} props - */ - function createParameterFunc(props) { - if (props.length === 0) { - return `open var parameters: [String: Any] { - return [:] - }` - } - const body = props.map(prop => { - const isPrimitiveType = prop.type === "string" || prop.type === "integer" || prop.type === "boolean" - const isArray = prop.swiftType === "[String]" || prop.swiftType === "[Int]" - const optional = prop.required ? "" : "?" - const join = isArray ? `.joined(separator: ",")` : "" - if (isPrimitiveType) { - if (optional) { - return `${prop.name}.map { p["${prop.rawName}"] = $0${join} }` - } - return `p["${prop.rawName}"] = ${prop.name}${join}` - } else { - return `${prop.name}${optional}.bind(param: &p)` - } - }) - return `open var parameters: [String: Any] { - var p = [String: Any]() - ${body.join("\n ")} - return p - }` - } - - /** - * - * @param {Prop[]} props - * @returns - */ - function createInitFunc(props) { - - const initParams = props.map(p => { - const optional = p.required ? "" : "?" - const defaultArg = p.required ? "" : " = .none" - return `${p.name}: ${p.swiftType ?? "Unkown"}${optional}${defaultArg}` - }) - - const initBody = props.map(p => { - return `self.${p.name} = ${p.name}` - }) - - return `public init( - ${initParams.join(",\n ")} - ) { - ${initBody.join("\n ")} - }` - } - - const classNameAndMethod = createClassNameAndMethod() - const url = createURL() - - const allPathProps = pickupProps(getParameterTableRows("Path parameters"), "path") - const allQueryProps = pickupProps(getParameterTableRows("Query parameters"), "query") - const allJsonProps = pickupProps(getParameterTableRows("JSON body parameters"), "json") - - const topLevelPathProps = allPathProps.filter(p => !p.parent) - const topLevelQueryProps = allQueryProps.filter(p => !p.parent) - const topLevelJsonProps = allJsonProps.filter(p => !p.parent) - - const props = [ - ...topLevelPathProps.map(p => swiftPropertyString(p, allPathProps)), - ...topLevelQueryProps.filter(p => !p.parent).map(p => swiftPropertyString(p, allQueryProps)), - ...topLevelJsonProps.filter(p => !p.parent).map(p => swiftPropertyString(p, allJsonProps)) - ] - - const bodyContentType = allJsonProps.length === 0 ? "" : - ` - public var bodyContentType: BodyContentType { - return .json - } -` - const parameterFunc = createParameterFunc([...topLevelQueryProps, ...topLevelJsonProps]) - - const initFunc = createInitFunc([...topLevelPathProps, ...topLevelQueryProps, ...topLevelJsonProps]) - - const source = `import Foundation - -/// ${location.href} -open class ${classNameAndMethod.className}: TwitterAPIRequest { - - ${props.join("\n ")} - - public var method: HTTPMethod { - return .${classNameAndMethod.method} - } - - public var path: String { - return "${url.replace("https://api.twitter.com", "")}" - } - ${bodyContentType} - ${parameterFunc} - - ${initFunc} -} -` - console.log(source) - copy(source) -})() - From d7346b8500d83e891d6ab0c266c4a652f053e07f Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Sat, 17 May 2025 11:26:10 -0600 Subject: [PATCH 20/26] fix: fix length errors --- .../APIv1/Account/AccountAPIv1.swift | 28 +++++-- .../PostAccountUpdateProfileRequestV1.swift | 4 +- .../APIv1/Application/ApplicationAPIv1.swift | 4 +- .../TwitterAPIKit/APIv1/List/ListAPIv1.swift | 76 ++++++++++++++----- .../APIv1/Media/MediaAPIv1.swift | 8 +- .../AuthAPI/TwitterOAuthAccessTokenV1.swift | 3 +- Sources/TwitterAPIKit/TwitterAPIKit.swift | 2 +- 7 files changed, 93 insertions(+), 32 deletions(-) diff --git a/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift index ceff872d..306edf82 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift @@ -6,49 +6,63 @@ import Foundation open class AccountAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/get-account-settings + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// manage-account-settings/api-reference/get-account-settings public func getAccountSetting( _ request: GetAccountSettingsRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/get-account-verify_credentials + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// manage-account-settings/api-reference/get-account-verify_credentials public func getAccountVerify( _ request: GetAccountVerifyCredentialsRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-account-remove_profile_banner + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// manage-account-settings/api-reference/post-account-remove_profile_banner public func postRemoveProfileBanner( _ request: PostAccountRemoveProfileBannerRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-account-settings + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// manage-account-settings/api-reference/post-account-settings public func postAccountSettings( _ request: PostAccountSettingsRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-account-update_profile + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// manage-account-settings/api-reference/post-account-update_profile public func postAccountProfile( _ request: PostAccountUpdateProfileRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-account-update_profile_banner + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// manage-account-settings/api-reference/post-account-update_profile_banner public func postProfileBanner( _ request: PostAccountUpdateProfileBannerRequestV1 ) -> TwitterAPISessionDataTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-account-update_profile_image + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// manage-account-settings/api-reference/post-account-update_profile_image public func postProfileImage( _ request: PostAccountUpdateProfileImageRequestV1 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileRequestV1.swift index 27c92472..6b3f16c1 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-account-update_profile +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// manage-account-settings/api-reference/post-account-update_profile open class PostAccountUpdateProfileRequestV1: TwitterAPIRequest { public let url: String? public let name: String? diff --git a/Sources/TwitterAPIKit/APIv1/Application/ApplicationAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Application/ApplicationAPIv1.swift index 34d50771..1b5f699d 100644 --- a/Sources/TwitterAPIKit/APIv1/Application/ApplicationAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Application/ApplicationAPIv1.swift @@ -6,7 +6,9 @@ import Foundation open class ApplicationAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/developer-utilities/rate-limit-status/api-reference/get-application-rate_limit_status + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/developer-utilities/ + /// rate-limit-status/api-reference/get-application-rate_limit_status public func getRateLimit( _ request: GetApplicationRateLimitStatusRequestV1 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift b/Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift index d8448bec..80396733 100644 --- a/Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift @@ -6,133 +6,171 @@ import Foundation open class ListAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-list + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// create-manage-lists/api-reference/get-lists-list public func getLists( _ request: GetListsListRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-members + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// create-manage-lists/api-reference/get-lists-members public func getListMembers( _ request: GetListsMembersRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-members-show + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// create-manage-lists/api-reference/get-lists-members-show public func getListMember( _ request: GetListsMembersShowRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-memberships + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// create-manage-lists/api-reference/get-lists-memberships public func getListMemberships( _ request: GetListsMembershipsRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-ownerships + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// create-manage-lists/api-reference/get-lists-ownerships public func getListOwnerships( _ request: GetListsOwnershipsRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-show + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// create-manage-lists/api-reference/get-lists-show public func getList( _ request: GetListsShowRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-statuses + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// create-manage-lists/api-reference/get-lists-statuses public func getListStatuses( _ request: GetListsStatusesRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-subscribers + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// create-manage-lists/api-reference/get-lists-subscribers public func getListSubscribers( _ request: GetListsSubscribersRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-subscribers-show + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// create-manage-lists/api-reference/get-lists-subscribers-show public func getListSubscriber( _ request: GetListsSubscribersShowRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-subscriptions + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// create-manage-lists/api-reference/get-lists-subscriptions public func getListSubscriptions( _ request: GetListsSubscriptionsRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-create + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// create-manage-lists/api-reference/post-lists-create public func postCreateList( _ request: PostListsCreateRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-destroy + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// create-manage-lists/api-reference/post-lists-destroy public func postDestroyList( _ request: PostListsDestroyRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-members-create + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// create-manage-lists/api-reference/post-lists-members-create public func postAddListMember( _ request: PostListsMembersCreateRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-members-create_all + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// create-manage-lists/api-reference/post-lists-members-create_all public func postAddListMembers( _ request: PostListsMembersCreateAllRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-members-destroy + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// create-manage-lists/api-reference/post-lists-members-destroy public func postRemoveListMember( _ request: PostListsMembersDestroyRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-members-destroy_all + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// create-manage-lists/api-reference/post-lists-members-destroy_all public func postRemoveListMembers( _ request: PostListsMembersDestroyAllRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-subscribers-create + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// create-manage-lists/api-reference/post-lists-subscribers-create public func postSubscribeList( _ request: PostListsSubscribersCreateRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-subscribers-destroy + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// create-manage-lists/api-reference/post-lists-subscribers-destroy public func postUnsubscribeList( _ request: PostListsSubscribersDestroyRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-update + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// create-manage-lists/api-reference/post-lists-update public func postUpdateList( _ request: PostListsUpdateRequestV1 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift index e7a1107c..ba780fa4 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift @@ -193,14 +193,18 @@ open class MediaAPIv1: TwitterAPIBase { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/post-media-subtitles-create + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/ + /// post-media-subtitles-create public func createSubtitle( _ request: PostMediaSubtitlesCreateRequestV1 ) -> TwitterAPISessionDataTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/post-media-subtitles-delete + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/ + /// post-media-subtitles-delete public func deleteSubtitle( _ request: PostMediaSubtitlesDeleteRequestV1 ) -> TwitterAPISessionDataTask { diff --git a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift index 5db570df..82666c35 100644 --- a/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift +++ b/Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift @@ -26,7 +26,8 @@ public struct TwitterOAuthAccessTokenV1 { /// - Parameter queryStringData: The raw data containing the OAuth response in query string format. /// The expected format is: /// ``` - /// oauth_token=your_oauth_token&oauth_token_secret=your_oauth_token_secret&user_id=numeric_user_id&screen_name=your_screen_name + /// oauth_token=your_oauth_token&oauth_token_secret=your_oauth_token_secret \ + /// &user_id=numeric_user_id&screen_name=your_screen_name /// ``` /// - Returns: An initialized access token if the query string contains valid OAuth token and secret, nil otherwise. public init?(queryStringData: Data) { diff --git a/Sources/TwitterAPIKit/TwitterAPIKit.swift b/Sources/TwitterAPIKit/TwitterAPIKit.swift index 1b268470..7a1ee3d0 100644 --- a/Sources/TwitterAPIKit/TwitterAPIKit.swift +++ b/Sources/TwitterAPIKit/TwitterAPIKit.swift @@ -51,5 +51,5 @@ public struct TwitterAPIEnvironment { self.apiURL = apiURL self.uploadURL = uploadURL } - // swiftlint:disable force_unwrapping + // swiftlint:enable force_unwrapping } From 29979cc6cbb5f2aeb531fb2bd3f2841f054b9bb9 Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Sat, 17 May 2025 11:28:30 -0600 Subject: [PATCH 21/26] fix: fix more issues --- .../TwitterAPIErrorResponse.swift | 44 +++++++++---------- Sources/TwitterAPIKit/TwitterAPIRequest.swift | 18 ++++---- 2 files changed, 31 insertions(+), 31 deletions(-) diff --git a/Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift b/Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift index 15a56c2b..9172cb92 100644 --- a/Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift +++ b/Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift @@ -9,10 +9,10 @@ import Foundation /// This enum can handle both v1 and v2 API error formats, as well as unknown error responses. public enum TwitterAPIErrorResponse: Equatable { /// An error response from the Twitter API v1.1. - case v1(TwitterAPIErrorResponseV1) + case apiVersion1(TwitterAPIErrorResponseV1) /// An error response from the Twitter API v2. - case v2(TwitterAPIErrorResponseV2) + case apiVersion2(TwitterAPIErrorResponseV2) /// An unknown error response containing raw data. case unknown(Data) @@ -26,10 +26,10 @@ public enum TwitterAPIErrorResponse: Equatable { return } - if let v1 = TwitterAPIErrorResponseV1(obj: obj) { - self = .v1(v1) - } else if let v2 = TwitterAPIErrorResponseV2(obj: obj) { - self = .v2(v2) + if let version1 = TwitterAPIErrorResponseV1(obj: obj) { + self = .apiVersion1(version1) + } else if let version2 = TwitterAPIErrorResponseV2(obj: obj) { + self = .apiVersion2(version2) } else { self = .unknown(data) } @@ -43,10 +43,10 @@ public extension TwitterAPIErrorResponse { /// For unknown errors, this is the raw data as a string. var message: String { switch self { - case let .v1(twitterAPIErrorResponseV1): - return twitterAPIErrorResponseV1.message - case let .v2(twitterAPIErrorResponseV2): - return twitterAPIErrorResponseV2.detail + case let .apiVersion1(version1Response): + return version1Response.message + case let .apiVersion2(version2Response): + return version2Response.detail case let .unknown(data): return String(data: data, encoding: .utf8) ?? "Unknown" } @@ -55,34 +55,34 @@ public extension TwitterAPIErrorResponse { /// The error code from the response. /// Only available for v1 errors. var code: Int? { - if case let .v1(v1) = self { - return v1.code + if case let .apiVersion1(version1) = self { + return version1.code } return nil } /// Indicates whether this is a v1 error response. - var isV1: Bool { - return v1 != nil + var isVersion1: Bool { + return version1 != nil } /// The v1 error response if this is a v1 error, nil otherwise. - var v1: TwitterAPIErrorResponseV1? { - if case let .v1(v1) = self { - return v1 + var version1: TwitterAPIErrorResponseV1? { + if case let .apiVersion1(version1) = self { + return version1 } return nil } /// Indicates whether this is a v2 error response. - var isV2: Bool { - return v2 != nil + var isVersion2: Bool { + return version2 != nil } /// The v2 error response if this is a v2 error, nil otherwise. - var v2: TwitterAPIErrorResponseV2? { - if case let .v2(v2) = self { - return v2 + var version2: TwitterAPIErrorResponseV2? { + if case let .apiVersion2(version2) = self { + return version2 } return nil } diff --git a/Sources/TwitterAPIKit/TwitterAPIRequest.swift b/Sources/TwitterAPIKit/TwitterAPIRequest.swift index 993985a0..9014df4c 100644 --- a/Sources/TwitterAPIKit/TwitterAPIRequest.swift +++ b/Sources/TwitterAPIKit/TwitterAPIRequest.swift @@ -63,16 +63,16 @@ public enum MultipartFormDataPart { extension MultipartFormDataPart: Equatable { public static func == (lhs: MultipartFormDataPart, rhs: MultipartFormDataPart) -> Bool { switch (lhs, rhs) { - case let (.value(name: ln, value: lv), .value(name: rn, value: rv)): - return ln == rn && type(of: lv) == type(of: rv) && String(describing: lv) == String(describing: rv) + case let (.value(name: leftName, value: leftValue), .value(name: rightName, value: rightValue)): + return leftName == rightName && type(of: leftValue) == type(of: rightValue) && String(describing: leftValue) == String(describing: rightValue) case let ( - .data(name: ln, value: lv, filename: lf, mimeType: lm), - .data(name: rn, value: rv, filename: rf, mimeType: rm) + .data(name: leftName, value: leftValue, filename: leftFilename, mimeType: leftMimeType), + .data(name: rightName, value: rightValue, filename: rightFilename, mimeType: rightMimeType) ): - return ln == rn - && lv == rv - && lf == rf - && lm == rm + return leftName == rightName + && leftValue == rightValue + && leftFilename == rightFilename + && leftMimeType == rightMimeType default: return false } @@ -150,7 +150,7 @@ extension TwitterAPIRequest { if !queryParameters.isEmpty { urlComponent.percentEncodedQueryItems = queryParameters - .sorted { a, b in a.key < b.key } + .sorted { first, second in first.key < second.key } .map { .init(name: $0.urlEncodedString, value: "\($1)".urlEncodedString) } } From f573d11585f3b0901140817295bc0ab41ef7b6a4 Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Sat, 17 May 2025 11:30:19 -0600 Subject: [PATCH 22/26] fix: fix unsorted enums --- Sources/TwitterAPIKit/APIv2/FieldsV2.swift | 186 ++++++++++----------- 1 file changed, 93 insertions(+), 93 deletions(-) diff --git a/Sources/TwitterAPIKit/APIv2/FieldsV2.swift b/Sources/TwitterAPIKit/APIv2/FieldsV2.swift index 175d876c..400a0df7 100644 --- a/Sources/TwitterAPIKit/APIv2/FieldsV2.swift +++ b/Sources/TwitterAPIKit/APIv2/FieldsV2.swift @@ -1,4 +1,4 @@ -// FieldsV2.swift +// TwitterAPIv2Fields.swift // Copyright (c) 2025 GetAutomaApp // All source code and related assets are the property of GetAutomaApp. // All rights reserved. @@ -20,16 +20,16 @@ public enum TwitterTweetFieldsV2: TwitterAPIv2RequestParameter, Hashable { case inReplyToUserID case lang case nonPublicMetrics - case publicMetrics case organicMetrics - case promotedMetrics + case other(String) case possiblySensitive + case promotedMetrics + case publicMetrics case referencedTweets case replySettings case source case text case withheld - case other(String) public var stringValue: String { switch self { @@ -55,14 +55,16 @@ public enum TwitterTweetFieldsV2: TwitterAPIv2RequestParameter, Hashable { return "lang" case .nonPublicMetrics: return "non_public_metrics" - case .publicMetrics: - return "public_metrics" case .organicMetrics: return "organic_metrics" - case .promotedMetrics: - return "promoted_metrics" + case let .other(other): + return other case .possiblySensitive: return "possibly_sensitive" + case .promotedMetrics: + return "promoted_metrics" + case .publicMetrics: + return "public_metrics" case .referencedTweets: return "referenced_tweets" case .replySettings: @@ -73,8 +75,6 @@ public enum TwitterTweetFieldsV2: TwitterAPIv2RequestParameter, Hashable { return "text" case .withheld: return "withheld" - case let .other(other): - return other } } @@ -90,10 +90,10 @@ public enum TwitterTweetFieldsV2: TwitterAPIv2RequestParameter, Hashable { .inReplyToUserID, .lang, .nonPublicMetrics, - .publicMetrics, .organicMetrics, - .promotedMetrics, .possiblySensitive, + .promotedMetrics, + .publicMetrics, .referencedTweets, .replySettings, .source, @@ -102,7 +102,7 @@ public enum TwitterTweetFieldsV2: TwitterAPIv2RequestParameter, Hashable { ] } -extension Set where Element == TwitterTweetFieldsV2 { +public extension Set where Element == TwitterTweetFieldsV2 { func bind(param: inout [String: Any]) { param["tweet.fields"] = commaSeparatedString } @@ -116,6 +116,7 @@ public enum TwitterUserFieldsV2: TwitterAPIv2RequestParameter, Hashable { case id case location case name + case other(String) case pinnedTweetID case profileImageUrl case protected @@ -124,7 +125,6 @@ public enum TwitterUserFieldsV2: TwitterAPIv2RequestParameter, Hashable { case username case verified case withheld - case other(String) public var stringValue: String { switch self { @@ -140,6 +140,8 @@ public enum TwitterUserFieldsV2: TwitterAPIv2RequestParameter, Hashable { return "location" case .name: return "name" + case let .other(other): + return other case .pinnedTweetID: return "pinned_tweet_id" case .profileImageUrl: @@ -156,8 +158,6 @@ public enum TwitterUserFieldsV2: TwitterAPIv2RequestParameter, Hashable { return "verified" case .withheld: return "withheld" - case let .other(other): - return other } } @@ -179,7 +179,7 @@ public enum TwitterUserFieldsV2: TwitterAPIv2RequestParameter, Hashable { ] } -extension Set where Element == TwitterUserFieldsV2 { +public extension Set where Element == TwitterUserFieldsV2 { func bind(param: inout [String: Any]) { param["user.fields"] = commaSeparatedString } @@ -194,8 +194,8 @@ public enum TwitterPlaceFieldsV2: TwitterAPIv2RequestParameter, Hashable { case geo case id case name - case placeType case other(String) + case placeType public var stringValue: String { switch self { @@ -213,10 +213,10 @@ public enum TwitterPlaceFieldsV2: TwitterAPIv2RequestParameter, Hashable { return "id" case .name: return "name" - case .placeType: - return "place_type" case let .other(other): return other + case .placeType: + return "place_type" } } @@ -232,7 +232,7 @@ public enum TwitterPlaceFieldsV2: TwitterAPIv2RequestParameter, Hashable { ] } -extension Set where Element == TwitterPlaceFieldsV2 { +public extension Set where Element == TwitterPlaceFieldsV2 { func bind(param: inout [String: Any]) { param["place.fields"] = commaSeparatedString } @@ -244,8 +244,8 @@ public enum TwitterPollFieldsV2: TwitterAPIv2RequestParameter, Hashable { case endDatetime case id case options - case votingStatus case other(String) + case votingStatus public var stringValue: String { switch self { @@ -257,10 +257,10 @@ public enum TwitterPollFieldsV2: TwitterAPIv2RequestParameter, Hashable { return "id" case .options: return "options" - case .votingStatus: - return "voting_status" case let .other(other): return other + case .votingStatus: + return "voting_status" } } @@ -273,7 +273,7 @@ public enum TwitterPollFieldsV2: TwitterAPIv2RequestParameter, Hashable { ] } -extension Set where Element == TwitterPollFieldsV2 { +public extension Set where Element == TwitterPollFieldsV2 { func bind(param: inout [String: Any]) { param["poll.fields"] = commaSeparatedString } @@ -281,58 +281,58 @@ extension Set where Element == TwitterPollFieldsV2 { /// media.fields public enum TwitterMediaFieldsV2: TwitterAPIv2RequestParameter, Hashable { + case altText case durationMs case height case mediaKey - case previewImageUrl - case type - case url - case width - case publicMetrics case nonPublicMetrics case organicMetrics + case other(String) + case previewImageUrl case promotedMetrics - case altText + case publicMetrics + case type + case url case variants - case other(String) + case width public var stringValue: String { switch self { + case .altText: return "alt_text" case .durationMs: return "duration_ms" case .height: return "height" case .mediaKey: return "media_key" - case .previewImageUrl: return "preview_image_url" - case .type: return "type" - case .url: return "url" - case .width: return "width" - case .publicMetrics: return "public_metrics" case .nonPublicMetrics: return "non_public_metrics" case .organicMetrics: return "organic_metrics" + case let .other(string): return string + case .previewImageUrl: return "preview_image_url" case .promotedMetrics: return "promoted_metrics" - case .altText: return "alt_text" + case .publicMetrics: return "public_metrics" + case .type: return "type" + case .url: return "url" case .variants: return "variants" - case let .other(string): return string + case .width: return "width" } } public static let all: Set = [ + .altText, .durationMs, .height, .mediaKey, - .previewImageUrl, - .type, - .url, - .width, - .publicMetrics, .nonPublicMetrics, .organicMetrics, + .previewImageUrl, .promotedMetrics, - .altText, + .publicMetrics, + .type, + .url, .variants, + .width, ] } -extension Set where Element == TwitterMediaFieldsV2 { +public extension Set where Element == TwitterMediaFieldsV2 { func bind(param: inout [String: Any]) { param["media.fields"] = commaSeparatedString } @@ -341,42 +341,42 @@ extension Set where Element == TwitterMediaFieldsV2 { /// list.fields public enum TwitterListFieldsV2: TwitterAPIv2RequestParameter, Hashable { case createdAt - case followerCount - case memberCount - case `private` case description + case followerCount case id + case memberCount case name - case ownerID case other(String) + case ownerID + case `private` public var stringValue: String { switch self { case .createdAt: return "created_at" - case .followerCount: return "follower_count" - case .memberCount: return "member_count" - case .private: return "private" case .description: return "description" + case .followerCount: return "follower_count" case .id: return "id" + case .memberCount: return "member_count" case .name: return "name" - case .ownerID: return "owner_id" case let .other(string): return string + case .ownerID: return "owner_id" + case .private: return "private" } } public static let all: Set = [ .createdAt, - .followerCount, - .memberCount, - .private, .description, + .followerCount, .id, + .memberCount, .name, .ownerID, + .private, ] } -extension Set where Element == TwitterListFieldsV2 { +public extension Set where Element == TwitterListFieldsV2 { func bind(param: inout [String: Any]) { param["list.fields"] = commaSeparatedString } @@ -384,70 +384,70 @@ extension Set where Element == TwitterListFieldsV2 { /// space.fields public enum TwitterSpaceFieldsV2: TwitterAPIv2RequestParameter, Hashable { - case id - case state - case hostIDs case createdAt case creatorID - case lang + case endedAt + case hostIDs + case id case invitedUserIDs + case isTicketed + case lang + case other(String) case participantCount + case scheduledStart case speakerIDs case startedAt - case endedAt + case state case subscriberCount - case topicIDs case title + case topicIDs case updatedAt - case scheduledStart - case isTicketed - case other(String) public var stringValue: String { switch self { - case .id: return "id" - case .state: return "state" - case .hostIDs: return "host_ids" case .createdAt: return "created_at" case .creatorID: return "creator_id" - case .lang: return "lang" + case .endedAt: return "ended_at" + case .hostIDs: return "host_ids" + case .id: return "id" case .invitedUserIDs: return "invited_user_ids" + case .isTicketed: return "is_ticketed" + case .lang: return "lang" + case let .other(string): return string case .participantCount: return "participant_count" + case .scheduledStart: return "scheduled_start" case .speakerIDs: return "speaker_ids" case .startedAt: return "started_at" - case .endedAt: return "ended_at" + case .state: return "state" case .subscriberCount: return "subscriber_count" - case .topicIDs: return "topic_ids" case .title: return "title" + case .topicIDs: return "topic_ids" case .updatedAt: return "updated_at" - case .scheduledStart: return "scheduled_start" - case .isTicketed: return "is_ticketed" - case let .other(string): return string } } public static let all: Set = [ - .id, - .state, - .hostIDs, .createdAt, .creatorID, - .lang, + .endedAt, + .hostIDs, + .id, .invitedUserIDs, + .isTicketed, + .lang, .participantCount, + .scheduledStart, .speakerIDs, .startedAt, - .endedAt, + .state, .subscriberCount, - .topicIDs, .title, + .topicIDs, .updatedAt, - .scheduledStart, - .isTicketed, ] } -extension Set where Element == TwitterSpaceFieldsV2 { +public extension Set where Element == TwitterSpaceFieldsV2 { func bind(param: inout [String: Any]) { param["space.fields"] = commaSeparatedString } @@ -455,28 +455,28 @@ extension Set where Element == TwitterSpaceFieldsV2 { /// topic.fields public enum TwitterTopicFieldsV2: TwitterAPIv2RequestParameter, Hashable { + case description case id case name - case description case other(String) public var stringValue: String { switch self { + case .description: return "description" case .id: return "id" case .name: return "name" - case .description: return "description" case let .other(string): return string } } public static let all: Set = [ + .description, .id, .name, - .description, ] } -extension Set where Element == TwitterTopicFieldsV2 { +public extension Set where Element == TwitterTopicFieldsV2 { func bind(param: inout [String: Any]) { param["topic.fields"] = commaSeparatedString } @@ -490,11 +490,11 @@ public enum TwitterDmEventFieldsV2: TwitterAPIv2RequestParameter, Hashable { case dmConversationID case eventType case id + case other(String) case participantIDs case referencedTweets case senderID case text - case other(String) public var stringValue: String { switch self { @@ -503,11 +503,11 @@ public enum TwitterDmEventFieldsV2: TwitterAPIv2RequestParameter, Hashable { case .dmConversationID: return "dm_conversation_id" case .eventType: return "event_type" case .id: return "id" + case let .other(string): return string case .participantIDs: return "participant_ids" case .referencedTweets: return "referenced_tweets" case .senderID: return "sender_id" case .text: return "text" - case let .other(string): return string } } @@ -524,7 +524,7 @@ public enum TwitterDmEventFieldsV2: TwitterAPIv2RequestParameter, Hashable { ] } -extension Set where Element == TwitterDmEventFieldsV2 { +public extension Set where Element == TwitterDmEventFieldsV2 { func bind(param: inout [String: Any]) { param["dm_event.fields"] = commaSeparatedString } @@ -548,7 +548,7 @@ public enum TwitterDmConversationFieldsV2: TwitterAPIv2RequestParameter, Hashabl ] } -extension Set where Element == TwitterDmConversationFieldsV2 { +public extension Set where Element == TwitterDmConversationFieldsV2 { func bind(param: inout [String: Any]) { param["dm_conversation.fields"] = commaSeparatedString } From 83285e460526949dc22c0746742bb1f7c6c3bd5e Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Sat, 17 May 2025 11:41:03 -0600 Subject: [PATCH 23/26] fix: more > 120 line errors --- .../APIv1/Account/AccountAPIv1.swift | 20 ++++---- .../BlockAndMute/BlockAndMuteAPIv1.swift | 36 ++++++++++---- .../PostMutesUsersDestroyRequestV1.swift | 4 +- .../APIv1/Collection/CollectionAPIv1.swift | 40 ++++++++++++---- .../APIv1/Friendships/FriendshipsAPIv1.swift | 48 ++++++++++++++----- .../TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift | 4 +- .../APIv1/Search/SearchAPIv1.swift | 16 +++++-- .../GetTrendsAvailableRequestV1.swift | 4 +- .../Requests/GetTrendsClosestRequestV1.swift | 4 +- .../APIv1/Trend/TrendAPIv1.swift | 4 +- .../TwitterAPIKit/APIv1/Users/UserAPIv1.swift | 16 +++++-- Sources/TwitterAPIKit/APIv2/FieldsV2.swift | 30 ++++++++++++ 12 files changed, 172 insertions(+), 54 deletions(-) diff --git a/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift index 306edf82..f94863f8 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift @@ -7,8 +7,8 @@ import Foundation open class AccountAPIv1: TwitterAPIBase { /// For more details, see: - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ - /// manage-account-settings/api-reference/get-account-settings + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/ + /// api-reference/get-account-settings public func getAccountSetting( _ request: GetAccountSettingsRequestV1 ) -> TwitterAPISessionJSONTask { @@ -16,8 +16,8 @@ open class AccountAPIv1: TwitterAPIBase { } /// For more details, see: - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ - /// manage-account-settings/api-reference/get-account-verify_credentials + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/ + /// api-reference/get-account-verify_credentials public func getAccountVerify( _ request: GetAccountVerifyCredentialsRequestV1 ) -> TwitterAPISessionJSONTask { @@ -25,8 +25,8 @@ open class AccountAPIv1: TwitterAPIBase { } /// For more details, see: - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ - /// manage-account-settings/api-reference/post-account-remove_profile_banner + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/ + /// api-reference/post-account-remove_profile_banner public func postRemoveProfileBanner( _ request: PostAccountRemoveProfileBannerRequestV1 ) -> TwitterAPISessionJSONTask { @@ -34,8 +34,8 @@ open class AccountAPIv1: TwitterAPIBase { } /// For more details, see: - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ - /// manage-account-settings/api-reference/post-account-settings + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/ + /// api-reference/post-account-settings public func postAccountSettings( _ request: PostAccountSettingsRequestV1 ) -> TwitterAPISessionJSONTask { @@ -43,8 +43,8 @@ open class AccountAPIv1: TwitterAPIBase { } /// For more details, see: - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ - /// manage-account-settings/api-reference/post-account-update_profile + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/ + /// api-reference/post-account-update_profile public func postAccountProfile( _ request: PostAccountUpdateProfileRequestV1 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift index 030d1a88..9499b539 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift @@ -6,63 +6,81 @@ import Foundation open class BlockAndMuteAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/get-blocks-ids + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/ + /// api-reference/get-blocks-ids public func getBlockIDs( _ request: GetBlocksIDsRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/get-blocks-list + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/ + /// api-reference/get-blocks-list public func getBlockUsers( _ request: GetBlocksListRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/get-mutes-users-ids + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/ + /// api-reference/get-mutes-users-ids public func getMuteIDs( _ request: GetMutesUsersIDsRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/get-mutes-users-list + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/ + /// api-reference/get-mutes-users-list public func getMuteUsers( _ request: GetMutesUsersListRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/post-blocks-create + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/ + /// api-reference/post-blocks-create public func postBlockUser( _ request: PostBlocksCreateRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/post-blocks-destroy + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/ + /// api-reference/post-blocks-destroy public func postUnblockUser( _ request: PostBlocksDestroyRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/post-mutes-users-create + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/ + /// api-reference/post-mutes-users-create public func postMuteUser( _ request: PostMutesUsersCreateRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/post-mutes-users-destroy + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/ + /// api-reference/post-mutes-users-destroy public func postUnmuteUser( _ request: PostMutesUsersDestroyRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/post-users-report_spam + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/ + /// api-reference/post-users-report_spam public func postReportSpam( _ request: PostUsersReportSpamRequestV1 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift index 445c498f..01128659 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/post-mutes-users-destroy +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/ +/// api-reference/post-mutes-users-destroy open class PostMutesUsersDestroyRequestV1: TwitterAPIRequest { public let user: TwitterUserIdentifierV1 diff --git a/Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift index d7372e3b..a0376389 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift @@ -6,70 +6,90 @@ import Foundation open class CollectionAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/get-collections-entries + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/ + /// api-reference/get-collections-entries public func getCollectionEntries( _ request: GetCollectionsEntriesRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/get-collections-list + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/ + /// api-reference/get-collections-list public func getCollections( _ request: GetCollectionsListRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/get-collections-show + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/ + /// api-reference/get-collections-show public func getCollection( _ request: GetCollectionsShowRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-create + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/ + /// api-reference/post-collections-create public func postCreateCollection( _ request: PostCollectionsCreateRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-destroy + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/ + /// api-reference/post-collections-destroy public func postDestroyCollection( _ request: PostCollectionsDestroyRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-entries-add + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/ + /// api-reference/post-collections-entries-add public func postCollectionAddEntry( _ request: PostCollectionsEntriesAddRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-entries-curate + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/ + /// api-reference/post-collections-entries-curate public func postCollectionCurate( _ request: PostCollectionsEntriesCurateRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-entries-move + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/ + /// api-reference/post-collections-entries-move public func postCollectionMoveEntry( _ request: PostCollectionsEntriesMoveRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-entries-remove + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/ + /// api-reference/post-collections-entries-remove public func postCollectionRemoveEntry( _ request: PostCollectionsEntriesRemoveRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-update + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/ + /// api-reference/post-collections-update public func postCollectionUpdate( _ request: PostCollectionsUpdateRequestV1 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift index 6058007e..a34e03a7 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift @@ -6,84 +6,108 @@ import Foundation open class FriendshipsAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-followers-ids + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/ + /// api-reference/get-followers-ids public func getFollowerIDs( _ request: GetFollowersIDsRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-followers-list + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/ + /// api-reference/get-followers-list public func getFollowers( _ request: GetFollowersListRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friends-ids + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/ + /// api-reference/get-friends-ids public func getFriendIDs( _ request: GetFriendsIDsRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friends-list + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/ + /// api-reference/get-friends-list public func getFriends( _ request: GetFriendsListRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friendships-incoming + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/ + /// api-reference/get-friendships-incoming public func getFriendshipsIncoming( _ request: GetFriendshipsIncomingRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friendships-lookup + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/ + /// api-reference/get-friendships-lookup public func getFriendshipsLookup( _ request: GetFriendshipsLookupRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friendships-no_retweets-ids + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/ + /// api-reference/get-friendships-no_retweets-ids public func getFriendshipsNoRetweetsIDs( _ request: GetFriendshipsNoRetweetsIDsRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friendships-outgoing + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/ + /// api-reference/get-friendships-outgoing public func getFriendshipsOutgoing( _ request: GetFriendshipsOutgoingRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friendships-show + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/ + /// api-reference/get-friendships-show public func getFriendships( _ request: GetFriendshipsShowRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/post-friendships-create + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/ + /// api-reference/post-friendships-create public func postFollowUser( _ request: PostFriendshipsCreateRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/post-friendships-destroy + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/ + /// api-reference/post-friendships-destroy public func postUnfollowUser( _ request: PostFriendshipsDestroyRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/post-friendships-update + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/ + /// api-reference/post-friendships-update public func postFriendshipsUpdate( _ request: PostFriendshipsUpdateRequestV1 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift index 91700857..c4100721 100644 --- a/Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift @@ -20,7 +20,9 @@ open class GeoAPIv1: TwitterAPIBase { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/geo/places-near-location/api-reference/get-geo-search + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/geo/places-near-location/ + /// api-reference/get-geo-search public func searchGeo( _ request: GetGeoSearchRequestV1 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift index 66f46c9e..ec468a62 100644 --- a/Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift @@ -6,28 +6,36 @@ import Foundation open class SearchAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/search/api-reference/get-search-tweets + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/search/ + /// api-reference/get-search-tweets public func searchTweets( _ request: GetSearchTweetsRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/get-saved_searches-list + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/ + /// api-reference/get-saved_searches-list public func getSavedSearches( _ request: GetSavedSearchesListRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-saved_searches-create + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/ + /// api-reference/post-saved_searches-create public func postCreateSavedSearch( _ request: PostSavedSearchesCreateRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-saved_searches-destroy-id + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/ + /// api-reference/post-saved_searches-destroy-id public func postDestroySavedSearch( _ request: PostSavedSearchesCreateRequestV1 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift index 5eeb65e0..bf2d3021 100644 --- a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/trends/locations-with-trending-topics/api-reference/get-trends-available +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/trends/trends-for-location/ +/// api-reference/get-trends-available open class GetTrendsAvailableRequestV1: TwitterAPIRequest { public var method: HTTPMethod { return .get diff --git a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift index 68430332..895adf2c 100644 --- a/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/trends/locations-with-trending-topics/api-reference/get-trends-closest +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/trends/trends-for-location/ +/// api-reference/get-trends-closest open class GetTrendsClosestRequestV1: TwitterAPIRequest { public let location: TwitterCoordinateV1 diff --git a/Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift index b9402f74..9ac2ba57 100644 --- a/Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift @@ -6,7 +6,9 @@ import Foundation open class TrendAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/trends/locations-with-trending-topics/api-reference/get-trends-available + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/trends/trends-for-location/ + /// api-reference/get-trends-available public func getTrendsAvailable( _ request: GetTrendsAvailableRequestV1 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift index c884c4c6..f6fae092 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift @@ -6,28 +6,36 @@ import Foundation open class UserAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-users-lookup + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/ + /// api-reference/get-users-lookup public func getUsers( _ request: GetUsersLookupRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-users-show + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/ + /// api-reference/get-users-show public func getUser( _ request: GetUsersShowRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-users-search + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/ + /// api-reference/get-users-search public func searchUser( _ request: GetUsersShowRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/get-users-profile_banner + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/ + /// api-reference/get-users-profile_banner public func getUserProfileBanner( _ request: GetUsersProfileBannerRequestV1 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv2/FieldsV2.swift b/Sources/TwitterAPIKit/APIv2/FieldsV2.swift index 400a0df7..26a80d1e 100644 --- a/Sources/TwitterAPIKit/APIv2/FieldsV2.swift +++ b/Sources/TwitterAPIKit/APIv2/FieldsV2.swift @@ -102,7 +102,10 @@ public enum TwitterTweetFieldsV2: TwitterAPIv2RequestParameter, Hashable { ] } +/// Extension to bind tweet fields to request parameters public extension Set where Element == TwitterTweetFieldsV2 { + /// Binds the tweet fields to the request parameters + /// - Parameter param: The parameters dictionary to bind to func bind(param: inout [String: Any]) { param["tweet.fields"] = commaSeparatedString } @@ -179,7 +182,10 @@ public enum TwitterUserFieldsV2: TwitterAPIv2RequestParameter, Hashable { ] } +/// Extension to bind user fields to request parameters public extension Set where Element == TwitterUserFieldsV2 { + /// Binds the user fields to the request parameters + /// - Parameter param: The parameters dictionary to bind to func bind(param: inout [String: Any]) { param["user.fields"] = commaSeparatedString } @@ -232,7 +238,10 @@ public enum TwitterPlaceFieldsV2: TwitterAPIv2RequestParameter, Hashable { ] } +/// Extension to bind place fields to request parameters public extension Set where Element == TwitterPlaceFieldsV2 { + /// Binds the place fields to the request parameters + /// - Parameter param: The parameters dictionary to bind to func bind(param: inout [String: Any]) { param["place.fields"] = commaSeparatedString } @@ -273,7 +282,10 @@ public enum TwitterPollFieldsV2: TwitterAPIv2RequestParameter, Hashable { ] } +/// Extension to bind poll fields to request parameters public extension Set where Element == TwitterPollFieldsV2 { + /// Binds the poll fields to the request parameters + /// - Parameter param: The parameters dictionary to bind to func bind(param: inout [String: Any]) { param["poll.fields"] = commaSeparatedString } @@ -332,7 +344,10 @@ public enum TwitterMediaFieldsV2: TwitterAPIv2RequestParameter, Hashable { ] } +/// Extension to bind media fields to request parameters public extension Set where Element == TwitterMediaFieldsV2 { + /// Binds the media fields to the request parameters + /// - Parameter param: The parameters dictionary to bind to func bind(param: inout [String: Any]) { param["media.fields"] = commaSeparatedString } @@ -376,7 +391,10 @@ public enum TwitterListFieldsV2: TwitterAPIv2RequestParameter, Hashable { ] } +/// Extension to bind list fields to request parameters public extension Set where Element == TwitterListFieldsV2 { + /// Binds the list fields to the request parameters + /// - Parameter param: The parameters dictionary to bind to func bind(param: inout [String: Any]) { param["list.fields"] = commaSeparatedString } @@ -447,7 +465,10 @@ public enum TwitterSpaceFieldsV2: TwitterAPIv2RequestParameter, Hashable { ] } +/// Extension to bind space fields to request parameters public extension Set where Element == TwitterSpaceFieldsV2 { + /// Binds the space fields to the request parameters + /// - Parameter param: The parameters dictionary to bind to func bind(param: inout [String: Any]) { param["space.fields"] = commaSeparatedString } @@ -476,7 +497,10 @@ public enum TwitterTopicFieldsV2: TwitterAPIv2RequestParameter, Hashable { ] } +/// Extension to bind topic fields to request parameters public extension Set where Element == TwitterTopicFieldsV2 { + /// Binds the topic fields to the request parameters + /// - Parameter param: The parameters dictionary to bind to func bind(param: inout [String: Any]) { param["topic.fields"] = commaSeparatedString } @@ -524,7 +548,10 @@ public enum TwitterDmEventFieldsV2: TwitterAPIv2RequestParameter, Hashable { ] } +/// Extension to bind DM event fields to request parameters public extension Set where Element == TwitterDmEventFieldsV2 { + /// Binds the DM event fields to the request parameters + /// - Parameter param: The parameters dictionary to bind to func bind(param: inout [String: Any]) { param["dm_event.fields"] = commaSeparatedString } @@ -548,7 +575,10 @@ public enum TwitterDmConversationFieldsV2: TwitterAPIv2RequestParameter, Hashabl ] } +/// Extension to bind DM conversation fields to request parameters public extension Set where Element == TwitterDmConversationFieldsV2 { + /// Binds the DM conversation fields to the request parameters + /// - Parameter param: The parameters dictionary to bind to func bind(param: inout [String: Any]) { param["dm_conversation.fields"] = commaSeparatedString } From 5315c737640a2d011c78b9719a97410b3f65ddbf Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Sun, 18 May 2025 05:39:26 -0600 Subject: [PATCH 24/26] fix: fix all links --- .../APIv1/Account/AccountAPIv1.swift | 20 +- .../GetAccountSettingsRequestV1.swift | 4 +- ...GetAccountVerifyCredentialsRequestV1.swift | 4 +- ...tAccountRemoveProfileBannerRequestV1.swift | 4 +- .../PostAccountSettingsRequestV1.swift | 4 +- ...tAccountUpdateProfileBannerRequestV1.swift | 4 +- ...stAccountUpdateProfileImageRequestV1.swift | 4 +- ...tApplicationRateLimitStatusRequestV1.swift | 4 +- .../Requests/GetBlocksIDsRequestV1.swift | 4 +- .../Requests/GetBlocksListRequestV1.swift | 4 +- .../Requests/GetMutesUsersIDsRequestV1.swift | 4 +- .../Requests/GetMutesUsersListRequestV1.swift | 4 +- .../Requests/PostBlocksCreateRequestV1.swift | 4 +- .../Requests/PostBlocksDestroyRequestV1.swift | 4 +- .../PostMutesUsersCreateRequestV1.swift | 4 +- .../PostUsersReportSpamRequestV1.swift | 4 +- .../GetCollectionsEntriesRequestV1.swift | 4 +- .../PostCollectionsCreateRequestV1.swift | 4 +- .../PostCollectionsDestroyRequestV1.swift | 4 +- .../PostCollectionsEntriesAddRequestV1.swift | 4 +- ...ostCollectionsEntriesCurateRequestV1.swift | 4 +- .../PostCollectionsEntriesMoveRequestV1.swift | 4 +- ...ostCollectionsEntriesRemoveRequestV1.swift | 4 +- .../PostCollectionsUpdateRequestV1.swift | 4 +- .../DirectMessage/DirectMessageAPIv1.swift | 24 +- .../DeleteDirectMessageRequestV1.swift | 4 +- ...irectMessagesIndicateTypingRequestV1.swift | 4 +- .../PostDirectMessagesMarkReadRequestV1.swift | 4 +- .../Requests/GetFollowersIDsRequestV1.swift | 4 +- .../Requests/GetFollowersListRequestV1.swift | 4 +- .../Requests/GetFriendsIDsRequestV1.swift | 4 +- .../Requests/GetFriendsListRequestV1.swift | 4 +- .../GetFriendshipsIncomingRequestV1.swift | 4 +- .../GetFriendshipsLookupRequestV1.swift | 4 +- ...GetFriendshipsNoRetweetsIDsRequestV1.swift | 4 +- .../GetFriendshipsOutgoingRequestV1.swift | 4 +- .../GetFriendshipsShowRequestV1.swift | 4 +- .../PostFriendshipsCreateRequestV1.swift | 4 +- .../PostFriendshipsDestroyRequestV1.swift | 4 +- .../PostFriendshipsUpdateRequestV1.swift | 4 +- .../TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift | 12 +- .../TwitterAPIKit/APIv1/Help/HelpAPIv1.swift | 4 +- .../Requests/GetHelpLanguagesRequestV1.swift | 4 +- .../List/Requests/GetListsListRequestV1.swift | 4 +- .../Requests/GetListsMembersRequestV1.swift | 4 +- .../GetListsMembersShowRequestV1.swift | 4 +- .../GetListsMembershipsRequestV1.swift | 4 +- .../GetListsOwnershipsRequestV1.swift | 4 +- .../List/Requests/GetListsShowRequestV1.swift | 4 +- .../Requests/GetListsStatusesRequestV1.swift | 4 +- .../GetListsSubscribersRequestV1.swift | 4 +- .../GetListsSubscribersShowRequestV1.swift | 4 +- .../GetListsSubscriptionsRequestV1.swift | 4 +- .../Requests/PostListsCreateRequestV1.swift | 4 +- .../Requests/PostListsDestroyRequestV1.swift | 4 +- .../PostListsMembersCreateAllRequestV1.swift | 4 +- .../PostListsMembersCreateRequestV1.swift | 4 +- .../PostListsMembersDestroyAllRequestV1.swift | 4 +- .../PostListsMembersDestroyRequestV1.swift | 4 +- .../PostListsSubscribersCreateRequestV1.swift | 4 +- ...PostListsSubscribersDestroyRequestV1.swift | 4 +- .../Requests/PostListsUpdateRequestV1.swift | 4 +- .../APIv1/Media/MediaAPIv1.swift | 26 +- .../Requests/GetRetweetersRequestV1.swift | 4 +- .../Requests/GetRetweetsOfMeRequestV1.swift | 4 +- .../APIv1/Retweet/RetweetAPIv1.swift | 20 +- .../GetSavedSearchesListRequestV1.swift | 4 +- .../PostSavedSearchesCreateRequestV1.swift | 4 +- .../PostSavedSearchesDestroyRequestV1.swift | 4 +- .../APIv1/Search/SearchAPIv1.swift | 12 +- .../GetStatusesHomeTimelineRequestV1.swift | 4 +- .../APIv1/Timelines/TimelineAPIv1.swift | 4 +- .../APIv1/Trend/TrendAPIv1.swift | 12 +- .../APIv1/Tweet/TweetAPIv1.swift | 20 +- .../Requests/GetUsersLookupRequestV1.swift | 4 +- .../GetUsersProfileBannerRequestV1.swift | 4 +- .../Requests/GetUsersSearchRequestV1.swift | 4 +- .../Requests/GetUsersShowRequestV1.swift | 4 +- .../APIv2/Bookmarks/BookmarksAPIv2.swift | 12 +- .../APIv2/Compliance/ComplianceAPIv2.swift | 12 +- .../DirectMessage/DirectMessageAPIv2.swift | 24 +- ...nsWithParticipantIdDmEventsRequestV2.swift | 2 +- .../TwitterDirectMessageEventTypeV2.swift | 2 + .../TwitterAPIKit/APIv2/ExpansionsV2.swift | 48 +- .../APIv2/Friendships/FriendshipsAPIv2.swift | 16 +- .../TwitterAPIKit/APIv2/List/ListAPIv2.swift | 68 +- .../DeleteUsersFollowedListsRequestV2.swift | 4 +- .../DeleteUsersPinnedListsRequestV2.swift | 4 +- .../APIv2/Retweet/RetweetAPIv2.swift | 12 +- .../GetTweetsSearchStreamRulesRequestV2.swift | 4 +- ...PostTweetsSearchStreamRulesRequestV2.swift | 4 +- .../APIv2/Stream/StreamAPIv2.swift | 16 +- .../APIv2/Timeline/TimelineAPIv2.swift | 12 +- .../TwitterAPI+Flat.generated.swift | 8 +- .../TwitterAPIKit/TwitterAPIKitError.swift | 6 +- Sources/TwitterAPIKit/TwitterAPIRequest.swift | 24 +- .../APIv1/Media/UploadMediaUtilTests.swift | 3 +- .../TwitterOAuth2AccessTokenTests.swift | 4 +- .../TwitterAPIKitTests/OAuthHelperTests.swift | 15 +- ...tterAPISessionDelegatedJSONTaskTests.swift | 2 +- lint.txt | 620 +++--------------- 101 files changed, 597 insertions(+), 751 deletions(-) diff --git a/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift index f94863f8..306edf82 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift @@ -7,8 +7,8 @@ import Foundation open class AccountAPIv1: TwitterAPIBase { /// For more details, see: - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/ - /// api-reference/get-account-settings + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// manage-account-settings/api-reference/get-account-settings public func getAccountSetting( _ request: GetAccountSettingsRequestV1 ) -> TwitterAPISessionJSONTask { @@ -16,8 +16,8 @@ open class AccountAPIv1: TwitterAPIBase { } /// For more details, see: - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/ - /// api-reference/get-account-verify_credentials + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// manage-account-settings/api-reference/get-account-verify_credentials public func getAccountVerify( _ request: GetAccountVerifyCredentialsRequestV1 ) -> TwitterAPISessionJSONTask { @@ -25,8 +25,8 @@ open class AccountAPIv1: TwitterAPIBase { } /// For more details, see: - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/ - /// api-reference/post-account-remove_profile_banner + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// manage-account-settings/api-reference/post-account-remove_profile_banner public func postRemoveProfileBanner( _ request: PostAccountRemoveProfileBannerRequestV1 ) -> TwitterAPISessionJSONTask { @@ -34,8 +34,8 @@ open class AccountAPIv1: TwitterAPIBase { } /// For more details, see: - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/ - /// api-reference/post-account-settings + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// manage-account-settings/api-reference/post-account-settings public func postAccountSettings( _ request: PostAccountSettingsRequestV1 ) -> TwitterAPISessionJSONTask { @@ -43,8 +43,8 @@ open class AccountAPIv1: TwitterAPIBase { } /// For more details, see: - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/ - /// api-reference/post-account-update_profile + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// manage-account-settings/api-reference/post-account-update_profile public func postAccountProfile( _ request: PostAccountUpdateProfileRequestV1 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountSettingsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountSettingsRequestV1.swift index b97057ee..988ee973 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountSettingsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountSettingsRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/get-account-settings +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// manage-account-settings/api-reference/get-account-settings open class GetAccountSettingsRequestV1: TwitterAPIRequest { public var method: HTTPMethod { return .get diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountVerifyCredentialsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountVerifyCredentialsRequestV1.swift index 4b74c2c7..babf9f05 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountVerifyCredentialsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountVerifyCredentialsRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/get-account-verify_credentials +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// manage-account-settings/api-reference/get-account-verify_credentials open class GetAccountVerifyCredentialsRequestV1: TwitterAPIRequest { public let skipStatus: Bool? public let includeEmail: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountRemoveProfileBannerRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountRemoveProfileBannerRequestV1.swift index c275b1cb..66672a2c 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountRemoveProfileBannerRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountRemoveProfileBannerRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-account-remove_profile_banner +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// manage-account-settings/api-reference/post-account-remove_profile_banner open class PostAccountRemoveProfileBannerRequestV1: TwitterAPIRequest { public var method: HTTPMethod { return .post diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift index e8c58973..fec4fc8f 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-account-settings +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// manage-account-settings/api-reference/post-account-settings open class PostAccountSettingsRequestV1: TwitterAPIRequest { /// two letter ISO 639-1 public let lang: String? diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileBannerRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileBannerRequestV1.swift index 69262ed7..5cdd1984 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileBannerRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileBannerRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-account-update_profile_banner +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// manage-account-settings/api-reference/post-account-update_profile_banner open class PostAccountUpdateProfileBannerRequestV1: TwitterAPIRequest { public let banner: Data public let width: Int? diff --git a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileImageRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileImageRequestV1.swift index 773166e0..960f40fe 100644 --- a/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileImageRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileImageRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-account-update_profile_image +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// manage-account-settings/api-reference/post-account-update_profile_image open class PostAccountUpdateProfileImageRequestV1: TwitterAPIRequest { public let image: Data public let skipStatus: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift index 549d4def..3b6717f2 100644 --- a/Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/developer-utilities/rate-limit-status/api-reference/get-application-rate_limit_status +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/developer-utilities/ +/// rate-limit-status/api-reference/get-application-rate_limit_status open class GetApplicationRateLimitStatusRequestV1: TwitterAPIRequest { public let resources: [String]? diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift index 3f1a0df7..fea6674d 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/get-blocks-ids +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// mute-block-report-users/api-reference/get-blocks-ids open class GetBlocksIDsRequestV1: TwitterAPIRequest { public let stringifyIDs: Bool? public let cursor: String? diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift index 5e949059..9acb6051 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/get-blocks-list +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// mute-block-report-users/api-reference/get-blocks-list open class GetBlocksListRequestV1: TwitterAPIRequest { public let includeEntities: Bool? public let skipStatus: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift index 2c116333..055e080f 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/get-mutes-users-ids +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// mute-block-report-users/api-reference/get-mutes-users-ids open class GetMutesUsersIDsRequestV1: TwitterAPIRequest { public let stringifyIDs: Bool? public let cursor: String? diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift index 5fd605bf..29ae1057 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/get-mutes-users-list +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// mute-block-report-users/api-reference/get-mutes-users-list open class GetMutesUsersListRequestV1: TwitterAPIRequest { public let cursor: String? public let includeEntities: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift index d0ab4445..98c48319 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/post-blocks-create +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// mute-block-report-users/api-reference/post-blocks-create open class PostBlocksCreateRequestV1: TwitterAPIRequest { public let user: TwitterUserIdentifierV1 public let includeEntities: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift index 6cab56b4..4071e3ff 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/post-blocks-destroy +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// mute-block-report-users/api-reference/post-blocks-destroy open class PostBlocksDestroyRequestV1: TwitterAPIRequest { public let user: TwitterUserIdentifierV1 public let includeEntities: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift index d6e412ab..3465bdd1 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/post-mutes-users-create +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// mute-block-report-users/api-reference/post-mutes-users-create open class PostMutesUsersCreateRequestV1: TwitterAPIRequest { public let user: TwitterUserIdentifierV1 diff --git a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift index d4614d9a..bdb2d184 100644 --- a/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift @@ -1,4 +1,6 @@ -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/mute-block-report-users/api-reference/post-users-report_spam +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// mute-block-report-users/api-reference/post-users-report_spam open class PostUsersReportSpamRequestV1: TwitterAPIRequest { public let user: TwitterUserIdentifierV1 public let performBlock: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift index e992cb75..3a6c9c17 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/get-collections-entries +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/ +/// curate-a-collection/api-reference/get-collections-entries open class GetCollectionsEntriesRequestV1: TwitterAPIRequest { public let id: String public let count: Int? diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift index 1c67b0b4..904a483b 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-create +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/ +/// curate-a-collection/api-reference/post-collections-create open class PostCollectionsCreateRequestV1: TwitterAPIRequest { public enum TimelineOrder: String { case curationReverseChron = "curation_reverse_chron" diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift index e8047730..d16307fb 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-destroy +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/ +/// curate-a-collection/api-reference/post-collections-destroy open class PostCollectionsDestroyRequestV1: TwitterAPIRequest { public let id: String diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift index f4987ada..f5746ce0 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-entries-add +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/ +/// curate-a-collection/api-reference/post-collections-entries-add open class PostCollectionsEntriesAddRequestV1: TwitterAPIRequest { public let id: String public let tweetID: String diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift index a3e513c6..a2017495 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-entries-curate +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/ +/// curate-a-collection/api-reference/post-collections-entries-curate open class PostCollectionsEntriesCurateRequestV1: TwitterAPIRequest { public enum Operation { case add(tweetID: String) diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift index 6b82df05..0c3372e5 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-entries-move +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/ +/// curate-a-collection/api-reference/post-collections-entries-move open class PostCollectionsEntriesMoveRequestV1: TwitterAPIRequest { public let id: String public let tweetID: String diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift index 25e60f40..7e245756 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-entries-remove +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/ +/// curate-a-collection/api-reference/post-collections-entries-remove open class PostCollectionsEntriesRemoveRequestV1: TwitterAPIRequest { public let id: String public let tweetID: String diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift index 1ab2e034..f598fb86 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/curate-a-collection/api-reference/post-collections-update +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/ +/// curate-a-collection/api-reference/post-collections-update open class PostCollectionsUpdateRequestV1: TwitterAPIRequest { public let id: String public let url: String? diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift index 32f3ac4a..c1e15685 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift @@ -6,42 +6,54 @@ import Foundation open class DirectMessageAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/sending-and-receiving/api-reference/new-event + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/ + /// sending-and-receiving/api-reference/new-event public func postDirectMessage( _ request: PostDirectMessageRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/sending-and-receiving/api-reference/delete-message-event + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/ + /// sending-and-receiving/api-reference/delete-message-event public func deleteDirectMessage( _ request: DeleteDirectMessageRequestV1 ) -> TwitterAPISessionDataTask { // 204 - No Content return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/sending-and-receiving/api-reference/get-event + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/ + /// sending-and-receiving/api-reference/get-event public func getDirectMessage( _ request: GetDirectMessageRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/sending-and-receiving/api-reference/list-events + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/ + /// sending-and-receiving/api-reference/list-events public func getDirectMessageList( _ request: GetDirectMessageListRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/typing-indicator-and-read-receipts/api-reference/new-read-receipt + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/ + /// typing-indicator-and-read-receipts/api-reference/new-read-receipt public func postDirectMessageMarkRead( _ request: PostDirectMessagesMarkReadRequestV1 ) -> TwitterAPISessionDataTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/typing-indicator-and-read-receipts/api-reference/new-typing-indicator + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/ + /// typing-indicator-and-read-receipts/api-reference/new-typing-indicator public func postDirectMessageTypingIndicator( _ request: PostDirectMessagesIndicateTypingRequestV1 ) -> TwitterAPISessionDataTask { diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift index 79535ade..2865124c 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/sending-and-receiving/api-reference/delete-message-event +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/ +/// sending-and-receiving/api-reference/delete-message-event open class DeleteDirectMessageRequestV1: TwitterAPIRequest { public let id: String diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift index f27c7c16..23d3a553 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/typing-indicator-and-read-receipts/api-reference/new-typing-indicator +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/ +/// typing-indicator-and-read-receipts/api-reference/new-typing-indicator open class PostDirectMessagesIndicateTypingRequestV1: TwitterAPIRequest { public let recipientID: String diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift index f9be9585..bc023e1a 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/typing-indicator-and-read-receipts/api-reference/new-read-receipt +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/direct-messages/ +/// typing-indicator-and-read-receipts/api-reference/new-read-receipt open class PostDirectMessagesMarkReadRequestV1: TwitterAPIRequest { /// Message ID public let lastReadEventID: String diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift index c227ba72..43775a85 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-followers-ids +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// follow-search-get-users/api-reference/get-followers-ids open class GetFollowersIDsRequestV1: TwitterAPIRequest { public let user: TwitterUserIdentifierV1 public let count: Int? diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift index 454a5bc3..65330ebc 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-followers-list +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// follow-search-get-users/api-reference/get-followers-list open class GetFollowersListRequestV1: TwitterAPIRequest { public let user: TwitterUserIdentifierV1 public let count: Int? diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift index 9d9ec2e6..b2226620 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friends-ids +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// follow-search-get-users/api-reference/get-friends-ids open class GetFriendsIDsRequestV1: TwitterAPIRequest { public let user: TwitterUserIdentifierV1 public let count: Int? diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsListRequestV1.swift index 9bc4c06e..e80afc76 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsListRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friends-list +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// follow-search-get-users/api-reference/get-friends-list open class GetFriendsListRequestV1: TwitterAPIRequest { public let user: TwitterUserIdentifierV1 public let count: Int? diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift index 53da4d0a..a04a3d07 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friendships-incoming +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// follow-search-get-users/api-reference/get-friendships-incoming open class GetFriendshipsIncomingRequestV1: TwitterAPIRequest { public let cursor: String? public let stringifyIDs: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift index 11718625..3da726d4 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friendships-lookup +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// follow-search-get-users/api-reference/get-friendships-lookup open class GetFriendshipsLookupRequestV1: TwitterAPIRequest { public let users: TwitterUsersIdentifierV1 diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift index cc67868b..b5ef111b 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friendships-no_retweets-ids +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// follow-search-get-users/api-reference/get-friendships-no_retweets-ids open class GetFriendshipsNoRetweetsIDsRequestV1: TwitterAPIRequest { public let stringifyIDs: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift index e992c707..f18b2d97 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friendships-outgoing +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// follow-search-get-users/api-reference/get-friendships-outgoing open class GetFriendshipsOutgoingRequestV1: TwitterAPIRequest { public let cursor: String? public let stringifyIDs: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift index b2cb6b0f..edc839be 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friendships-show +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// follow-search-get-users/api-reference/get-friendships-show open class GetFriendshipsShowRequestV1: TwitterAPIRequest { public let sourceUser: TwitterUserIdentifierV1 public let targetUser: TwitterUserIdentifierV1 diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift index 90b3349e..13adbee0 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/post-friendships-create +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// follow-search-get-users/api-reference/post-friendships-create open class PostFriendshipsCreateRequestV1: TwitterAPIRequest { public let user: TwitterUserIdentifierV1 public let follow: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift index 03f83b93..d510d4f4 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/post-friendships-destroy +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// follow-search-get-users/api-reference/post-friendships-destroy open class PostFriendshipsDestroyRequestV1: TwitterAPIRequest { public let user: TwitterUserIdentifierV1 diff --git a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift index 75313f00..2f3ca39e 100644 --- a/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/post-friendships-update +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// follow-search-get-users/api-reference/post-friendships-update open class PostFriendshipsUpdateRequestV1: TwitterAPIRequest { public let user: TwitterUserIdentifierV1 public let device: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift index c4100721..7324c7be 100644 --- a/Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift @@ -6,14 +6,18 @@ import Foundation open class GeoAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/geo/places-near-location/api-reference/get-geo-reverse_geocode + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/geo/ + /// places-near-location/api-reference/get-geo-reverse_geocode public func getReverseGeocode( _ request: GetGeoReverseGeocodeRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/geo/place-information/api-reference/get-geo-id-place_id + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/geo/ + /// place-information/api-reference/get-geo-id-place_id public func getGeoPlace( _ request: GetGeoPlaceIDRequestV1 ) -> TwitterAPISessionJSONTask { @@ -21,8 +25,8 @@ open class GeoAPIv1: TwitterAPIBase { } /// For more details, see: - /// https://developer.twitter.com/en/docs/twitter-api/v1/geo/places-near-location/ - /// api-reference/get-geo-search + /// https://developer.twitter.com/en/docs/twitter-api/v1/geo/ + /// places-near-location/api-reference/get-geo-search public func searchGeo( _ request: GetGeoSearchRequestV1 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv1/Help/HelpAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Help/HelpAPIv1.swift index 9b5a9d9c..30d8e2f5 100644 --- a/Sources/TwitterAPIKit/APIv1/Help/HelpAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Help/HelpAPIv1.swift @@ -6,7 +6,9 @@ import Foundation open class HelpAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/developer-utilities/supported-languages/api-reference/get-help-languages + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/developer-utilities/ + /// supported-languages/api-reference/get-help-languages public func getSupportedLanguages( _ request: GetHelpLanguagesRequestV1 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv1/Help/Requests/GetHelpLanguagesRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Help/Requests/GetHelpLanguagesRequestV1.swift index a87aa1cf..45df9053 100644 --- a/Sources/TwitterAPIKit/APIv1/Help/Requests/GetHelpLanguagesRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Help/Requests/GetHelpLanguagesRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/developer-utilities/supported-languages/api-reference/get-help-languages +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/developer-utilities/ +/// supported-languages/api-reference/get-help-languages open class GetHelpLanguagesRequestV1: TwitterAPIRequest { public var method: HTTPMethod { return .get diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift index ca4b644a..e16738a5 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-list +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// create-manage-lists/api-reference/get-lists-list open class GetListsListRequestV1: TwitterAPIRequest { public let user: TwitterUserIdentifierV1 public let reverse: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift index e0c08360..91982880 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-members +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// create-manage-lists/api-reference/get-lists-members open class GetListsMembersRequestV1: TwitterAPIRequest { public let list: TwitterListIdentifierV1 public let count: Int? diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift index 788e5bb6..f372ff82 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-members-show +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// create-manage-lists/api-reference/get-lists-members-show open class GetListsMembersShowRequestV1: TwitterAPIRequest { public let list: TwitterListIdentifierV1 public let user: TwitterUserIdentifierV1 diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift index 1c381e40..901fcf77 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-memberships +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// create-manage-lists/api-reference/get-lists-memberships open class GetListsMembershipsRequestV1: TwitterAPIRequest { public let user: TwitterUserIdentifierV1 public let count: Int? diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift index f8743899..926e8ad3 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-ownerships +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// create-manage-lists/api-reference/get-lists-ownerships open class GetListsOwnershipsRequestV1: TwitterAPIRequest { public let user: TwitterUserIdentifierV1 public let count: Int? diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift index 716f76f1..7aaaf767 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-show +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// create-manage-lists/api-reference/get-lists-show open class GetListsShowRequestV1: TwitterAPIRequest { public let list: TwitterListIdentifierV1 diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift index 2cd24c94..f429e1f8 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-statuses +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// create-manage-lists/api-reference/get-lists-statuses open class GetListsStatusesRequestV1: TwitterAPIRequest { public let list: TwitterListIdentifierV1 public let count: Int? diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersRequestV1.swift index bae9a07b..9a4b7ac1 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-subscribers +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// create-manage-lists/api-reference/get-lists-subscribers open class GetListsSubscribersRequestV1: TwitterAPIRequest { public let list: TwitterListIdentifierV1 public let count: Int? diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift index 43d006c8..1f262ac1 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-subscribers-show +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// create-manage-lists/api-reference/get-lists-subscribers-show open class GetListsSubscribersShowRequestV1: TwitterAPIRequest { public let list: TwitterListIdentifierV1 public let user: TwitterUserIdentifierV1 diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift index fcc36e8e..8d42d63c 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/get-lists-subscriptions +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// create-manage-lists/api-reference/get-lists-subscriptions open class GetListsSubscriptionsRequestV1: TwitterAPIRequest { internal let user: TwitterUserIdentifierV1 internal let count: Int? diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift index f2054df6..799851ae 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-create +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// create-manage-lists/api-reference/post-lists-create open class PostListsCreateRequestV1: TwitterAPIRequest { public let name: String public let mode: TwitterListModeV1? diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift index c4ac0ecd..e979af40 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-destroy +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// create-manage-lists/api-reference/post-lists-destroy open class PostListsDestroyRequestV1: TwitterAPIRequest { public let list: TwitterListIdentifierV1 diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift index e4f9a033..fcbee95c 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-members-create_all +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// create-manage-lists/api-reference/post-lists-members-create_all open class PostListsMembersCreateAllRequestV1: TwitterAPIRequest { public let list: TwitterListIdentifierV1 public let users: TwitterUsersIdentifierV1 diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift index d3a94b0d..cc551a60 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-members-create +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// create-manage-lists/api-reference/post-lists-members-create open class PostListsMembersCreateRequestV1: TwitterAPIRequest { public let list: TwitterListIdentifierV1 public let user: TwitterUserIdentifierV1 diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift index 2ce9aa96..420b84a3 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-members-destroy_all +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// create-manage-lists/api-reference/post-lists-members-destroy_all open class PostListsMembersDestroyAllRequestV1: TwitterAPIRequest { public let list: TwitterListIdentifierV1 public let users: TwitterUsersIdentifierV1 diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift index 58f12201..57e240a1 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-members-destroy +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// create-manage-lists/api-reference/post-lists-members-destroy open class PostListsMembersDestroyRequestV1: TwitterAPIRequest { public let list: TwitterListIdentifierV1 public let user: TwitterUserIdentifierV1 diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift index e3ba5357..7c529b51 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-subscribers-create +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// create-manage-lists/api-reference/post-lists-subscribers-create open class PostListsSubscribersCreateRequestV1: TwitterAPIRequest { public let list: TwitterListIdentifierV1 diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift index 52b94f58..ba4d6fd6 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-subscribers-destroy +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// create-manage-lists/api-reference/post-lists-subscribers-destroy open class PostListsSubscribersDestroyRequestV1: TwitterAPIRequest { public let list: TwitterListIdentifierV1 diff --git a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift index 3dd3085e..2ccaecb9 100644 --- a/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/create-manage-lists/api-reference/post-lists-update +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// create-manage-lists/api-reference/post-lists-update open class PostListsUpdateRequestV1: TwitterAPIRequest { public let list: TwitterListIdentifierV1 public let name: String? diff --git a/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift index ba780fa4..500d720a 100644 --- a/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift @@ -6,21 +6,27 @@ import Foundation open class MediaAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/get-media-upload-status + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/ + /// api-reference/get-media-upload-status public func getUploadMediaStatus( _ request: GetUploadMediaStatusRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/post-media-upload-init + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/ + /// api-reference/post-media-upload-init public func uploadMediaInit( _ request: UploadMediaInitRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/post-media-upload-append + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/ + /// api-reference/post-media-upload-append public func uploadMediaAppend( _ request: UploadMediaAppendRequestV1 ) -> TwitterAPISessionJSONTask { @@ -40,7 +46,9 @@ open class MediaAPIv1: TwitterAPIBase { } } - /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/post-media-upload-finalize + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/ + /// api-reference/post-media-upload-finalize public func uploadMediaFinalize( _ request: UploadMediaFinalizeRequestV1 ) -> TwitterAPISessionJSONTask { @@ -186,7 +194,9 @@ open class MediaAPIv1: TwitterAPIBase { } } - /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/post-media-metadata-create + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/ + /// api-reference/post-media-metadata-create public func createMediaMetadata( _ request: PostMediaMetadataCreateRequestV1 ) -> TwitterAPISessionDataTask { @@ -194,7 +204,8 @@ open class MediaAPIv1: TwitterAPIBase { } /// For more details, see: - /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/ + /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/ + /// api-reference/ /// post-media-subtitles-create public func createSubtitle( _ request: PostMediaSubtitlesCreateRequestV1 @@ -203,7 +214,8 @@ open class MediaAPIv1: TwitterAPIBase { } /// For more details, see: - /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/ + /// https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/ + /// api-reference/ /// post-media-subtitles-delete public func deleteSubtitle( _ request: PostMediaSubtitlesDeleteRequestV1 diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift index 46b46454..9edb3156 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/get-statuses-retweeters-ids +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/ +/// post-and-engage/api-reference/get-statuses-retweeters-ids open class GetRetweetersRequestV1: TwitterAPIRequest { // Status ID let id: String diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift index 7e6606f0..3cf07541 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/get-statuses-retweets_of_me +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/ +/// post-and-engage/api-reference/get-statuses-retweets_of_me open class GetRetweetsOfMeRequestV1: TwitterAPIRequest { public let count: Int? public let sinceID: String? diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift index 497ba4c7..dfcd29c8 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift @@ -6,35 +6,45 @@ import Foundation open class RetweetAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/post-statuses-retweet-id + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/ + /// api-reference/post-statuses-retweet-id public func postRetweet( _ request: PostRetweetRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/post-statuses-unretweet-id + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/ + /// api-reference/post-statuses-unretweet-id public func postUnRetweet( _ request: PostUnRetweetRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/get-statuses-retweets-id + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/ + /// api-reference/get-statuses-retweets-id public func getRetweets( _ request: GetRetweetsRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/get-statuses-retweets_of_me + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/ + /// api-reference/get-statuses-retweets_of_me public func getRetweetsOfMe( _ request: GetRetweetsOfMeRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/get-statuses-retweeters-ids + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/ + /// api-reference/get-statuses-retweeters-ids public func getRetweeters( _ request: GetRetweetersRequestV1 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSavedSearchesListRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSavedSearchesListRequestV1.swift index fff7537c..d33b5e9f 100644 --- a/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSavedSearchesListRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Search/Requests/GetSavedSearchesListRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/get-saved_searches-list +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// manage-account-settings/api-reference/get-saved_searches-list open class GetSavedSearchesListRequestV1: TwitterAPIRequest { public var method: HTTPMethod { return .get diff --git a/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift index 67f52a27..d2f33b57 100644 --- a/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-saved_searches-create +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// manage-account-settings/api-reference/post-saved_searches-create open class PostSavedSearchesCreateRequestV1: TwitterAPIRequest { public let query: String diff --git a/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift index 8074938e..02eb7972 100644 --- a/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/post-saved_searches-destroy-id +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// manage-account-settings/api-reference/post-saved_searches-destroy-id open class PostSavedSearchesDestroyRequestV1: TwitterAPIRequest { public let id: String diff --git a/Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift index ec468a62..a9c81889 100644 --- a/Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift @@ -16,8 +16,8 @@ open class SearchAPIv1: TwitterAPIBase { } /// For more details, see: - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/ - /// api-reference/get-saved_searches-list + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// manage-account-settings/api-reference/get-saved_searches-list public func getSavedSearches( _ request: GetSavedSearchesListRequestV1 ) -> TwitterAPISessionJSONTask { @@ -25,8 +25,8 @@ open class SearchAPIv1: TwitterAPIBase { } /// For more details, see: - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/ - /// api-reference/post-saved_searches-create + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// manage-account-settings/api-reference/post-saved_searches-create public func postCreateSavedSearch( _ request: PostSavedSearchesCreateRequestV1 ) -> TwitterAPISessionJSONTask { @@ -34,8 +34,8 @@ open class SearchAPIv1: TwitterAPIBase { } /// For more details, see: - /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/ - /// api-reference/post-saved_searches-destroy-id + /// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ + /// manage-account-settings/api-reference/post-saved_searches-destroy-id public func postDestroySavedSearch( _ request: PostSavedSearchesCreateRequestV1 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift index dba9d97b..351402cd 100644 --- a/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/timelines/api-reference/get-statuses-home_timeline +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/timelines/ +/// api-reference/get-statuses-home_timeline open class GetStatusesHomeTimelineRequestV1: TwitterAPIRequest { public let count: Int? public let maxID: String? diff --git a/Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift index 77fc448f..cdd92336 100644 --- a/Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift @@ -14,7 +14,9 @@ open class TimelineAPIv1: TwitterAPIBase { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/timelines/api-reference/get-statuses-mentions_timeline + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/timelines/ + /// api-reference/get-statuses-mentions_timeline public func getMentionsTimeline( _ request: GetStatusesMentionsTimelineRequestV1 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift index 9ac2ba57..c7890371 100644 --- a/Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift @@ -7,22 +7,26 @@ import Foundation open class TrendAPIv1: TwitterAPIBase { /// For more details, see: - /// https://developer.twitter.com/en/docs/twitter-api/v1/trends/trends-for-location/ - /// api-reference/get-trends-available + /// https://developer.twitter.com/en/docs/twitter-api/v1/trends/ + /// trends-for-location/api-reference/get-trends-available public func getTrendsAvailable( _ request: GetTrendsAvailableRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/trends/locations-with-trending-topics/api-reference/get-trends-closest + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/trends/ + /// locations-with-trending-topics/api-reference/get-trends-closest public func getTrendsClosest( _ request: GetTrendsClosestRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/trends/trends-for-location/api-reference/get-trends-place + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/trends/ + /// trends-for-location/api-reference/get-trends-place public func getTrends( _ request: GetTrendsPlaceRequestV1 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift index 6287cc5f..24ed6390 100644 --- a/Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift @@ -6,34 +6,44 @@ import Foundation open class TweetAPIv1: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/post-statuses-update + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/ + /// post-and-engage/api-reference/post-statuses-update public func postUpdateStatus( _ request: PostStatusesUpdateRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/post-statuses-destroy-id + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/ + /// post-and-engage/api-reference/post-statuses-destroy-id public func postDestroyStatus( _ request: PostStatusesDestroyRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/get-statuses-show-id + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/ + /// post-and-engage/api-reference/get-statuses-show-id public func getShowStatus( _ request: GetStatusesShowRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/get-statuses-lookup + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/ + /// post-and-engage/api-reference/get-statuses-lookup public func getLookupStatuses( _ request: GetStatusesLookupRequestV1 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/post-and-engage/api-reference/get-statuses-oembed + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/ + /// post-and-engage/api-reference/get-statuses-oembed // TODO↑ } diff --git a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersLookupRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersLookupRequestV1.swift index 60e66323..04471a91 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersLookupRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersLookupRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-users-lookup +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// follow-search-get-users/api-reference/get-users-lookup open class GetUsersLookupRequestV1: TwitterAPIRequest { public let users: TwitterUsersIdentifierV1 public let tweetMode: Bool? diff --git a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift index 87cca881..3ca0314e 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/manage-account-settings/api-reference/get-users-profile_banner +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// manage-account-settings/api-reference/get-users-profile_banner open class GetUsersProfileBannerRequestV1: TwitterAPIRequest { public let user: TwitterUserIdentifierV1 diff --git a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift index cb40b4cf..6df02c90 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-users-search +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// follow-search-get-users/api-reference/get-users-search open class GetUsersSearchRequestV1: TwitterAPIRequest { public let query: String public let page: Int? diff --git a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift index 4d5ee804..ca6dad1e 100644 --- a/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-users-show +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/ +/// follow-search-get-users/api-reference/get-users-show open class GetUsersShowRequestV1: TwitterAPIRequest { public let user: TwitterUserIdentifierV1 public let includeEntities: Bool? diff --git a/Sources/TwitterAPIKit/APIv2/Bookmarks/BookmarksAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Bookmarks/BookmarksAPIv2.swift index 9cbe50c1..74d118fd 100644 --- a/Sources/TwitterAPIKit/APIv2/Bookmarks/BookmarksAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Bookmarks/BookmarksAPIv2.swift @@ -6,21 +6,27 @@ import Foundation open class BookmarksAPIv2: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/tweets/bookmarks/api-reference/get-users-id-bookmarks + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/tweets/bookmarks/ + /// api-reference/get-users-id-bookmarks public func getBookmarks( _ request: GetUsersBookmarksRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/tweets/bookmarks/api-reference/post-users-id-bookmarks + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/tweets/bookmarks/ + /// api-reference/post-users-id-bookmarks public func createBookmark( _ request: PostUsersBookmarksRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/tweets/bookmarks/api-reference/delete-users-id-bookmarks-tweet_id + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/tweets/bookmarks/ + /// api-reference/delete-users-id-bookmarks-tweet_id public func deleteBookmark( _ request: DeleteUsersBookmarksRequestV2 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv2/Compliance/ComplianceAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Compliance/ComplianceAPIv2.swift index 0c7153d8..05431f8f 100644 --- a/Sources/TwitterAPIKit/APIv2/Compliance/ComplianceAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Compliance/ComplianceAPIv2.swift @@ -6,21 +6,27 @@ import Foundation open class ComplianceAPIv2: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/compliance/batch-compliance/api-reference/get-compliance-jobs-id + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/compliance/batch-compliance/ + /// api-reference/get-compliance-jobs-id public func getComplianceJob( _ request: GetComplianceJobRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/compliance/batch-compliance/api-reference/get-compliance-jobs + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/compliance/batch-compliance/ + /// api-reference/get-compliance-jobs public func getComplianceJobj( _ request: GetComplianceJobsRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/compliance/batch-compliance/api-reference/post-compliance-jobs + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/compliance/batch-compliance/ + /// api-reference/post-compliance-jobs public func createComplianceJob( _ request: PostComplianceJobsRequestV2 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift index fa145368..9caef205 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift @@ -6,42 +6,54 @@ import Foundation open class DirectMessageAPIv2: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/direct-messages/lookup/api-reference/get-dm_events + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/direct-messages/lookup/ + /// api-reference/get-dm_events public func getDmEvents( _ request: GetDmEventsRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/direct-messages/lookup/api-reference/get-dm_conversations-with-participant_id-dm_events + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/direct-messages/lookup/ + /// api-reference/get-dm_conversations-with-participant_id-dm_events public func getDmEventsWithParticipantId( _ request: GetDmConversationsWithParticipantIdDmEventsRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/direct-messages/lookup/api-reference/get-dm_conversations-dm_conversation_id-dm_events + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/direct-messages/lookup/ + /// api-reference/get-dm_conversations-dm_conversation_id-dm_events public func getDmEventsByConversationsId( _ request: GetDmConversationsIdDmEventsRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/direct-messages/manage/api-reference/post-dm_conversations-dm_conversation_id-messages + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/direct-messages/manage/ + /// api-reference/post-dm_conversations-dm_conversation_id-messages public func postDmConversationById( _ request: PostDmConversationByIdRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/direct-messages/manage/api-reference/post-dm_conversations-with-participant_id-messages + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/direct-messages/manage/ + /// api-reference/post-dm_conversations-with-participant_id-messages public func postDmConversationWithUser( _ request: PostDmConversationWithUserRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/direct-messages/manage/api-reference/post-dm_conversations + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/direct-messages/manage/ + /// api-reference/post-dm_conversations public func postDmConversation( _ request: PostDmConversationRequestV2 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift index eafdc897..bdda74f1 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift @@ -5,7 +5,7 @@ import Foundation -// swiflint:disable:next type_name +// swiftlint:disable:next type_name /// Returns DM Events for a DM Conversation /// Required OAuth 2.0 scopes: dm.read, tweet.read, users.read open class GetDmConversationsWithParticipantIdDmEventsRequestV2: TwitterAPIRequest { diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/TwitterDirectMessageEventTypeV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/TwitterDirectMessageEventTypeV2.swift index acd7deb6..72d37ff6 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/TwitterDirectMessageEventTypeV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/TwitterDirectMessageEventTypeV2.swift @@ -16,7 +16,9 @@ extension TwitterDirectMessageEventTypeV2: TwitterAPIv2RequestParameter { public var stringValue: String { return rawValue } } +/// Binds the event_types to the request parameters. extension Set where Element == TwitterDirectMessageEventTypeV2 { + /// Binds the event_types to the request parameters. public func bind(param: inout [String: Any]) { param["event_types"] = commaSeparatedString } diff --git a/Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift b/Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift index 35db8ccf..5b520d09 100644 --- a/Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift +++ b/Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift @@ -5,44 +5,46 @@ import Foundation -// https://developer.twitter.com/en/docs/twitter-api/expansions - -protocol TwitterExpansionsParameterV2: TwitterAPIv2RequestParameter {} +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/expansions +public protocol TwitterExpansionsParameterV2: TwitterAPIv2RequestParameter {} +/// Binds the expansions to the request parameters. extension Set where Element: TwitterExpansionsParameterV2 { - func bind(param: inout [String: Any]) { + /// Binds the expansions to the request parameters. + public func bind(param: inout [String: Any]) { param["expansions"] = commaSeparatedString } } public enum TwitterTweetExpansionsV2: TwitterExpansionsParameterV2, Hashable { - case attachmentsPollIDs case attachmentsMediaKeys + case attachmentsPollIDs case authorID case entitiesMentionsUsername case geoPlaceID case inReplyToUserID + case other(String) case referencedTweetsID case referencedTweetsIDAuthorID - case other(String) public var stringValue: String { switch self { - case .attachmentsPollIDs: return "attachments.poll_ids" case .attachmentsMediaKeys: return "attachments.media_keys" + case .attachmentsPollIDs: return "attachments.poll_ids" case .authorID: return "author_id" case .entitiesMentionsUsername: return "entities.mentions.username" case .geoPlaceID: return "geo.place_id" case .inReplyToUserID: return "in_reply_to_user_id" + case let .other(string): return string case .referencedTweetsID: return "referenced_tweets.id" case .referencedTweetsIDAuthorID: return "referenced_tweets.id.author_id" - case let .other(string): return string } } public static let all: Set = [ - .attachmentsPollIDs, .attachmentsMediaKeys, + .attachmentsPollIDs, .authorID, .entitiesMentionsUsername, .geoPlaceID, @@ -53,13 +55,13 @@ public enum TwitterTweetExpansionsV2: TwitterExpansionsParameterV2, Hashable { } public enum TwitterUserExpansionsV2: TwitterExpansionsParameterV2, Hashable { - case pinnedTweetID case other(String) + case pinnedTweetID public var stringValue: String { switch self { - case .pinnedTweetID: return "pinned_tweet_id" case let .other(string): return string + case .pinnedTweetID: return "pinned_tweet_id" } } @@ -69,13 +71,13 @@ public enum TwitterUserExpansionsV2: TwitterExpansionsParameterV2, Hashable { } public enum TwitterListExpansionsV2: TwitterExpansionsParameterV2, Hashable { - case ownerID case other(String) + case ownerID public var stringValue: String { switch self { - case .ownerID: return "owner_id" case let .other(string): return string + case .ownerID: return "owner_id" } } @@ -85,30 +87,30 @@ public enum TwitterListExpansionsV2: TwitterExpansionsParameterV2, Hashable { } public enum TwitterSpaceExpansionsV2: TwitterExpansionsParameterV2, Hashable { - case invitedUserIDs - case speakerIDs case creatorID case hostIDs - case topicIDs + case invitedUserIDs case other(String) + case speakerIDs + case topicIDs public var stringValue: String { switch self { - case .invitedUserIDs: return "invited_user_ids" - case .speakerIDs: return "speaker_ids" case .creatorID: return "creator_id" case .hostIDs: return "host_ids" - case .topicIDs: return "topic_ids" + case .invitedUserIDs: return "invited_user_ids" case let .other(string): return string + case .speakerIDs: return "speaker_ids" + case .topicIDs: return "topic_ids" } } public static let all: Set = [ + .creatorID, + .hostIDs, .invitedUserIDs, .speakerIDs, - .creatorID, .topicIDs, - .hostIDs, ] } @@ -116,18 +118,18 @@ public enum TwitterSpaceExpansionsV2: TwitterExpansionsParameterV2, Hashable { /// expansions public enum TwitterDmEventExpansionsV2: TwitterExpansionsParameterV2, Hashable { case attachmentsMediaKeys + case other(String) case participantIDs case referencedTweetsID case senderID - case other(String) public var stringValue: String { switch self { case .attachmentsMediaKeys: return "attachments.media_keys" + case let .other(string): return string case .participantIDs: return "participant_ids" case .referencedTweetsID: return "referenced_tweets.id" case .senderID: return "sender_id" - case let .other(string): return string } } diff --git a/Sources/TwitterAPIKit/APIv2/Friendships/FriendshipsAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Friendships/FriendshipsAPIv2.swift index 44094f1b..7acb0947 100644 --- a/Sources/TwitterAPIKit/APIv2/Friendships/FriendshipsAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Friendships/FriendshipsAPIv2.swift @@ -6,28 +6,36 @@ import Foundation open class FriendshipsAPIv2: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/users/follows/api-reference/get-users-id-following + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/users/follows/ + /// api-reference/get-users-id-following public func getFollowing( _ request: GetUsersFollowingRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/users/follows/api-reference/get-users-id-followers + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/users/follows/ + /// api-reference/get-users-id-followers public func getFollowers( _ request: GetUsersFollowersRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/users/follows/api-reference/post-users-source_user_id-following + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/users/follows/ + /// api-reference/post-users-source_user_id-following public func follow( _ request: PostUsersFollowingRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/users/follows/api-reference/delete-users-source_id-following + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/users/follows/ + /// api-reference/delete-users-source_id-following public func unfollow( _ request: DeleteUsersFollowingRequestV2 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift b/Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift index 00988e83..e55e5d54 100644 --- a/Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift @@ -6,119 +6,153 @@ import Foundation open class ListAPIv2: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/lists/list-tweets/api-reference/get-lists-id-tweets + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/lists/list-tweets/ + /// api-reference/get-lists-id-tweets public func getListTweets( _ request: GetListsTweetsRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/lists/list-lookup/api-reference/get-lists-id + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/lists/list-lookup/ + /// api-reference/get-lists-id public func getList( _ request: GetListRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/lists/list-lookup/api-reference/get-users-id-owned_lists + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/lists/list-lookup/ + /// api-reference/get-users-id-owned_lists public func getLists( _ request: GetUsersOwnedListsRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/lists/list-follows/api-reference/post-users-id-followed-lists + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/lists/list-follows/ + /// api-reference/post-users-id-followed-lists public func followList( _ request: PostUsersFollowedListsRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/lists/list-follows/api-reference/delete-users-id-followed-lists-list_id + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/lists/list-follows/ + /// api-reference/delete-users-id-followed-lists-list_id public func unfollowList( _ request: DeleteUsersFollowedListsRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/lists/list-follows/api-reference/get-lists-id-followers + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/lists/list-follows/ + /// api-reference/get-lists-id-followers public func listFollowers( _ request: GetListsFollowersRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/lists/list-follows/api-reference/get-users-id-followed_lists + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/lists/list-follows/ + /// api-reference/get-users-id-followed_lists public func followedLists( _ request: GetUsersFollowedListsRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/lists/list-members/api-reference/post-lists-id-members + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/lists/list-members/ + /// api-reference/post-lists-id-members public func addListMember( _ request: PostListsMembersRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/lists/list-members/api-reference/delete-lists-id-members-user_id + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/lists/list-members/ + /// api-reference/delete-lists-id-members-user_id public func removeListMember( _ request: DeleteListsMembersRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/lists/list-members/api-reference/get-users-id-list_memberships + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/lists/list-members/ + /// api-reference/get-users-id-list_memberships public func getListMemberships( _ request: GetUsersListMembershipsRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/lists/list-members/api-reference/get-lists-id-members + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/lists/list-members/ + /// api-reference/get-lists-id-members public func getListMembers( _ request: GetListsMembersRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/lists/manage-lists/api-reference/post-lists + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/lists/manage-lists/ + /// api-reference/post-lists public func createList( _ request: PostListsRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/lists/manage-lists/api-reference/put-lists-id + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/lists/manage-lists/ + /// api-reference/put-lists-id public func updateList( _ request: PutListRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/lists/manage-lists/api-reference/delete-lists-id + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/lists/manage-lists/ + /// api-reference/delete-lists-id public func deleteList( _ request: DeleteListRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/lists/pinned-lists/api-reference/get-users-id-pinned_lists + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/lists/pinned-lists/ + /// api-reference/get-users-id-pinned_lists public func pinnedList( _ request: GetUsersPinnedListsRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/lists/pinned-lists/api-reference/post-users-id-pinned-lists + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/lists/pinned-lists/ + /// api-reference/post-users-id-pinned-lists public func pinList( _ request: PostUsersPinnedListsRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/lists/pinned-lists/api-reference/delete-users-id-pinned-lists-list_id + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/lists/pinned-lists/ + /// api-reference/delete-users-id-pinned-lists-list_id public func unpinList( _ request: DeleteUsersPinnedListsRequestV2 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift index cfbef85a..f8904a32 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/lists/list-follows/api-reference/delete-users-id-followed-lists-list_id +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/lists/list-follows/ +/// api-reference/delete-users-id-followed-lists-list_id open class DeleteUsersFollowedListsRequestV2: TwitterAPIRequest { public let id: String public let listID: String diff --git a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersPinnedListsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersPinnedListsRequestV2.swift index 706a469c..c35ab979 100644 --- a/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersPinnedListsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersPinnedListsRequestV2.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/lists/pinned-lists/api-reference/delete-users-id-pinned-lists-list_id +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/lists/pinned-lists/ +/// api-reference/delete-users-id-pinned-lists-list_id open class DeleteUsersPinnedListsRequestV2: TwitterAPIRequest { public let id: String public let listID: String diff --git a/Sources/TwitterAPIKit/APIv2/Retweet/RetweetAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Retweet/RetweetAPIv2.swift index 45b268c8..47666a01 100644 --- a/Sources/TwitterAPIKit/APIv2/Retweet/RetweetAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Retweet/RetweetAPIv2.swift @@ -6,21 +6,27 @@ import Foundation open class RetweetAPIv2: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/tweets/retweets/api-reference/get-tweets-id-retweeted_by + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/tweets/retweets/ + /// api-reference/get-tweets-id-retweeted_by public func getRetweetedBy( _ request: GetTweetsRetweetedByRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/tweets/retweets/api-reference/post-users-id-retweets + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/tweets/retweets/ + /// api-reference/post-users-id-retweets public func postRetweet( _ request: PostUsersRetweetsRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/tweets/retweets/api-reference/delete-users-id-retweets-tweet_id + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/tweets/retweets/ + /// api-reference/delete-users-id-retweets-tweet_id public func deleteRetweet( _ request: DeleteUsersRetweetsRequestV2 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift index d92661f6..52e220fc 100644 --- a/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/tweets/filtered-stream/api-reference/get-tweets-search-stream-rules +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/tweets/filtered-stream +/// /api-reference/get-tweets-search-stream-rules open class GetTweetsSearchStreamRulesRequestV2: TwitterAPIRequest { public let ids: [String]? diff --git a/Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift index 20c3b1fb..fd07646b 100644 --- a/Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift @@ -5,7 +5,9 @@ import Foundation -/// https://developer.twitter.com/en/docs/twitter-api/tweets/filtered-stream/api-reference/post-tweets-search-stream-rules#Validate +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/tweets/filtered-stream/ +/// api-reference/post-tweets-search-stream-rules#Validate open class PostTweetsSearchStreamRulesRequestV2: TwitterAPIRequest { public struct Rule { public let value: String diff --git a/Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift index 7c522f1d..3a20e8c3 100644 --- a/Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift @@ -6,28 +6,36 @@ import Foundation open class StreamAPIv2: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/tweets/volume-streams/api-reference/get-tweets-sample-stream + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/tweets/volume-streams/ + /// api-reference/get-tweets-sample-stream public func sampleStream( _ request: GetTweetsSampleStreamRequestV2 ) -> TwitterAPISessionStreamTask { return session.send(streamRequest: request) } - /// https://developer.twitter.com/en/docs/twitter-api/tweets/filtered-stream/api-reference/get-tweets-search-stream-rules + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/tweets/filtered-stream/ + /// api-reference/get-tweets-search-stream-rules public func getSearchStreamRules( _ request: GetTweetsSearchStreamRulesRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/tweets/filtered-stream/api-reference/post-tweets-search-stream-rules#Validate + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/tweets/filtered-stream/ + /// api-reference/post-tweets-search-stream-rules#Validate public func postSearchStreamRules( _ request: PostTweetsSearchStreamRulesRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/tweets/filtered-stream/api-reference/get-tweets-search-stream + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/tweets/filtered-stream/ + /// api-reference/get-tweets-search-stream public func searchStream( _ request: GetTweetsSearchStreamRequestV2 ) -> TwitterAPISessionStreamTask { diff --git a/Sources/TwitterAPIKit/APIv2/Timeline/TimelineAPIv2.swift b/Sources/TwitterAPIKit/APIv2/Timeline/TimelineAPIv2.swift index 99632811..772dcebe 100644 --- a/Sources/TwitterAPIKit/APIv2/Timeline/TimelineAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/Timeline/TimelineAPIv2.swift @@ -6,14 +6,18 @@ import Foundation open class TimelineAPIv2: TwitterAPIBase { - /// https://developer.twitter.com/en/docs/twitter-api/tweets/timelines/api-reference/get-users-id-tweets + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/tweets/timelines/ + /// api-reference/get-users-id-tweets public func getUserTweets( _ request: GetUsersTweetsRequestV2 ) -> TwitterAPISessionJSONTask { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/tweets/timelines/api-reference/get-users-id-mentions + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/tweets/timelines/ + /// api-reference/get-users-id-mentions public func getUserMensions( _ request: GetUsersMentionsRequestV2 ) -> TwitterAPISessionJSONTask { @@ -21,7 +25,9 @@ open class TimelineAPIv2: TwitterAPIBase { } /// a.k.a Home Timeline - /// https://developer.twitter.com/en/docs/twitter-api/tweets/timelines/api-reference/get-users-id-reverse-chronological + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/tweets/timelines/ + /// api-reference/get-users-id-reverse-chronological public func getUserReverseChronological( _ request: GetUsersTimelinesReverseChronologicalRequestV2 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift b/Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift index 7b2cd303..f558de95 100644 --- a/Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift +++ b/Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift @@ -684,10 +684,10 @@ public extension TwitterAPIv1 { /// - request: The request parameters containing the media data. /// - maxBytes: The maximum size of each chunk in bytes (default: 5MB). /// - Returns: An array of tasks that will return the media ID for each chunk. - func uploadMediaAppendSplitChunks(_ request: UploadMediaAppendRequestV1, - maxBytes: Int = 5_242_880) -> [TwitterAPISessionSpecializedTask< - String /* mediaID */ - >] { + func uploadMediaAppendSplitChunks( + _ request: UploadMediaAppendRequestV1, + maxBytes: Int = 5_242_880 + ) -> [TwitterAPISessionSpecializedTask] { return media.uploadMediaAppendSplitChunks(request, maxBytes: maxBytes) } diff --git a/Sources/TwitterAPIKit/TwitterAPIKitError.swift b/Sources/TwitterAPIKit/TwitterAPIKitError.swift index c483dfd9..a1783c39 100644 --- a/Sources/TwitterAPIKit/TwitterAPIKitError.swift +++ b/Sources/TwitterAPIKit/TwitterAPIKitError.swift @@ -311,8 +311,10 @@ public extension TwitterAPIKitError.RefreshOAuth20TokenFailureReason { var localizedDescription: String { switch self { case let .invalidAuthenticationMethod(method): - return - "Token refresh is possible only when TwitterAuthenticationMethod is .oauth20. You are currently \(method)." + return """ + Token refresh is possible only when TwitterAuthenticationMethod is .oauth20. \ + You are currently \(method). + """ case .refreshTokenIsMissing: return "Refresh token is missing." } diff --git a/Sources/TwitterAPIKit/TwitterAPIRequest.swift b/Sources/TwitterAPIKit/TwitterAPIRequest.swift index 9014df4c..5b31846c 100644 --- a/Sources/TwitterAPIKit/TwitterAPIRequest.swift +++ b/Sources/TwitterAPIKit/TwitterAPIRequest.swift @@ -64,10 +64,22 @@ extension MultipartFormDataPart: Equatable { public static func == (lhs: MultipartFormDataPart, rhs: MultipartFormDataPart) -> Bool { switch (lhs, rhs) { case let (.value(name: leftName, value: leftValue), .value(name: rightName, value: rightValue)): - return leftName == rightName && type(of: leftValue) == type(of: rightValue) && String(describing: leftValue) == String(describing: rightValue) + return leftName == rightName + && type(of: leftValue) == type(of: rightValue) + && String(describing: leftValue) == String(describing: rightValue) case let ( - .data(name: leftName, value: leftValue, filename: leftFilename, mimeType: leftMimeType), - .data(name: rightName, value: rightValue, filename: rightFilename, mimeType: rightMimeType) + .data( + name: leftName, + value: leftValue, + filename: leftFilename, + mimeType: leftMimeType + ), + .data( + name: rightName, + value: rightValue, + filename: rightFilename, + mimeType: rightMimeType + ) ): return leftName == rightName && leftValue == rightValue @@ -172,8 +184,10 @@ extension TwitterAPIRequest { throw TwitterAPIKitError.requestFailed( reason: .invalidParameter( parameter: bodyParameters, - cause: - "Parameter must be specified in `MultipartFormDataPart` for `BodyContentType.multipartFormData`." + cause: """ + Parameter must be specified in `MultipartFormDataPart` \ + for `BodyContentType.multipartFormData`. + """ ) ) } diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift index 2c5ab724..2c5af941 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift @@ -434,6 +434,7 @@ internal class UploadMediaUtilTests: XCTestCase { ) var requestCount = 0 + // swiftlint:disable:next closure_body_length MockURLProtocol.requestHandler = { [weak self] request in guard let self else { throw URLError(.unknown) @@ -553,7 +554,7 @@ internal class UploadMediaUtilTests: XCTestCase { let data = Data([1, 2, 3]) client.v1.media.uploadMedia(.init(media: data, mediaType: "m", filename: "f", uploadChunkSize: 2)) { response in XCTAssertTrue(response.isError) - XCTAssertTrue(response.error!.isUploadMediaFailed) + XCTAssertTrue(response.error?.isUploadMediaFailed ?? false) exp.fulfill() } diff --git a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift index fb457ec6..c58e77c8 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift @@ -42,7 +42,7 @@ internal class TwitterOAuth2AccessTokenTests: XCTestCase { } """#.utf8 ) -kj guard let token = try TwitterOAuth2AccessToken(jsonData: data) else { + guard let token = try TwitterOAuth2AccessToken(jsonData: data) else { XCTFail("Failed to create test token") return } @@ -67,7 +67,7 @@ kj guard let token = try TwitterOAuth2AccessToken(jsonData: data) els try XCTContext.runActivity(named: "valid json but invalid object") { _ in XCTAssertThrowsError(try TwitterOAuth2AccessToken.fromResponse(data: Data("{}".utf8))) { error in - guard error is TwitterAPIKitError else {kj + guard error is TwitterAPIKitError else { XCTFail("Expected TwitterAPIKitError") return } diff --git a/Tests/TwitterAPIKitTests/OAuthHelperTests.swift b/Tests/TwitterAPIKitTests/OAuthHelperTests.swift index 16aefa5b..8447045f 100644 --- a/Tests/TwitterAPIKitTests/OAuthHelperTests.swift +++ b/Tests/TwitterAPIKitTests/OAuthHelperTests.swift @@ -31,11 +31,16 @@ internal class OAuthHelperTests: XCTestCase { oauthTimestamp: "1318622958", oauthNonce: "kYjzVBB8Y0ZFabxSWbWovY3uYSQ2pTgmZeNu2VS4cg" ) - - XCTAssertEqual( - header, - #"OAuth oauth_consumer_key="xvz1evFS4wEEPTGEFPHBog", oauth_nonce="kYjzVBB8Y0ZFabxSWbWovY3uYSQ2pTgmZeNu2VS4cg", oauth_signature="hCtSmYh%2BiHYCEqBWrE7C7hYmtUk%3D", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1318622958", oauth_token="370773112-GmHxMAgYyLbNEtIKZeRNFsMKPR9EyMZeS9weJAEb", oauth_version="1.0""# - ) + let expectedHeader = #""" + OAuth oauth_consumer_key="xvz1evFS4wEEPTGEFPHBog", \ + oauth_nonce="kYjzVBB8Y0ZFabxSWbWovY3uYSQ2pTgmZeNu2VS4cg", \ + oauth_signature="hCtSmYh%2BiHYCEqBWrE7C7hYmtUk%3D", \ + oauth_signature_method="HMAC-SHA1", \ + oauth_timestamp="1318622958", \ + oauth_token="370773112-GmHxMAgYyLbNEtIKZeRNFsMKPR9EyMZeS9weJAEb", \ + oauth_version="1.0" + """# + XCTAssertEqual(header, expectedHeader) } deinit { diff --git a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift index 62c04b8a..22df47a5 100644 --- a/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift +++ b/Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift @@ -13,7 +13,7 @@ internal struct DecodableObj: Decodable, Equatable { internal class TwitterAPISessionDelegatedJSONTaskTests: XCTestCase { // swiftlint:disable:next force_unwrapping - internal let testURL = URL(string: "http://example.com")! // This is fine as it's a constant test URL that we know is valid + internal let testURL = URL(string: "http://example.com")! public func testSuccess() throws { let mockTask = MockTwitterAPISessionTask(taskIdentifier: 1) diff --git a/lint.txt b/lint.txt index 849078a9..5e8a5750 100644 --- a/lint.txt +++ b/lint.txt @@ -2,258 +2,56 @@ > twitterapikit@1.0.0 lint > swiftlint --config=.swiftlint.yml . -::warning file=Tests/TwitterAPIKitTests/SessionTask/TwitterAPISessionDelegatedJSONTaskTests.swift,line=16,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) -::warning file=Tests/TwitterAPIKitTests/OAuthHelperTests.swift,line=20,col=81::Force unwrapping should be avoided (force_unwrapping) -::error file=Tests/TwitterAPIKitTests/OAuthHelperTests.swift,line=32,col=1::Line should be 200 characters or less; currently it has 328 characters (line_length) -::warning file=Tests/TwitterAPIKitTests/AuthAPI/.swift,line=12,col=65::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/AuthAPI/.swift,line=10,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift,line=62,col=16::Force unwrapping should be avoided (force_unwrapping) -::error file=Tests/TwitterAPIKitTests/AuthAPI/TwitterAuthAPITests.swift,line=63,col=1::Line should be 200 characters or less; currently it has 202 characters (line_length) -::warning file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=53,col=12::Attributes should be on their own lines in functions and types, but on the same line as variables and imports (attributes) -::warning file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=79,col=18::Attributes should be on their own lines in functions and types, but on the same line as variables and imports (attributes) -::warning file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=87,col=18::Attributes should be on their own lines in functions and types, but on the same line as variables and imports (attributes) -::warning file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=91,col=18::Attributes should be on their own lines in functions and types, but on the same line as variables and imports (attributes) -::warning file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=96,col=18::Attributes should be on their own lines in functions and types, but on the same line as variables and imports (attributes) -::warning file=Tests/TwitterAPIKitTests/Helper/CombinationsSequence.swift,line=71,col=10::Chained function calls should be either on the same line, or one per line (multiline_function_chains) -::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift,line=14,col=51::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift,line=19,col=63::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuthTokenV1Tests.swift,line=23,col=51::Force unwrapping should be avoided (force_unwrapping) -::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/TwitterDirectMessageEventTypeV2.swift,line=20,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=scripts/gen_init_params.swift,line=23,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=scripts/gen_init_params.swift,line=66,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=scripts/gen_init_params.swift,line=81,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=scripts/gen_init_params.swift,line=93,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=scripts/gen_init_params.swift,line=110,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=scripts/gen_init_params.swift,line=151,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=scripts/gen_init_params.swift,line=23,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) -::warning file=scripts/gen_init_params.swift,line=110,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) -::warning file=scripts/gen_init_params.swift,line=151,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) -::warning file=scripts/gen_init_params.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) -::error file=scripts/gen_init_params.swift,line=24,col=17::Force tries should be avoided (force_try) -::error file=scripts/gen_init_params.swift,line=113,col=17::Force tries should be avoided (force_try) -::warning file=scripts/gen_init_params.swift,line=37,col=65::Force unwrapping should be avoided (force_unwrapping) -::warning file=scripts/gen_init_params.swift,line=38,col=66::Force unwrapping should be avoided (force_unwrapping) -::warning file=scripts/gen_init_params.swift,line=96,col=67::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=10,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=10,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) -::error file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=10,col=6::Function name 'AssertEqualAnyDict(_:_:_:file:line:)' should start with a lowercase character (identifier_name) -::error file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=11,col=7::Variable name 'l' should be between 3 and 40 characters long (identifier_name) -::error file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=11,col=27::Variable name 'r' should be between 3 and 40 characters long (identifier_name) -::warning file=Tests/TwitterAPIKitTests/Helper/Assert.swift,line=10,col=6::Functions and methods parameters should be either on the same line, or one per line (multiline_parameters) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=687,col=39::Multiline parameters should have their surrounding brackets in a new line (multiline_parameters_brackets) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=688,col=64::Multiline parameters should have their surrounding brackets in a new line (multiline_parameters_brackets) -::error file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift,line=57,col=38::Force casts should be avoided (force_cast) -::error file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift,line=63,col=38::Force casts should be avoided (force_cast) +::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=25,col=17::Function body should span 100 lines or less excluding comments and whitespace: currently spans 123 lines (function_body_length) +::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=427,col=17::Function body should span 100 lines or less excluding comments and whitespace: currently spans 123 lines (function_body_length) ::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift,line=24,col=69::Force unwrapping should be avoided (force_unwrapping) -::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift,line=45,col=69::Force unwrapping should be avoided (force_unwrapping) -::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift,line=10,col=12::Type name 'GetDmConversationsWithParticipantIdDmEventsRequestV2' should be between 3 and 50 characters long (type_name) -::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift,line=17,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift,line=38,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift,line=60,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift,line=82,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift,line=97,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/PostTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/PutTweetsHiddenRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/DeleteTweetRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Tweet/Requests/GetTweetsQuoteTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Retweet/Requests/GetTweetsRetweetedByRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Retweet/Requests/PostUsersRetweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Retweet/RetweetAPIv2.swift,line=23,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift,line=16,col=1::Line should be 120 characters or less; currently it has 145 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift,line=23,col=1::Line should be 120 characters or less; currently it has 144 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift,line=30,col=1::Line should be 120 characters or less; currently it has 144 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/DirectMessageAPIv2.swift,line=37,col=1::Line should be 120 characters or less; currently it has 145 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/Like/Requests/DeleteUsersLikesRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Like/Requests/PostUsersLikesRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Like/Requests/GetTweetsLikingUsersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Like/Requests/GetUsersLikedTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSampleStreamRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Retweet/Requests/DeleteUsersRetweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift,line=8,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/Stream/Requests/GetTweetsSearchStreamRulesRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift,line=8,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/Stream/Requests/PostTweetsSearchStreamRulesRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpaceRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) +::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift,line=11,col=12::Type name 'GetDmConversationsWithParticipantIdDmEventsRequestV2' should be between 3 and 50 characters long (type_name) +::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift,line=9,col=1::SwiftLint rule 'type_name' did not trigger a violation in the disabled region; remove the disable command (superfluous_disable_command) ::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift,line=14,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=10,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=13,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=10,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=19,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=20,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=25,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=26,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=27,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=56,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=57,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=72,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=73,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=88,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=89,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=90,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=91,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=92,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=93,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=119,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=120,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=121,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=122,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesByCreatorIDsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesBuyersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersMutingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersBlockingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/PostUsersMutingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersMutingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/DeleteUsersBlockingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Friendships/FriendshipsAPIv2.swift,line=23,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Friendships/Requests/GetUsersFollowersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/BlockAndMute/Requests/GetUsersBlockingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Friendships/Requests/PostUsersFollowingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Compliance/Requests/PostComplianceJobsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=358,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=359,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=360,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=361,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=362,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=363,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=364,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=365,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=366,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift,line=15,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv2/Compliance/TwitterComplianceJobTypeV2.swift,line=12,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=92,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::error file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=57,col=16::Variable name 'dm' should be between 3 and 40 characters long (identifier_name) -::warning file=Sources/TwitterAPIKit/APIv2/Compliance/ComplianceAPIv2.swift,line=9,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift,line=15,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Friendships/Requests/DeleteUsersFollowingRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/Search/TwitterSearchTweetsSortOrderV2.swift,line=12,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift,line=14,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Bookmarks/BookmarksAPIv2.swift,line=23,col=1::Line should be 120 characters or less; currently it has 123 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/DeleteUsersBookmarksRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/PostUsersBookmarksRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Bookmarks/Requests/GetUsersBookmarksRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsAllRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/GetTweetsCountsRecentRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift,line=37,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift,line=65,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/List/ListAPIv2.swift,line=121,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/PutListRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) ::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift,line=13,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) ::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift,line=9,col=5::Enum cases should be sorted (sorted_enum_cases) ::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift,line=11,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersListMembershipsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersFollowedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/PostListsMembersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersPinnedListsRequestV2.swift,line=8,col=1::Line should be 120 characters or less; currently it has 123 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersPinnedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/DeleteListsMembersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift,line=8,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/DeleteUsersFollowedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=106,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=183,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=236,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=277,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=336,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=380,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=451,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=480,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=528,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=552,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=23,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=24,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=25,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=26,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=27,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=28,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=29,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=30,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=31,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=32,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=119,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=120,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=121,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=122,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=123,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=124,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=125,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=126,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=127,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=197,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=198,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=247,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=248,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=284,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=285,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=286,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=287,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=288,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=289,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=290,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=291,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=292,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=293,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=294,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=295,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=297,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=343,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=344,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=345,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=346,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=347,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=348,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=350,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=351,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=387,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=388,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=389,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=390,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=391,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=392,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=393,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=394,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=395,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=396,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=397,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=398,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=399,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=400,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=401,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=402,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=403,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=404,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=458,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=459,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=460,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=493,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=494,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=495,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=496,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=497,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetListsTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersOwnedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/PostListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/PostUsersPinnedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetListRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetListsMembersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersFollowedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetListsFollowersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Users/Requests/GetUserRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/List/Requests/GetUsersPinnedListsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByUsernameRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersByRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Users/Requests/GetUsersMeRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Timeline/TimelineAPIv2.swift,line=24,col=1::Line should be 120 characters or less; currently it has 123 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersMentionsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTimelinesReverseChronologicalRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Timeline/Requests/GetUsersTweetsRequestV2.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::error file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=51,col=16::Variable name 'v1' should be between 3 and 40 characters long (identifier_name) +::error file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=54,col=16::Variable name 'v2' should be between 3 and 40 characters long (identifier_name) +::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=181,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift,line=18,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift,line=9,col=5::Enum cases should be sorted (sorted_enum_cases) ::warning file=Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift,line=10,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/Extensions/Data.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/Extensions/Data.swift,line=28,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/Extensions/Data.swift,line=41,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=53,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=153,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=226,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=230,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=169,col=55::Force unwrapping should be avoided (force_unwrapping) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=47,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=50,col=5::Enum cases should be sorted (sorted_enum_cases) +::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=37,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=44,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=37,col=5::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) +::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=44,col=5::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) +::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) +::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=26,col=36::Arguments should be either on the same line, or one per line (multiline_arguments) ::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=8,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=16,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=19,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) @@ -264,69 +62,34 @@ ::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=8,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) ::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=16,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) ::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=16,col=1::Classes should have an explicit deinit method (required_deinit) -::error file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=51,col=16::Variable name 'v1' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=54,col=16::Variable name 'v2' should be between 3 and 40 characters long (identifier_name) -::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=181,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/Extensions/Date.swift,line=10,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/Extensions/Date.swift,line=14,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=12,col=10::Enum element name 'v1' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=15,col=10::Enum element name 'v2' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=29,col=16::Variable name 'v1' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=31,col=23::Variable name 'v2' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=58,col=25::Variable name 'v1' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=70,col=9::Variable name 'v1' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=71,col=25::Variable name 'v1' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=83,col=9::Variable name 'v2' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=84,col=25::Variable name 'v2' should be between 3 and 40 characters long (identifier_name) -::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=12,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=15,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIErrorResponse.swift,line=18,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=37,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=44,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=37,col=5::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) -::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=44,col=5::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) -::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) -::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=26,col=36::Arguments should be either on the same line, or one per line (multiline_arguments) -::warning file=Sources/TwitterAPIKit/Extensions/DispatchQueue.swift,line=9,col=12::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=53,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=141,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=212,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=216,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=157,col=55::Force unwrapping should be avoided (force_unwrapping) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=66,col=32::Variable name 'ln' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=66,col=43::Variable name 'lv' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=66,col=61::Variable name 'rn' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=66,col=72::Variable name 'rv' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=69,col=25::Variable name 'ln' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=69,col=36::Variable name 'lv' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=69,col=50::Variable name 'lf' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=69,col=64::Variable name 'lm' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=70,col=25::Variable name 'rn' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=70,col=36::Variable name 'rv' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=70,col=50::Variable name 'rf' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=70,col=64::Variable name 'rm' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=153,col=31::Variable name 'a' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=153,col=34::Variable name 'b' should be between 3 and 40 characters long (identifier_name) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=176,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=47,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=50,col=5::Enum cases should be sorted (sorted_enum_cases) ::warning file=Sources/TwitterAPIKit/Extensions/Result.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/Extensions/Result.swift,line=14,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/Extensions/DispatchQueue.swift,line=9,col=12::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/Extensions/String.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/Extensions/String.swift,line=12,col=97::Force unwrapping should be avoided (force_unwrapping) +::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=17,col=10::Avoid naming `case` `none` as the compiler can think you mean `Optional.none`; consider using an Optional value instead (discouraged_none_name) +::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=20,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/Extensions/Dictionary.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) ::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=22,col=57::Variable name 'c' should be between 3 and 40 characters long (identifier_name) ::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=46,col=57::Variable name 'c' should be between 3 and 40 characters long (identifier_name) ::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=70,col=53::Variable name 'c' should be between 3 and 40 characters long (identifier_name) ::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=93,col=57::Variable name 'c' should be between 3 and 40 characters long (identifier_name) ::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=140,col=64::Variable name 'c' should be between 3 and 40 characters long (identifier_name) -::warning file=Sources/TwitterAPIKit/Extensions/Dictionary.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/Extensions/String.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/Extensions/String.swift,line=12,col=97::Force unwrapping should be avoided (force_unwrapping) -::warning file=Sources/TwitterAPIKit/Extensions/Data.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/Extensions/Data.swift,line=28,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/Extensions/Data.swift,line=41,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=315,col=1::Line should be 120 characters or less; currently it has 123 characters (line_length) +::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=11,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=11,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) +::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=74,col=44::Force unwrapping should be avoided (force_unwrapping) +::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=75,col=53::Force unwrapping should be avoided (force_unwrapping) +::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=11,col=1::Function should have 5 parameters or less: it currently has 7 (function_parameter_count) +::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=40,col=22::Arguments should be either on the same line, or one per line (multiline_arguments) +::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=40,col=32::Arguments should be either on the same line, or one per line (multiline_arguments) +::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=40,col=64::Arguments should be either on the same line, or one per line (multiline_arguments) +::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=41,col=43::Multiline arguments should have their surrounding brackets in a new line (multiline_arguments_brackets) +::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=45,col=6::Chained function calls should be either on the same line, or one per line (multiline_function_chains) ::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=311,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=321,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=323,col=5::public declarations should be documented (missing_docs) ::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=10,col=5::Enum cases should be sorted (sorted_enum_cases) ::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=15,col=9::Enum cases should be sorted (sorted_enum_cases) ::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=21,col=9::Enum cases should be sorted (sorted_enum_cases) @@ -337,81 +100,40 @@ ::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=52,col=5::Enum cases should be sorted (sorted_enum_cases) ::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=60,col=5::Enum cases should be sorted (sorted_enum_cases) ::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=71,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=17,col=10::Avoid naming `case` `none` as the compiler can think you mean `Optional.none`; consider using an Optional value instead (discouraged_none_name) -::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=20,col=5::public declarations should be documented (missing_docs) ::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift,line=8,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift,line=81,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift,line=8,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) ::error file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift,line=8,col=10::Type name 'TwitterAPISessionSpecializedTask_' should only contain alphanumeric and other allowed characters (type_name) -::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=11,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=11,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) -::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=74,col=44::Force unwrapping should be avoided (force_unwrapping) -::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=75,col=53::Force unwrapping should be avoided (force_unwrapping) -::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=11,col=1::Function should have 5 parameters or less: it currently has 7 (function_parameter_count) -::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=40,col=22::Arguments should be either on the same line, or one per line (multiline_arguments) -::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=40,col=32::Arguments should be either on the same line, or one per line (multiline_arguments) -::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=40,col=64::Arguments should be either on the same line, or one per line (multiline_arguments) -::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=41,col=43::Multiline arguments should have their surrounding brackets in a new line (multiline_arguments_brackets) -::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=45,col=6::Chained function calls should be either on the same line, or one per line (multiline_function_chains) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDataTask.swift,line=24,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=8,col=8::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=9,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=10,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=11,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=12,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=14,col=5::public declarations should be documented (missing_docs) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift,line=33,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift,line=84,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=21,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=46,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=80,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=8,col=55::Force unwrapping should be avoided (force_unwrapping) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=8,col=30::Prefer non-optional `Data(_:)` initializer when converting `String` to `Data` (non_optional_string_data_conversion) +::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=9,col=8::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=33,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=44,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=12,col=5::Enum cases should be sorted (sorted_enum_cases) ::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=16,col=5::Enum cases should be sorted (sorted_enum_cases) ::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=23,col=5::Enum cases should be sorted (sorted_enum_cases) ::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=27,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift,line=33,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift,line=84,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/DeleteDirectMessageRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesMarkReadRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/GetDirectMessageListRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift,line=16,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv2/Stream/StreamAPIv2.swift,line=23,col=1::Line should be 120 characters or less; currently it has 135 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessagesIndicateTypingRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostStatusesDestroyRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesShowRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) ::warning file=Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) -::warning file=Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 124 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift,line=37,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/DirectMessageAPIv1.swift,line=44,col=1::Line should be 120 characters or less; currently it has 146 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Tweet/Requests/GetStatusesLookupRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift,line=37,col=5::A doc comment should be attached to a declaration (orphaned_doc_comment) +::warning file=Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift,line=45,col=5::A doc comment should be attached to a declaration (orphaned_doc_comment) ::warning file=Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift,line=8,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift,line=38,col=8::TODOs should be resolved (↑) (todo) -::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostRetweetRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsOfMeRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 124 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Retweet/RetweetAPIv1.swift,line=37,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetsRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=11,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=12,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift,line=48,col=8::TODOs should be resolved (↑) (todo) ::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=13,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=14,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsDestroyRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/PostUnRetweetRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift,line=15,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 126 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesAddRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsListRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsEntriesRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=15,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=16,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift,line=17,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=10,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=17,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) @@ -428,201 +150,13 @@ ::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=40,col=5::Enum cases should be sorted (sorted_enum_cases) ::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=42,col=5::Enum cases should be sorted (sorted_enum_cases) ::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=43,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/GetCollectionsShowRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesRemoveRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=21,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=46,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=80,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=8,col=55::Force unwrapping should be avoided (force_unwrapping) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=8,col=30::Prefer non-optional `Data(_:)` initializer when converting `String` to `Data` (non_optional_string_data_conversion) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=9,col=8::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift,line=16,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift,line=14,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsClosestRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesMoveRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsPlaceRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Trend/Requests/GetTrendsAvailableRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) +::warning file=Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift,line=14,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) +::error file=Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift,line=13,col=14::Enum element name 'ip' should be between 3 and 40 characters long (identifier_name) +::warning file=Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift,line=23,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) ::warning file=Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift,line=19,col=5::public declarations should be documented (missing_docs) ::warning file=Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift,line=12,col=5::Enum cases should be sorted (sorted_enum_cases) ::warning file=Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift,line=15,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDataTask.swift,line=24,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Trend/TrendAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift,line=23,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoReverseGeocodeRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoPlaceIDRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Geo/GeoAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 123 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersDestroyRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 128 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksIDsRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksCreateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostMutesUsersCreateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersIDsRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift,line=14,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::error file=Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift,line=13,col=14::Enum element name 'ip' should be between 3 and 40 characters long (identifier_name) -::warning file=Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 134 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetMutesUsersListRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/GetBlocksListRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostUnFavoriteRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift,line=1,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostUsersReportSpamRequestV1.swift,line=2,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/Requests/PostBlocksDestroyRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Favorite/Requests/GetFavoritesRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsIDsRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsUpdateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 135 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 134 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=37,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=44,col=1::Line should be 120 characters or less; currently it has 140 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=51,col=1::Line should be 120 characters or less; currently it has 149 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=58,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=65,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=72,col=1::Line should be 120 characters or less; currently it has 141 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=79,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/FriendshipsAPIv1.swift,line=86,col=1::Line should be 120 characters or less; currently it has 141 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 145 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsNoRetweetsIDsRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsUpdateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsDestroyRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Favorite/Requests/PostFavoriteRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsOutgoingRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsIncomingRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=37,col=1::Line should be 120 characters or less; currently it has 126 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=44,col=1::Line should be 120 characters or less; currently it has 130 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=51,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=58,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=65,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/CollectionAPIv1.swift,line=72,col=1::Line should be 120 characters or less; currently it has 125 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=37,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=44,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=51,col=1::Line should be 120 characters or less; currently it has 141 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=58,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/BlockAndMute/BlockAndMuteAPIv1.swift,line=65,col=1::Line should be 120 characters or less; currently it has 140 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendsListRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 130 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 134 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsShowRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/PostFriendshipsCreateRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift,line=17,col=1::Line should be 120 characters or less; currently it has 122 characters (line_length) ::warning file=Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesUserTimelineRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersIDsRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFriendshipsLookupRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Search/Requests/GetSearchTweetsRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 144 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesDestroyRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Search/Requests/GetSavedSearchesListRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 141 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 144 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Search/SearchAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 148 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 128 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesHomeTimelineRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 128 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 135 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=37,col=1::Line should be 120 characters or less; currently it has 134 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=44,col=1::Line should be 120 characters or less; currently it has 128 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=51,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=58,col=1::Line should be 120 characters or less; currently it has 135 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=65,col=1::Line should be 120 characters or less; currently it has 140 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=72,col=1::Line should be 120 characters or less; currently it has 137 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=79,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=86,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=93,col=1::Line should be 120 characters or less; currently it has 139 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=100,col=1::Line should be 120 characters or less; currently it has 143 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=107,col=1::Line should be 120 characters or less; currently it has 140 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=114,col=1::Line should be 120 characters or less; currently it has 144 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=121,col=1::Line should be 120 characters or less; currently it has 143 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=128,col=1::Line should be 120 characters or less; currently it has 144 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/ListAPIv1.swift,line=135,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Timelines/Requests/GetStatusesMentionsTimelineRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Search/Requests/PostSavedSearchesCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 140 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsOwnershipsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 130 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 139 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyAllRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 140 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Friendships/Requests/GetFollowersListRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsShowRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 124 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembersShowRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsListRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 124 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersShowRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsStatusesRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 128 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 136 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsMembershipsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 135 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscriptionsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsMembersCreateAllRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 139 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsUpdateRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 127 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/GetListsSubscribersRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 131 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersShowRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 128 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersSearchRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 130 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersProfileBannerRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/List/Requests/PostListsSubscribersDestroyRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 140 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Users/Requests/GetUsersLookupRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 130 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Application/ApplicationAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 146 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 134 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 134 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Users/UserAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountSettingsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 135 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountSettingsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 134 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 142 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Application/Requests/GetApplicationRateLimitStatusRequestV1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 141 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountRemoveProfileBannerRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 148 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/GetAccountVerifyCredentialsRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 144 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileBannerRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 148 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Account/Requests/PostAccountUpdateProfileImageRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 147 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 138 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift,line=16,col=1::Line should be 120 characters or less; currently it has 148 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift,line=23,col=1::Line should be 120 characters or less; currently it has 152 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift,line=30,col=1::Line should be 120 characters or less; currently it has 139 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift,line=37,col=1::Line should be 120 characters or less; currently it has 145 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift,line=44,col=1::Line should be 120 characters or less; currently it has 152 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Account/AccountAPIv1.swift,line=51,col=1::Line should be 120 characters or less; currently it has 151 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Help/HelpAPIv1.swift,line=9,col=1::Line should be 120 characters or less; currently it has 133 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Help/Requests/GetHelpLanguagesRequestV1.swift,line=8,col=1::Line should be 120 characters or less; currently it has 129 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift,line=196,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) -::warning file=Sources/TwitterAPIKit/APIv1/Media/MediaAPIv1.swift,line=203,col=1::Line should be 120 characters or less; currently it has 121 characters (line_length) -::warning file=Sources/TwitterAPIKit/AuthAPI/TwitterOAuthAccessTokenV1.swift,line=29,col=1::Line should be 120 characters or less; currently it has 132 characters (line_length) -::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=54,col=26::The disabled 'force_unwrapping' rule was already disabled (blanket_disable_command) -::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=54,col=26::Use 'next', 'this' or 'previous' instead to disable the 'force_unwrapping' rule once, or re-enable it as soon as possible` (blanket_disable_command) ::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) -::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=437,col=42::Closure body should span 100 lines or less excluding comments and whitespace: currently spans 106 lines (closure_body_length) -::warning file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=556,col=41::Force unwrapping should be avoided (force_unwrapping) -::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=25,col=17::Function body should span 100 lines or less excluding comments and whitespace: currently spans 123 lines (function_body_length) -::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=427,col=17::Function body should span 100 lines or less excluding comments and whitespace: currently spans 123 lines (function_body_length) From c1d5f900a5db3f597653ca159ad35dc2f832225a Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Sun, 18 May 2025 05:54:44 -0600 Subject: [PATCH 25/26] fix: fix more issues --- .../PostCollectionsCreateRequestV1.swift | 2 +- ...ostCollectionsEntriesCurateRequestV1.swift | 2 +- .../Requests/PostDirectMessageRequestV1.swift | 4 +- .../Geo/Requests/GetGeoSearchRequestV1.swift | 2 +- .../Requests/GetRetweetersRequestV1.swift | 30 ++-- .../APIv1/Timelines/TimelineAPIv1.swift | 11 +- .../APIv1/TwitterListIdentifierV1.swift | 2 +- .../APIv1/TwitterLocations.swift | 10 +- .../APIv1/TwitterUserIdentifierV1.swift | 4 +- .../Requests/GetComplianceJobsRequestV2.swift | 2 +- .../TwitterComplianceJobTypeV2.swift | 2 +- .../GetTweetsSearchRecentRequestV2.swift | 2 +- .../TwitterSearchTweetsSortOrderV2.swift | 2 +- .../Requests/GetSpacesSearchRequestV2.swift | 2 +- .../Timeline/TwitterTimelineExcludeV2.swift | 2 +- .../Requests/TweetCountGranularity.swift | 2 +- .../TwitterAPIKit/APIv2/TwitterAPIv2.swift | 2 +- Sources/TwitterAPIKit/Extensions/Data.swift | 6 +- Sources/TwitterAPIKit/Extensions/Date.swift | 4 +- .../TwitterAPIKit/Extensions/Dictionary.swift | 2 +- .../Extensions/DispatchQueue.swift | 2 +- Sources/TwitterAPIKit/Extensions/HMAC.swift | 4 +- Sources/TwitterAPIKit/Extensions/Result.swift | 4 +- Sources/TwitterAPIKit/Extensions/String.swift | 2 +- Sources/TwitterAPIKit/OAuthHelper.swift | 2 +- .../TwitterAPISessionDataTask.swift | 2 +- .../TwitterAPISessionDelegatedJSONTask.swift | 5 +- ...TwitterAPISessionDelegatedStreamTask.swift | 6 +- .../TwitterAPISessionSpecializedTask.swift | 4 +- Sources/TwitterAPIKit/TwitterAPIRequest.swift | 8 +- .../TwitterAPISessionDelegate.swift | 16 +- lint.txt | 162 ------------------ 32 files changed, 76 insertions(+), 236 deletions(-) diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift index 904a483b..78a5022f 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift @@ -14,7 +14,7 @@ open class PostCollectionsCreateRequestV1: TwitterAPIRequest { case tweetChron = "tweet_chron" case tweetReverseChron = "tweet_reverse_chron" - func bind(param: inout [String: Any]) { + public func bind(param: inout [String: Any]) { param["timeline_order"] = rawValue } } diff --git a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift index a2017495..20235aba 100644 --- a/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift @@ -13,7 +13,7 @@ open class PostCollectionsEntriesCurateRequestV1: TwitterAPIRequest { case add(tweetID: String) case remove(tweetID: String) - var keyValue: [String: String] { + public var keyValue: [String: String] { switch self { case let .add(tweetID): return ["op": "add", "tweet_id": tweetID] diff --git a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift index 5be25b09..dd45e4dc 100644 --- a/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift @@ -30,7 +30,7 @@ open class PostDirectMessageRequestV1: TwitterAPIRequest { */ case location(Location) - var parameter: [String: Any] { + public var parameter: [String: Any] { switch self { case let .media(mediaID): return [ @@ -81,7 +81,7 @@ open class PostDirectMessageRequestV1: TwitterAPIRequest { self.metadata = metadata } - var parameter: [String: String] { + public var parameter: [String: String] { return [ "label": label, "description": description, diff --git a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift index d6578368..a5a3e2a5 100644 --- a/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift @@ -11,7 +11,7 @@ open class GetGeoSearchRequestV1: TwitterAPIRequest { case coordinate(TwitterCoordinateV1) case query(String) case ip(String) - func bind(param: inout [String: Any]) { + public func bind(param: inout [String: Any]) { switch self { case let .coordinate(twitterCoordinate): twitterCoordinate.bind(param: ¶m) diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift index 9edb3156..e2ad8f0e 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift @@ -9,11 +9,9 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/ /// post-and-engage/api-reference/get-statuses-retweeters-ids open class GetRetweetersRequestV1: TwitterAPIRequest { - // Status ID - let id: String - let count: Int? - let cursor: String? - let stringifyIDs: Bool? + public let tweetID: String + public let cursor: String? + public let stringifyIDs: Bool? public var method: HTTPMethod { return .get @@ -24,28 +22,24 @@ open class GetRetweetersRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var params = [String: Any]() - - params["id"] = id - count.map { params["count"] = $0 } - cursor.map { params["cursor"] = $0 } - stringifyIDs.map { params["stringify_ids"] = $0 } - - return params + var p = [String: Any]() + p["id"] = tweetID + cursor.map { p["cursor"] = $0 } + stringifyIDs.map { p["stringify_ids"] = $0 } + return p } public init( - id: String, - count: Int? = .none, + tweetID: String, cursor: String? = .none, stringifyIDs: Bool? = .none ) { - self.id = id - self.count = count + self.tweetID = tweetID self.cursor = cursor self.stringifyIDs = stringifyIDs } + deinit { - // de-init logic here + // De-init Logic Here } } diff --git a/Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift index cdd92336..e001ad33 100644 --- a/Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift @@ -6,8 +6,14 @@ import Foundation /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/timelines/overview +/// For more details, see: +/// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/timelines/ +/// overview open class TimelineAPIv1: TwitterAPIBase { /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/timelines/api-reference/get-statuses-home_timeline + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/timelines/ + /// api-reference/get-statuses-home_timeline public func getHomeTimeline( _ request: GetStatusesHomeTimelineRequestV1 ) -> TwitterAPISessionJSONTask { @@ -16,6 +22,7 @@ open class TimelineAPIv1: TwitterAPIBase { /// For more details, see: /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/timelines/ + /// overview /// api-reference/get-statuses-mentions_timeline public func getMentionsTimeline( _ request: GetStatusesMentionsTimelineRequestV1 @@ -23,7 +30,9 @@ open class TimelineAPIv1: TwitterAPIBase { return session.send(request) } - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/timelines/api-reference/get-statuses-user_timeline + /// For more details, see: + /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/timelines/ + /// api-reference/get-statuses-user_timeline public func getUserTimeline( _ request: GetStatusesUserTimelineRequestV1 ) -> TwitterAPISessionJSONTask { diff --git a/Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift b/Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift index b4baae84..d7600c94 100644 --- a/Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift +++ b/Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift @@ -20,7 +20,7 @@ public enum TwitterListIdentifierV1 { } extension TwitterListIdentifierV1 { - func bind(param: inout [String: Any]) { + public func bind(param: inout [String: Any]) { switch self { case let .listID(string): param["list_id"] = string diff --git a/Sources/TwitterAPIKit/APIv1/TwitterLocations.swift b/Sources/TwitterAPIKit/APIv1/TwitterLocations.swift index 7081df54..b6beb747 100644 --- a/Sources/TwitterAPIKit/APIv1/TwitterLocations.swift +++ b/Sources/TwitterAPIKit/APIv1/TwitterLocations.swift @@ -6,15 +6,15 @@ import Foundation public struct TwitterCoordinateV1 { - var lat: Double - var long: Double + public var lat: Double + public var long: Double public init(lat: Double, long: Double) { self.lat = lat self.long = long } - func bind(param: inout [String: Any]) { + public func bind(param: inout [String: Any]) { param["lat"] = lat param["long"] = long } @@ -26,7 +26,7 @@ public enum TwitterAccuracyV1 { /// feet case ft(Int) - func bind(param: inout [String: Any]) { + public func bind(param: inout [String: Any]) { switch self { case let .m(int): param["accuracy"] = "\(int)m" @@ -42,7 +42,7 @@ public enum TwitterGranularityV1: String { case admin case country - func bind(param: inout [String: Any]) { + public func bind(param: inout [String: Any]) { param["granularity"] = rawValue } } diff --git a/Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift b/Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift index 786c6523..ec17d69c 100644 --- a/Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift +++ b/Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift @@ -30,7 +30,7 @@ public enum TwitterUsersIdentifierV1 { // MARK: - extensions extension TwitterUserIdentifierV1 { - func bind(param: inout [String: Any], userIDKey: String = "user_id", screenNameKey: String = "screen_name") { + public func bind(param: inout [String: Any], userIDKey: String = "user_id", screenNameKey: String = "screen_name") { switch self { case let .userID(string): param[userIDKey] = string @@ -41,7 +41,7 @@ extension TwitterUserIdentifierV1 { } extension TwitterUsersIdentifierV1 { - func bind(param: inout [String: Any]) { + public func bind(param: inout [String: Any]) { switch self { case let .userIDs(array): param["user_id"] = array.joined(separator: ",") diff --git a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift index 7b1eb5f4..a2c11690 100644 --- a/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift @@ -12,7 +12,7 @@ open class GetComplianceJobsRequestV2: TwitterAPIRequest { case inProgress = "in_progress" case failed case complete - func bind(param: inout [String: Any]) { + public func bind(param: inout [String: Any]) { param["status"] = rawValue } } diff --git a/Sources/TwitterAPIKit/APIv2/Compliance/TwitterComplianceJobTypeV2.swift b/Sources/TwitterAPIKit/APIv2/Compliance/TwitterComplianceJobTypeV2.swift index ecb00131..8e78d2cf 100644 --- a/Sources/TwitterAPIKit/APIv2/Compliance/TwitterComplianceJobTypeV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Compliance/TwitterComplianceJobTypeV2.swift @@ -9,7 +9,7 @@ public enum TwitterComplianceJobTypeV2: String { case tweets case users - func bind(param: inout [String: Any]) { + public func bind(param: inout [String: Any]) { param["type"] = rawValue } } diff --git a/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift index e9321830..5cfc7ab9 100644 --- a/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift @@ -11,7 +11,7 @@ open class GetTweetsSearchRecentRequestV2: TwitterAPIRequest { case recency case relevancy - func bind(param: inout [String: Any]) { + public func bind(param: inout [String: Any]) { param["sort_order"] = rawValue } } diff --git a/Sources/TwitterAPIKit/APIv2/Search/TwitterSearchTweetsSortOrderV2.swift b/Sources/TwitterAPIKit/APIv2/Search/TwitterSearchTweetsSortOrderV2.swift index 88e5a78f..b9ecd377 100644 --- a/Sources/TwitterAPIKit/APIv2/Search/TwitterSearchTweetsSortOrderV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Search/TwitterSearchTweetsSortOrderV2.swift @@ -9,7 +9,7 @@ public enum TwitterSearchTweetsSortOrderV2: String { case recency case relevancy - func bind(param: inout [String: Any]) { + public func bind(param: inout [String: Any]) { param["sort_order"] = rawValue } } diff --git a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift index 31b6c1aa..406431ed 100644 --- a/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift @@ -11,7 +11,7 @@ open class GetSpacesSearchRequestV2: TwitterAPIRequest { case all case live case scheduled - func bind(param: inout [String: Any]) { + public func bind(param: inout [String: Any]) { param["state"] = rawValue } } diff --git a/Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift b/Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift index e778fdb6..25fa6cfc 100644 --- a/Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift @@ -15,7 +15,7 @@ public enum TwitterTimelineExcludeV2: String, TwitterAPIv2RequestParameter { } extension Set where Element == TwitterTimelineExcludeV2 { - func bind(param: inout [String: Any]) { + public func bind(param: inout [String: Any]) { param["exclude"] = commaSeparatedString } } diff --git a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift index c173b667..2271ea57 100644 --- a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift +++ b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift @@ -10,7 +10,7 @@ public enum TweetCountGranularityV2: String { case hour case day - func bind(param: inout [String: Any]) { + public func bind(param: inout [String: Any]) { param["granularity"] = rawValue } } diff --git a/Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift b/Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift index 35bc043d..e9f83d95 100644 --- a/Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift +++ b/Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift @@ -89,7 +89,7 @@ public protocol TwitterAPIv2RequestParameter { extension Collection where Element: TwitterAPIv2RequestParameter { /// Joins multiple parameter values into a comma-separated string. - var commaSeparatedString: String { + public var commaSeparatedString: String { return map(\.stringValue).sorted().joined(separator: ",") } } diff --git a/Sources/TwitterAPIKit/Extensions/Data.swift b/Sources/TwitterAPIKit/Extensions/Data.swift index f4387b2f..59c64912 100644 --- a/Sources/TwitterAPIKit/Extensions/Data.swift +++ b/Sources/TwitterAPIKit/Extensions/Data.swift @@ -6,7 +6,7 @@ import Foundation extension Data { - func split(separator: Data, omittingEmptySubsequences: Bool = true) -> [Data] { + public func split(separator: Data, omittingEmptySubsequences: Bool = true) -> [Data] { var current = startIndex var chunks = [Data]() @@ -25,7 +25,7 @@ extension Data { return chunks } - func serialize() -> Result { + public func serialize() -> Result { do { let jsonObj = try JSONSerialization.jsonObject(with: self, options: []) return .success(jsonObj) @@ -38,7 +38,7 @@ extension Data { } } - func decode( + public func decode( _ type: T.Type, decoder: JSONDecoder ) -> Result { diff --git a/Sources/TwitterAPIKit/Extensions/Date.swift b/Sources/TwitterAPIKit/Extensions/Date.swift index 72f1641a..962f1250 100644 --- a/Sources/TwitterAPIKit/Extensions/Date.swift +++ b/Sources/TwitterAPIKit/Extensions/Date.swift @@ -7,11 +7,11 @@ import Foundation private let formatter = ISO8601DateFormatter() extension Date { - func toISO8601String() -> String { + public func toISO8601String() -> String { return formatter.string(from: self) } - func bind(param: inout [String: Any], for key: String) { + public func bind(param: inout [String: Any], for key: String) { param[key] = toISO8601String() } } diff --git a/Sources/TwitterAPIKit/Extensions/Dictionary.swift b/Sources/TwitterAPIKit/Extensions/Dictionary.swift index f50eb42a..5a2ddf75 100644 --- a/Sources/TwitterAPIKit/Extensions/Dictionary.swift +++ b/Sources/TwitterAPIKit/Extensions/Dictionary.swift @@ -6,7 +6,7 @@ import Foundation extension Dictionary { - var urlEncodedQueryString: String { + public var urlEncodedQueryString: String { var parts = [String]() for (key, value) in self { diff --git a/Sources/TwitterAPIKit/Extensions/DispatchQueue.swift b/Sources/TwitterAPIKit/Extensions/DispatchQueue.swift index d7f8b5ac..0a6d82b5 100644 --- a/Sources/TwitterAPIKit/Extensions/DispatchQueue.swift +++ b/Sources/TwitterAPIKit/Extensions/DispatchQueue.swift @@ -6,7 +6,7 @@ import Foundation extension DispatchQueue { - static var processQueue: DispatchQueue { + public static var processQueue: DispatchQueue { return .global(qos: .default) } } diff --git a/Sources/TwitterAPIKit/Extensions/HMAC.swift b/Sources/TwitterAPIKit/Extensions/HMAC.swift index 07e37a9a..4a74c1e8 100644 --- a/Sources/TwitterAPIKit/Extensions/HMAC.swift +++ b/Sources/TwitterAPIKit/Extensions/HMAC.swift @@ -34,14 +34,14 @@ import Foundation } } - func createHMACSHA1(key: Data, message: Data) -> Data { + public func createHMACSHA1(key: Data, message: Data) -> Data { return message.hmac(key: key) } #elseif canImport(Crypto) // for Linux import Crypto - func createHMACSHA1(key: Data, message: Data) -> Data { + public func createHMACSHA1(key: Data, message: Data) -> Data { return Data(HMAC.authenticationCode(for: message, using: SymmetricKey(data: key))) } #else diff --git a/Sources/TwitterAPIKit/Extensions/Result.swift b/Sources/TwitterAPIKit/Extensions/Result.swift index 74879a87..09246998 100644 --- a/Sources/TwitterAPIKit/Extensions/Result.swift +++ b/Sources/TwitterAPIKit/Extensions/Result.swift @@ -6,12 +6,12 @@ import Foundation extension Result where Failure == TwitterAPIKitError { - var success: Success? { + public var success: Success? { guard case let .success(value) = self else { return nil } return value } - var error: Failure? { + public var error: Failure? { guard case let .failure(error) = self else { return nil } return error } diff --git a/Sources/TwitterAPIKit/Extensions/String.swift b/Sources/TwitterAPIKit/Extensions/String.swift index 9b516b14..87a4f7f8 100644 --- a/Sources/TwitterAPIKit/Extensions/String.swift +++ b/Sources/TwitterAPIKit/Extensions/String.swift @@ -6,7 +6,7 @@ import Foundation extension String { - var urlEncodedString: String { + public var urlEncodedString: String { let allowedCharacterSet = NSMutableCharacterSet.alphanumeric() allowedCharacterSet.addCharacters(in: "-._~") return addingPercentEncoding(withAllowedCharacters: allowedCharacterSet as CharacterSet)! diff --git a/Sources/TwitterAPIKit/OAuthHelper.swift b/Sources/TwitterAPIKit/OAuthHelper.swift index 624c8eae..d3ee0db3 100644 --- a/Sources/TwitterAPIKit/OAuthHelper.swift +++ b/Sources/TwitterAPIKit/OAuthHelper.swift @@ -8,7 +8,7 @@ import Foundation private let oauthVersion = "1.0" private let oauthSignatureMethod = "HMAC-SHA1" -func authorizationHeader( +public func authorizationHeader( for method: HTTPMethod, url: URL, parameters: [String: Any], diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDataTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDataTask.swift index c85a6c3d..2b72cd7e 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDataTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDataTask.swift @@ -21,7 +21,7 @@ public protocol TwitterAPISessionDataTask: TwitterAPISessionTask { // MARK: - internal extension TwitterAPISessionDataTask { - func specialized( + public func specialized( _ transform: @escaping (Data) throws -> NewSuccess ) -> TwitterAPISessionSpecializedTask diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedJSONTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedJSONTask.swift index 0a741e39..8ed00f38 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedJSONTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedJSONTask.swift @@ -57,11 +57,11 @@ public class TwitterAPISessionDelegatedJSONTask: TwitterAPISessionJSONTask, Twit } } - internal func append(chunk: Data) { + public func append(chunk: Data) { dataChunk.append(chunk) } - internal func complete(error: Error?) { + public func complete(error: Error?) { self.error = error completed = true @@ -139,6 +139,7 @@ public class TwitterAPISessionDelegatedJSONTask: TwitterAPISessionJSONTask, Twit return registerResponseBlock(queue: queue, flatMap: { .success($0) }, response: block) } + @discardableResult public func responseData(_ block: @escaping (TwitterAPIResponse) -> Void) -> Self { return responseData(queue: .main, block) } diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift index 96a84e1c..9c00f4bf 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift @@ -18,7 +18,7 @@ public class TwitterAPISessionDelegatedStreamTask: TwitterAPISessionStreamTask, private var dataBlocks = [(queue: DispatchQueue, block: (TwitterAPIResponse) -> Void)]() private lazy var taskQueue = DispatchQueue(label: "TwitterAPISessionDelegatedStreamTask_\(taskIdentifier)") - init(task: TwitterAPISessionTask) { + public init(task: TwitterAPISessionTask) { self.task = task } @@ -43,7 +43,7 @@ public class TwitterAPISessionDelegatedStreamTask: TwitterAPISessionStreamTask, task.cancel() } - func append(chunk: Data) { + public func append(chunk: Data) { taskQueue.async { [weak self] in guard let self else { return } @@ -77,7 +77,7 @@ public class TwitterAPISessionDelegatedStreamTask: TwitterAPISessionStreamTask, } } - func complete(error: Error?) { + public func complete(error: Error?) { if let error { taskQueue.async { [weak self] in guard let self else { return } diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift index b7ea8fc4..9ac9edf8 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift @@ -5,7 +5,7 @@ import Foundation -protocol TwitterAPISessionSpecializedTask_: TwitterAPISessionDataTask { +public protocol TwitterAPISessionSpecializedTask_: TwitterAPISessionDataTask { associatedtype Success @discardableResult func responseObject( @@ -77,7 +77,7 @@ public struct TwitterAPISessionSpecializedTask: TwitterAPISessionSpecia } } -extension Array where Element: TwitterAPISessionSpecializedTask_ { +public extension Array where Element: TwitterAPISessionSpecializedTask_ { func responseObject( queue: DispatchQueue = .main, _ block: @escaping ([TwitterAPIResponse]) -> Void ) { diff --git a/Sources/TwitterAPIKit/TwitterAPIRequest.swift b/Sources/TwitterAPIKit/TwitterAPIRequest.swift index 5b31846c..dea58b5c 100644 --- a/Sources/TwitterAPIKit/TwitterAPIRequest.swift +++ b/Sources/TwitterAPIKit/TwitterAPIRequest.swift @@ -50,7 +50,7 @@ public enum MultipartFormDataPart { case data(name: String, value: Data, filename: String, mimeType: String) /// The name of the form part. - var name: String { + public var name: String { switch self { case let .value(name, _): return name @@ -150,7 +150,7 @@ public extension TwitterAPIRequest { } extension TwitterAPIRequest { - func buildRequest(environment: TwitterAPIEnvironment) throws -> URLRequest { + public func buildRequest(environment: TwitterAPIEnvironment) throws -> URLRequest { guard var urlComponent = URLComponents( url: requestURL(for: environment), @@ -223,11 +223,11 @@ extension TwitterAPIRequest { return request } - func requestURL(for environment: TwitterAPIEnvironment) -> URL { + public func requestURL(for environment: TwitterAPIEnvironment) -> URL { return environment.baseURL(for: baseURLType).appendingPathComponent(path) } - var parameterForOAuth: [String: Any] { + public var parameterForOAuth: [String: Any] { switch bodyContentType { case .wwwFormUrlEncoded: return parameters diff --git a/Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift b/Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift index 9ab35fe4..2f5b8f4b 100644 --- a/Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift +++ b/Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift @@ -5,18 +5,16 @@ import Foundation -protocol TwitterAPISessionDelegatedTask { +public protocol TwitterAPISessionDelegatedTask { var taskIdentifier: Int { get } - func append(chunk: Data) - func complete(error: Error?) } -class TwitterAPISessionDelegate: NSObject, URLSessionDataDelegate { +public class TwitterAPISessionDelegate: NSObject, URLSessionDataDelegate { private var tasks = [Int /* taskIdentifier */: TwitterAPISessionDelegatedTask]() - func appendAndResume(task: URLSessionTask) -> TwitterAPISessionJSONTask { + public func appendAndResume(task: URLSessionTask) -> TwitterAPISessionJSONTask { let twTask = TwitterAPISessionDelegatedJSONTask(task: task) twTask.delegate = self tasks[task.taskIdentifier] = twTask @@ -26,18 +24,18 @@ class TwitterAPISessionDelegate: NSObject, URLSessionDataDelegate { return twTask } - func appendAndResumeStream(task: URLSessionTask) -> TwitterAPISessionDelegatedStreamTask { + public func appendAndResumeStream(task: URLSessionTask) -> TwitterAPISessionDelegatedStreamTask { let twTask = TwitterAPISessionDelegatedStreamTask(task: task) tasks[task.taskIdentifier] = twTask task.resume() return twTask } - func urlSession(_: URLSession, dataTask: URLSessionDataTask, didReceive data: Data) { + public func urlSession(_: URLSession, dataTask: URLSessionDataTask, didReceive data: Data) { tasks[dataTask.taskIdentifier]?.append(chunk: data) } - func urlSession(_: URLSession, task: URLSessionTask, didCompleteWithError error: Error?) { + public func urlSession(_: URLSession, task: URLSessionTask, didCompleteWithError error: Error?) { guard let task = tasks[task.taskIdentifier] else { return } task.complete(error: error) @@ -45,7 +43,7 @@ class TwitterAPISessionDelegate: NSObject, URLSessionDataDelegate { } extension TwitterAPISessionDelegate: TwitterAPISessionDelegatedJSONTaskDelegate { - func didFinishQueueInJsonTask(task: TwitterAPISessionDelegatedJSONTask) { + public func didFinishQueueInJsonTask(task: TwitterAPISessionDelegatedJSONTask) { tasks[task.taskIdentifier] = nil } } diff --git a/lint.txt b/lint.txt index 5e8a5750..e69de29b 100644 --- a/lint.txt +++ b/lint.txt @@ -1,162 +0,0 @@ - -> twitterapikit@1.0.0 lint -> swiftlint --config=.swiftlint.yml . - -::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=25,col=17::Function body should span 100 lines or less excluding comments and whitespace: currently spans 123 lines (function_body_length) -::error file=Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift,line=427,col=17::Function body should span 100 lines or less excluding comments and whitespace: currently spans 123 lines (function_body_length) -::warning file=Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift,line=24,col=69::Force unwrapping should be avoided (force_unwrapping) -::warning file=Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) -::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift,line=11,col=12::Type name 'GetDmConversationsWithParticipantIdDmEventsRequestV2' should be between 3 and 50 characters long (type_name) -::warning file=Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift,line=9,col=1::SwiftLint rule 'type_name' did not trigger a violation in the disabled region; remove the disable command (superfluous_disable_command) -::warning file=Sources/TwitterAPIKit/APIv2/Spaces/Requests/GetSpacesSearchRequestV2.swift,line=14,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=358,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=359,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=360,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=361,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=362,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=363,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=364,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=365,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/FieldsV2.swift,line=366,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/Compliance/Requests/GetComplianceJobsRequestV2.swift,line=15,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/Compliance/TwitterComplianceJobTypeV2.swift,line=12,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=92,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::error file=Sources/TwitterAPIKit/APIv2/TwitterAPIv2.swift,line=57,col=16::Variable name 'dm' should be between 3 and 40 characters long (identifier_name) -::warning file=Sources/TwitterAPIKit/APIv2/Search/TwitterSearchTweetsSortOrderV2.swift,line=12,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/Search/Requests/GetTweetsSearchRecentRequestV2.swift,line=14,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) -::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift,line=13,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) -::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift,line=9,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift,line=11,col=5::Enum cases should be sorted (sorted_enum_cases) -::error file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=51,col=16::Variable name 'v1' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=54,col=16::Variable name 'v2' should be between 3 and 40 characters long (identifier_name) -::warning file=Sources/TwitterAPIKit/TwitterAPIClient.swift,line=181,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift,line=18,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift,line=9,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift,line=10,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/Extensions/Data.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/Extensions/Data.swift,line=28,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/Extensions/Data.swift,line=41,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=53,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=153,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=226,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=230,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=169,col=55::Force unwrapping should be avoided (force_unwrapping) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=47,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIRequest.swift,line=50,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=37,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=44,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=37,col=5::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) -::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=44,col=5::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) -::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) -::warning file=Sources/TwitterAPIKit/Extensions/HMAC.swift,line=26,col=36::Arguments should be either on the same line, or one per line (multiline_arguments) -::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=8,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=16,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=19,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=29,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=36,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=40,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=48,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=8,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=16,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) -::warning file=Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift,line=16,col=1::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/Extensions/Date.swift,line=10,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/Extensions/Date.swift,line=14,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/Extensions/Result.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/Extensions/Result.swift,line=14,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/Extensions/DispatchQueue.swift,line=9,col=12::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/Extensions/String.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/Extensions/String.swift,line=12,col=97::Force unwrapping should be avoided (force_unwrapping) -::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=17,col=10::Avoid naming `case` `none` as the compiler can think you mean `Optional.none`; consider using an Optional value instead (discouraged_none_name) -::warning file=Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift,line=20,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/Extensions/Dictionary.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) -::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=22,col=57::Variable name 'c' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=46,col=57::Variable name 'c' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=70,col=53::Variable name 'c' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=93,col=57::Variable name 'c' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/Extensions/Concurrency.swift,line=140,col=64::Variable name 'c' should be between 3 and 40 characters long (identifier_name) -::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=11,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=11,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) -::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=74,col=44::Force unwrapping should be avoided (force_unwrapping) -::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=75,col=53::Force unwrapping should be avoided (force_unwrapping) -::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=11,col=1::Function should have 5 parameters or less: it currently has 7 (function_parameter_count) -::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=40,col=22::Arguments should be either on the same line, or one per line (multiline_arguments) -::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=40,col=32::Arguments should be either on the same line, or one per line (multiline_arguments) -::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=40,col=64::Arguments should be either on the same line, or one per line (multiline_arguments) -::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=41,col=43::Multiline arguments should have their surrounding brackets in a new line (multiline_arguments_brackets) -::warning file=Sources/TwitterAPIKit/OAuthHelper.swift,line=45,col=6::Chained function calls should be either on the same line, or one per line (multiline_function_chains) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=311,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=323,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=10,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=15,col=9::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=21,col=9::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=27,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=38,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=43,col=9::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=49,col=9::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=52,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=60,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/TwitterAPIKitError.swift,line=71,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift,line=8,col=1::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift,line=81,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift,line=8,col=1::Top-level declarations should specify Access Control Level keywords explicitly (explicit_top_level_acl) -::error file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift,line=8,col=10::Type name 'TwitterAPISessionSpecializedTask_' should only contain alphanumeric and other allowed characters (type_name) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDataTask.swift,line=24,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=8,col=8::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=9,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=10,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=11,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=12,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift,line=14,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift,line=33,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/DirectMessage/Requests/PostDirectMessageRequestV1.swift,line=84,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=21,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=46,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=80,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=8,col=55::Force unwrapping should be avoided (force_unwrapping) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=8,col=30::Prefer non-optional `Data(_:)` initializer when converting `String` to `Data` (non_optional_string_data_conversion) -::warning file=Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift,line=9,col=8::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=33,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=44,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=12,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=16,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=23,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift,line=27,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) -::warning file=Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift,line=45,col=5::A doc comment should be attached to a declaration (orphaned_doc_comment) -::warning file=Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift,line=8,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift,line=48,col=8::TODOs should be resolved (↑) (todo) -::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=13,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=14,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=15,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift,line=16,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsCreateRequestV1.swift,line=17,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=9,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=10,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=17,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=29,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=45,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) -::error file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=25,col=10::Enum element name 'm' should be between 3 and 40 characters long (identifier_name) -::error file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=27,col=10::Enum element name 'ft' should be between 3 and 40 characters long (identifier_name) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=8,col=8::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=12,col=12::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=23,col=8::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=25,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=27,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=40,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=42,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterLocations.swift,line=43,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv1/Collection/Requests/PostCollectionsEntriesCurateRequestV1.swift,line=16,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift,line=14,col=9::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::error file=Sources/TwitterAPIKit/APIv1/Geo/Requests/GetGeoSearchRequestV1.swift,line=13,col=14::Enum element name 'ip' should be between 3 and 40 characters long (identifier_name) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift,line=23,col=5::All declarations should specify Access Control Level keywords explicitly (explicit_acl) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift,line=19,col=5::public declarations should be documented (missing_docs) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift,line=12,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift,line=15,col=5::Enum cases should be sorted (sorted_enum_cases) -::warning file=Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift,line=9,col=6::Classes should have an explicit deinit method (required_deinit) -::warning file=Sources/TwitterAPIKit/TwitterAPIKit.swift,line=1,col=1::File name should match a type or extension declared in the file (if any) (file_name) From 4fc88bc27262b5850bf69dd847ec9cebe5bfb62c Mon Sep 17 00:00:00 2001 From: AdonisCodes Date: Mon, 19 May 2025 05:52:06 -0600 Subject: [PATCH 26/26] feat: fix all lint issues --- .../Requests/GetRetweetersRequestV1.swift | 10 ++-- .../APIv1/Timelines/TimelineAPIv1.swift | 4 ++ ...wift => PostStatusesUpdateRequestV1.swift} | 0 .../APIv1/Tweet/TweetAPIv1.swift | 7 ++- .../TwitterAPIKit/APIv1/TwitterAPIv1.swift | 11 +++- .../APIv1/TwitterListIdentifierV1.swift | 3 ++ .../APIv1/TwitterListModeV1.swift | 9 ++-- .../APIv1/TwitterLocations.swift | 34 ++++++++++--- .../APIv1/TwitterUserIdentifierV1.swift | 28 ++++++---- ...nsWithParticipantIdDmEventsRequestV2.swift | 3 +- .../Timeline/TwitterTimelineExcludeV2.swift | 10 +++- ...ty.swift => TweetCountGranularityV2.swift} | 4 +- ...swift => TwitterDmEventExpansionsV2.swift} | 0 ...ldsV2.swift => TwitterTweetFieldsV2.swift} | 2 + .../Extensions/Concurrency.swift | 25 +++++---- Sources/TwitterAPIKit/Extensions/Data.swift | 12 +++++ Sources/TwitterAPIKit/Extensions/Date.swift | 6 +++ .../TwitterAPIKit/Extensions/Dictionary.swift | 2 + .../Extensions/DispatchQueue.swift | 1 + Sources/TwitterAPIKit/Extensions/HMAC.swift | 18 ++++++- Sources/TwitterAPIKit/Extensions/Result.swift | 2 + Sources/TwitterAPIKit/Extensions/String.swift | 3 +- Sources/TwitterAPIKit/OAuthHelper.swift | 35 ++++++++++--- .../TwitterAPISessionDataTask.swift | 4 ++ ...TwitterAPISessionDelegatedStreamTask.swift | 6 ++- .../TwitterAPISessionSpecializedTask.swift | 13 +++-- .../SessionTask/TwitterAPISessionTask.swift | 9 +++- ...+Flat.generated.swift => TwitterAPI.swift} | 11 ++-- Sources/TwitterAPIKit/TwitterAPIClient.swift | 4 ++ Sources/TwitterAPIKit/TwitterAPIKit.swift | 10 +++- .../TwitterAPIKit/TwitterAPIKitError.swift | 51 +++++++++---------- Sources/TwitterAPIKit/TwitterAPIRequest.swift | 16 ++++-- .../TwitterAPISessionDelegate.swift | 12 +++++ .../TwitterAuthenticationMethod.swift | 15 ++++-- .../APIv1/Media/UploadMediaUtilTests.swift | 2 + .../TwitterOAuth2AccessTokenTests.swift | 5 +- lint.txt | 4 ++ 37 files changed, 291 insertions(+), 100 deletions(-) rename Sources/TwitterAPIKit/APIv1/Tweet/Requests/{PostUpdateStatusRequestV1.swift => PostStatusesUpdateRequestV1.swift} (100%) rename Sources/TwitterAPIKit/APIv2/TweetCount/Requests/{TweetCountGranularity.swift => TweetCountGranularityV2.swift} (100%) rename Sources/TwitterAPIKit/APIv2/{ExpansionsV2.swift => TwitterDmEventExpansionsV2.swift} (100%) rename Sources/TwitterAPIKit/APIv2/{FieldsV2.swift => TwitterTweetFieldsV2.swift} (99%) rename Sources/TwitterAPIKit/{TwitterAPI+Flat.generated.swift => TwitterAPI.swift} (99%) diff --git a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift index e2ad8f0e..7b27edbf 100644 --- a/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift +++ b/Sources/TwitterAPIKit/APIv1/Retweet/Requests/GetRetweetersRequestV1.swift @@ -22,11 +22,11 @@ open class GetRetweetersRequestV1: TwitterAPIRequest { } open var parameters: [String: Any] { - var p = [String: Any]() - p["id"] = tweetID - cursor.map { p["cursor"] = $0 } - stringifyIDs.map { p["stringify_ids"] = $0 } - return p + var parameters = [String: Any]() + parameters["id"] = tweetID + cursor.map { parameters["cursor"] = $0 } + stringifyIDs.map { parameters["stringify_ids"] = $0 } + return parameters } public init( diff --git a/Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift index e001ad33..200b4132 100644 --- a/Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Timelines/TimelineAPIv1.swift @@ -38,4 +38,8 @@ open class TimelineAPIv1: TwitterAPIBase { ) -> TwitterAPISessionJSONTask { return session.send(request) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift b/Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostStatusesUpdateRequestV1.swift similarity index 100% rename from Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostUpdateStatusRequestV1.swift rename to Sources/TwitterAPIKit/APIv1/Tweet/Requests/PostStatusesUpdateRequestV1.swift diff --git a/Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift b/Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift index 24ed6390..ad826192 100644 --- a/Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/Tweet/TweetAPIv1.swift @@ -42,8 +42,7 @@ open class TweetAPIv1: TwitterAPIBase { return session.send(request) } - /// For more details, see: - /// https://developer.twitter.com/en/docs/twitter-api/v1/tweets/ - /// post-and-engage/api-reference/get-statuses-oembed - // TODO↑ + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift b/Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift index 82474bb8..5e917a38 100644 --- a/Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift +++ b/Sources/TwitterAPIKit/APIv1/TwitterAPIv1.swift @@ -3,10 +3,15 @@ // All source code and related assets are the property of GetAutomaApp. // All rights reserved. +/// A protocol that represents a Twitter API. +public protocol TwitterAPI { + // No Logic Here +} + /// Main class for accessing Twitter API v1.1 endpoints. /// This class provides access to all Twitter API v1.1 functionality through specialized API clients. /// Each property represents a group of related API endpoints. -open class TwitterAPIv1 { +open class TwitterAPIv1: TwitterAPI { /// API client for managing Twitter account settings and profile information. public let account: AccountAPIv1 @@ -79,4 +84,8 @@ open class TwitterAPIv1 { tweet = .init(session: session) user = .init(session: session) } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift b/Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift index d7600c94..3c8c8468 100644 --- a/Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift +++ b/Sources/TwitterAPIKit/APIv1/TwitterListIdentifierV1.swift @@ -20,6 +20,9 @@ public enum TwitterListIdentifierV1 { } extension TwitterListIdentifierV1 { + /// Binds the list identifier to the request parameters. + /// - Parameters: + /// - param: The parameters dictionary to bind to. public func bind(param: inout [String: Any]) { switch self { case let .listID(string): diff --git a/Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift b/Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift index bf10f728..8f80286e 100644 --- a/Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift +++ b/Sources/TwitterAPIKit/APIv1/TwitterListModeV1.swift @@ -8,14 +8,17 @@ import Foundation /// Represents the visibility mode of a Twitter list in API v1.1. /// Lists can be either public (visible to all users) or private (visible only to the owner). public enum TwitterListModeV1 { - /// The list is publicly visible to all Twitter users. - case `public` - /// The list is private and only visible to its owner. case `private` + + /// The list is publicly visible to all Twitter users. + case `public` } public extension TwitterListModeV1 { + /// Binds the list mode to the request parameters. + /// - Parameters: + /// - param: The parameters dictionary to bind to. func bind(param: inout [String: Any]) { switch self { case .public: diff --git a/Sources/TwitterAPIKit/APIv1/TwitterLocations.swift b/Sources/TwitterAPIKit/APIv1/TwitterLocations.swift index b6beb747..f930aa3f 100644 --- a/Sources/TwitterAPIKit/APIv1/TwitterLocations.swift +++ b/Sources/TwitterAPIKit/APIv1/TwitterLocations.swift @@ -5,27 +5,40 @@ import Foundation -public struct TwitterCoordinateV1 { +/// A protocol that represents a location in the Twitter API v1 +public protocol TwitterLocations { + // No Logic Here +} + +/// Represents geographical coordinates in the Twitter API v1 +public struct TwitterCoordinateV1: TwitterLocations { + /// The latitude coordinate public var lat: Double + /// The longitude coordinate public var long: Double + /// Creates a new coordinate with the specified latitude and longitude public init(lat: Double, long: Double) { self.lat = lat self.long = long } + /// Binds the coordinate values to the provided parameters dictionary public func bind(param: inout [String: Any]) { param["lat"] = lat param["long"] = long } } -public enum TwitterAccuracyV1 { - /// meter - case m(Int) - /// feet +/// Represents accuracy levels for geographical locations +public enum TwitterAccuracyV1: TwitterLocations { +// swiftlint:disable identifier_name + /// Accuracy in feet case ft(Int) + /// Accuracy in meters + case m(Int) + /// Binds the accuracy value to the provided parameters dictionary public func bind(param: inout [String: Any]) { switch self { case let .m(int): @@ -35,13 +48,20 @@ public enum TwitterAccuracyV1 { } } } +// swiftlint:enable identifier_name +/// Represents the granularity level for geographical locations public enum TwitterGranularityV1: String { - case neighborhood - case city + /// Administrative level granularity case admin + /// City level granularity + case city + /// Country levelk granularity case country + /// Neighborhood level granularity + case neighborhood + /// Binds the granularity value to the provided parameters dictionary public func bind(param: inout [String: Any]) { param["granularity"] = rawValue } diff --git a/Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift b/Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift index ec17d69c..0be63a50 100644 --- a/Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift +++ b/Sources/TwitterAPIKit/APIv1/TwitterUserIdentifierV1.swift @@ -7,29 +7,35 @@ import Foundation /// Represents a way to identify a single Twitter user in the v1.1 API. public enum TwitterUserIdentifierV1 { - /// Identifies a user by their numeric user ID. - /// - Parameter String: The user's unique numeric ID. - case userID(String) - /// Identifies a user by their screen name (username). /// - Parameter String: The user's screen name without the @ symbol. case screenName(String) + + /// Identifies a user by their numeric user ID. + /// - Parameter String: The user's unique numeric ID. + case userID(String) } /// Represents a way to identify multiple Twitter users in the v1.1 API. -public enum TwitterUsersIdentifierV1 { - /// Identifies multiple users by their numeric user IDs. - /// - Parameter [String]: An array of user IDs. - case userIDs([String]) - +public enum TwitterUsersIdentifierV1 { /// Identifies multiple users by their screen names (usernames). /// - Parameter [String]: An array of screen names without the @ symbol. case screenNames([String]) + + /// Identifies multiple users by their numeric user IDs. + /// - Parameter [String]: An array of user IDs. + case userIDs([String]) } // MARK: - extensions +/// Extension to bind user identifier to request parameters extension TwitterUserIdentifierV1 { + /// Binds the user identifier to the request parameters + /// - Parameters: + /// - param: The parameters dictionary to bind to + /// - userIDKey: The key to use for the user ID + /// - screenNameKey: The key to use for the screen name public func bind(param: inout [String: Any], userIDKey: String = "user_id", screenNameKey: String = "screen_name") { switch self { case let .userID(string): @@ -40,7 +46,11 @@ extension TwitterUserIdentifierV1 { } } +/// Extension to bind multiple user identifiers to request parameters extension TwitterUsersIdentifierV1 { + /// Binds the multiple user identifiers to the request parameters + /// - Parameters: + /// - param: The parameters dictionary to bind to public func bind(param: inout [String: Any]) { switch self { case let .userIDs(array): diff --git a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift index bdda74f1..fac4833e 100644 --- a/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift +++ b/Sources/TwitterAPIKit/APIv2/DirectMessage/Requests/GetDmConversationsWithParticipantIdDmEventsRequestV2.swift @@ -3,9 +3,9 @@ // All source code and related assets are the property of GetAutomaApp. // All rights reserved. +// swiftlint:disable type_name import Foundation -// swiftlint:disable:next type_name /// Returns DM Events for a DM Conversation /// Required OAuth 2.0 scopes: dm.read, tweet.read, users.read open class GetDmConversationsWithParticipantIdDmEventsRequestV2: TwitterAPIRequest { @@ -75,3 +75,4 @@ open class GetDmConversationsWithParticipantIdDmEventsRequestV2: TwitterAPIReque // De-init Logic Here } } +// swiftlint:enable type_name diff --git a/Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift b/Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift index 25fa6cfc..63d9dc47 100644 --- a/Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift +++ b/Sources/TwitterAPIKit/APIv2/Timeline/TwitterTimelineExcludeV2.swift @@ -5,16 +5,24 @@ import Foundation +/// The types of items to exclude from the timeline. public enum TwitterTimelineExcludeV2: String, TwitterAPIv2RequestParameter { - case retweets + /// Exclude replies from the timeline. case replies + /// Exclude retweets from the timeline. + case retweets + /// The string value of the exclude type. public var stringValue: String { return rawValue } } +/// Extension to bind the exclude types to the request parameters. extension Set where Element == TwitterTimelineExcludeV2 { + /// Binds the exclude types to the request parameters. + /// - Parameters: + /// - param: The parameters dictionary to bind to. public func bind(param: inout [String: Any]) { param["exclude"] = commaSeparatedString } diff --git a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularityV2.swift similarity index 100% rename from Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift rename to Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularityV2.swift index 2271ea57..454edc23 100644 --- a/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularity.swift +++ b/Sources/TwitterAPIKit/APIv2/TweetCount/Requests/TweetCountGranularityV2.swift @@ -6,9 +6,9 @@ import Foundation public enum TweetCountGranularityV2: String { - case minute - case hour case day + case hour + case minute public func bind(param: inout [String: Any]) { param["granularity"] = rawValue diff --git a/Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift b/Sources/TwitterAPIKit/APIv2/TwitterDmEventExpansionsV2.swift similarity index 100% rename from Sources/TwitterAPIKit/APIv2/ExpansionsV2.swift rename to Sources/TwitterAPIKit/APIv2/TwitterDmEventExpansionsV2.swift diff --git a/Sources/TwitterAPIKit/APIv2/FieldsV2.swift b/Sources/TwitterAPIKit/APIv2/TwitterTweetFieldsV2.swift similarity index 99% rename from Sources/TwitterAPIKit/APIv2/FieldsV2.swift rename to Sources/TwitterAPIKit/APIv2/TwitterTweetFieldsV2.swift index 26a80d1e..fc0faac3 100644 --- a/Sources/TwitterAPIKit/APIv2/FieldsV2.swift +++ b/Sources/TwitterAPIKit/APIv2/TwitterTweetFieldsV2.swift @@ -355,6 +355,7 @@ public extension Set where Element == TwitterMediaFieldsV2 { /// list.fields public enum TwitterListFieldsV2: TwitterAPIv2RequestParameter, Hashable { + // swiftlint:disable sorted_enum_cases case createdAt case description case followerCount @@ -389,6 +390,7 @@ public enum TwitterListFieldsV2: TwitterAPIv2RequestParameter, Hashable { .ownerID, .private, ] + // swiftlint:enable sorted_enum_cases } /// Extension to bind list fields to request parameters diff --git a/Sources/TwitterAPIKit/Extensions/Concurrency.swift b/Sources/TwitterAPIKit/Extensions/Concurrency.swift index 2d4cce03..46daabbc 100644 --- a/Sources/TwitterAPIKit/Extensions/Concurrency.swift +++ b/Sources/TwitterAPIKit/Extensions/Concurrency.swift @@ -5,6 +5,11 @@ import Foundation +/// A protocol that represents a concurrency. +public protocol Concurrency { + // No Logic Here +} + #if compiler(>=5.5.2) && canImport(_Concurrency) // I'm not that familiar with Swift Concurrency, so please report any problems. @@ -19,9 +24,9 @@ import Foundation get async { await withTaskCancellationHandler( operation: { - await withCheckedContinuation { c in + await withCheckedContinuation { continuation in responseData { response in - c.resume(returning: response) + continuation.resume(returning: response) } } }, @@ -43,9 +48,9 @@ import Foundation get async { await withTaskCancellationHandler( operation: { - await withCheckedContinuation { c in + await withCheckedContinuation { continuation in responseObject { response in - c.resume(returning: response) + continuation.resume(returning: response) } } }, @@ -67,9 +72,9 @@ import Foundation ) async -> TwitterAPIResponse { return await withTaskCancellationHandler( operation: { - await withCheckedContinuation { c in + await withCheckedContinuation { continuation in responseDecodable(type: type) { response in - c.resume(returning: response) + continuation.resume(returning: response) } } }, @@ -90,9 +95,9 @@ import Foundation get async { await withTaskCancellationHandler( operation: { - await withCheckedContinuation { c in + await withCheckedContinuation { continuation in responseObject { response in - c.resume(returning: response) + continuation.resume(returning: response) } } }, onCancel: { @@ -137,9 +142,9 @@ import Foundation type: TwitterAuthenticationMethod.OAuth20WithPKCEClientType, forceRefresh: Bool = false ) async throws -> RefreshOAuth20TokenResultValue { - return try await withCheckedThrowingContinuation { c in + return try await withCheckedThrowingContinuation { continuation in refreshOAuth20Token(type: type, forceRefresh: forceRefresh) { result in - c.resume(with: result) + continuation.resume(with: result) } } } diff --git a/Sources/TwitterAPIKit/Extensions/Data.swift b/Sources/TwitterAPIKit/Extensions/Data.swift index 59c64912..0edca14f 100644 --- a/Sources/TwitterAPIKit/Extensions/Data.swift +++ b/Sources/TwitterAPIKit/Extensions/Data.swift @@ -6,6 +6,11 @@ import Foundation extension Data { + /// Splits the data into chunks using the specified separator + /// - Parameters: + /// - separator: The data to use as a separator + /// - omittingEmptySubsequences: Whether to omit empty subsequences + /// - Returns: An array of data chunks public func split(separator: Data, omittingEmptySubsequences: Bool = true) -> [Data] { var current = startIndex var chunks = [Data]() @@ -25,6 +30,8 @@ extension Data { return chunks } + /// Attempts to serialize the data as JSON + /// - Returns: A Result containing either the serialized JSON object or an error public func serialize() -> Result { do { let jsonObj = try JSONSerialization.jsonObject(with: self, options: []) @@ -38,6 +45,11 @@ extension Data { } } + /// Attempts to decode the data into a specified Decodable type + /// - Parameters: + /// - type: The type to decode into + /// - decoder: The JSON decoder to use + /// - Returns: A Result containing either the decoded object or an error public func decode( _ type: T.Type, decoder: JSONDecoder diff --git a/Sources/TwitterAPIKit/Extensions/Date.swift b/Sources/TwitterAPIKit/Extensions/Date.swift index 962f1250..e8f7b125 100644 --- a/Sources/TwitterAPIKit/Extensions/Date.swift +++ b/Sources/TwitterAPIKit/Extensions/Date.swift @@ -7,10 +7,16 @@ import Foundation private let formatter = ISO8601DateFormatter() extension Date { + /// Converts the date to an ISO8601 formatted string + /// - Returns: The date formatted as an ISO8601 string public func toISO8601String() -> String { return formatter.string(from: self) } + /// Binds the date as an ISO8601 string to the provided parameters dictionary + /// - Parameters: + /// - param: The parameters dictionary to bind to + /// - key: The key to use for the date value public func bind(param: inout [String: Any], for key: String) { param[key] = toISO8601String() } diff --git a/Sources/TwitterAPIKit/Extensions/Dictionary.swift b/Sources/TwitterAPIKit/Extensions/Dictionary.swift index 5a2ddf75..16d6d907 100644 --- a/Sources/TwitterAPIKit/Extensions/Dictionary.swift +++ b/Sources/TwitterAPIKit/Extensions/Dictionary.swift @@ -6,6 +6,8 @@ import Foundation extension Dictionary { + /// Converts the dictionary into a URL-encoded query string + /// Format: key1=value1&key2=value2 public var urlEncodedQueryString: String { var parts = [String]() diff --git a/Sources/TwitterAPIKit/Extensions/DispatchQueue.swift b/Sources/TwitterAPIKit/Extensions/DispatchQueue.swift index 0a6d82b5..f8b5a563 100644 --- a/Sources/TwitterAPIKit/Extensions/DispatchQueue.swift +++ b/Sources/TwitterAPIKit/Extensions/DispatchQueue.swift @@ -6,6 +6,7 @@ import Foundation extension DispatchQueue { + /// A global queue used for processing Twitter API tasks with default QoS public static var processQueue: DispatchQueue { return .global(qos: .default) } diff --git a/Sources/TwitterAPIKit/Extensions/HMAC.swift b/Sources/TwitterAPIKit/Extensions/HMAC.swift index 4a74c1e8..aa5345c5 100644 --- a/Sources/TwitterAPIKit/Extensions/HMAC.swift +++ b/Sources/TwitterAPIKit/Extensions/HMAC.swift @@ -5,6 +5,11 @@ import Foundation +/// A protocol that represents a HMAC. +public protocol HMAC { + // No Logic Here +} + #if canImport(CommonCrypto) import CommonCrypto @@ -23,7 +28,8 @@ import Foundation CCHmac( CCHmacAlgorithm(kCCHmacAlgSHA1), body.baseAddress, - key.count, bytes.baseAddress, + key.count, + bytes.baseAddress, count, result ) @@ -34,6 +40,11 @@ import Foundation } } + /// Creates an HMAC-SHA1 signature for the given message using the provided key + /// - Parameters: + /// - key: The key to use for signing + /// - message: The message to sign + /// - Returns: The HMAC-SHA1 signature as Data public func createHMACSHA1(key: Data, message: Data) -> Data { return message.hmac(key: key) } @@ -41,6 +52,11 @@ import Foundation #elseif canImport(Crypto) // for Linux import Crypto + /// Creates an HMAC-SHA1 signature for the given message using the provided key + /// - Parameters: + /// - key: The key to use for signing + /// - message: The message to sign + /// - Returns: The HMAC-SHA1 signature as Data public func createHMACSHA1(key: Data, message: Data) -> Data { return Data(HMAC.authenticationCode(for: message, using: SymmetricKey(data: key))) } diff --git a/Sources/TwitterAPIKit/Extensions/Result.swift b/Sources/TwitterAPIKit/Extensions/Result.swift index 09246998..eb4a26cf 100644 --- a/Sources/TwitterAPIKit/Extensions/Result.swift +++ b/Sources/TwitterAPIKit/Extensions/Result.swift @@ -6,11 +6,13 @@ import Foundation extension Result where Failure == TwitterAPIKitError { + /// Returns the success value if the result is a success, nil otherwise public var success: Success? { guard case let .success(value) = self else { return nil } return value } + /// Returns the error if the result is a failure, nil otherwise public var error: Failure? { guard case let .failure(error) = self else { return nil } return error diff --git a/Sources/TwitterAPIKit/Extensions/String.swift b/Sources/TwitterAPIKit/Extensions/String.swift index 87a4f7f8..35ec14ce 100644 --- a/Sources/TwitterAPIKit/Extensions/String.swift +++ b/Sources/TwitterAPIKit/Extensions/String.swift @@ -6,9 +6,10 @@ import Foundation extension String { + /// Returns a URL-safe encoded version of the string public var urlEncodedString: String { let allowedCharacterSet = NSMutableCharacterSet.alphanumeric() allowedCharacterSet.addCharacters(in: "-._~") - return addingPercentEncoding(withAllowedCharacters: allowedCharacterSet as CharacterSet)! + return addingPercentEncoding(withAllowedCharacters: allowedCharacterSet as CharacterSet) ?? "" } } diff --git a/Sources/TwitterAPIKit/OAuthHelper.swift b/Sources/TwitterAPIKit/OAuthHelper.swift index d3ee0db3..1fe52bfd 100644 --- a/Sources/TwitterAPIKit/OAuthHelper.swift +++ b/Sources/TwitterAPIKit/OAuthHelper.swift @@ -8,6 +8,19 @@ import Foundation private let oauthVersion = "1.0" private let oauthSignatureMethod = "HMAC-SHA1" +// swiftlint:disable function_parameter_count +/// Generates an OAuth authorization header for a given HTTP method, URL, and parameters. +/// - Parameters: +/// - method: The HTTP method to use. +/// - url: The URL to use. +/// - parameters: The parameters to use. +/// - consumerKey: The consumer key to use. +/// - consumerSecret: The consumer secret to use. +/// - oauthToken: The OAuth token to use. +/// - oauthTokenSecret: The OAuth token secret to use. +/// - oauthTimestamp: The OAuth timestamp to use. +/// - oauthNonce: The OAuth nonce to use. +/// - Returns: The OAuth authorization header. public func authorizationHeader( for method: HTTPMethod, url: URL, @@ -19,6 +32,7 @@ public func authorizationHeader( oauthTimestamp: String? = .none, oauthNonce: String? = .none ) -> String { +// swiftlint:enable function_parameter_count var authorizationParameters = [String: Any]() authorizationParameters["oauth_version"] = oauthVersion authorizationParameters["oauth_signature_method"] = oauthSignatureMethod @@ -37,12 +51,17 @@ public func authorizationHeader( let combinedParameters = authorizationParameters.merging(parameters) { $1 } authorizationParameters["oauth_signature"] = oauthSignature( - for: method, url: url, parameters: combinedParameters, consumerSecret: consumerSecret, - oauthTokenSecret: oauthTokenSecret) + for: method, + url: url, + parameters: combinedParameters, + consumerSecret: consumerSecret, + oauthTokenSecret: oauthTokenSecret + ) - let authorizationParameterComponents = authorizationParameters.urlEncodedQueryString.components( - separatedBy: "&" - ).sorted() + let authorizationParameterComponents = authorizationParameters + .urlEncodedQueryString + .components(separatedBy: "&") + .sorted() var headerComponents = [String]() for component in authorizationParameterComponents { @@ -63,7 +82,7 @@ private func oauthSignature( oauthTokenSecret: String? ) -> String { let tokenSecret = oauthTokenSecret?.urlEncodedString ?? "" - let encodedConsumerSecret = consumerSecret.urlEncodedString + let encodedConsumerSecret = consumerSecret.urlEncodedString let signingKey = "\(encodedConsumerSecret)&\(tokenSecret)" let parameterComponents = parameters.urlEncodedQueryString.components(separatedBy: "&").sorted() let parameterString = parameterComponents.joined(separator: "&") @@ -71,8 +90,8 @@ private func oauthSignature( let encodedURL = url.absoluteString.urlEncodedString let signatureBaseString = "\(method.rawValue)&\(encodedURL)&\(encodedParameterString)" - let key = signingKey.data(using: .utf8)! - let msg = signatureBaseString.data(using: .utf8)! + let key = signingKey.data(using: .utf8) ?? Data() + let msg = signatureBaseString.data(using: .utf8) ?? Data() let sha1 = createHMACSHA1(key: key, message: msg) return sha1.base64EncodedString(options: []) } diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDataTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDataTask.swift index 2b72cd7e..763635be 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDataTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDataTask.swift @@ -21,6 +21,10 @@ public protocol TwitterAPISessionDataTask: TwitterAPISessionTask { // MARK: - internal extension TwitterAPISessionDataTask { + /// Specializes the task to return a new type. + /// - Parameters: + /// - transform: The transform to apply to the data. + /// - Returns: A new specialized task. public func specialized( _ transform: @escaping (Data) throws -> NewSuccess ) diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift index 9c00f4bf..997a6827 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionDelegatedStreamTask.swift @@ -5,7 +5,7 @@ import Foundation -private let chunkSeparator = "\r\n".data(using: .utf8)! +private let chunkSeparator = Data("\r\n".utf8) public class TwitterAPISessionDelegatedStreamTask: TwitterAPISessionStreamTask, TwitterAPISessionDelegatedTask { public var taskIdentifier: Int { return task.taskIdentifier } public var currentRequest: URLRequest? { return task.currentRequest } @@ -101,4 +101,8 @@ public class TwitterAPISessionDelegatedStreamTask: TwitterAPISessionStreamTask, } } } + + deinit { + // De-init Logic Here + } } diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift index 9ac9edf8..e84dcc6e 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionSpecializedTask.swift @@ -5,7 +5,7 @@ import Foundation -public protocol TwitterAPISessionSpecializedTask_: TwitterAPISessionDataTask { +public protocol TwitterAPISessionSpecializedTaskProtocol: TwitterAPISessionDataTask { associatedtype Success @discardableResult func responseObject( @@ -14,7 +14,7 @@ public protocol TwitterAPISessionSpecializedTask_: TwitterAPISessionDataTask { ) -> TwitterAPISessionSpecializedTask } -public struct TwitterAPISessionSpecializedTask: TwitterAPISessionSpecializedTask_ { +public struct TwitterAPISessionSpecializedTask: TwitterAPISessionSpecializedTaskProtocol { public var taskIdentifier: Int { return innerTask.taskIdentifier } @@ -77,9 +77,14 @@ public struct TwitterAPISessionSpecializedTask: TwitterAPISessionSpecia } } -public extension Array where Element: TwitterAPISessionSpecializedTask_ { +public extension Array where Element: TwitterAPISessionSpecializedTaskProtocol { + /// Specializes the task to return an array of responses. + /// - Parameters: + /// - queue: The queue to run the response on. + /// - block: The block to call with the responses. func responseObject( - queue: DispatchQueue = .main, _ block: @escaping ([TwitterAPIResponse]) -> Void + queue: DispatchQueue = .main, + _ block: @escaping ([TwitterAPIResponse]) -> Void ) { let group = DispatchGroup() diff --git a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift index 89a85247..eef07340 100644 --- a/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift +++ b/Sources/TwitterAPIKit/SessionTask/TwitterAPISessionTask.swift @@ -5,16 +5,23 @@ import Foundation +/// A protocol that defines the properties and methods for a session task. public protocol TwitterAPISessionTask { + /// The unique identifier for the task. var taskIdentifier: Int { get } + /// The current request being processed. var currentRequest: URLRequest? { get } + /// The original request that was used to create the task. var originalRequest: URLRequest? { get } + /// The HTTP response received from the server. var httpResponse: HTTPURLResponse? { get } - + /// Cancels the task. func cancel() } +/// A default implementation of the TwitterAPISessionTask protocol. extension URLSessionTask: TwitterAPISessionTask { + /// The HTTP response received from the server. public var httpResponse: HTTPURLResponse? { return response as? HTTPURLResponse } diff --git a/Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift b/Sources/TwitterAPIKit/TwitterAPI.swift similarity index 99% rename from Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift rename to Sources/TwitterAPIKit/TwitterAPI.swift index f558de95..65aac2d8 100644 --- a/Sources/TwitterAPIKit/TwitterAPI+Flat.generated.swift +++ b/Sources/TwitterAPIKit/TwitterAPI.swift @@ -6,8 +6,13 @@ // swift-format-ignore-file import Foundation +/// A protocol that represents a Twitter API. +public protocol TwitterAPI { + // No Logic Here +} + /// Extension providing OAuth authentication methods for the Twitter API. -public extension TwitterAuthAPI { +public extension TwitterAuthAPI: TwitterAPI { // MARK: - OAuth10aAPI /// Requests an OAuth request token from Twitter. @@ -136,7 +141,7 @@ public extension TwitterAuthAPI { } /// Extension providing Twitter API v1 endpoints. -public extension TwitterAPIv1 { +public extension TwitterAPIv1: TwitterAPI { // MARK: - AccountAPIv1 /// Retrieves the current account settings. @@ -932,7 +937,7 @@ public extension TwitterAPIv1 { } } -public extension TwitterAPIv2 { +public extension TwitterAPIv2: TwitterAPI { // MARK: - BlockAndMuteAPIv2 /// Retrieves users blocked by the authenticated user. diff --git a/Sources/TwitterAPIKit/TwitterAPIClient.swift b/Sources/TwitterAPIKit/TwitterAPIClient.swift index 1109ffc6..36b8ff05 100644 --- a/Sources/TwitterAPIKit/TwitterAPIClient.swift +++ b/Sources/TwitterAPIKit/TwitterAPIClient.swift @@ -187,6 +187,10 @@ open class TwitterAPIBase { public init(session: TwitterAPISession) { self.session = session } + + deinit { + // De-init Logic Here + } } /// Extension providing notification names and user info keys for OAuth 2.0 token refresh events. diff --git a/Sources/TwitterAPIKit/TwitterAPIKit.swift b/Sources/TwitterAPIKit/TwitterAPIKit.swift index 7a1ee3d0..d883daa9 100644 --- a/Sources/TwitterAPIKit/TwitterAPIKit.swift +++ b/Sources/TwitterAPIKit/TwitterAPIKit.swift @@ -9,6 +9,14 @@ import Foundation @_exported import FoundationNetworking #endif +/// A protocol that represents a Twitter API kit. +public protocol TwitterAPIKit { + /// The base URL for Twitter web services. + /// Default: "https://twitter.com" + var twitterURL: URL { get } + +} + /// Specifies the type of Twitter API base URL to use. public enum TwitterBaseURLType { /// The main Twitter API endpoint (api.twitter.com). @@ -23,7 +31,7 @@ public enum TwitterBaseURLType { /// Configuration for Twitter API endpoints. /// This struct defines the base URLs used for different Twitter API services. -public struct TwitterAPIEnvironment { +public struct TwitterAPIEnvironment: TwitterAPIKit { /// The base URL for Twitter web services. /// Default: "https://twitter.com" public let twitterURL: URL diff --git a/Sources/TwitterAPIKit/TwitterAPIKitError.swift b/Sources/TwitterAPIKit/TwitterAPIKitError.swift index a1783c39..9585d708 100644 --- a/Sources/TwitterAPIKit/TwitterAPIKitError.swift +++ b/Sources/TwitterAPIKit/TwitterAPIKitError.swift @@ -7,25 +7,21 @@ import Foundation /// Represents errors that can occur while using the Twitter API Kit. public enum TwitterAPIKitError: Error { - case requestFailed(reason: RequestFailureReason) - /// Represents specific reasons why a request might fail. public enum RequestFailureReason { - /// Indicates that the provided URL was invalid. - case invalidURL(url: String) - - /// Indicates that a parameter was invalid with details about why. - case invalidParameter(parameter: [String: Any], cause: String) - /// Indicates that a string could not be encoded to data. case cannotEncodeStringToData(string: String) + + /// Indicates that a parameter was invalid with details about why. + case invalidParameter(parameter: [String: Any], cause: String) + /// Indicates that the provided URL was invalid. + case invalidURL(url: String) + /// Indicates that JSON serialization failed for an object. case jsonSerializationFailed(obj: Any) } - case responseFailed(reason: ResponseFailureReason) - /// Represents specific reasons why a response might fail. public enum ResponseFailureReason { /// Indicates that the response was invalid. @@ -35,30 +31,18 @@ public enum TwitterAPIKitError: Error { case unacceptableStatusCode(statusCode: Int, error: TwitterAPIErrorResponse, rateLimit: TwitterRateLimit?) } - case responseSerializeFailed(reason: ResponseSerializationFailureReason) - /// Represents specific reasons why response serialization might fail. public enum ResponseSerializationFailureReason { - /// Indicates that JSON serialization failed. - case jsonSerializationFailed(error: Error) - - /// Indicates that JSON decoding failed. - case jsonDecodeFailed(error: Error) - /// Indicates that data could not be converted to the expected type. case cannotConvert(data: Data, toTypeName: String) - } - case uploadMediaFailed(reason: UploadMediaFailureReason) - - /// Represents specific reasons why media upload might fail. - public enum UploadMediaFailureReason { - /// Indicates that media processing failed. - case processingFailed(error: UploadMediaError) + /// Indicates that JSON decoding failed. + case jsonDecodeFailed(error: Error) + + /// Indicates that JSON serialization failed. + case jsonSerializationFailed(error: Error) } - case refreshOAuth20TokenFailed(reason: RefreshOAuth20TokenFailureReason) - /// Represents specific reasons why OAuth 2.0 token refresh might fail. public enum RefreshOAuth20TokenFailureReason { /// Indicates that the authentication method was invalid. @@ -68,7 +52,18 @@ public enum TwitterAPIKitError: Error { case refreshTokenIsMissing } + /// Represents specific reasons why media upload might fail. + public enum UploadMediaFailureReason { + /// Indicates that media processing failed. + case processingFailed(error: UploadMediaError) + } + + case refreshOAuth20TokenFailed(reason: RefreshOAuth20TokenFailureReason) + case requestFailed(reason: RequestFailureReason) + case responseFailed(reason: ResponseFailureReason) + case responseSerializeFailed(reason: ResponseSerializationFailureReason) case unkonwn(error: Error) + case uploadMediaFailed(reason: UploadMediaFailureReason) /// Initializes a TwitterAPIKitError from a generic Error. /// - Parameter error: The error to convert to TwitterAPIKitError. @@ -308,6 +303,7 @@ public extension TwitterAPIKitError.UploadMediaFailureReason { } public extension TwitterAPIKitError.RefreshOAuth20TokenFailureReason { + /// A localized description of the refresh OAuth 2.0 token failure reason. var localizedDescription: String { switch self { case let .invalidAuthenticationMethod(method): @@ -320,6 +316,7 @@ public extension TwitterAPIKitError.RefreshOAuth20TokenFailureReason { } } + /// The underlying error if one exists. var underlyingError: Error? { switch self { case .invalidAuthenticationMethod, .refreshTokenIsMissing: diff --git a/Sources/TwitterAPIKit/TwitterAPIRequest.swift b/Sources/TwitterAPIKit/TwitterAPIRequest.swift index dea58b5c..b88c878c 100644 --- a/Sources/TwitterAPIKit/TwitterAPIRequest.swift +++ b/Sources/TwitterAPIKit/TwitterAPIRequest.swift @@ -43,12 +43,11 @@ public enum BodyContentType: String { /// Represents a part of a multipart form data request. public enum MultipartFormDataPart { - /// A simple key-value pair where the value is stringified using String(describing:). - case value(name: String, value: Any) - /// A file upload part containing binary data and metadata. case data(name: String, value: Data, filename: String, mimeType: String) + /// A simple key-value pair where the value is stringified using String(describing:). + case value(name: String, value: Any) /// The name of the form part. public var name: String { switch self { @@ -150,6 +149,10 @@ public extension TwitterAPIRequest { } extension TwitterAPIRequest { + /// Builds a URL request for the given environment. + /// - Parameters: + /// - environment: The environment to build the request for. + /// - Returns: A URL request. public func buildRequest(environment: TwitterAPIEnvironment) throws -> URLRequest { guard var urlComponent = URLComponents( @@ -166,7 +169,10 @@ extension TwitterAPIRequest { .map { .init(name: $0.urlEncodedString, value: "\($1)".urlEncodedString) } } - var request = URLRequest(url: urlComponent.url!) + guard let url = urlComponent.url else { + throw TwitterAPIKitError.requestFailed(reason: .invalidURL(url: "")) + } + var request = URLRequest(url: url) request.httpMethod = method.rawValue if !bodyParameters.isEmpty { @@ -223,10 +229,12 @@ extension TwitterAPIRequest { return request } + /// Returns the URL for the request. public func requestURL(for environment: TwitterAPIEnvironment) -> URL { return environment.baseURL(for: baseURLType).appendingPathComponent(path) } + /// Returns the parameters for OAuth. public var parameterForOAuth: [String: Any] { switch bodyContentType { case .wwwFormUrlEncoded: diff --git a/Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift b/Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift index 2f5b8f4b..a70a8324 100644 --- a/Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift +++ b/Sources/TwitterAPIKit/TwitterAPISessionDelegate.swift @@ -5,9 +5,17 @@ import Foundation +/// Protocol for delegated tasks that can receive data in chunks and handle completion public protocol TwitterAPISessionDelegatedTask { + /// The unique identifier for this task var taskIdentifier: Int { get } + + /// Appends a chunk of data received from the network + /// - Parameter chunk: The data chunk to append func append(chunk: Data) + + /// Called when the task completes, with an optional error + /// - Parameter error: The error that occurred, if any func complete(error: Error?) } @@ -40,6 +48,10 @@ public class TwitterAPISessionDelegate: NSObject, URLSessionDataDelegate { task.complete(error: error) } + + deinit { + // De-init Logic Here + } } extension TwitterAPISessionDelegate: TwitterAPISessionDelegatedJSONTaskDelegate { diff --git a/Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift b/Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift index 6ffd4bd0..2875ccdf 100644 --- a/Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift +++ b/Sources/TwitterAPIKit/TwitterAuthenticationMethod.swift @@ -6,16 +6,20 @@ import Foundation /// Represents different methods of authentication available for Twitter API requests. -public enum TwitterAuthenticationMethod { +public enum TwitterAuthenticationMethod { + // swiftlint:disable sorted_enum_cases /// No authentication method specified. case basic(apiKey: String, apiSecretKey: String) - + /// Bearer token authentication for OAuth2 app-only access. case bearer(String) - - /// No authentication required. - case none + // swiftlint:disable discouraged_none_name + /// No authentication required. + case `none` + // swiftlint:enable discouraged_none_name + + /// Authentication using OAuth 1.0a protocol (legacy). @available(*, deprecated, renamed: "oauth10a") case oauth( consumerKey: String, @@ -32,6 +36,7 @@ public enum TwitterAuthenticationMethod { /// Used to execute the OAuth 2.0 Authorization Code Flow with PKCE authentication flow. case requestOAuth20WithPKCE(OAuth20WithPKCEClientType) + // swiftlint:enable sorted_enum_cases } /// Extension containing OAuth-related types and functionality. diff --git a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift index 2c5af941..42dbf2d8 100644 --- a/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift +++ b/Tests/TwitterAPIKitTests/APIv1/Media/UploadMediaUtilTests.swift @@ -22,6 +22,7 @@ internal class UploadMediaUtilTests: XCTestCase { MockURLProtocol.cleanup() } + // swiftlint:disable:next function_body_length public func testWithProcessing() throws { let config = URLSessionConfiguration.default config.protocolClasses = [MockURLProtocol.self] @@ -424,6 +425,7 @@ internal class UploadMediaUtilTests: XCTestCase { wait(for: [exp], timeout: 10) } + // swiftlint:disable:next function_body_length public func testWithProcessingError() throws { let config = URLSessionConfiguration.default config.protocolClasses = [MockURLProtocol.self] diff --git a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift index c58e77c8..35c252ad 100644 --- a/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift +++ b/Tests/TwitterAPIKitTests/AuthAPI/TwitterOAuth2AccessTokenTests.swift @@ -21,7 +21,10 @@ internal class TwitterOAuth2AccessTokenTests: XCTestCase { } """#.utf8 ) - let token = try TwitterOAuth2AccessToken(jsonData: data)! + guard let token = try TwitterOAuth2AccessToken(jsonData: data) else { + XCTFail("Failed to create test token") + return + } XCTAssertEqual(token.scope, ["tweet.write", "tweet.read"]) XCTAssertEqual(token.tokenType, "bearer") XCTAssertEqual(token.expiresIn, 7_200) diff --git a/lint.txt b/lint.txt index e69de29b..2c89f460 100644 --- a/lint.txt +++ b/lint.txt @@ -0,0 +1,4 @@ + +> twitterapikit@1.0.0 lint +> swiftlint --config=.swiftlint.yml . +