| logRetryConnectionError(IOException, URL, int) |  | 0% |  | 0% | 2 | 2 | 13 | 13 | 1 | 1 |
| lambda$logRetryConnectionError$1(IOException, URL, long, int) |  | 0% | | n/a | 1 | 1 | 7 | 7 | 1 | 1 |
| interpretApiError(IOException, GitHubConnectorRequest, GitHubConnectorResponse) |   | 75% |   | 78% | 2 | 8 | 3 | 22 | 0 | 1 |
| prepareRedirectRequest(GitHubConnectorResponse, GitHubRequest) |   | 78% |   | 60% | 3 | 6 | 4 | 18 | 0 | 1 |
| lambda$getRateLimit$12(RateLimitTarget, GHRateLimit) |  | 0% |  | 0% | 3 | 3 | 1 | 1 | 1 | 1 |
| GitHubClient(String, GitHubConnector, GitHubRateLimitHandler, GitHubAbuseLimitHandler, GitHubRateLimitChecker, AuthorizationProvider) |   | 85% |   | 75% | 1 | 3 | 1 | 15 | 0 | 1 |
| getRedirectedMethod(int, String) |   | 50% |   | 33% | 4 | 5 | 3 | 5 | 0 | 1 |
| lambda$getRedirectedUri$0() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| detectKnownErrors(GitHubConnectorResponse, GitHubRequest, boolean) |   | 94% |  | 100% | 0 | 5 | 1 | 14 | 0 | 1 |
| isPrivateModeEnabled() |   | 86% |   | 75% | 1 | 3 | 2 | 4 | 0 | 1 |
| isAnonymous() |   | 78% |   | 75% | 1 | 3 | 2 | 3 | 0 | 1 |
| shouldIgnoreBody(GitHubConnectorResponse) |   | 89% |   | 75% | 1 | 3 | 1 | 6 | 0 | 1 |
| getLogin() |   | 94% |   | 75% | 1 | 3 | 1 | 7 | 0 | 1 |
| sendRequest(GitHubRequest, GitHubClient.BodyHandler) |  | 100% |  | 100% | 0 | 5 | 0 | 22 | 0 | 1 |
| prepareConnectorRequest(GitHubRequest, AuthorizationProvider) |  | 100% |  | 100% | 0 | 7 | 0 | 19 | 0 | 1 |
| static {...} |  | 100% | | n/a | 0 | 1 | 0 | 11 | 0 | 1 |
| getMappingObjectReader(GitHubConnectorResponse) |  | 100% |   | 75% | 1 | 3 | 0 | 9 | 0 | 1 |
| detectInvalidCached404Response(GitHubConnectorResponse, GitHubRequest) |  | 100% |  | 100% | 0 | 5 | 0 | 7 | 0 | 1 |
| detectExpiredToken(GitHubConnectorResponse, GitHubRequest) |  | 100% |   | 87% | 1 | 5 | 0 | 10 | 0 | 1 |
| rateLimit(RateLimitTarget) |  | 100% |   | 75% | 1 | 3 | 0 | 8 | 0 | 1 |
| noteRateLimit(RateLimitTarget, GitHubConnectorResponse) |  | 100% | | n/a | 0 | 1 | 0 | 9 | 0 | 1 |
| lambda$getRateLimit$14(RateLimitTarget) |  | 100% | | n/a | 0 | 1 | 0 | 13 | 0 | 1 |
| checkApiUrlValidity() |  | 100% |  | 100% | 0 | 2 | 0 | 8 | 0 | 1 |
| lambda$logResponseBody$9(GitHubConnectorResponse) |  | 100% | | n/a | 0 | 1 | 0 | 6 | 0 | 1 |
| lambda$logResponse$8(GitHubConnectorResponse) |  | 100% | | n/a | 0 | 1 | 0 | 4 | 0 | 1 |
| lambda$logRequest$7(GitHubConnectorRequest) |  | 100% | | n/a | 0 | 1 | 0 | 4 | 0 | 1 |
| lambda$isCredentialValid$3() |  | 100% | | n/a | 0 | 1 | 0 | 4 | 0 | 1 |
| isRedirecting(int) |  | 100% |   | 60% | 4 | 6 | 0 | 1 | 0 | 1 |
| parseInstant(String) |  | 100% |  | 100% | 0 | 3 | 0 | 5 | 0 | 1 |
| createResponse(GitHubConnectorResponse, GitHubClient.BodyHandler) |  | 100% |  | 100% | 0 | 3 | 0 | 5 | 0 | 1 |
| fetch(Class, String) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| lambda$shouldIgnoreBody$2(GitHubConnectorResponse) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| detectOTPRequired(GitHubConnectorResponse) |  | 100% |  | 100% | 0 | 3 | 0 | 4 | 0 | 1 |
| getRedirectedUri(URI, GitHubConnectorResponse) |  | 100% | | n/a | 0 | 1 | 0 | 5 | 0 | 1 |
| parseURL(String) |  | 100% |  | 100% | 0 | 2 | 0 | 3 | 0 | 1 |
| updateRateLimit(GHRateLimit) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| lambda$detectInvalidCached404Response$5(GitHubConnectorResponse) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| detectRedirect(GitHubConnectorResponse, GitHubRequest) |  | 100% |  | 100% | 0 | 2 | 0 | 4 | 0 | 1 |
| lambda$noteRateLimit$10(NumberFormatException) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| getRateLimit(RateLimitTarget) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| lambda$isCredentialValid$4() |  | 100% | | n/a | 0 | 1 | 0 | 5 | 0 | 1 |
| getMappingObjectReader(GitHub) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| requireCredential() |  | 100% |  | 100% | 0 | 2 | 0 | 3 | 0 | 1 |
| isCredentialValid() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| isOffline() |  | 100% |  | 100% | 0 | 2 | 0 | 1 | 0 | 1 |
| toInstantOrNull(Date) |  | 100% |  | 100% | 0 | 2 | 0 | 3 | 0 | 1 |
| unmodifiableListOrNull(List) |  | 100% |  | 100% | 0 | 2 | 0 | 1 | 0 | 1 |
| unmodifiableMapOrNull(Map) |  | 100% |  | 100% | 0 | 2 | 0 | 1 | 0 | 1 |
| printInstant(Instant) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| sendRequest(GitHubRequest.Builder, GitHubClient.BodyHandler) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| logRequest(GitHubConnectorRequest) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| logResponse(GitHubConnectorResponse) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| logResponseBody(GitHubConnectorResponse) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| lastRateLimit() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| lambda$getRateLimit$13(GitHubConnectorResponse) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getRateLimit() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getEncodedAuthorization() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| lambda$updateRateLimit$11(GHRateLimit, GHRateLimit) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| lambda$fetch$6(Class, GitHubConnectorResponse) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getMappingObjectWriter() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getApiUrl() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |