๐Ÿงช Palace iOS Test Report

Generated: 2026-07-21 20:03:47 UTC | Commit: 9cd6ebcf371d | Branch: fix/deflake-full-sweep

โœ… ALL TESTS PASSED

7872 tests completed in 12m 57s

7872
Total Tests
7737
Passed
0
Failed
133
Skipped
12m 57s
Duration
44.5%
Coverage

๐Ÿ“Š Tests by Class

Class Total Passed Failed Duration
โœ… AccessLintComplianceTests 11 11 0 8ms
โœ… AccessibilityAnnouncementCenterTests 20 20 0 1.58s
โœ… AccessibilityLabelTests 9 9 0 699ms
โœ… AccessibilityPreferencesTests 26 26 0 862ms
โœ… AccessibilityServiceTests 11 11 0 233ms
โœ… AccountAuthDocCarryoverTests 5 5 0 3.35s
โœ… AccountAuthSurfaceHostsTests 7 7 0 93ms
โœ… AccountAwareNetworkTests 10 10 0 138ms
โœ… AccountDetailCredentialStateTests 7 0 0 40ms
โœ… AccountDetailPINVisibilityTests 25 0 0 1.39s
โœ… AccountDetailSignOutConfirmationTests 2 0 0 9ms
โœ… AccountDetailViewModelGapTests 1 1 0 49ms
โœ… AccountDetailViewModelLeakTests 1 1 0 122ms
โœ… AccountDetailViewModelSignedInDerivationTests 5 0 0 88ms
โœ… AccountDetailViewModelTests 19 0 0 155ms
โœ… AccountDetailsAuthenticationIsBrowserBasedTests 10 10 0 165ms
โœ… AccountDetailsNeedsAuthAggregateTests 10 10 0 154ms
โœ… AccountDetailsURLTests 17 17 0 122ms
โœ… AccountModelGapTests 9 9 0 654ms
โœ… AccountModelTests 20 20 0 21ms
โœ… AccountProfileDocumentTests 3 3 0 63ms
โœ… AccountStateMachineTests 10 10 0 134ms
โœ… AccountSwitchCleanupTests 8 8 0 348ms
โœ… AccountSwitchIntegrationTests 8 8 0 85ms
โœ… AccountSwitchLifecycleTests 9 0 0 246ms
โœ… AccountsManagerAccountIndexTests 7 7 0 200ms
โœ… AccountsManagerCacheReadTests 4 4 0 499ms
โœ… AccountsManagerCacheTests 16 16 0 148ms
โœ… AccountsManagerCancellationTests 5 5 0 2.05s
โœ… AccountsManagerFirstRunDecodeTests 3 3 0 688ms
โœ… AccountsManagerGapTests 3 3 0 46ms
โœ… AccountsManagerHelpersTests 12 12 0 71ms
โœ… AccountsManagerIsolationLintTests 4 4 0 1.17s
โœ… AccountsManagerLaunchSnapshotTests 13 13 0 2.08s
โœ… AccountsManagerStateMachineWiringTests 16 16 0 3.78s
โœ… AccountsManagerTests 51 48 0 9.58s
โœ… ActiveSessionsViewModelTests 12 12 0 301ms
โœ… AdobeActivationTests 6 6 0 12ms
โœ… AdobeCertificateGapTests 7 7 0 218ms
โœ… AdobeDRMCharacterizationTests 21 21 0 226ms
โœ… AdobeDRMErrorGapTests 3 3 0 79ms
โœ… AdobeDRMHandlerTests 12 12 0 787ms
โœ… AdobeDRMServiceGapTests 2 2 0 3ms
โœ… AlertModelCoverageTests 6 6 0 4ms
โœ… AlertModelRetryTests 7 7 0 363ms
โœ… AlertModelTests 2 2 0 304ms
โœ… AlertPresentationRawGuardLintTests 6 6 0 37ms
โœ… AlertUtilsTests 20 20 0 559ms
โœ… AnnotationContractTests 3 3 0 21ms
โœ… AnnotationDeviceIDTests 2 2 0 5ms
โœ… AnnotationPostResponseContractTests 1 1 0 2ms
โœ… AnnouncementChainTests 5 5 0 7ms
โœ… AnnouncementTests 3 3 0 2ms
โœ… AnonymousBorrowBaselineFixtureTests 13 13 0 44ms
โœ… AnonymousBorrowCandidateFixtureTests 6 6 0 17ms
โœ… AnonymousBorrowDeltaTests 2 2 0 36ms
โœ… AppContainerAudiobookFactoryTests 3 3 0 119ms
โœ… AppContainerAuthCoordinatorRegistrationTests 3 3 0 2.68s
โœ… AppContainerImageLoaderInjectionTests 4 4 0 30ms
โœ… AppContainerIsolationLintTests 7 7 0 1.73s
โœ… AppContainerResetTests 5 5 0 138ms
โœ… AppContainerTests 4 4 0 3ms
โœ… AppContainerWithSignInModalSheetPresenterTests 2 2 0 3.46s
โœ… AppHealthViewModelTests 8 8 0 66ms
โœ… AppLaunchTrackerExtendedTests 16 16 0 227ms
โœ… AppLaunchTrackerTests 10 10 0 256ms
โœ… AppLaunchTrackerWiringTests 2 2 0 845ms
โœ… AppRatingServiceOverrideTests 3 3 0 3.32s
โœ… AppRatingServiceTests 9 9 0 148ms
โœ… AppRouteTests 5 5 0 14ms
โœ… AppTabHostMiniPlayerIntegrationTests 6 6 0 193ms
โœ… AppTabHostViewBadgeCountTests 10 10 0 63ms
โœ… AppTabRouterCoverageTests 4 4 0 539ms
โœ… AppTabRouterGapTests 3 3 0 164ms
โœ… ArrayExtensionsTests 6 6 0 974ms
โœ… AudioBookmarkGapTests 6 6 0 172ms
โœ… AudioEngineWrapperTests 8 8 0 882ms
โœ… AudioInterruptionLogicTests 6 6 0 937ms
โœ… AudioSessionActivatorTests 8 8 0 275ms
โœ… AudiobookAccessibilityTests 7 7 0 12ms
โœ… AudiobookBackgroundAudioTests 2 2 0 30ms
โœ… AudiobookBookmarkBusinessLogicConcurrencyTests 3 3 0 4.74s
โœ… AudiobookBookmarkBusinessLogicPositionWriteTests 6 6 0 1.03s
โœ… AudiobookBookmarkBusinessLogicTests 21 21 0 3.87s
โœ… AudiobookChapterTOCNormalizationTests 6 6 0 43ms
โœ… AudiobookColdLoadRecoveryTests 4 4 0 4ms
โœ… AudiobookCrossVendorSmokeTests 4 4 0 1.18s
โœ… AudiobookDataManagerEmptyQueueTests 1 1 0 2ms
โœ… AudiobookDataManagerErrorHandlingTests 5 5 0 485ms
โœ… AudiobookDataManagerModelsTests 20 20 0 665ms
โœ… AudiobookDataManagerNetworkSyncTests 5 5 0 58ms
โœ… AudiobookDataManagerSaveTests 4 4 0 52ms
โœ… AudiobookDataManagerStoreRecoveryTests 5 5 0 71ms
โœ… AudiobookFileLoggerTests 14 14 0 235ms
โœ… AudiobookFirstOpenHangTests 14 14 0 1.48s
โœ… AudiobookLoadFailureSAMLReauthTests 10 10 0 1.09s
โœ… AudiobookLoaderDispatchTests 7 7 0 162ms
โœ… AudiobookLoaderFinalizeBuildTests 11 11 0 180ms
โœ… AudiobookLoaderOPDSShapeMatrixTests 8 0 0 330ms
โœ… AudiobookLoaderPredicateTests 11 11 0 150ms
โœ… AudiobookLoaderTests 2 2 0 602ms
โœ… AudiobookMorphingPlayerViewTests 10 10 0 1.49s
โœ… AudiobookNetworkValidationTests 3 3 0 3ms
โœ… AudiobookOpenStateRaceTests 3 3 0 401ms
โœ… AudiobookPhoneAlertContentTests 3 3 0 7ms
โœ… AudiobookPlaybackStateTests 3 3 0 34ms
โœ… AudiobookPlaybackTests 26 26 0 115ms
โœ… AudiobookPlaytimesLifecycleTests 6 6 0 287ms
โœ… AudiobookPositionAdapterContractTests 3 3 0 376ms
โœ… AudiobookPositionPolicyValidatorTests 14 14 0 49ms
โœ… AudiobookPositionRestoreTests 18 18 0 364ms
โœ… AudiobookSAMLReauthTests 6 6 0 6.70s
โœ… AudiobookSessionErrorDescriptionTests 4 4 0 4ms
โœ… AudiobookSessionErrorExtTests 4 4 0 48ms
โœ… AudiobookSessionErrorTests 3 3 0 99ms
โœ… AudiobookSessionManagerErrorMappingTests 6 6 0 19ms
โœ… AudiobookSessionManagerFlagGatePresentationTests 4 4 0 226ms
โœ… AudiobookSessionManagerPresenterMigrationTests 10 10 0 86ms
โœ… AudiobookSessionManagerShutdownTests 12 12 0 336ms
โœ… AudiobookSessionPresenterTests 31 31 0 373ms
โœ… AudiobookSessionStateTests 6 6 0 6ms
โœ… AudiobookSessionStateTransitionTests 22 22 0 12.81s
โœ… AudiobookSkipIntervalSettingsTests 7 7 0 200ms
โœ… AudiobookSleepTimerIntegrationTests 5 5 0 516ms
โœ… AudiobookStorageLocationTests 3 3 0 24ms
โœ… AudiobookTOCTests 18 18 0 261ms
โœ… AudiobookTimeEntryTests 6 6 0 14ms
โœ… AudiobookTimeTrackerEdgeTests 8 8 0 49ms
โœ… AudiobookTimeTrackerLifecycleTests 5 5 0 1.07s
โœ… AudiobookTimeTrackerTests 9 9 0 136ms
โœ… AudiobookTrackCompletionTests 2 2 0 16ms
โœ… AudiobookTypeRoutingTests 5 5 0 47ms
โœ… AudiobookVendorAdapterTests 5 5 0 17ms
โœ… AudiobookmarkTests 4 4 0 62ms
โœ… AuthCoordinatorTelemetryTests 5 5 0 98ms
โœ… AuthDecisionEventEmissionTests 7 7 0 20ms
โœ… AuthDocumentContractTests 2 2 0 13ms
โœ… AuthDocumentVariantsContractTests 5 5 0 21ms
โœ… AuthErrorCategoryTests 12 12 0 38ms
โœ… AuthErrorProblemDocSeamTests 6 6 0 45ms
โœ… AuthFlowSecurityTests 3 0 0 29ms
โœ… AuthReducerTests 21 21 0 764ms
โœ… AuthTypeTests 7 7 0 62ms
โœ… AuthenticationTests 16 16 0 72ms
โœ… BackgroundDownloadHandlerTests 28 28 0 1.53s
โœ… BackgroundListenerTests 2 2 0 117ms
โœ… BackgroundSessionRoutingTests 6 6 0 179ms
โœ… BackupExclusionMigrationTests 3 3 0 19ms
โœ… BadgeDefinitionTests 33 33 0 15.44s
โœ… BadgeServiceTests 16 16 0 212ms
โœ… BadgeUnlockPhaseTests 4 4 0 5ms
โœ… BadgesViewModelTests 14 14 0 1.18s
โœ… BasicAuthEmptyCredentialTests 4 4 0 458ms
โœ… BearerTokenAdapterTests 5 4 0 30ms
โœ… BearerTokenFulfillFlowTests 4 4 0 27ms
โœ… BearerTokenRefreshTests 4 4 0 51ms
โœ… BearerTokenResponseDetectionTests 7 7 0 61ms
โœ… BeginningPositionPolicyTests 8 8 0 16ms
โœ… BookAvailabilityFormatterTests 18 18 0 116ms
โœ… BookButtonMapperHoldReadyTests 10 10 0 171ms
โœ… BookButtonMapperTests 21 21 0 375ms
โœ… BookButtonMapperViewModelTests 18 18 0 726ms
โœ… BookButtonStateTests 8 8 0 74ms
โœ… BookButtonTypeMetaTests 4 4 0 11ms
โœ… BookButtonTypeTests 13 13 0 154ms
โœ… BookCellModelActionTests 18 18 0 613ms
โœ… BookCellModelCacheInvalidationTests 8 8 0 141ms
โœ… BookCellModelCachePrefetchSafetyTests 9 9 0 226ms
โœ… BookCellModelCacheTests 22 22 0 17.76s
โœ… BookCellModelComputedPropertyTests 19 19 0 938ms
โœ… BookCellModelOfflineTests 9 9 0 168ms
โœ… BookCellModelRegistryBindingTests 4 4 0 1.47s
โœ… BookCellModelStateTests 16 16 0 244ms
โœ… BookCellModelStreamingHTMLTests 2 2 0 285ms
โœ… BookCellStateComprehensiveTests 14 14 0 797ms
โœ… BookContentResetServiceTests 2 2 0 19ms
โœ… BookDetailMetadataHydrationTests 6 6 0 92ms
โœ… BookDetailViewModelAudiobookDismissTests 1 1 0 18ms
โœ… BookDetailViewModelTests 91 91 0 2.13s
โœ… BookFileManagerSideloadResolutionTests 4 4 0 746ms
โœ… BookFileManagerTests 8 8 0 142ms
โœ… BookListViewAccessibilityTests 9 9 0 1.44s
โœ… BookPreviewTests 4 4 0 49ms
โœ… BookRegistryStoreTests 26 26 0 1.34s
โœ… BookRegistrySyncReadinessTests 3 2 0 762ms
โœ… BookRegistrySyncReentrancyTests 6 6 0 164ms
โœ… BookRegistrySyncSideloadExemptionTests 2 0 0 1.35s
โœ… BookRegistrySyncTests 35 30 0 1.71s
โœ… BookReturnCleverReauthTests 1 1 0 135ms
โœ… BookReturnServiceAuthCoordinatorTests 3 3 0 160ms
โœ… BookReturnServiceContractTests 6 6 0 191ms
โœ… BookReturnServiceTests 16 16 0 334ms
โœ… BookServiceAudiobookOpenTests 2 2 0 6ms
โœ… BookSignInRedirectHandlerTests 8 8 0 109ms
โœ… BookStateIntegrationTests 8 8 0 93ms
โœ… BookmarkBusinessLogicExtendedTests 6 6 0 638ms
โœ… BookmarkDeletionLogTests 3 3 0 109ms
โœ… BookmarkDeviceIdMatchingTests 3 3 0 101ms
โœ… BookmarkExistenceTests 4 4 0 139ms
โœ… BookmarkManagerTests 24 24 0 540ms
โœ… BookmarkSortingTests 1 1 0 385ms
โœ… BookmarkSyncTests 3 3 0 806ms
โœ… BorrowAndDownloadIntegrationTests 7 7 0 303ms
โœ… BorrowErrorMessageTests 13 13 0 235ms
โœ… BorrowErrorPresenterTests 6 6 0 244ms
โœ… BorrowOperationAuthCoordinatorTests 6 6 0 211ms
โœ… BorrowOperationCleverReauthTests 2 2 0 277ms
โœ… BorrowOperationContractTests 6 6 0 1.62s
โœ… BorrowOperationStreamingHTMLTests 3 3 0 16ms
โœ… BorrowOperationTests 13 13 0 193ms
โœ… BorrowOperationTimeoutTests 3 3 0 114ms
โœ… BorrowReducerContractTests 2 2 0 33ms
โœ… BorrowReducerTests 21 21 0 112ms
โœ… BundledRegistrySnapshotTests 5 5 0 177ms
โœ… ButtonStateMonotonicClampTests 10 10 0 3.50s
โœ… ButtonStateTests 16 16 0 170ms
โœ… ButtonStyleTypeTests 2 2 0 3ms
โœ… C64ConversionTests 6 6 0 12ms
โœ… CarPlayAudiobookBridgePresenterMigrationTests 2 2 0 533ms
โœ… CarPlayAuthHelperReadinessTests 3 3 0 1.56s
โœ… CarPlayChapterListTests 3 3 0 42ms
โœ… CarPlayIntegrationTests 2 2 0 22ms
โœ… CarPlayLibraryRefreshTests 3 3 0 10ms
โœ… CarPlayNowPlayingTemplateTests 4 4 0 525ms
โœ… CarPlayOpenAppAlertTests 6 6 0 4.91s
โœ… CarPlayPlaybackErrorTests 8 8 0 22ms
โœ… CarPlayTests 12 12 0 88ms
โœ… CarPlayTimeTrackingTests 3 3 0 172ms
โœ… CatalogAPIDedupeTests 3 3 0 445ms
โœ… CatalogAPIEntryPointTests 1 1 0 3ms
โœ… CatalogAccessibilityTests 8 8 0 104ms
โœ… CatalogCacheKeyAndIsolationTests 12 12 0 2.63s
โœ… CatalogCacheMetadataExactBoundaryTests 4 4 0 3ms
โœ… CatalogCacheMetadataTests 21 21 0 100ms
โœ… CatalogFeedModelTests 4 4 0 666ms
โœ… CatalogFilterGroupModelTests 17 17 0 29ms
โœ… CatalogFilterModelTests 17 17 0 373ms
โœ… CatalogFilterServiceTests 29 29 0 43ms
โœ… CatalogFilterTests 1 1 0 <1ms
โœ… CatalogLaneAssemblyTests 7 7 0 166ms
โœ… CatalogLaneModelStructTests 20 20 0 320ms
โœ… CatalogLaneModelTests 3 3 0 7ms
โœ… CatalogLaneMoreFilterStateTests 8 8 0 37ms
โœ… CatalogLaneMoreViewModelTests 43 43 0 219ms
โœ… CatalogLaneRowViewAccessibilityTests 11 11 0 134ms
โœ… CatalogLaneSortingTests 5 5 0 30ms
โœ… CatalogLoadIntegrationTests 6 6 0 33ms
โœ… CatalogOPDS2NegotiationTests 12 12 0 474ms
โœ… CatalogPreloaderTests 6 6 0 31ms
โœ… CatalogProblemDocumentTests 6 6 0 107ms
โœ… CatalogRepositoryCoreTests 9 9 0 505ms
โœ… CatalogRepositoryStaleWhileRevalidateTests 12 12 0 359ms
โœ… CatalogRepositoryTests 19 19 0 5.75s
โœ… CatalogSearchViewModelRegistryUpdateTests 5 5 0 107ms
โœ… CatalogSearchViewModelTests 67 67 0 7.06s
โœ… CatalogSelectorsTests 2 2 0 2ms
โœ… CatalogSortServiceTests 14 14 0 290ms
โœ… CatalogStateTests 7 7 0 21ms
โœ… CatalogViewContinueRowsIntegrationTests 3 3 0 64ms
โœ… CatalogViewModelStateMachineTests 19 19 0 2.61s
โœ… ChaosFaultInjectionTests 5 5 0 37ms
โœ… ChapterChangeDetectorTests 5 5 0 5ms
โœ… ChapterTOCNormalizerTests 7 7 0 129ms
โœ… CirculationAnalyticsTests 4 4 0 59ms
โœ… ColdStartResumeIntegrationTests 10 10 0 987ms
โœ… ColorExtensionTests 5 5 0 11ms
โœ… ConcurrentBookStateTests 3 3 0 12ms
โœ… ConcurrentDownloadStateTests 3 3 0 17ms
โœ… ConcurrentTokenRefreshTests 2 2 0 24ms
โœ… ContinueRowSectionTests 6 6 0 69ms
โœ… ContinuousPlaybackTrackingTests 3 3 0 1.46s
โœ… CookiePersistenceTests 10 10 0 2.70s
โœ… CrawlStateTests 16 16 0 2.40s
โœ… CrawlableFeedAnalysisTests 17 17 0 600ms
โœ… CrawlerFallbackTests 12 12 0 8.71s
โœ… CredentialEdgeCaseTests 6 6 0 9ms
โœ… CredentialPrivacyTests 4 4 0 6ms
โœ… CredentialPromptCoordinatorTests 4 4 0 56ms
โœ… CredentialSnapshotInvalidationTests 5 0 0 84ms
โœ… CrossDeviceBookmarkSyncTests 12 12 0 296ms
โœ… CrossDeviceSyncE2ETests 5 5 0 209ms
โœ… CrossDomain401Tests 8 8 0 40ms
โœ… CrossFormatMappingTests 14 14 0 103ms
โœ… DPLAErrorTests 3 3 0 19ms
โœ… DRMAdversarialTests 4 1 0 84ms
โœ… DRMFulfilledPublicationTests 6 6 0 5ms
โœ… DataBase64Tests 3 3 0 5ms
โœ… DataReceptionComparisonTests 2 2 0 26ms
โœ… DateExtensionTests 9 9 0 1.58s
โœ… DateFormattingTests 4 4 0 25ms
โœ… Date_NYPLAdditionsTests 7 7 0 2.80s
โœ… DebugSettingsForceSkeletonsTests 4 4 0 19ms
โœ… DebugSettingsGapTests 4 4 0 27ms
โœ… DebugSettingsTests 31 31 0 1.64s
โœ… DefaultCatalogAPITests 31 31 0 163ms
โœ… DefaultRecentlyReadingServiceTests 13 13 0 4.43s
โœ… DeriveInitialStateTests 4 4 0 7ms
โœ… DeveloperSettingsEngineeringTierTests 4 4 0 9ms
โœ… DeveloperSettingsViewModelOverrideTests 3 0 0 56ms
โœ… DeviceLogCollectorGapTests 2 2 0 12ms
โœ… DeviceLogCollectorTests 13 13 0 223ms
โœ… DeviceOrientationTests 7 7 0 139ms
โœ… DeviceSpecificErrorMonitorTests 11 11 0 356ms
โœ… DictionaryExtensionsTests 5 5 0 1.14s
โœ… DiskBudgetManagerTests 7 7 0 21ms
โœ… DiskBudgetTests 2 2 0 2.26s
โœ… DownloadAlertPresenterTests 8 8 0 120ms
โœ… DownloadAnnouncementServiceTests 12 12 0 148ms
โœ… DownloadAuthRetryHandlerAuthCoordinatorTests 6 6 0 2.60s
โœ… DownloadAuthRetryHandlerTaskLifecycleTests 4 4 0 399ms
โœ… DownloadAuthRetryHandlerTests 17 17 0 1.91s
โœ… DownloadCancellationHandlerTests 5 5 0 210ms
โœ… DownloadCompleteMomentTests 6 6 0 5ms
โœ… DownloadCompletionParserTests 9 9 0 195ms
โœ… DownloadCoordinatorIntegrationTests 10 10 0 238ms
โœ… DownloadCoordinatorTests 11 11 0 45ms
โœ… DownloadDiskSpaceTests 2 2 0 11ms
โœ… DownloadErrorInfoTests 3 3 0 833ms
โœ… DownloadErrorRecoveryPolicyTests 11 11 0 355ms
โœ… DownloadErrorRecoveryTests 3 3 0 170ms
โœ… DownloadFreeSpaceExhaustionTests 11 11 0 2.60s
โœ… DownloadInfoTests 5 5 0 15ms
โœ… DownloadIntegrityTests 10 10 0 678ms
โœ… DownloadOnlyOnWiFiTests 10 10 0 314ms
โœ… DownloadPersistenceStoreTests 5 5 0 974ms
โœ… DownloadProgressPublisherCoreTests 19 19 0 780ms
โœ… DownloadProgressPublisherTests 2 2 0 6ms
โœ… DownloadQueueIntegrationTests 3 3 0 143ms
โœ… DownloadQueueOrchestratorTests 9 9 0 85ms
โœ… DownloadRMSDKHandoffTests 1 1 0 2ms
โœ… DownloadReconciliationLaunchOrderContractTests 2 2 0 30ms
โœ… DownloadReconciliationTests 17 17 0 155ms
โœ… DownloadRedirectTests 7 7 0 97ms
โœ… DownloadResumeAfterKillTests 7 7 0 282ms
โœ… DownloadSlotManagementTests 5 5 0 639ms
โœ… DownloadStartCoordinatorContractTests 5 5 0 3.08s
โœ… DownloadStartCoordinatorTests 9 9 0 144ms
โœ… DownloadStartDispatcherTests 26 26 0 106ms
โœ… DownloadStateMachineIntegrationTests 15 15 0 33ms
โœ… DownloadStateMachineTests 5 5 0 22ms
โœ… DownloadStateManagerTests 16 16 0 58ms
โœ… DownloadTaskLifecycleServiceTests 9 9 0 98ms
โœ… DownloadTaskPersistenceTests 14 14 0 131ms
โœ… DownloadThrottlingServiceTests 10 10 0 186ms
โœ… DownloadTransferRetryTests 6 6 0 2.05s
โœ… DownloadWatchdogTests 3 3 0 23ms
โœ… EPUBKeyCommandsPP4289Tests 4 4 0 8ms
โœ… EPUBModuleTests 4 4 0 23ms
โœ… EPUBPositionTests 10 10 0 126ms
โœ… EPUBSearchViewModelTests 18 18 0 70ms
โœ… EPUBToolbarToggleTests 11 11 0 14ms
โœ… EmailAddressTests 16 16 0 178ms
โœ… EpubSampleFactoryTests 5 5 0 9ms
โœ… ErrorActivityTrackerTests 12 12 0 137ms
โœ… ErrorDetailTests 12 12 0 316ms
โœ… ErrorDetailViewControllerGapTests 3 3 0 112ms
โœ… ErrorDetailViewControllerTests 14 14 0 62ms
โœ… ErrorLogExporterTests 5 5 0 155ms
โœ… ExecutorNetworkHermeticityTests 1 1 0 21ms
โœ… ExpiredLoanStringsTests 5 5 0 105ms
โœ… FacetEnumTests 3 3 0 36ms
โœ… FacetToolbarAccessibilityTests 5 5 0 213ms
โœ… FacetViewModelLogoDelegateTests 4 4 0 1.28s
โœ… FacetViewModelTests 18 18 0 88ms
โœ… FetchManifestWithBearerTokenLCPSafetyTests 1 1 0 19ms
โœ… FetchManifestWithBearerTokenTests 9 9 0 456ms
โœ… FetchOpenAccessManifestLCPSafetyTests 4 4 0 21ms
โœ… FileURLGenerationTests 3 3 0 85ms
โœ… FindawayChapterStatusGuardTests 1 1 0 2ms
โœ… FindawaySavedVsPlayedTests 1 1 0 24ms
โœ… FloatTPPAdditionsTests 5 5 0 16ms
โœ… FocusIndicationTests 7 7 0 418ms
โœ… FontManagerTests 17 17 0 92ms
โœ… ForceResetTests 6 6 0 43ms
โœ… GeneralCacheClearOnUpdateTests 3 3 0 12ms
โœ… GeneralCacheTests 20 20 0 287ms
โœ… GroupEnumTests 1 1 0 2ms
โœ… HTMLTextViewTests 70 70 0 14.03s
โœ… HoldNotificationClassificationTests 2 2 0 3ms
โœ… HoldsBadgeCountTests 9 9 0 139ms
โœ… HoldsBookViewModelTests 8 8 0 108ms
โœ… HoldsReducerTests 11 11 0 285ms
โœ… HoldsSyncFailureTests 12 12 0 97ms
โœ… HoldsViewModelTests 23 23 0 1.28s
โœ… HostFailureTrackerTests 2 2 0 6ms
โœ… ImageCacheContinuationTests 1 1 0 16ms
โœ… ImageCacheTypeTests 1 1 0 259ms
โœ… ImageCoverKeyUnificationTests 2 2 0 1ms
โœ… ImageLoaderTests 14 14 0 427ms
โœ… InflightFeedFetchesTimeoutTests 4 4 0 10.38s
โœ… IntExtensionsTests 4 4 0 66ms
โœ… IsReaderActiveTrackingModifierTests 4 4 0 25ms
โœ… KeyboardNavigationFKATests 11 11 0 41ms
โœ… KeyboardNavigationHandlerTests 16 16 0 397ms
โœ… KeyboardVoiceOverTests 5 5 0 40ms
โœ… LCPAcquisitionPredicateTests 4 4 0 7ms
โœ… LCPAdapterTests 8 8 0 79ms
โœ… LCPAudiobookURLSchemeTests 4 4 0 54ms
โœ… LCPAudiobooksTests 21 21 0 325ms
โœ… LCPBotanCRLGuardTests 5 5 0 106ms
โœ… LCPCharacterizationTests 31 31 0 393ms
โœ… LCPClientTests 8 8 0 55ms
โœ… LCPFulfillmentHandlerTests 8 8 0 498ms
โœ… LCPKeychainMigrationTests 3 3 0 687ms
โœ… LCPLibraryServiceTests 20 20 0 382ms
โœ… LCPLicenseDocumentDetectionTests 5 5 0 10ms
โœ… LCPLicenseFilePathTests 3 3 0 8ms
โœ… LCPOrphanedDownloadRegistryTests 4 4 0 382ms
โœ… LCPPDFAcquisitionPredicateTests 5 5 0 1.60s
โœ… LCPPDFDiskExtractTests 5 5 0 142ms
โœ… LCPPDFOpenProgressTests 13 13 0 78ms
โœ… LCPPassphraseReadinessTests 2 2 0 57ms
โœ… LCPSessionIdentifierTests 3 3 0 4ms
โœ… LegacySAMLProblemDocumentPropagationTests 7 7 0 336ms
โœ… LibrariesSectionViewModelTests 16 16 0 875ms
โœ… LibraryCatalogMergerTests 9 9 0 18ms
โœ… LibraryRegistryCrawlerTests 15 15 0 1.23s
โœ… LicensesServiceTests 4 4 0 244ms
โœ… LiveCrawlableParsingTest 4 0 0 74ms
โœ… LoanEvictionPolicyTests 13 13 0 12ms
โœ… LoanRenewalServiceTests 9 9 0 137ms
โœ… LocalBookContentServiceTests 7 7 0 66ms
โœ… LocalFileAdapterTests 6 5 0 24ms
โœ… LogTests 13 13 0 313ms
โœ… LoginKeyboardTests 8 8 0 18ms
โœ… MainActorHelpersTests 22 22 0 699ms
โœ… MappedCatalogBridgeTests 3 3 0 43ms
โœ… MappedCatalogModelTests 11 11 0 507ms
โœ… MockBackendExpiredCredentialsTests 3 3 0 53ms
โœ… MockBackendHoldsTests 3 3 0 207ms
โœ… MockBackendIntegrationTests 4 4 0 180ms
โœ… MockBackendLoanLimitTests 2 2 0 30ms
โœ… MockBackendRouteMatchingTests 4 4 0 28ms
โœ… MockBackendServerDownTests 1 1 0 19ms
โœ… MockIsolationLintTests 5 5 0 3.49s
โœ… MultiLibraryTokenIsolationTests 14 14 0 105ms
โœ… MyBooksDownloadCenterAccountIdThreadingTests 7 7 0 168ms
โœ… MyBooksDownloadCenterAdeptGapTests 3 3 0 36ms
โœ… MyBooksDownloadCenterConcurrencyTests 22 22 0 599ms
โœ… MyBooksDownloadCenterEvictionTests 7 7 0 442ms
โœ… MyBooksDownloadCenterOfflineTests 8 8 0 334ms
โœ… MyBooksDownloadSessionInvalidationTests 3 3 0 8ms
โœ… MyBooksSimplifiedBearerTokenTests 17 17 0 197ms
โœ… MyBooksViewModelBooksPublisherTests 3 3 0 55ms
โœ… MyBooksViewModelConcurrencyTests 4 4 0 338ms
โœ… MyBooksViewModelDownloadStateTests 3 3 0 38ms
โœ… MyBooksViewModelEmptyArrayTests 3 3 0 4ms
โœ… MyBooksViewModelEmptyStateTests 4 4 0 19ms
โœ… MyBooksViewModelExtendedTests 15 15 0 129ms
โœ… MyBooksViewModelFacetIntegrationTests 4 4 0 1.45s
โœ… MyBooksViewModelFacetPublisherTests 5 5 0 258ms
โœ… MyBooksViewModelFilterSortInteractionTests 2 2 0 9ms
โœ… MyBooksViewModelFilterTests 9 9 0 168ms
โœ… MyBooksViewModelGuardConditionsTests 2 2 0 9ms
โœ… MyBooksViewModelLargeDatasetTests 2 2 0 327ms
โœ… MyBooksViewModelLoadAccountTests 2 2 0 204ms
โœ… MyBooksViewModelLoginStateTests 4 4 0 532ms
โœ… MyBooksViewModelMultipleAuthorSortingTests 3 3 0 14ms
โœ… MyBooksViewModelNotificationTests 4 4 0 352ms
โœ… MyBooksViewModelOfflineFilteringTests 3 3 0 9ms
โœ… MyBooksViewModelPublisherTests 7 7 0 3.24s
โœ… MyBooksViewModelSearchEdgeCaseTests 6 6 0 66ms
โœ… MyBooksViewModelSearchQueryTests 3 3 0 329ms
โœ… MyBooksViewModelSortPersistenceTests 3 3 0 30ms
โœ… MyBooksViewModelSortingIntegrationTests 5 5 0 340ms
โœ… MyBooksViewModelSortingTests 6 6 0 228ms
โœ… MyBooksViewModelStateTransitionTests 3 3 0 352ms
โœ… MyBooksViewModelUIBindingTests 3 3 0 25ms
โœ… NSErrorAdditionsTests 7 7 0 9ms
โœ… NSNotificationTPPTests 3 3 0 19ms
โœ… NavigationCoordinatorTests 18 18 0 59ms
โœ… NavigationFreezePreventionTests 5 5 0 5ms
โœ… NetworkCacheClearRoutingTests 3 3 0 1.52s
โœ… NetworkExecutorCredentialGuardTests 8 8 0 62ms
โœ… NetworkExecutorResponseRegressionTests 4 4 0 144ms
โœ… NetworkExecutorTaskTypeTests 3 3 0 152ms
โœ… NetworkOfflineDetectionTests 3 3 0 111ms
โœ… NetworkQueueTests 11 11 0 72ms
โœ… NetworkRequestQueueTests 2 2 0 10.10s
โœ… NetworkRetryLogicTests 7 7 0 52ms
โœ… NetworkTimeoutTests 2 2 0 5ms
โœ… NotificationEventTypeContractTests 7 7 0 48ms
โœ… NotificationPayloadContractTests 10 10 0 137ms
โœ… NotificationServiceStateMachineTests 9 9 0 532ms
โœ… NotificationServiceTests 16 16 0 558ms
โœ… NotificationServiceTokenTests 13 13 0 282ms
โœ… NotificationSyncThrottleTests 5 5 0 82ms
โœ… NotificationTokenDataTests 4 4 0 11ms
โœ… NotificationTokenRegistrationTests 10 10 0 43ms
โœ… NowPlayingCoordinatorBackgroundTests 6 6 0 1.29s
โœ… NowPlayingCoordinatorTests 19 19 0 6.13s
โœ… OAuthSAMLRedirectRegressionTests 4 4 0 1.30s
โœ… OIDCAuthDocumentParsingTests 4 4 0 503ms
โœ… OIDCAuthTypeTests 5 5 0 21ms
โœ… OIDCAuthenticationPropertyTests 8 8 0 2.11s
โœ… OIDCCallbackEdgeCaseTests 9 9 0 1.25s
โœ… OIDCCallbackHandlingTests 5 5 0 504ms
โœ… OIDCCallbackSchemeTests 3 3 0 54ms
โœ… OIDCIsolationRegressionTests 6 6 0 1.01s
โœ… OIDCLoginRoutingTests 3 3 0 232ms
โœ… OIDCMakeRequestTests 3 3 0 116ms
โœ… OIDCNSCodingTests 1 1 0 141ms
โœ… OIDCNetworkLayer401Tests 5 5 0 237ms
โœ… OIDCReauthOnExpiredTokenTests 5 5 0 127ms
โœ… OIDCRedirectURIConstructionTests 6 6 0 243ms
โœ… OIDCRegressionTests 9 9 0 292ms
โœ… OIDCSelectedAuthenticationTests 2 2 0 50ms
โœ… OIDCSignOutRegressionTests 6 6 0 777ms
โœ… OIDCTokenRefreshRegressionTests 6 6 0 312ms
โœ… OIDCUpdateUserAccountTests 5 5 0 287ms
โœ… OIDCViewModelRegressionTests 1 1 0 97ms
โœ… OIDCViewModelSignInTests 2 2 0 8ms
โœ… OPDS1BorrowEntryContractTests 4 4 0 39ms
โœ… OPDS1CatalogGroupedContractTests 3 3 0 7ms
โœ… OPDS1HoldEntriesContractTests 4 4 0 879ms
โœ… OPDS1LoansFeedContractTests 6 6 0 21ms
โœ… OPDS1ParsingTests 34 34 0 562ms
โœ… OPDS1RevokeResponseContractTests 2 2 0 64ms
โœ… OPDS2AuthenticationDocumentTests 18 18 0 931ms
โœ… OPDS2AvailabilityTests 4 4 0 150ms
โœ… OPDS2BookBridgeTests 44 44 0 116ms
โœ… OPDS2BorrowResponseContractTests 3 3 0 3ms
โœ… OPDS2CatalogWiringTests 21 21 0 322ms
โœ… OPDS2CatalogsFeedTests 3 3 0 92ms
โœ… OPDS2ContributorTests 2 2 0 2ms
โœ… OPDS2EmptyFeedContractTests 1 1 0 8ms
โœ… OPDS2FeedContractTests 4 4 0 40ms
โœ… OPDS2FeedParsingTests 11 11 0 295ms
โœ… OPDS2FeedTests 14 14 0 80ms
โœ… OPDS2FullMetadataTests 4 4 0 11ms
โœ… OPDS2FullPublicationTests 13 13 0 219ms
โœ… OPDS2IntegrationTests 18 18 0 162ms
โœ… OPDS2LinkArrayTests 5 5 0 79ms
โœ… OPDS2LinkComputedPropertyTests 20 20 0 6.86s
โœ… OPDS2LinkRelTests 1 1 0 <1ms
โœ… OPDS2LinkTests 2 2 0 51ms
โœ… OPDS2ParsingTests 38 38 0 438ms
โœ… OPDS2PublicationExtendedTests 53 53 0 164ms
โœ… OPDS2PublicationImageTests 6 6 0 89ms
โœ… OPDS2PublicationNarratorTests 3 3 0 158ms
โœ… OPDS2PublicationTests 2 2 0 67ms
โœ… OPDS2SamlIDPTests 6 6 0 102ms
โœ… OPDS2SearchResultsContractTests 3 3 0 29ms
โœ… OPDS2SubjectTests 2 2 0 5ms
โœ… OPDS2SupportingTypesTests 5 5 0 38ms
โœ… OPDSAcquisitionPathExpandedTests 15 15 0 157ms
โœ… OPDSFeedCacheTests 14 14 0 178ms
โœ… OPDSFeedMigrationTests 11 11 0 20ms
โœ… OPDSFeedParsingTests 2 2 0 38ms
โœ… OPDSFeedServiceStateMachineTests 3 3 0 191ms
โœ… OPDSFeedServiceTests 2 2 0 12ms
โœ… OPDSFormatTests 13 13 0 65ms
โœ… OPDSParserCoreTests 4 4 0 3ms
โœ… OPDSParserTests 4 4 0 29ms
โœ… OPDSParsingTests 57 57 0 3.08s
โœ… OfflineActionTests 29 29 0 144ms
โœ… OfflineQueueCoordinatorTests 11 11 0 224ms
โœ… OfflineQueueServiceExtendedTests 13 13 0 5.30s
โœ… OfflineQueueServiceTests 17 17 0 8.36s
โœ… OpenAccessAdapterTests 13 13 0 218ms
โœ… OverdriveDeferredFulfillmentTests 6 6 0 243ms
โœ… OverdriveDownloadHandlerTests 9 9 0 141ms
โœ… OverdriveFulfillmentTests 25 24 0 403ms
โœ… PDFExtensionsTests 20 20 0 622ms
โœ… PDFKitThumbnailProviderTests 5 5 0 114ms
โœ… PDFReaderTests 12 12 0 325ms
โœ… PDFSearchEmptyStateTests 4 4 0 14ms
โœ… PP3596RegressionTests 3 3 0 58ms
โœ… Palace 2 2 0 <1ms
โœ… PalaceCheckPropertyTests 8 8 0 83ms
โœ… PalaceErrorCategoryTests 20 20 0 81ms
โœ… PalaceErrorExtendedTests 23 23 0 60ms
โœ… PalaceErrorTests 11 11 0 269ms
โœ… PalaceHapticTests 4 4 0 11ms
โœ… PalaceMotionTests 11 11 0 46ms
โœ… PalacePDFViewTests 12 12 0 163ms
โœ… PalacePressableButtonStyleTests 6 6 0 13ms
โœ… PalaceTestSetupObservationTests 4 4 0 283ms
โœ… PalaceWiringTestCaseTests 4 4 0 396ms
โœ… ParserFuzzTests 4 4 0 13.53s
โœ… PatronProfileContractTests 4 4 0 6ms
โœ… PerformanceMonitorTests 14 14 0 399ms
โœ… PerformanceReportTests 14 14 0 156ms
โœ… PersistentLoggerTests 9 9 0 1.11s
โœ… PlaybackBootstrapperAudioSessionTests 2 2 0 22ms
โœ… PlaybackBootstrapperTests 8 8 0 53ms
โœ… PlaybackFailureRecordTests 5 5 0 9ms
โœ… PlaybackOpenPolicyTests 7 7 0 260ms
โœ… PlaybackRateTests 18 18 0 42ms
โœ… PlaybackTrackingRegressionTests 5 5 0 373ms
โœ… PoolResponsivenessProbeTests 5 4 0 2.61s
โœ… PositionPersistenceLogicTests 6 6 0 10ms
โœ… PositionPersistenceTests 2 2 0 4ms
โœ… PositionSyncServiceTests 13 13 0 397ms
โœ… PositionSyncTests 5 5 0 217ms
โœ… PositionWriterContractTests 6 6 0 147ms
โœ… PostUpdateMigrationTests 5 5 0 32ms
โœ… ProblemDocumentContractTests 4 4 0 7ms
โœ… ProblemDocumentLoanExpiryTests 5 5 0 29ms
โœ… ProblemDocumentTests 12 12 0 1.72s
โœ… ProblemReportEmailTests 8 8 0 23ms
โœ… RatingCardMotionGateTests 5 5 0 4ms
โœ… RatingEligibilityPolicyTests 17 17 0 329ms
โœ… RatingEngagementTrackerTests 9 9 0 153ms
โœ… RatingFeedbackPresenterTests 3 3 0 2ms
โœ… RatingPromptPresenterTests 15 15 0 160ms
โœ… ReachabilityTests 10 10 0 13ms
โœ… Reader2BookmarkContractTests 3 3 0 96ms
โœ… Reader2PositionAdapterContractTests 4 3 0 251ms
โœ… Reader2PositionResumeContractTests 3 3 0 279ms
โœ… ReaderAccessibilityTests 7 7 0 66ms
โœ… ReaderChromeToggleFadeTests 3 3 0 3ms
โœ… ReaderEditingActionsTests 5 5 0 22ms
โœ… ReaderErrorTests 5 5 0 25ms
โœ… ReaderNavBarVoiceOverTests 2 2 0 64ms
โœ… ReaderServicePDFRouteTests 3 3 0 3ms
โœ… ReaderServiceSyncTests 3 3 0 44ms
โœ… ReaderThemeTests 24 24 0 339ms
โœ… ReadingPositionTests 22 22 0 288ms
โœ… ReadingSessionTrackerTests 13 13 0 146ms
โœ… ReadingStatsServiceTests 12 12 0 124ms
โœ… ReadingStatsStoreTests 9 9 0 97ms
โœ… RedirectHandlingIntegrationTests 4 4 0 1.43s
โœ… RedirectPolicyTests 9 9 0 249ms
โœ… RegistryFileRecoveryTests 21 21 0 320ms
โœ… RemoteFeatureFlagsGapTests 4 4 0 31ms
โœ… RemoteFeatureFlagsSideLoadingTests 5 5 0 134ms
โœ… RemoteFeatureFlagsTests 21 21 0 2.99s
โœ… ResourcePropertiesLengthTests 3 3 0 11ms
โœ… RetryClassificationTests 17 17 0 36ms
โœ… ReturnFlowTests 1 1 0 <1ms
โœ… RightsManagementDetectionTests 5 5 0 8ms
โœ… RightsManagementDispatcherTests 10 10 0 973ms
โœ… RuntimeQuiescenceGateTests 11 10 0 1.19s
โœ… RuntimeQuiescenceLintTests 5 5 0 907ms
โœ… SAMLCookieSyncTests 5 5 0 358ms
โœ… SAMLLogoutCallbackDetectionTests 4 4 0 656ms
โœ… SAMLLogoutLinkParsingTests 5 5 0 42ms
โœ… SAMLLogoutURLTests 4 4 0 197ms
โœ… SAMLPlusBiblioBoardExpirationTests 8 8 0 298ms
โœ… SEMigrationsTests 6 6 0 144ms
โœ… SafeDictionaryTests 21 21 0 285ms
โœ… SamplePlayerErrorTests 5 5 0 498ms
โœ… SampleTypeTests 8 8 0 292ms
โœ… SceneDelegateTests 1 1 0 <1ms
โœ… ScopedResetTests 9 9 0 284ms
โœ… SearchAccessibilityTests 11 11 0 21ms
โœ… SearchFlowIntegrationTests 8 8 0 546ms
โœ… SettingsViewModelComputedPropertyTests 6 6 0 418ms
โœ… SettingsViewModelEdgeCaseTests 7 7 0 45ms
โœ… SettingsViewModelGapTests 1 1 0 2ms
โœ… SettingsViewModelSyncTests 14 14 0 226ms
โœ… SettingsViewModelTests 33 33 0 1.17s
โœ… SideloadImportContractTests 1 1 0 15ms
โœ… SideloadedBookManagerTests 17 17 0 872ms
โœ… SideloadedBookRegistryTests 14 14 0 56ms
โœ… SideloadedLaneBridgeTests 6 6 0 90ms
โœ… SideloadedLaneViewModelTests 7 7 0 640ms
โœ… SignInFormPresentationTests 3 3 0 22ms
โœ… SignInModalLifecycleTests 9 9 0 190ms
โœ… SignInModalPredicateTests 3 3 0 44ms
โœ… SignInModalSAMLOIDCTests 6 6 0 15ms
โœ… SignInOAuthErrorPropagationTests 8 8 0 386ms
โœ… SignInToReadFlowIntegrationTests 5 5 0 1.14s
โœ… SignInWebSheetIntegrationTests 3 3 0 2m 1s
โœ… SignInWebSheetViewModelTests 31 31 0 124ms
โœ… SignOutCacheClearingTests 3 3 0 938ms
โœ… SingletonResetRegistryTests 5 5 0 37ms
โœ… SkeletonTests 22 22 0 771ms
โœ… StatsViewModelTests 10 10 0 403ms
โœ… StatusAnnouncementTests 22 22 0 1.40s
โœ… StopPositionSaveTests 2 2 0 3ms
โœ… StoreTests 5 5 0 110ms
โœ… StreamingReaderPresentationContractTests 1 1 0 4ms
โœ… StreamingReaderProgressStoreTests 7 7 0 73ms
โœ… StreamingReaderViewControllerScrollRestoreTests 12 12 0 631ms
โœ… StreamingReaderViewModelTests 9 9 0 86ms
โœ… StringExtensionTests 8 8 0 36ms
โœ… StringExtensionsTests 3 3 0 11ms
โœ… StringHTMLEntitiesTests 7 7 0 36ms
โœ… StringNYPLAdditionsTests 4 4 0 43ms
โœ… String_NYPLAdditionsTests 4 4 0 50ms
โœ… SupportSectionDecisionTests 5 5 0 182ms
โœ… SyncConflictResolutionTests 3 3 0 2ms
โœ… SyncDeletionGuardTests 5 5 0 37ms
โœ… SyncDeletionRatioTests 6 6 0 8ms
โœ… SyncPermissionTests 5 5 0 103ms
โœ… TPPAccountAuthStateEnumTests 5 5 0 20ms
โœ… TPPAccountListDataSourceTests 3 3 0 28ms
โœ… TPPAdobeActivationSkipTests 6 6 0 215ms
โœ… TPPAgeCheckCompletionTests 5 5 0 198ms
โœ… TPPAgeCheckIsValidTests 5 5 0 105ms
โœ… TPPAgeCheckStateMachineTests 4 4 0 560ms
โœ… TPPAgeCheckTests 6 6 0 1.52s
โœ… TPPAgeCheckVerifyDecisionTests 5 5 0 189ms
โœ… TPPAlertUtilsTests 45 45 0 3.93s
โœ… TPPAnnotationsHermeticTests 15 15 0 1.03s
โœ… TPPAnnotationsOverrideTests 4 4 0 488ms
โœ… TPPAnnotationsTests 29 29 0 2.66s
โœ… TPPAnnouncementManagerTests 3 3 0 11ms
โœ… TPPAuthDocumentContractTests 3 3 0 74ms
โœ… TPPBackgroundExecutorTests 3 3 0 65ms
โœ… TPPBadgeImageGapTests 2 2 0 9ms
โœ… TPPBaseReaderViewControllerInitialLocationTests 10 10 0 57ms
โœ… TPPBasicAuthTests 11 11 0 112ms
โœ… TPPBookAccessibilityLabelTests 8 8 0 69ms
โœ… TPPBookAuthorCoverageTests 3 3 0 2ms
โœ… TPPBookAuthorTests 6 6 0 56ms
โœ… TPPBookBearerTokenTests 9 8 0 508ms
โœ… TPPBookButtonsStateTests 7 7 0 282ms
โœ… TPPBookContentMetadataFilesHelperTests 9 9 0 123ms
โœ… TPPBookContentTypeConverterStreamingHTMLTests 2 2 0 28ms
โœ… TPPBookContentTypeConverterTests 4 4 0 368ms
โœ… TPPBookContentTypeExtendedTests 4 4 0 25ms
โœ… TPPBookContentTypeTests 14 14 0 43ms
โœ… TPPBookCoverRegistryTests 17 17 0 721ms
โœ… TPPBookCreationTests 7 7 0 33ms
โœ… TPPBookExtensionsTests 21 21 0 70ms
โœ… TPPBookIsDRMProtectedTests 9 9 0 500ms
โœ… TPPBookLocationCoverageTests 7 7 0 5ms
โœ… TPPBookLocationEdgeCaseTests 27 27 0 202ms
โœ… TPPBookLocationKeyTests 3 3 0 7ms
โœ… TPPBookLocationTests 11 11 0 59ms
โœ… TPPBookModelGapTests 4 4 0 13ms
โœ… TPPBookRegistryAsyncReadinessTests 3 3 0 161ms
โœ… TPPBookRegistryAtomicWriteTests 7 7 0 2.30s
โœ… TPPBookRegistryBookRetrievalTests 7 7 0 117ms
โœ… TPPBookRegistryBookmarkTests 7 7 0 201ms
โœ… TPPBookRegistryCorruptedDataTests 5 5 0 53ms
โœ… TPPBookRegistryDataTests 4 4 0 47ms
โœ… TPPBookRegistryDependencyTests 4 4 0 51ms
โœ… TPPBookRegistryFulfillmentIdTests 4 4 0 58ms
โœ… TPPBookRegistryLargeCorpusTests 5 5 0 1m 16s
โœ… TPPBookRegistryLoadReentrancyTests 2 2 0 24ms
โœ… TPPBookRegistryLocationTests 4 4 0 14.58s
โœ… TPPBookRegistryMigrationTests 16 16 0 1.70s
โœ… TPPBookRegistryPersistenceTests 10 10 0 2.05s
โœ… TPPBookRegistryProcessingTests 2 2 0 19.20s
โœ… TPPBookRegistryPublisherTests 6 6 0 94ms
โœ… TPPBookRegistryRecordPersistenceTests 3 3 0 23ms
โœ… TPPBookRegistryRecordTests 10 10 0 96ms
โœ… TPPBookRegistryStateConcurrencyTests 2 2 0 86ms
โœ… TPPBookRegistryStateManagementTests 11 11 0 86ms
โœ… TPPBookRegistryThreadSafetyTests 3 3 0 385ms
โœ… TPPBookRegistryUpdateAndRemoveTests 1 1 0 21ms
โœ… TPPBookRequiresAdobeDRMTests 6 6 0 99ms
โœ… TPPBookSerializationTests 13 13 0 127ms
โœ… TPPBookStateInitializationTests 4 4 0 142ms
โœ… TPPBookStateTests 4 4 0 6ms
โœ… TPPBookTests 98 98 0 3.02s
โœ… TPPBookmarkDeletionLogTests 11 11 0 84ms
โœ… TPPBookmarkFactoryInitTests 2 2 0 8ms
โœ… TPPBookmarkFactoryServerAnnotationEdgeCaseTests 5 5 0 4.09s
โœ… TPPBookmarkFactoryTests 15 15 0 181ms
โœ… TPPBookmarkR3ConversionTests 5 5 0 36ms
โœ… TPPBookmarkR3LocationTests 13 13 0 84ms
โœ… TPPBookmarkSpecTests 1 1 0 3ms
โœ… TPPCachingTests 3 3 0 7ms
โœ… TPPCapturedCredentialsTests 5 5 0 194ms
โœ… TPPConfigurationCustomRegistryTests 16 16 0 50ms
โœ… TPPConfigurationTests 22 22 0 212ms
โœ… TPPContentTypeTests 9 9 0 137ms
โœ… TPPCredentialConcurrencyTests 3 3 0 6ms
โœ… TPPCredentialIsolationE2ETests 5 0 0 130ms
โœ… TPPCredentialPersistenceTests 6 6 0 1.76s
โœ… TPPCredentialSnapshotCoherenceTests 3 0 0 22ms
โœ… TPPCredentialSnapshotTests 8 8 0 8ms
โœ… TPPCredentialsCoverageTests 9 9 0 14ms
โœ… TPPCredentialsTests 26 26 0 54ms
โœ… TPPCrossLibrarySignOutTests 6 6 0 789ms
โœ… TPPDRMFailureCredentialPreservationTests 4 4 0 136ms
โœ… TPPErrorLoggerTests 27 27 0 3.70s
โœ… TPPIdleSignOutRegressionTests 13 13 0 2.04s
โœ… TPPJWKConversionTest 1 1 0 154ms
โœ… TPPKeychainManagerTests 5 5 0 55ms
โœ… TPPLastReadPositionPosterTests 13 13 0 383ms
โœ… TPPLastReadPositionSynchronizerIntegrationTests 5 5 0 179ms
โœ… TPPLastReadPositionSynchronizerTests 23 23 0 251ms
โœ… TPPLastReadPositionSynchronizer_BehaviorDocumentationTests 5 5 0 1.34s
โœ… TPPLastReadPositionSynchronizer_BookLocationTests 9 9 0 98ms
โœ… TPPLastReadPositionSynchronizer_ConcurrencyTests 3 3 0 8ms
โœ… TPPLastReadPositionSynchronizer_ReadiumBookmarkTests 9 9 0 105ms
โœ… TPPLastReadPositionSynchronizer_SyncLogicTests 10 10 0 20ms
โœ… TPPLastReadPositionSynchronizer_WriterDelegationTests 4 4 0 1.08s
โœ… TPPLoginNoActivationTests 3 3 0 351ms
โœ… TPPMainThreadCheckerTests 4 4 0 13ms
โœ… TPPMigrationManagerTests 15 15 0 126ms
โœ… TPPNetworkExecutorAPITests 14 14 0 125ms
โœ… TPPNetworkExecutorConcurrencyTests 4 4 0 910ms
โœ… TPPNetworkExecutorStubbedTests 17 17 0 573ms
โœ… TPPNetworkExecutorTests 3 3 0 8ms
โœ… TPPNetworkResponderAuthCoordinatorTests 5 5 0 1.06s
โœ… TPPNetworkResponderSizeLimitTests 5 5 0 341ms
โœ… TPPNetworkResponderTests 12 12 0 106ms
โœ… TPPOPDSAcquisitionPathTests 5 5 0 67ms
โœ… TPPOPDSEntryTests 5 5 0 178ms
โœ… TPPOPDSFeedTests 3 3 0 61ms
โœ… TPPOPDSGroupSwiftTests 3 3 0 178ms
โœ… TPPOPDSLinkTests 7 7 0 23ms
โœ… TPPOpenSearchDescriptionExpandedTests 10 10 0 125ms
โœ… TPPOpenSearchDescriptionTests 1 1 0 4ms
โœ… TPPPDFDocumentMetadataTests 15 15 0 72ms
โœ… TPPPDFDocumentTests 8 8 0 263ms
โœ… TPPPDFLocationCoverageTests 7 7 0 66ms
โœ… TPPPDFLocationTests 10 10 0 141ms
โœ… TPPPDFPageBookmarkTests 9 9 0 1.45s
โœ… TPPPDFPageTests 5 5 0 18ms
โœ… TPPPDFReaderModeTests 6 6 0 8ms
โœ… TPPPDFReaderSearchBindingTests 3 3 0 4ms
โœ… TPPPerAccountIsolationTests 8 0 0 791ms
โœ… TPPPreferredAuthSelectionTests 8 8 0 441ms
โœ… TPPProblemDocumentCacheManagerTests 12 12 0 100ms
โœ… TPPProblemDocumentTests 21 21 0 1.46s
โœ… TPPReaderAppearanceTests 4 4 0 6ms
โœ… TPPReaderBlockNavigationTests 12 12 0 1.36s
โœ… TPPReaderBookmarksBusinessLogicTests 12 12 0 1.28s
โœ… TPPReaderBookmarksReadinessTests 2 2 0 72ms
โœ… TPPReaderFontTests 4 4 0 15ms
โœ… TPPReaderFootnoteAccessibilityTests 16 16 0 73ms
โœ… TPPReaderPageListBusinessLogicTests 27 27 0 3.06s
โœ… TPPReaderPositionReportTests 10 10 0 29ms
โœ… TPPReaderPreferencesLoadTests 3 3 0 34ms
โœ… TPPReaderSettingsTests 28 28 0 394ms
โœ… TPPReaderTOCBusinessLogicTests 15 15 0 219ms
โœ… TPPReaderTOCFlattenTests 2 2 0 116ms
โœ… TPPReadiumBookmarkLocationMatchingTests 5 5 0 6ms
โœ… TPPReadiumBookmarkTests 23 23 0 194ms
โœ… TPPReauthenticatorMockTests 2 2 0 5ms
โœ… TPPReauthenticatorTests 4 4 0 17ms
โœ… TPPReturnPromptHelperTests 5 5 0 17ms
โœ… TPPSAMLCookieExpirationTests 7 7 0 69ms
โœ… TPPSAMLFlowTests 10 10 0 3.07s
โœ… TPPSAMLReauthFlowTests 2 2 0 125ms
โœ… TPPSAMLRegressionTests 4 4 0 231ms
โœ… TPPSAMLSignInTests 26 26 0 15.29s
โœ… TPPSAMLStateIsolationTests 4 4 0 192ms
โœ… TPPSAMLStateMachineTests 6 6 0 468ms
โœ… TPPSettingsTests 6 6 0 22.89s
โœ… TPPSignInAdobeSkipTests 14 14 0 594ms
โœ… TPPSignInAuthStateTransitionTests 3 3 0 109ms
โœ… TPPSignInBusinessLogicExtendedTests 58 58 0 2.30s
โœ… TPPSignInBusinessLogicOAuthTests 11 11 0 1.23s
โœ… TPPSignInBusinessLogicSignOutTests 11 11 0 1.46s
โœ… TPPSignInBusinessLogicStateMachineTests 10 10 0 427ms
โœ… TPPSignInBusinessLogicTests 18 18 0 2.13s
โœ… TPPSignInBusinessLogicTokenFlowTests 3 3 0 481ms
โœ… TPPSignInBusinessLogicValidationCallbackOrderTests 2 2 0 122ms
โœ… TPPSignInErrorHandlingTests 2 2 0 94ms
โœ… TPPSignInProfileDocEdgeCaseTests 3 3 0 200ms
โœ… TPPSignedInStateProviderTests 3 3 0 9ms
โœ… TPPUserAccountAuthStateTests 6 6 0 5ms
โœ… TPPUserAccountConcurrencyTests 1 1 0 2ms
โœ… TPPUserAccountGapTests 4 4 0 11ms
โœ… TPPUserAccountIsolationLintTests 3 3 0 547ms
โœ… TPPUserAccountTestFactoryTests 7 0 0 395ms
โœ… TPPUserFriendlyErrorTests 11 11 0 9ms
โœ… TPPUserNotificationsTests 10 10 0 293ms
โœ… TPPXMLSwiftTests 16 16 0 32ms
โœ… TPPXMLTests 3 3 0 7ms
โœ… TabBarModernizationTests 8 8 0 51ms
โœ… TearDownRequiredLintTests 5 5 0 2.08s
โœ… TestAppContainerFactoryTests 5 5 0 709ms
โœ… TestTargetHermeticityRegressionTests 4 3 0 332ms
โœ… TimeEntryTests 3 3 0 16ms
โœ… TokenRefreshAndRetryQueueTests 9 9 0 5.00s
โœ… TokenRefreshIntegrationTests 2 2 0 5.19s
โœ… TokenRefreshInterceptorAuthCoordinatorTests 8 8 0 105ms
โœ… TokenRefreshInterceptorTests 24 24 0 250ms
โœ… TokenRefreshOnForegroundTests 10 10 0 2.23s
โœ… TokenRefreshTests 25 25 0 1.04s
โœ… TokenRefreshWatchdogTests 5 5 0 29ms
โœ… TokenRequestCredentialGuardTests 13 13 0 176ms
โœ… TokenRequestTests 11 11 0 356ms
โœ… TokenResponseTests 21 21 0 730ms
โœ… TriageBotKeyAdminTests 4 4 0 8ms
โœ… TypographyPresetTests 21 21 0 181ms
โœ… TypographyServiceTests 31 31 0 725ms
โœ… TypographySettingsViewModelTests 27 27 0 3.36s
โœ… UIAlertCACommitGuardTests 9 9 0 569ms
โœ… UIColor_NYPLAdditionsTests 1 1 0 <1ms
โœ… URLBackupExclusionTests 3 3 0 38ms
โœ… URLExtensionTests 16 16 0 27ms
โœ… URLExtensionsTests 11 11 0 25ms
โœ… URLRequestExtensionsCoverageTests 3 3 0 23ms
โœ… URLRequestExtensionsTests 11 11 0 28ms
โœ… URLRequestNYPLAdditionsTests 11 11 0 88ms
โœ… URLRequest_NYPLTests 1 1 0 <1ms
โœ… URLResponseAuthenticationTests 10 10 0 24ms
โœ… URLResponseNYPLTests 14 14 0 83ms
โœ… URLSessionCredentialStorageTests 3 3 0 82ms
โœ… URLSessionStubbingResetTests 2 2 0 20ms
โœ… URLTypeTests 2 2 0 9ms
โœ… URLValidationTests 5 5 0 237ms
โœ… UnifiedOPDSServiceStateMachineTests 2 2 0 83ms
โœ… UserAccountPublisherAuthStateTests 5 5 0 10ms
โœ… UserAccountPublisherTests 14 14 0 327ms
โœ… UserAccountValidationTests 11 11 0 600ms
โœ… UserDefaultsIsolationLintTests 2 2 0 811ms
โœ… UserProfileDocumentTests 7 7 0 89ms
โœ… UserRetryTrackerTests 10 10 0 40ms
โœ… XCTestCase_testUserDefaultsTests 3 3 0 26ms
โœ… iPadOnMacRMSDKGuardTests 7 7 0 28ms

๐Ÿ“ˆ Code Coverage

Target Coverage Lines
Palace.app
44.5%
45089 / 101216

๐Ÿ“‹ All Tests

Class Test Duration
โœ… AccessLintComplianceTests testAudiobookLabel_isDescriptive <1ms
โœ… AccessLintComplianceTests testBorrowAnnouncementStrings_areMeaningful <1ms
โœ… AccessLintComplianceTests testDownloadAnnouncementStrings_areMeaningful <1ms
โœ… AccessLintComplianceTests testExpandCollapseButton_labelsRoundTripOnStateFlip <1ms
โœ… AccessLintComplianceTests testPDFToolbarButton_fallbackLabel_isDistinctFromOkLabel <1ms
โœ… AccessLintComplianceTests testRetryAnnouncementStrings_areMeaningful <1ms
โœ… AccessLintComplianceTests testReturnAnnouncementStrings_areMeaningful <1ms
โœ… AccessLintComplianceTests testSearchAnnouncementStrings_areMeaningful 1ms
โœ… AccessLintComplianceTests testSortFilterLabels_areDescriptive <1ms
โœ… AccessLintComplianceTests testStatusAnnouncement_actionFailed_combinesTitleAndMessage <1ms
โœ… AccessLintComplianceTests testStatusAnnouncement_errorOccurred_passesThrough <1ms
โœ… AccessibilityAnnouncementCenterTests testPP3594_borrowAndReturnAnnouncements_postMessages 4ms
โœ… AccessibilityAnnouncementCenterTests testPP3594_downloadAnnouncements_respectVoiceOverDisabled 304ms
โœ… AccessibilityAnnouncementCenterTests testPP3673_additionalResultsLoaded_announcesCount 2ms
โœ… AccessibilityAnnouncementCenterTests testPP3673_additionalResultsLoaded_zeroCount_doesNotAnnounce 306ms
โœ… AccessibilityAnnouncementCenterTests testPP3673_allAnnouncements_useAnnouncementNotificationType 5ms
โœ… AccessibilityAnnouncementCenterTests testPP3673_announceError_postsMessage 4ms
โœ… AccessibilityAnnouncementCenterTests testPP3673_announceMessage_postsArbitraryMessage 3ms
โœ… AccessibilityAnnouncementCenterTests testPP3673_announceStatus_combinesTitleAndMessage 5ms
โœ… AccessibilityAnnouncementCenterTests testPP3673_deduplication_allowsDifferentMessages 6ms
โœ… AccessibilityAnnouncementCenterTests testPP3673_deduplication_allowsRepeatAfterWindowExpires 4ms
โœ… AccessibilityAnnouncementCenterTests testPP3673_deduplication_crossMethod_sameText 5ms
โœ… AccessibilityAnnouncementCenterTests testPP3673_deduplication_rapidFireSameMessage_onlyOneAnnouncement 5ms
โœ… AccessibilityAnnouncementCenterTests testPP3673_deduplication_suppressesDuplicateWithinWindow 3ms
โœ… AccessibilityAnnouncementCenterTests testPP3673_emptyMessage_isNotPosted 301ms
โœ… AccessibilityAnnouncementCenterTests testPP3673_errorAnnouncements_respectVoiceOverDisabled 302ms
โœ… AccessibilityAnnouncementCenterTests testPP3673_searchAnnouncements_respectVoiceOverDisabled 303ms
โœ… AccessibilityAnnouncementCenterTests testPP3673_searchFailed_announcesFailure 7ms
โœ… AccessibilityAnnouncementCenterTests testPP3673_searchNoResults_announcesNoResults 4ms
โœ… AccessibilityAnnouncementCenterTests testPP3673_searchRerun_announcesUpdatedResults 5ms
โœ… AccessibilityAnnouncementCenterTests testPP3673_searchResults_announcesResultCountAndQuery 2ms
โœ… AccessibilityLabelTests testAccessibilityStrings_areNotEmpty 305ms
โœ… AccessibilityLabelTests testAccessibilityStrings_formatStringsWork <1ms
โœ… AccessibilityLabelTests testBookmarkLabels_existAndAreDifferent 383ms
โœ… AccessibilityLabelTests testChapterNavigationLabels_exist 4ms
โœ… AccessibilityLabelTests testExistingAccessibilityStrings_areNotEmpty <1ms
โœ… AccessibilityLabelTests testExpandCollapseLabels_areDifferent 1ms
โœ… AccessibilityLabelTests testFilterButtonLabel_changesWithCount 3ms
โœ… AccessibilityLabelTests testPlayPauseLabels_areDifferent 1ms
โœ… AccessibilityLabelTests testSortButtonLabel_changesWithSortOption <1ms
โœ… AccessibilityPreferencesTests testButtonShapesEnabled_WhenEnabled_RoundTripsThroughCodable <1ms
โœ… AccessibilityPreferencesTests testCodableRoundTrip_CustomPreferences <1ms
โœ… AccessibilityPreferencesTests testCodableRoundTrip_DefaultPreferences <1ms
โœ… AccessibilityPreferencesTests testCustomRotorActionsEnabled_Toggle 5ms
โœ… AccessibilityPreferencesTests testDefaultPreferences_ButtonShapesOff <1ms
โœ… AccessibilityPreferencesTests testDefaultPreferences_CustomRotorEnabled <1ms
โœ… AccessibilityPreferencesTests testDefaultPreferences_HapticFeedbackOn 679ms
โœ… AccessibilityPreferencesTests testDefaultPreferences_HasStandardVerbosity <1ms
โœ… AccessibilityPreferencesTests testDefaultPreferences_HighContrastOff <1ms
โœ… AccessibilityPreferencesTests testDefaultPreferences_ReducedMotionOff <1ms
โœ… AccessibilityPreferencesTests testEquatable_DifferentValues 3ms
โœ… AccessibilityPreferencesTests testEquatable_SameValues <1ms
โœ… AccessibilityPreferencesTests testHapticFeedbackEnabled_Toggle 72ms
โœ… AccessibilityPreferencesTests testHighContrastBoost_WhenEnabled_MakesPrefsUnequalToDefault <1ms
โœ… AccessibilityPreferencesTests testPersistence_NoSavedData_ReturnsNil 13ms
โœ… AccessibilityPreferencesTests testPersistence_SaveAndLoad 8ms
โœ… AccessibilityPreferencesTests testReducedMotion_WhenEnabled_RoundTripsThroughCodable <1ms
โœ… AccessibilityPreferencesTests testStorageKey_IsCorrect <1ms
โœ… AccessibilityPreferencesTests testVerbosityMinimal_Description <1ms
โœ… AccessibilityPreferencesTests testVerbosityMinimal_DisplayName <1ms
โœ… AccessibilityPreferencesTests testVerbosityStandard_Description <1ms
โœ… AccessibilityPreferencesTests testVerbosityStandard_DisplayName <1ms
โœ… AccessibilityPreferencesTests testVerbosityVerbose_Description 10ms
โœ… AccessibilityPreferencesTests testVerbosityVerbose_DisplayName 48ms
โœ… AccessibilityPreferencesTests testVerbosity_AllCases <1ms
โœ… AccessibilityPreferencesTests testVerbosity_CodableRoundTrip 14ms
โœ… AccessibilityServiceTests testAccessibilityPreferencesCodable 36ms
โœ… AccessibilityServiceTests testDefaultPreferences 5ms
โœ… AccessibilityServiceTests testHapticDisabledWhenPreferenceOff 9ms
โœ… AccessibilityServiceTests testHapticDisabledWithReducedMotion 12ms
โœ… AccessibilityServiceTests testHighContrastEffective 38ms
โœ… AccessibilityServiceTests testPreferencesPersistAcrossInstances 53ms
โœ… AccessibilityServiceTests testPreferencesPublisher 9ms
โœ… AccessibilityServiceTests testReducedMotionEffective 10ms
โœ… AccessibilityServiceTests testUpdatePreferences 14ms
โœ… AccessibilityServiceTests testVerbosityDescriptions 45ms
โœ… AccessibilityServiceTests testVerbosityDisplayNames 1ms
โœ… AccountAuthDocCarryoverTests testAccount_authenticationDocumentDidSet_createsDetails 892ms
โœ… AccountAuthDocCarryoverTests testAccount_detailsPreserved_whenAuthDocCopiedToNewAccount 586ms
โœ… AccountAuthDocCarryoverTests testAccount_detailsSyncPermission_defaultsToTrue 1.34s
โœ… AccountAuthDocCarryoverTests testAccount_multipleAccountsCarryover_matchesByUUID 407ms
โœ… AccountAuthDocCarryoverTests testAccount_replacementWithoutCarryover_losesDetails 129ms
โœ… AccountAuthSurfaceHostsTests testAuthSurfaceHosts_includesAuthenticationDocumentUrlHost 2ms
โœ… AccountAuthSurfaceHostsTests testAuthSurfaceHosts_includesCatalogUrlHost 1ms
โœ… AccountAuthSurfaceHostsTests testAuthSurfaceHosts_includesHomePageUrlHost 86ms
โœ… AccountAuthSurfaceHostsTests testAuthSurfaceHosts_lowercasesAtProducer 1ms
โœ… AccountAuthSurfaceHostsTests testAuthSurfaceHosts_returnsEmptySetWhenAllURLsAbsent <1ms
โœ… AccountAuthSurfaceHostsTests testAuthSurfaceHosts_skipsMalformedURLs 2ms
โœ… AccountAuthSurfaceHostsTests testAuthSurfaceHosts_unionsAllProvidedHosts <1ms
โœ… AccountAwareNetworkTests testCancelNonEssentialTasks_CancelsActiveTasks <1ms
โœ… AccountAwareNetworkTests testCancelNonEssentialTasks_DoesNotCrash_andLeavesExecutorFullyUsable 4ms
โœ… AccountAwareNetworkTests testExecuteTokenRefresh_AcceptsAccountId 74ms
โœ… AccountAwareNetworkTests testExecuteTokenRefresh_NilAccountId_BackwardCompatible 17ms
โœ… AccountAwareNetworkTests testRefreshTokenAndResume_AcceptsAccountIdParameter 7ms
โœ… AccountAwareNetworkTests testRefreshTokenAndResume_DefaultAccountId_BackwardCompatible 9ms
โœ… AccountAwareNetworkTests testRefreshTokenAndResume_NilAccountId_DoesNotCrash 16ms
โœ… AccountAwareNetworkTests testRequest_AccountIdParameter_AcceptsNil <1ms
โœ… AccountAwareNetworkTests testRequest_AccountIdParameter_AcceptsSpecificId 4ms
โœ… AccountAwareNetworkTests testRequest_CapturesCurrentAccountToken 6ms
โŠ˜ AccountDetailCredentialStateTests testIsSignedIn_OAuthRemainsSignedInWhenStateBecomesStale 3ms
โŠ˜ AccountDetailCredentialStateTests testIsSignedIn_SAMLUpdatesWhenStateBecomesStale 3ms
โŠ˜ AccountDetailCredentialStateTests testIsSignedIn_falseWhenSAMLCredentialsStale 3ms
โŠ˜ AccountDetailCredentialStateTests testIsSignedIn_trueWhenLoggedIn 3ms
โŠ˜ AccountDetailCredentialStateTests testIsSignedIn_trueWhenOAuthCredentialsStale 19ms
โŠ˜ AccountDetailCredentialStateTests testIsSignedIn_updatesAfterSAMLReauthentication 2ms
โŠ˜ AccountDetailCredentialStateTests testNeedsReauthentication_trueWhenCredentialsStale 8ms
โŠ˜ AccountDetailPINVisibilityTests testAccountDidChangeViaNotification_ClearsCredentialsOnLogout 78ms
โŠ˜ AccountDetailPINVisibilityTests testBusinessLogicDidCancelSignIn_ClearsLoadingAndSigningOut 4ms
โŠ˜ AccountDetailPINVisibilityTests testBusinessLogicDidCompleteSignIn_ClearsLoadingAndSigningOut 212ms
โŠ˜ AccountDetailPINVisibilityTests testBusinessLogicDidFinishDeauthorizing_ClearsLoadingAndSigningOut 2ms
โŠ˜ AccountDetailPINVisibilityTests testBusinessLogicDidReceiveCredentials_SetsLoadingTrue 3ms
โŠ˜ AccountDetailPINVisibilityTests testBusinessLogicSignOutError_401ShowsUnexpectedCredentialsAlert 13ms
โŠ˜ AccountDetailPINVisibilityTests testBusinessLogicSignOutError_WithErrorUsesLocalizedDescription 5ms
โŠ˜ AccountDetailPINVisibilityTests testBusinessLogicValidationError_CancelledErrorClearsPin 3ms
โŠ˜ AccountDetailPINVisibilityTests testBusinessLogicValidationError_ShowsAlertAndClearsLoading 49ms
โŠ˜ AccountDetailPINVisibilityTests testBusinessLogicWillSignIn_NonOAuth_SetsLoadingTrueAndClearsSigningOut 32ms
โŠ˜ AccountDetailPINVisibilityTests testBusinessLogicWillSignOut_SetsLoadingAndSigningOut 66ms
โŠ˜ AccountDetailPINVisibilityTests testCellType_HashableInSet 7ms
โŠ˜ AccountDetailPINVisibilityTests testCellType_InfoHeaderEqualityByText 33ms
โŠ˜ AccountDetailPINVisibilityTests testCellType_SimpleCasesEqual 3ms
โŠ˜ AccountDetailPINVisibilityTests testContext_ReturnsSettingsTab 116ms
โŠ˜ AccountDetailPINVisibilityTests testLibraryLogo_MatchesSelectedAccountLogo 77ms
โŠ˜ AccountDetailPINVisibilityTests testPINVisibility_DefaultsToHidden 2ms
โŠ˜ AccountDetailPINVisibilityTests testPINVisibility_IndependentOfCredentialChanges 200ms
โŠ˜ AccountDetailPINVisibilityTests testPINVisibility_ToggleMultipleTimes 9ms
โŠ˜ AccountDetailPINVisibilityTests testPinComputed_EmptyReturnsEmptyString 112ms
โŠ˜ AccountDetailPINVisibilityTests testRefreshSignInState_ReloadsTableWhenStateChanges 4ms
โŠ˜ AccountDetailPINVisibilityTests testSelectAuthMethod_ClearsIDPAndSetsSelectedAuth 80ms
โŠ˜ AccountDetailPINVisibilityTests testSignIn_WhenAlreadySignedIn_SetsIsSigningOutTrue 140ms
โŠ˜ AccountDetailPINVisibilityTests testUpdateSync_WritesToAccountDetails 32ms
โŠ˜ AccountDetailPINVisibilityTests testUsernameComputed_EmptyReturnsNil 108ms
โŠ˜ AccountDetailSignOutConfirmationTests testConfirmSignOut_WhenSignedIn_DoesNotImmediatelyDeauthorize 7ms
โŠ˜ AccountDetailSignOutConfirmationTests testMakeSignOutConfirmationAlert_HasDestructiveSignOutAndCancelActions 3ms
โœ… AccountDetailViewModelGapTests testAccountDetailViewModel_updateSync_setsPermission 49ms
โœ… AccountDetailViewModelLeakTests testViewModel_deallocatesAfterRelease_noLeakedObservers 122ms
โŠ˜ AccountDetailViewModelSignedInDerivationTests testOffMainAccountChange_credentialsPresentButLoggedOut_isNotSignedInAndClearsFields 5ms
โŠ˜ AccountDetailViewModelSignedInDerivationTests testOffMainAccountChange_credentialsStale_remainsSignedIn 42ms
โŠ˜ AccountDetailViewModelSignedInDerivationTests testOffMainAccountChange_noCredentials_isNotSignedIn 13ms
โŠ˜ AccountDetailViewModelSignedInDerivationTests testOffMainAccountChange_signedInWithNilBarcodeAndPin_fieldsFallThroughToEmpty 18ms
โŠ˜ AccountDetailViewModelSignedInDerivationTests testOffMainAccountChange_withValidCredentials_signsInAndPopulatesBarcodeAndPin 9ms
โŠ˜ AccountDetailViewModelTests testAlertPropertiesUpdate 2ms
โŠ˜ AccountDetailViewModelTests testBusinessLogic_IsInitialized 37ms
โŠ˜ AccountDetailViewModelTests testCanSignInWithBothCredentials 3ms
โŠ˜ AccountDetailViewModelTests testCanSignInWithEmptyCredentials 2ms
โŠ˜ AccountDetailViewModelTests testCanSignInWithOnlyUsername 2ms
โŠ˜ AccountDetailViewModelTests testCanSignIn_WithSpecialCharacters 32ms
โŠ˜ AccountDetailViewModelTests testCanSignIn_WithWhitespaceOnlyUsername 16ms
โŠ˜ AccountDetailViewModelTests testClearCredentials_WorksIndependently 2ms
โŠ˜ AccountDetailViewModelTests testCredentialFields_AreIndependent 3ms
โŠ˜ AccountDetailViewModelTests testInitialPublishedPropertiesState 2ms
โŠ˜ AccountDetailViewModelTests testIsPINHiddenDefaultsToTrue 2ms
โŠ˜ AccountDetailViewModelTests testIsSyncEnabledToggle 2ms
โŠ˜ AccountDetailViewModelTests testLibraryNameReturnsAccountName 24ms
โŠ˜ AccountDetailViewModelTests testMultipleAlerts_CanBeShown 6ms
โŠ˜ AccountDetailViewModelTests testPinTextUpdate 2ms
โŠ˜ AccountDetailViewModelTests testSelectedAccountMatchesInitialized 2ms
โŠ˜ AccountDetailViewModelTests testShowBarcode_WhenEnabled_TriggerObjectWillChange 2ms
โŠ˜ AccountDetailViewModelTests testTogglePINVisibility 11ms
โŠ˜ AccountDetailViewModelTests testUsernameTextUpdate 2ms
โœ… AccountDetailsAuthenticationIsBrowserBasedTests testIsBrowserBased_anonymous_returnsFalse <1ms
โœ… AccountDetailsAuthenticationIsBrowserBasedTests testIsBrowserBased_basic_returnsFalse 58ms
โœ… AccountDetailsAuthenticationIsBrowserBasedTests testIsBrowserBased_coppa_returnsFalse <1ms
โœ… AccountDetailsAuthenticationIsBrowserBasedTests testIsBrowserBased_isStrictSupersetOf_isOauthOrIsOidc_forSaml 3ms
โœ… AccountDetailsAuthenticationIsBrowserBasedTests testIsBrowserBased_none_returnsFalse 16ms
โœ… AccountDetailsAuthenticationIsBrowserBasedTests testIsBrowserBased_oauthIntermediary_returnsTrue 75ms
โœ… AccountDetailsAuthenticationIsBrowserBasedTests testIsBrowserBased_oidc_returnsTrue 3ms
โœ… AccountDetailsAuthenticationIsBrowserBasedTests testIsBrowserBased_saml_returnsTrue 1ms
โœ… AccountDetailsAuthenticationIsBrowserBasedTests testIsBrowserBased_token_returnsFalse 1ms
โœ… AccountDetailsAuthenticationIsBrowserBasedTests testIsBrowserBased_vs_needsAuth_areDistinctPredicates 6ms
โœ… AccountDetailsNeedsAuthAggregateTests testAccountDetails_NeedsAuth_AnonymousMixedWithBasic_ReturnsTrue 1ms
โœ… AccountDetailsNeedsAuthAggregateTests testAccountDetails_NeedsAuth_AnonymousOnly_ReturnsFalse 2ms
โœ… AccountDetailsNeedsAuthAggregateTests testAccountDetails_NeedsAuth_BasicOnly_ReturnsTrue 2ms
โœ… AccountDetailsNeedsAuthAggregateTests testAccountDetails_NeedsAuth_CoppaOnly_ReturnsFalse <1ms
โœ… AccountDetailsNeedsAuthAggregateTests testAccountDetails_NeedsAuth_OAuthOnly_ReturnsTrue <1ms
โœ… AccountDetailsNeedsAuthAggregateTests testAccountDetails_NeedsAuth_OidcOnly_ReturnsTrue 7ms
โœ… AccountDetailsNeedsAuthAggregateTests testAccountDetails_NeedsAuth_SamlOnly_ReturnsTrue 1ms
โœ… AccountDetailsNeedsAuthAggregateTests testAccount_NeedsAuth_AnonymousDetailsLoaded_ReturnsFalse 4ms
โœ… AccountDetailsNeedsAuthAggregateTests testAccount_NeedsAuth_BasicDetailsLoaded_ReturnsTrue 134ms
โœ… AccountDetailsNeedsAuthAggregateTests testAccount_NeedsAuth_BeforeAuthDocLoaded_ReturnsNil <1ms
โœ… AccountDetailsURLTests testDebugDescription_ReflectsSupportsSimplyESync_WhenUserProfileUrlPresent 5ms
โœ… AccountDetailsURLTests testDefaultAuth_WithOAuthAndBasic_PrefersBasicOverOAuth 18ms
โœ… AccountDetailsURLTests testEulaIsAccepted_DefaultIsFalse 4ms
โœ… AccountDetailsURLTests testEulaIsAccepted_RoundTrips_ThroughUserDefaults 7ms
โœ… AccountDetailsURLTests testGetLicenseURL_AfterSettingMultipleTypes_ReturnsCorrectURLs 7ms
โœ… AccountDetailsURLTests testGetLicenseURL_WhenNotSet_ReturnsNil 6ms
โœ… AccountDetailsURLTests testSetURL_ForAcknowledgements_StoresURL 9ms
โœ… AccountDetailsURLTests testSetURL_ForAnnotations_StoresURL 5ms
โœ… AccountDetailsURLTests testSetURL_ForContentLicenses_StoresURL 8ms
โœ… AccountDetailsURLTests testSetURL_ForEULA_StoresURL 7ms
โœ… AccountDetailsURLTests testSetURL_ForPrivacyPolicy_StoresURL 6ms
โœ… AccountDetailsURLTests testSetURL_OverwritesPreviousURL 8ms
โœ… AccountDetailsURLTests testSetURL_PersistsToUserDefaults 13ms
โœ… AccountDetailsURLTests testSyncPermissionGranted_DefaultIsTrue 4ms
โœ… AccountDetailsURLTests testSyncPermissionGranted_ToggleOffThenOn_PersistsViaUserDefaults 6ms
โœ… AccountDetailsURLTests testUserAboveAgeLimit_DefaultIsFalse 4ms
โœ… AccountDetailsURLTests testUserAboveAgeLimit_RoundTrips_ThroughUserDefaults 6ms
โœ… AccountModelGapTests testAccountDetails_defaultAuth_prefersNonOAuth 51ms
โœ… AccountModelGapTests testAccountDetails_eulaIsAccepted_persistsAcrossObjectRecreation 63ms
โœ… AccountModelGapTests testAccountDetails_initFromAuthDoc_populatesAuthMethods 23ms
โœ… AccountModelGapTests testAccountDetails_setAndGetLicenseURL_roundTrips 71ms
โœ… AccountModelGapTests testAccountDetails_syncPermissionGranted_persistsAcrossObjectRecreation 249ms
โœ… AccountModelGapTests testAccount_hasSupportOption_reflectsSupportAvailability 101ms
โœ… AccountModelGapTests testAccount_initFromPublication_mapsPropertiesCorrectly 32ms
โœ… AccountModelGapTests testAccount_loansUrl_delegatesToDetails 28ms
โœ… AccountModelGapTests testAuthentication_NSCoding_roundTrip 38ms
โœ… AccountModelTests testAccount_DebugDescription_ContainsName <1ms
โœ… AccountModelTests testAccount_InitFromPublication_DefaultLogo_IsPlaceholder 1ms
โœ… AccountModelTests testAccount_InitFromPublication_DetailsAreNil <1ms
โœ… AccountModelTests testAccount_InitFromPublication_DropsHelpLink_TrailingSlashAndPathInsensitive 1ms
โœ… AccountModelTests testAccount_InitFromPublication_DropsHelpLink_WhenItPointsAtAboutAppMarketingURL <1ms
โœ… AccountModelTests testAccount_InitFromPublication_DropsHelpLink_WhenItPointsAtAboutAppMarketingURL_HTTPSScheme <1ms
โœ… AccountModelTests testAccount_InitFromPublication_HasUpdatedToken_IsFalse <1ms
โœ… AccountModelTests testAccount_InitFromPublication_KeepsHelpLink_WhenItPointsAtRealSupportPage 1ms
โœ… AccountModelTests testAccount_InitFromPublication_SetsAuthDocUrl <1ms
โœ… AccountModelTests testAccount_InitFromPublication_SetsCatalogUrl <1ms
โœ… AccountModelTests testAccount_InitFromPublication_SetsHomePageUrl <1ms
โœ… AccountModelTests testAccount_InitFromPublication_SetsName <1ms
โœ… AccountModelTests testAccount_InitFromPublication_SetsSubtitle <1ms
โœ… AccountModelTests testAccount_InitFromPublication_SetsSupportEmail 1ms
โœ… AccountModelTests testAccount_InitFromPublication_SetsSupportURL 1ms
โœ… AccountModelTests testAccount_InitFromPublication_SetsUUID <1ms
โœ… AccountModelTests testLoadAuthenticationDocument_WithNilUrl_CompletesWithFalse 1ms
โœ… AccountModelTests testLoadLogo_WithCachedImage_UsesCachedImage <1ms
โœ… AccountModelTests testLoadLogo_WithNilLogoUrl_DoesNotCrash 2ms
โœ… AccountModelTests testLoansUrl_WhenDetailsNil_ReturnsNil 2ms
โœ… AccountProfileDocumentTests testGetProfileDocument_WhenUserAccountHasNoCredentials_CompletesWithNil_DoesNotFetch 3ms
โœ… AccountProfileDocumentTests testGetProfileDocument_WithDetailsButNilProfileUrl_CompletesWithNil 58ms
โœ… AccountProfileDocumentTests testGetProfileDocument_WithNilDetails_CompletesWithNil 2ms
โœ… AccountStateMachineTests testAwaitReady_blocksUntilTransition_thenResolves 10ms
โœ… AccountStateMachineTests testAwaitReady_cancellingOneAwaiter_doesNotAffectOthers 3ms
โœ… AccountStateMachineTests testAwaitReady_detailsEvictedArrivesViaStream_throwsEvictionError 59ms
โœ… AccountStateMachineTests testAwaitReady_multipleConcurrentAwaiters_allResolve 17ms
โœ… AccountStateMachineTests testAwaitReady_terminalDetailsFailed_throwsImmediately 24ms
โœ… AccountStateMachineTests testAwaitReady_terminalDetailsLoaded_returnsImmediately 6ms
โœ… AccountStateMachineTests testDetailsEvicted_libraryDeselected_throwsEvictionError_fromAwaitReady 5ms
โœ… AccountStateMachineTests testDetailsFailedAccountNotFound_meansHTTP404_throwsAuthLoadError_fromAwaitReady 6ms
โœ… AccountStateMachineTests testInitialState_freshUUID_isNotLoaded 1ms
โœ… AccountStateMachineTests testStateStream_emitsCurrentThenTransitions 5ms
โœ… AccountSwitchCleanupTests testBookCellModelCache_ClearsOnAccountChange 9ms
โœ… AccountSwitchCleanupTests testCancelNonEssentialTasks_CalledMultipleTimes_ExecutorIdempotent 195ms
โœ… AccountSwitchCleanupTests testCancelNonEssentialTasks_WithNoActiveTasks_ExecutorRemainsUsable 41ms
โœ… AccountSwitchCleanupTests testFactoryAccount_DefaultMintIsNamespaced 1ms
โœ… AccountSwitchCleanupTests testFactoryAccount_DistinctUUIDsRemainIsolated 3ms
โœ… AccountSwitchCleanupTests testFactoryAccount_RapidMintingDoesNotCrash 86ms
โœ… AccountSwitchCleanupTests testFactoryAccount_WithSpecificUUID_BindsUUIDAndIsIsolated <1ms
โœ… AccountSwitchCleanupTests testPauseAllTasks_AfterCancel_ResumeAcceptsNewRequests 13ms
โœ… AccountSwitchIntegrationTests testAccountSwitch_ClearsBookRegistry 1ms
โœ… AccountSwitchIntegrationTests testAccountSwitch_ClearsCachedCredentials 6ms
โœ… AccountSwitchIntegrationTests testAccountSwitch_InvalidatesCatalogCache 4ms
โœ… AccountSwitchIntegrationTests testAccountSwitch_PostsCurrentAccountDidChangeNotification 1ms
โœ… AccountSwitchIntegrationTests testAccountSwitch_StopsPendingNetworkRequests 65ms
โœ… AccountSwitchIntegrationTests testMultipleRapidSwitches_DoNotCorruptRegistry 2ms
โœ… AccountSwitchIntegrationTests testNewAccount_LoadsFreshCatalog 1ms
โœ… AccountSwitchIntegrationTests testSwitchToSameAccount_IsIdempotent 4ms
โŠ˜ AccountSwitchLifecycleTests testSwitch_AToBAnonymous_NoBearerOnBRequest 42ms
โŠ˜ AccountSwitchLifecycleTests testSwitch_ATokenNeverLeaksIntoBRequest 15ms
โŠ˜ AccountSwitchLifecycleTests testSwitch_AtoB_AsRegistryFileIsUntouched 35ms
โŠ˜ AccountSwitchLifecycleTests testSwitch_AtoB_LoadsBsPersistedRegistry 9ms
โŠ˜ AccountSwitchLifecycleTests testSwitch_AtoBtoA_RestoresAsState 36ms
โŠ˜ AccountSwitchLifecycleTests testSwitch_BsCredentialsDoNotOverwriteAs 17ms
โŠ˜ AccountSwitchLifecycleTests testSwitch_CancelsInflightNonEssentialTasks 11ms
โŠ˜ AccountSwitchLifecycleTests testSwitch_LiveTaskCount_DropsToZeroAfterCancel 69ms
โŠ˜ AccountSwitchLifecycleTests testSwitch_PerLibraryAccountCacheIsStable 12ms
โœ… AccountsManagerAccountIndexTests testAccount_lookupIsConstantTime_notLinearInAccountCount 38ms
โœ… AccountsManagerAccountIndexTests testAccount_reseedRebuildsIndex_removedGoneAddedFound 2ms
โœ… AccountsManagerAccountIndexTests testAccount_resolvesUUIDInEitherBucket 80ms
โœ… AccountsManagerAccountIndexTests testAccount_unknownUUID_returnsNil 6ms
โœ… AccountsManagerAccountIndexTests testBuildAccountIndex_duplicateUUIDAcrossBuckets_resolvesToThatUUID 2ms
โœ… AccountsManagerAccountIndexTests testBuildAccountIndex_emptyInput_isEmpty 69ms
โœ… AccountsManagerAccountIndexTests testBuildAccountIndex_mapsAllAccounts 4ms
โœ… AccountsManagerCacheReadTests testLoadAccountSets_carryOver_isCorrectForEveryMatchingUUID 173ms
โœ… AccountsManagerCacheReadTests testPreload_dataPresentButNoMetadata_doesNotHydrate 63ms
โœ… AccountsManagerCacheReadTests testPreload_expiredMetadata_doesNotHydrate 63ms
โœ… AccountsManagerCacheReadTests testPreload_readsRegistryCacheOnce_hydratesEverySeededAccount 200ms
โœ… AccountsManagerCacheTests testAccountMainFeedURL_NotOverwrittenWithNil_WhenCurrentAccountMissing 22ms
โœ… AccountsManagerCacheTests testCacheDataAndMetadata_AreWrittenTogether 54ms
โœ… AccountsManagerCacheTests testCacheExpiry_OldCacheIsNotUsed 12ms
โœ… AccountsManagerCacheTests testCatalogCacheMetadata_Codable_EncodesAndDecodes 1ms
โœ… AccountsManagerCacheTests testCatalogCacheMetadata_IsExpired_ReturnsFalseJustUnder24Hours 1ms
โœ… AccountsManagerCacheTests testCatalogCacheMetadata_IsExpired_ReturnsFalseWhenRecent <1ms
โœ… AccountsManagerCacheTests testCatalogCacheMetadata_IsExpired_ReturnsTrueAfter24Hours 1ms
โœ… AccountsManagerCacheTests testCatalogCacheMetadata_IsStale_ReturnsFalseJustUnder6Hours 2ms
โœ… AccountsManagerCacheTests testCatalogCacheMetadata_IsStale_ReturnsFalseWhenFresh 2ms
โœ… AccountsManagerCacheTests testCatalogCacheMetadata_IsStale_ReturnsTrueAfter6Hours 1ms
โœ… AccountsManagerCacheTests testLoadCatalogs_WhenCacheExists_CompletesWithCachedData 30ms
โœ… AccountsManagerCacheTests testLoadCatalogs_WhenCacheExpired_ReturnsNil 6ms
โœ… AccountsManagerCacheTests testLoadCatalogs_WhenCacheStale_ReturnsDataButMarkedStale 9ms
โœ… AccountsManagerCacheTests testNotification_TPPCatalogDidLoad_IsDeliveredToObserver 3ms
โœ… AccountsManagerCacheTests testReadCacheMetadata_ReturnsNilWhenNotExists 2ms
โœ… AccountsManagerCacheTests testWriteAndReadCacheMetadata 2ms
โœ… AccountsManagerCancellationTests testCancelBackgroundWork_doesNotMutatePersistentAccountSets 40ms
โœ… AccountsManagerCancellationTests testCancelBackgroundWork_isIdempotent 260ms
โœ… AccountsManagerCancellationTests testCancelBackgroundWork_onLiveInstance_cancelsTheTask 8ms
โœ… AccountsManagerCancellationTests testCancelBackgroundWork_onOptOutInstance_isSafeNoOp 1.21s
โœ… AccountsManagerCancellationTests testCancelBackgroundWork_whileFetchInFlight_doesNotCommitToAccountSets 530ms
โœ… AccountsManagerFirstRunDecodeTests testFirstRun_bundledDecode_runsOffMainThread 25ms
โœ… AccountsManagerFirstRunDecodeTests testFirstRun_networkFetchStillFiresOnce_afterBundledDecode 89ms
โœ… AccountsManagerFirstRunDecodeTests testSecondConcurrentLoad_shortCircuitsBeforeBundledDecode 574ms
โœ… AccountsManagerGapTests testAccountsManager_accountByUUID_returnsNilForUnknownUUID 44ms
โœ… AccountsManagerGapTests testAccountsManager_currentAccountId_persistsToUserDefaults <1ms
โœ… AccountsManagerGapTests testAccountsManager_tppAccountUUID_isNotEmpty <1ms
โœ… AccountsManagerHelpersTests test_isCacheStale_freshMetadata_returnsFalse 51ms
โœ… AccountsManagerHelpersTests test_isCacheStale_nilMetadata_returnsTrue <1ms
โœ… AccountsManagerHelpersTests test_isCacheStale_serverMaxAgeRespected 2ms
โœ… AccountsManagerHelpersTests test_isCacheStale_staleMetadata_returnsTrue 2ms
โœ… AccountsManagerHelpersTests test_shouldFinishSwitchingImmediately_bothNil_returnsTrue <1ms
โœ… AccountsManagerHelpersTests test_shouldFinishSwitchingImmediately_differentAccounts_returnsFalse <1ms
โœ… AccountsManagerHelpersTests test_shouldFinishSwitchingImmediately_newNilWithExistingPrevious_returnsFalse 1ms
โœ… AccountsManagerHelpersTests test_shouldFinishSwitchingImmediately_previousNil_returnsTrue 2ms
โœ… AccountsManagerHelpersTests test_shouldFinishSwitchingImmediately_sameAccount_returnsTrue 1ms
โœ… AccountsManagerHelpersTests test_shouldPopToRoot_onePath_returnsTrue 7ms
โœ… AccountsManagerHelpersTests test_shouldPopToRoot_threePath_returnsTrue <1ms
โœ… AccountsManagerHelpersTests test_shouldPopToRoot_zeroPath_returnsFalse <1ms
โœ… AccountsManagerIsolationLintTests testAccountsManagerConstructionSites_extendWiringBase_orAllowlisted 391ms
โœ… AccountsManagerIsolationLintTests testLintCatchesSyntheticViolator <1ms
โœ… AccountsManagerIsolationLintTests testNoBareAccountsManagerOutsideWhitelist 733ms
โœ… AccountsManagerIsolationLintTests testWiringBaseLint_syntheticViolator 42ms
โœ… AccountsManagerLaunchSnapshotTests testCarveSlimFeed_emptyKeepSet_returnsNil 22ms
โœ… AccountsManagerLaunchSnapshotTests testCarveSlimFeed_keepsOnlyRequestedUUIDs_andRoundTripsThroughReader 57ms
โœ… AccountsManagerLaunchSnapshotTests testCarveSlimFeed_malformedData_returnsNil 12ms
โœ… AccountsManagerLaunchSnapshotTests testCarveSlimFeed_noMatchingUUIDs_returnsNil 40ms
โœ… AccountsManagerLaunchSnapshotTests testColdLaunch_authDocDrive_isDeferredOffSyncPreloadStack_notInline 66ms
โœ… AccountsManagerLaunchSnapshotTests testConsumerSmoke_readinessGateDriven_afterColdLaunch_andAfterLibrarySwap 83ms
โœ… AccountsManagerLaunchSnapshotTests testFetchCompletionMayWriteTerminal_evictedSuppressesWrite_othersAllow 65ms
โœ… AccountsManagerLaunchSnapshotTests testPicker_fullListMaterializes_reachesFullCount_notSlimCount 229ms
โœ… AccountsManagerLaunchSnapshotTests testPreload_slimSnapshotButNoFullCache_doesNotHydrate 56ms
โœ… AccountsManagerLaunchSnapshotTests testPreload_slimSnapshotPresent_hydratesOnlyCurrentAndSettings_notFullList 60ms
โœ… AccountsManagerLaunchSnapshotTests testPreload_staleSlimSnapshotLacksCurrentAccount_fallsThroughToFullHydrate 123ms
โœ… AccountsManagerLaunchSnapshotTests testRoundTrip_slimHydratedCurrentAccount_reselectAwayAndBack_redrivesViaProductionSeam 1.10s
โœ… AccountsManagerLaunchSnapshotTests testSlimToFull_reusesSlimCurrentAccountInstance_soInFlightAuthDocNotStranded 165ms
โœ… AccountsManagerStateMachineWiringTests testBoundaryDrain_flushesDeferredAuthDocMainHop_insideTheBoundary 12ms
โœ… AccountsManagerStateMachineWiringTests testDriveCurrentAccountAuthDoc_realAccountNotFound_doesNotRedrive 150ms
โœ… AccountsManagerStateMachineWiringTests testDriveCurrentAccountAuthDoc_staleEvictionMarker_redrives 564ms
โœ… AccountsManagerStateMachineWiringTests testDriveCurrentAccountAuthDoc_terminalState_isNoOp 425ms
โœ… AccountsManagerStateMachineWiringTests testFetchAuthDoc_afterCancelBackgroundWork_isInertNoOp_leavesStateNotLoaded 12ms
โœ… AccountsManagerStateMachineWiringTests testGlobalBoundaryDrain_flushesForeignUntornDownManager_leavesStoreClean 96ms
โœ… AccountsManagerStateMachineWiringTests testLibraryReselect_priorAccount_terminatesWithLibraryDeselected 49ms
โœ… AccountsManagerStateMachineWiringTests testLibraryReselect_reentry_resetsState_andRedrives 99ms
โœ… AccountsManagerStateMachineWiringTests testLibrarySwitch_drivesNewCurrentAccountPastBasicInfoLoaded 295ms
โœ… AccountsManagerStateMachineWiringTests testLoadCatalogs_authDocFetchFails_drivesDetailsFailed 70ms
โœ… AccountsManagerStateMachineWiringTests testLoadCatalogs_currentAccountWithoutDetails_drivesDetailsLoading_thenLoaded 212ms
โœ… AccountsManagerStateMachineWiringTests testLoadCatalogs_warmPath_drivesCurrentAccountPastBasicInfoLoaded 328ms
โœ… AccountsManagerStateMachineWiringTests testPreload_drivesEachLoadedAccount_toBasicInfoLoaded 168ms
โœ… AccountsManagerStateMachineWiringTests testSingleFlight_twoConcurrentAwaiters_oneNetworkRequest 37ms
โœ… AccountsManagerStateMachineWiringTests testStartDownload_currentAccountIdRoundTrip_A_nil_A_B_eachCaptureIsPinned 939ms
โœ… AccountsManagerStateMachineWiringTests testStartDownload_endToEnd_capturedAccountIdReachesAuthorizationHeader 325ms
โœ… AccountsManagerTests testAccountChangeNotification_HasCorrectName 118ms
โœ… AccountsManagerTests testAccountDetails_DefaultAuth_ReturnsNonOAuthFirst 188ms
โœ… AccountsManagerTests testAccountDetails_NeedsAgeCheck_WhenCOPPAAuthExists 200ms
โœ… AccountsManagerTests testAccountDetails_SupportsReservations 172ms
โœ… AccountsManagerTests testAccountDetails_SupportsSimplyESync 59ms
โœ… AccountsManagerTests testAccountLookup_FromMultipleThreads_DoesNotCrash 58ms
โœ… AccountsManagerTests testAccount_AuthenticationDocumentUrl_IsValid 104ms
โœ… AccountsManagerTests testAccount_BarcodeAuthentication_IsBasic 45ms
โœ… AccountsManagerTests testAccount_CatalogUrl_IsValid 29ms
โœ… AccountsManagerTests testAccount_HasAuthenticationTypes 40ms
โœ… AccountsManagerTests testAccount_HasRequiredProperties 443ms
โœ… AccountsManagerTests testAccount_OAuthAuthentication_IsOAuth 42ms
โœ… AccountsManagerTests testAccount_SAMLAuthentication_IsSAML 73ms
โœ… AccountsManagerTests testAccount_WithEmptyUUID_ReturnsNil 41ms
โœ… AccountsManagerTests testAccount_WithExistingUUID_ReturnsAccount 93ms
โœ… AccountsManagerTests testAccount_WithNonExistentUUID_CreatesNewAccount 308ms
โœ… AccountsManagerTests testAccount_WithNonExistentUUID_ReturnsNil 59ms
โœ… AccountsManagerTests testAccount_WithValidUUID_ReturnsAccount 36ms
โœ… AccountsManagerTests testAccountsHaveLoaded_IsConsistentWithAccountsQuery 671ms
โœ… AccountsManagerTests testAccountsManager_ConformsToTPPLibraryAccountsProvider 58ms
โœ… AccountsManagerTests testAccountsManager_HasAgeCheck 67ms
โœ… AccountsManagerTests testAccountsManager_HasNYPLAccountUUID 65ms
โœ… AccountsManagerTests testAccountsManager_WithEmptyUUID_ReturnsNil 78ms
โœ… AccountsManagerTests testAccounts_FromMultipleThreads_DoesNotCrash 47ms
โŠ˜ AccountsManagerTests testAccounts_WithNilKey_ReturnsCurrentAccountSet 44ms
โœ… AccountsManagerTests testAccounts_WithNonExistentKey_ReturnsEmptyArray 44ms
โœ… AccountsManagerTests testAuthenticationType_Basic_DoesNotRequireCatalogAuthentication 117ms
โœ… AccountsManagerTests testAuthenticationType_Basic_NeedsAuth 51ms
โœ… AccountsManagerTests testAuthenticationType_OAuth_NeedsAuth 286ms
โœ… AccountsManagerTests testAuthenticationType_OAuth_RequiresCatalogAuthentication 102ms
โœ… AccountsManagerTests testAuthenticationType_SAML_NeedsAuth 136ms
โœ… AccountsManagerTests testCatalogDidLoadNotification_CanBeObservedWithCombine 118ms
โœ… AccountsManagerTests testCatalogDidLoad_NotificationExists 30ms
โœ… AccountsManagerTests testClearCache_DoesNotThrow 100ms
โœ… AccountsManagerTests testCreateOPDS2Publication_ReturnsValidPublication 783ms
โœ… AccountsManagerTests testCurrentAccountId_AfterExplicitClear_ReturnsNilFromDefaults 698ms
โœ… AccountsManagerTests testCurrentAccountId_PersistsToUserDefaults 38ms
โœ… AccountsManagerTests testCurrentAccount_WhenChanged_PostsNotification 65ms
โœ… AccountsManagerTests testLoadCatalogs_PostsCatalogDidLoadNotification 89ms
โœ… AccountsManagerTests testMockLibraryAccountProvider_CurrentAccountId_MatchesUUID 680ms
โœ… AccountsManagerTests testMockLibraryAccountProvider_CurrentAccount_ReturnsTPPAccount 1.13s
โœ… AccountsManagerTests testMultipleNotificationObservers_AllReceiveAccountChange 221ms
โœ… AccountsManagerTests testNotificationObserver_ForAccountChange_CanBeAdded 957ms
โœ… AccountsManagerTests testNotification_CanBeObservedWithCombine 25ms
โœ… AccountsManagerTests testShared_ReturnsSameInstance 60ms
โœ… AccountsManagerTests testTPPAccountUUIDs_ContainsExpectedAccounts 24ms
โœ… AccountsManagerTests testTPPNationalAccountUUIDs_ContainsPalaceBookshelf 59ms
โŠ˜ AccountsManagerTests testUpdateAccountSet_WithCompletion_CallsCompletion 58ms
โŠ˜ AccountsManagerTests testUpdateAccountSet_WithNilCompletion_DoesNotCrash 267ms
โœ… AccountsManagerTests testUseBetaDidChange_NotificationExists 110ms
โœ… AccountsManagerTests testUseBetaDidChange_PostsNotificationWhenSettingChanges 192ms
โœ… ActiveSessionsViewModelTests testContinueListening_emptyWhenSessionIdle 16ms
โœ… ActiveSessionsViewModelTests testContinueListening_includesPausedSession 5ms
โœ… ActiveSessionsViewModelTests testContinueListening_includesPlayingSession 23ms
โœ… ActiveSessionsViewModelTests testContinueListening_includesPositionGreaterThanZero_notExactlyZero 2ms
โœ… ActiveSessionsViewModelTests testDeriveMostRecent_picksListeningWhenListeningIsNewerThanReading 6ms
โœ… ActiveSessionsViewModelTests testDeriveMostRecent_picksReadingWhenReadingIsNewerThanListening 2ms
โœ… ActiveSessionsViewModelTests testInit_populatesBothArrays_fromInitialInputs 4ms
โœ… ActiveSessionsViewModelTests testReadingRowLimit_isHonored 9ms
โœ… ActiveSessionsViewModelTests testRefresh_firesOnAudiobookSessionStatePublisher 14ms
โœ… ActiveSessionsViewModelTests testRefresh_firesOnBookOpenedNotification 8ms
โœ… ActiveSessionsViewModelTests testRefresh_firesOnCurrentAccountDidChange 2ms
โœ… ActiveSessionsViewModelTests testRefresh_firesOnRegistryStateNotification 209ms
โœ… AdobeActivationTests test_acsmFulfillment_E_ADEPT_NOT_READY_surfacesError <1ms
โœ… AdobeActivationTests test_acsmFulfillment_validInput_succeedsAndReturnsEPUB 3ms
โœ… AdobeActivationTests test_deauthorize_clearsDeviceState <1ms
โœ… AdobeActivationTests test_deviceActivation_alreadyActivated_isIdempotent 1ms
โœ… AdobeActivationTests test_deviceActivation_failurePath_doesNotPersistInvalidCredentials 6ms
โœ… AdobeActivationTests test_deviceActivation_succeeds_withValidLicensor <1ms
โœ… AdobeCertificateGapTests testAdobeCertificate_expirationDate_computesFromTimestamp 2ms
โœ… AdobeCertificateGapTests testAdobeCertificate_expirationDate_nilWhenNoTimestamp <1ms
โœ… AdobeCertificateGapTests testAdobeCertificate_hasExpired_falseForFutureDate <1ms
โœ… AdobeCertificateGapTests testAdobeCertificate_hasExpired_falseWhenNoExpiration <1ms
โœ… AdobeCertificateGapTests testAdobeCertificate_hasExpired_trueForPastDate 151ms
โœ… AdobeCertificateGapTests testAdobeCertificate_initFromData_decodesValidJSON 61ms
โœ… AdobeCertificateGapTests testAdobeCertificate_initFromData_returnsNilForInvalidJSON 1ms
โœ… AdobeDRMCharacterizationTests test_acsmFulfillment_credentialsRequiredToFulfill_mapsToAdobeError 4ms
โœ… AdobeDRMCharacterizationTests test_acsmFulfillment_expiredACSM_mapsToAdobeErrorBucket 16ms
โœ… AdobeDRMCharacterizationTests test_acsmFulfillment_loanNotOnRecord_mapsToAdobeError 54ms
โœ… AdobeDRMCharacterizationTests test_authorize_incrementsCallCount_andSetsCalledFlag 8ms
โœ… AdobeDRMCharacterizationTests test_authorize_invokesCompletionWithSuccess_andCarriesIDs 63ms
โœ… AdobeDRMCharacterizationTests test_authorize_thenIsUserAuthorized_returnsTrue_simulatingGate <1ms
โœ… AdobeDRMCharacterizationTests test_deauthorize_deferredCompletion_canBeFiredManually 4ms
โœ… AdobeDRMCharacterizationTests test_deauthorize_failurePath_completionStillFires 51ms
โœ… AdobeDRMCharacterizationTests test_deauthorize_idempotency_doubleCallIsSafe 2ms
โœ… AdobeDRMCharacterizationTests test_deauthorize_invokesCompletionWithSuccess <1ms
โœ… AdobeDRMCharacterizationTests test_deauthorize_isInvokedWithLicensorCredentials_simulatingSignOut 3ms
โœ… AdobeDRMCharacterizationTests test_doubleAuthorize_doesNotShortCircuit_atTheMockLayer <1ms
โœ… AdobeDRMCharacterizationTests test_isUserAuthorized_defaultsTrue_onFreshMock 1ms
โœ… AdobeDRMCharacterizationTests test_isUserAuthorized_returnsFalse_whenFlagSet <1ms
โœ… AdobeDRMCharacterizationTests test_palaceErrorFrom_authenticationFailedNSError_mapsToDRMAuthFailed 9ms
โœ… AdobeDRMCharacterizationTests test_palaceErrorFrom_nonAdobeDomainNSError_doesNotMisroutToDRM <1ms
โœ… AdobeDRMCharacterizationTests test_palaceErrorFrom_passesThroughExistingPalaceError <1ms
โœ… AdobeDRMCharacterizationTests test_palaceErrorFrom_tooManyActivationsNSError_mapsToDRMTooMany <1ms
โœ… AdobeDRMCharacterizationTests test_palaceErrorFrom_unknownAdeptCode_fallsBackToAdobeError 2ms
โœ… AdobeDRMCharacterizationTests test_reset_clearsAllTrackingState 2ms
โœ… AdobeDRMCharacterizationTests test_workflowsInProgress_defaultsFalse 3ms
โœ… AdobeDRMErrorGapTests testAdobeDRMError_conformsToLocalizedError 2ms
โœ… AdobeDRMErrorGapTests testAdobeDRMError_errorDescription_isNotEmpty 1ms
โœ… AdobeDRMErrorGapTests testAdobeDRMError_expiredCase_exists 76ms
โœ… AdobeDRMHandlerTests testHandleCancellation_setsRegistryStateAndBroadcasts 3ms
โœ… AdobeDRMHandlerTests testHandleFulfillment_copyFailure_failsWithAlert 54ms
โœ… AdobeDRMHandlerTests testHandleFulfillment_didFinishCopySucceeded_marksSuccessfulAndPersistsRights 55ms
โœ… AdobeDRMHandlerTests testHandleFulfillment_didFinishDownloadFalse_failsAndDoesNotMarkSuccessful 4ms
โœ… AdobeDRMHandlerTests testHandleFulfillment_missingAdeptToURL_failsWithAlert 504ms
โœ… AdobeDRMHandlerTests testHandleFulfillment_missingDestinationURL_failsWithAlert 5ms
โœ… AdobeDRMHandlerTests testHandleFulfillment_nonReturnable_skipsFulfillmentIdPersistence 27ms
โœ… AdobeDRMHandlerTests testHandleFulfillment_returnableButNoFulfillmentID_skipsPersistence 6ms
โœ… AdobeDRMHandlerTests testHandleFulfillment_undecodableRightsData_returnsEarlyWithoutSideEffects 57ms
โœ… AdobeDRMHandlerTests testHandleFulfillment_unknownBookIdentifier_returnsEarlyWithoutSideEffects 4ms
โœ… AdobeDRMHandlerTests testHandleNoAuthorization_doesNotMutateRegistryOrAlert 9ms
โœ… AdobeDRMHandlerTests testProgressForwarding_invokesDelegateWithProgressAndTag 57ms
โœ… AdobeDRMServiceGapTests testAdobeDRMService_isReady_returnsBoolean <1ms
โœ… AdobeDRMServiceGapTests testAdobeDRMService_shared_isAccessible 2ms
โœ… AlertModelCoverageTests testAlertModel_basicProperties <1ms
โœ… AlertModelCoverageTests testAlertModel_customButtonTitle <1ms
โœ… AlertModelCoverageTests testAlertModel_maxRetriesExceeded <1ms
โœ… AlertModelCoverageTests testAlertModel_retryable <1ms
โœ… AlertModelCoverageTests testAlertModel_retryableWithCancel <1ms
โœ… AlertModelCoverageTests testAlertModel_uniqueId <1ms
โœ… AlertModelRetryTests testAlertModel_eachInstanceHasUniqueIdentity 187ms
โœ… AlertModelRetryTests testDefaultAlertModel_hasExpectedDefaults 11ms
โœ… AlertModelRetryTests testHalfSheetBranching_secondaryNilSelectsOKOnly_secondaryNonNilSelectsRetryCancel 136ms
โœ… AlertModelRetryTests testMaxRetriesExceeded_factoryShapesAlertForOKOnlyBranch 2ms
โœ… AlertModelRetryTests testRetryable_factoryShapesAlertForRetryPlusCancelBranch 24ms
โœ… AlertModelRetryTests testRetryable_invokesRetryActionAndCancelActionOnTheCorrectSlots 2ms
โœ… AlertModelRetryTests testRetryable_omittedCancelActionIsSafeNoOp <1ms
โœ… AlertModelTests testAlertModel_StoresProvidedValues 293ms
โœ… AlertModelTests testAlertModel_SyncingAlertStrings_AreNotEmpty 10ms
โœ… AlertPresentationRawGuardLintTests testDetector_flagsRawAlertPresent 2ms
โœ… AlertPresentationRawGuardLintTests testDetector_passesCommentsAndNonAlertPresents <1ms
โœ… AlertPresentationRawGuardLintTests testDetector_passesGuardedPresenters 1ms
โœ… AlertPresentationRawGuardLintTests testDetector_routeDetector_bothPathsAndClean 3ms
โœ… AlertPresentationRawGuardLintTests testGuardedSites_neverPresentAnAlertRaw 6ms
โœ… AlertPresentationRawGuardLintTests testGuardedSites_routeThroughAGuardedPresenter 24ms
โœ… AlertUtilsTests testAlertWithDestructiveStyle 4ms
โœ… AlertUtilsTests testAlertWithDetailsHasOKButtonWhenNoRetry 7ms
โœ… AlertUtilsTests testAlertWithDetailsHasRetryAndCancelWhenRetryProvided 8ms
โœ… AlertUtilsTests testAlertWithDetailsHasViewErrorDetailsButton 5ms
โœ… AlertUtilsTests testAlertWithErrorHavingNoDescription 26ms
โœ… AlertUtilsTests testAlertWithNilError 5ms
โœ… AlertUtilsTests testAlertWithNilMessageAndError_ErrorWins 4ms
โœ… AlertUtilsTests testAlertWithNonURLError 107ms
โœ… AlertUtilsTests testAlertWithTitleAndMessage 2ms
โœ… AlertUtilsTests testAlert_explicitMessageOverridesErrorDerivedMessage 1ms
โœ… AlertUtilsTests testAlert_nilMessage_yieldsEmptyStringWithoutAffectingTitle 23ms
โœ… AlertUtilsTests testAlert_nsurlErrors_alwaysProduceNonEmptyMessage 50ms
โœ… AlertUtilsTests testAlert_nsurlErrors_keyedMessages_areDistinguishable 55ms
โœ… AlertUtilsTests testAlert_titleFallback_handlesNilEmptyAndPassThrough 3ms
โœ… AlertUtilsTests testPresentFromViewControllerOrNilWithNilAlert 202ms
โœ… AlertUtilsTests testSetProblemDocumentAppend 3ms
โœ… AlertUtilsTests testSetProblemDocumentReplace 3ms
โœ… AlertUtilsTests testSetProblemDocumentWithNilController 46ms
โœ… AlertUtilsTests testSetProblemDocumentWithNilDocument 2ms
โœ… AlertUtilsTests testSetProblemDocument_partialDocumentReplacesOnlyPresentFields 2ms
โœ… AnnotationContractTests testBookmarkAndReadingPosition_HaveDifferentMotivations 4ms
โœ… AnnotationContractTests testParseAnnotationContainer 15ms
โœ… AnnotationContractTests testReadingPosition_HasEPUBCFISelector 2ms
โœ… AnnotationDeviceIDTests testAnnotationDeviceID_WhenNoAdobeDRM_ReturnsFirebaseDeviceID 1ms
โœ… AnnotationDeviceIDTests testAnnotationDeviceID_isStableAndDerivedFromFirebaseInTestEnvironment 3ms
โœ… AnnotationPostResponseContractTests testAnnotationPostResponse_HasRequiredFields 2ms
โœ… AnnouncementChainTests test_chainAttachmentIndices_fiveAnnouncements_returnsFourChainedPairs 1ms
โœ… AnnouncementChainTests test_chainAttachmentIndices_oneAnnouncement_returnsEmpty <1ms
โœ… AnnouncementChainTests test_chainAttachmentIndices_threeAnnouncements_returnsTwoChainedPairs 2ms
โœ… AnnouncementChainTests test_chainAttachmentIndices_twoAnnouncements_returnsOnePair 1ms
โœ… AnnouncementChainTests test_chainAttachmentIndices_zeroAnnouncements_returnsEmpty 3ms
โœ… AnnouncementTests testAnnouncement_decodesValidJSON <1ms
โœ… AnnouncementTests testAnnouncement_withMissingContent_throwsError <1ms
โœ… AnnouncementTests testAnnouncement_withMissingId_throwsError <1ms
โœ… AnonymousBorrowBaselineFixtureTests test_02_afterAllowNotif_libraryPickerShowsPalaceBookshelfAtTop 16ms
โœ… AnonymousBorrowBaselineFixtureTests test_02_afterAllowNotif_notifPermissionOverlayDismissed 3ms
โœ… AnonymousBorrowBaselineFixtureTests test_03_catalog_anonymousFlowDoesNotShowSignInModal 6ms
โœ… AnonymousBorrowBaselineFixtureTests test_03_catalog_tabBarHasFourTabs <1ms
โœ… AnonymousBorrowBaselineFixtureTests test_03_catalog_threeLanesRenderInOrder 1ms
โœ… AnonymousBorrowBaselineFixtureTests test_03_catalog_titleIsPalaceBookshelf <1ms
โœ… AnonymousBorrowBaselineFixtureTests test_04_bookDetail_borrowButtonAppearsAboveDescription 1ms
โœ… AnonymousBorrowBaselineFixtureTests test_04_bookDetail_borrowButtonPresent 2ms
โœ… AnonymousBorrowBaselineFixtureTests test_04_bookDetail_preBorrowDoesNotShowReadOrRemove 2ms
โœ… AnonymousBorrowBaselineFixtureTests test_05_afterBorrow_borrowButtonGoneReadAndRemoveAppear 1ms
โœ… AnonymousBorrowBaselineFixtureTests test_05_afterBorrow_libraryAttributionShowsPalaceBookshelf 1ms
โœ… AnonymousBorrowBaselineFixtureTests test_06_myBooks_borrowedBookAppears 8ms
โœ… AnonymousBorrowBaselineFixtureTests test_06_myBooks_sortIndicatorShowsTitle 2ms
โœ… AnonymousBorrowCandidateFixtureTests test_03_catalog_anonymousFlowDoesNotShowSignInModal 1ms
โœ… AnonymousBorrowCandidateFixtureTests test_03_catalog_tabBarHasFourTabs 8ms
โœ… AnonymousBorrowCandidateFixtureTests test_03_catalog_threeLanesRenderInOrder 1ms
โœ… AnonymousBorrowCandidateFixtureTests test_03_catalog_titleIsPalaceBookshelf 3ms
โœ… AnonymousBorrowCandidateFixtureTests test_05_afterBorrow_borrowButtonGoneReadAndRemoveAppear 2ms
โœ… AnonymousBorrowCandidateFixtureTests test_06_myBooks_borrowedBookAppears 1ms
โœ… AnonymousBorrowDeltaTests test_03_catalog_structureMatchesBetweenVersions 17ms
โœ… AnonymousBorrowDeltaTests test_06_myBooks_postBorrowStateMatchesBetweenVersions 19ms
โœ… AppContainerAudiobookFactoryTests testAudiobookFactories_areCoherentAcrossProductionReads <1ms
โœ… AppContainerAudiobookFactoryTests testAudiobookSession_returnsSameInstanceAcrossReads 24ms
โœ… AppContainerAudiobookFactoryTests testPlaybackBootstrapper_returnsSameInstanceAcrossReads 95ms
โœ… AppContainerAuthCoordinatorRegistrationTests testProductionAppContainer_authCoordinator_isSingletonAcrossCalls 2.67s
โœ… AppContainerAuthCoordinatorRegistrationTests testProductionAppContainer_downloadCenter_isSingletonAcrossCalls 9ms
โœ… AppContainerAuthCoordinatorRegistrationTests testProductionAppContainer_exposesNonNilAuthCoordinator 1ms
โœ… AppContainerImageLoaderInjectionTests testContainer_holdsInjectedImageLoader 1ms
โœ… AppContainerImageLoaderInjectionTests testContainer_imageLoader_evictDecodedRoutesToInjectedInstance <1ms
โœ… AppContainerImageLoaderInjectionTests testContainer_imageLoader_setForwardsToInjectedInstance 4ms
โœ… AppContainerImageLoaderInjectionTests testProductionContainer_exposesNonNilImageLoader 24ms
โœ… AppContainerIsolationLintTests testDeferredListFileIsLoaded 2ms
โœ… AppContainerIsolationLintTests testLintCatchesSyntheticViolation 46ms
โœ… AppContainerIsolationLintTests testLintFlagsRealCallEvenWhenSameLineAlsoMentionsInString 2ms
โœ… AppContainerIsolationLintTests testLintIgnoresCommentLines 4ms
โœ… AppContainerIsolationLintTests testLintIgnoresStringLiteralMentions <1ms
โœ… AppContainerIsolationLintTests testLintRespectsPerLineExemptionMarker <1ms
โœ… AppContainerIsolationLintTests testNoAppContainerProductionOutsideWhitelist 1.67s
โœ… AppContainerResetTests testResetForTesting_cancelsOldBackgroundWork 9ms
โœ… AppContainerResetTests testResetForTesting_clearsLeakedActiveSessionFromSharedAudiobookPresenter 35ms
โœ… AppContainerResetTests testResetForTesting_disablesBackgroundLoadCatalogs 16ms
โœ… AppContainerResetTests testResetForTesting_isIdempotent_multipleConsecutiveCallsAreSafe 51ms
โœ… AppContainerResetTests testResetForTesting_reinitializesCachedGraph 27ms
โœ… AppContainerTests testEnvironmentValues_appContainerDefault_matchesProductionFactory <1ms
โœ… AppContainerTests testInit_twoContainersWithDifferentRegistries_remainIndependent <1ms
โœ… AppContainerTests testInit_withMockBookRegistry_exposesTheMockNotTheProductionRegistry <1ms
โœ… AppContainerTests testProduction_handsOutStableAppScopedRegistry <1ms
โœ… AppContainerWithSignInModalSheetPresenterTests testWithSignInModalSheetPresenter_overrideValue_isPreferredOverStaticCache 3ms
โœ… AppContainerWithSignInModalSheetPresenterTests testWithSignInModalSheetPresenter_productionContainer_fallsThroughToStaticCacheWhenOverrideNil 3.45s
โœ… AppHealthViewModelTests testAppLaunchStatusThresholds 12ms
โœ… AppHealthViewModelTests testHealthMetricItemProperties <1ms
โœ… AppHealthViewModelTests testInitialState 1ms
โœ… AppHealthViewModelTests testLoadDataIncludesMemoryMetric 3ms
โœ… AppHealthViewModelTests testLoadDataIncludesOfflineQueueMetrics 17ms
โœ… AppHealthViewModelTests testLoadDataPopulatesMetrics 3ms
โœ… AppHealthViewModelTests testOfflineQueueStatusUpdates 16ms
โœ… AppHealthViewModelTests testPerformanceReportGenerated 13ms
โœ… AppLaunchTrackerExtendedTests testAllMilestones_RecordedInChronologicalOrder 26ms
โœ… AppLaunchTrackerExtendedTests testColdLaunch_AfterReset 13ms
โœ… AppLaunchTrackerExtendedTests testDefaultIsColdLaunch 3ms
โœ… AppLaunchTrackerExtendedTests testDuplicateMilestone_DoesNotCreateExtraEntries 5ms
โœ… AppLaunchTrackerExtendedTests testDuplicateMilestone_OverwritesTimestamp 56ms
โœ… AppLaunchTrackerExtendedTests testLaunchMilestone_AllCases <1ms
โœ… AppLaunchTrackerExtendedTests testMarkWarmLaunch_ChangesType 3ms
โœ… AppLaunchTrackerExtendedTests testMilestoneCount_MatchesRecordedCount 3ms
โœ… AppLaunchTrackerExtendedTests testTimeBetween_NilWhenBothMissing 6ms
โœ… AppLaunchTrackerExtendedTests testTimeBetween_NilWhenEndMissing 3ms
โœ… AppLaunchTrackerExtendedTests testTimeBetween_NilWhenStartMissing 3ms
โœ… AppLaunchTrackerExtendedTests testTimeToFirstFrame_NilWithoutFirstFrame 2ms
โœ… AppLaunchTrackerExtendedTests testTimeToInteractive_NilWithoutCatalogLoaded 3ms
โœ… AppLaunchTrackerExtendedTests testTimeToInteractive_NilWithoutProcessStart 3ms
โœ… AppLaunchTrackerExtendedTests testTimeToInteractive_RequiresProcessStartAndCatalogLoaded 49ms
โœ… AppLaunchTrackerExtendedTests testWarmLaunch_ReportsWithWarmType 49ms
โœ… AppLaunchTrackerTests testCatalogLoadedReportsToMonitor 46ms
โœ… AppLaunchTrackerTests testDefaultLaunchTypeIsCold 3ms
โœ… AppLaunchTrackerTests testRecordAllMilestones 41ms
โœ… AppLaunchTrackerTests testRecordProcessStart 1ms
โœ… AppLaunchTrackerTests testReset 4ms
โœ… AppLaunchTrackerTests testTimeBetweenMilestones 64ms
โœ… AppLaunchTrackerTests testTimeBetweenUnrecordedMilestones 4ms
โœ… AppLaunchTrackerTests testTimeToFirstFrame 25ms
โœ… AppLaunchTrackerTests testTimeToInteractive 36ms
โœ… AppLaunchTrackerTests testWarmLaunchType 33ms
โœ… AppLaunchTrackerWiringTests testLaunchTracker_firstFrameUnrecorded_timeToFirstFrameIsNil 11ms
โœ… AppLaunchTrackerWiringTests testLaunchTracker_recordsMilestones_computesTimeToInteractive 834ms
โœ… AppRatingServiceOverrideTests testForceEligible_bypassesIneligibleStateAndMasterSwitch 5ms
โœ… AppRatingServiceOverrideTests testResetEngagementState_clearsAllSignals 3.31s
โœ… AppRatingServiceOverrideTests testWithoutForce_ineligibleStateStaysIneligible 10ms
โœ… AppRatingServiceTests testIsEligible_honorsInjectedConfigThresholds 9ms
โœ… AppRatingServiceTests testIsEligible_whenEligibleAndSwitchOn_returnsTrue 4ms
โœ… AppRatingServiceTests testIsEligible_whenMasterSwitchOff_returnsFalseEvenIfOtherwiseEligible 6ms
โœ… AppRatingServiceTests testIsEligible_whenPolicyFails_returnsFalse 7ms
โœ… AppRatingServiceTests testRecordBookCompleted_incrementsBooksCompleted 8ms
โœ… AppRatingServiceTests testRecordDismissal_incrementsDismissalCount 9ms
โœ… AppRatingServiceTests testRecordOptOut_setsOptedOut 14ms
โœ… AppRatingServiceTests testRecordPromptShown_usesInjectedClockAndIncrementsDisplayCount 7ms
โœ… AppRatingServiceTests testRecordSession_incrementsCountAndStoresCrashProbeResult 84ms
โœ… AppRouteTests testAppRoute_Audio_IsHashable <1ms
โœ… AppRouteTests testAppRoute_BookDetail_IsHashable <1ms
โœ… AppRouteTests testAppRoute_DifferentTypes_NotEqual 1ms
โœ… AppRouteTests testBookRoute_IsHashable <1ms
โœ… AppRouteTests testSearchRoute_IsHashable 11ms
โœ… AppTabHostMiniPlayerIntegrationTests testAppTabHost_fullScreenCoverBindsToPresenterIsPlayerExpanded 4ms
โœ… AppTabHostMiniPlayerIntegrationTests testAppTabHost_presentOnFirstOpen_flipsCoverBinding_synchronouslyForF011 29ms
โœ… AppTabHostMiniPlayerIntegrationTests testAppTabHost_safeAreaInsetContainsMiniPlayer 131ms
โœ… AppTabHostMiniPlayerIntegrationTests testNavigationHostView_epubRoute_setsIsReaderActiveTrue 6ms
โœ… AppTabHostMiniPlayerIntegrationTests testNavigationHostView_popsEpubRoute_setsIsReaderActiveFalse 10ms
โœ… AppTabHostMiniPlayerIntegrationTests testReaderActive_drivenThroughTwoRoutePushes_andTwoPops_acrossEpubAndPdf 13ms
โœ… AppTabHostViewBadgeCountTests test_computeReadyCount_emptyArray_returnsZero 1ms
โœ… AppTabHostViewBadgeCountTests test_computeReadyCount_mixedReservedAndReady_returnsOnlyReadyCount 5ms
โœ… AppTabHostViewBadgeCountTests test_computeReadyCount_oneReadyBook_returnsOne 2ms
โœ… AppTabHostViewBadgeCountTests test_computeReadyCount_reservedBooksOnly_returnsZero 4ms
โœ… AppTabHostViewBadgeCountTests test_computeReadyCount_threeReadyBooks_returnsThree 5ms
โœ… AppTabHostViewBadgeCountTests test_computeReservedCount_emptyArray_returnsZero <1ms
โœ… AppTabHostViewBadgeCountTests test_computeReservedCount_readyBooksOnly_returnsZero 3ms
โœ… AppTabHostViewBadgeCountTests test_computeReservedCount_twoReservedBooks_returnsTwo 6ms
โœ… AppTabHostViewBadgeCountTests test_shouldUpdateBadge_loadedOrSynced_returnsTrue 35ms
โœ… AppTabHostViewBadgeCountTests test_shouldUpdateBadge_unloadedOrLoadingOrSyncing_returnsFalse 1ms
โœ… AppTabRouterCoverageTests testAppTabRouterHub_weakRouterReference 524ms
โœ… AppTabRouterCoverageTests testAppTabRouter_defaultIsCatalog 2ms
โœ… AppTabRouterCoverageTests testAppTabRouter_publishesSelectionChanges 6ms
โœ… AppTabRouterCoverageTests testAppTabRouter_sequentialTabChangesPreserveLastValue 8ms
โœ… AppTabRouterGapTests testAppTabRouterHub_registeredRouterIsWeaklyHeld 58ms
โœ… AppTabRouterGapTests testAppTabRouter_roundTripToDefaultEmitsTwoChangeEvents 3ms
โœ… AppTabRouterGapTests testAppTabRouter_tabSwitchPublishesChangeEvent 103ms
โœ… ArrayExtensionsTests testSafeSubscriptGet_NegativeIndex_ReturnsNil 1ms
โœ… ArrayExtensionsTests testSafeSubscriptGet_OutOfBounds_ReturnsNil 3ms
โœ… ArrayExtensionsTests testSafeSubscriptGet_StringArray_ReturnsElement 141ms
โœ… ArrayExtensionsTests testSafeSubscriptGet_ValidIndex_ReturnsElement 1ms
โœ… ArrayExtensionsTests testSafeSubscriptGet_emptyArray_returnsNilForAllIndices 815ms
โœ… ArrayExtensionsTests testSafeSubscriptSet_updatesValidIndicesAndIgnoresInvalidWrites 13ms
โœ… AudioBookmarkGapTests testAudioBookmark_copy_createsIndependentCopy 2ms
โœ… AudioBookmarkGapTests testAudioBookmark_creation_storesBasicProperties 141ms
โœ… AudioBookmarkGapTests testAudioBookmark_isSimilar_returnsFalseForDifferentChapter 2ms
โœ… AudioBookmarkGapTests testAudioBookmark_isSimilar_returnsTrueForSameChapterPosition 3ms
โœ… AudioBookmarkGapTests testAudioBookmark_toData_producesRoundTripData 9ms
โœ… AudioBookmarkGapTests testAudioBookmark_toTPPBookLocation_producesValidLocation 15ms
โœ… AudioEngineWrapperTests test_chapterStatusCache_after_pause_doesNotDispose <1ms
โœ… AudioEngineWrapperTests test_chapterStatusCache_emptyChapters_returnsNoFault 769ms
โœ… AudioEngineWrapperTests test_feedbookVendor_classifiesCantook_fromValidSignature 96ms
โœ… AudioEngineWrapperTests test_feedbookVendor_isIdempotent_acrossRapidOpenClosePairs <1ms
โœ… AudioEngineWrapperTests test_feedbookVendor_returnsNil_forMissingMetadata 2ms
โœ… AudioEngineWrapperTests test_feedbookVendor_returnsNil_forUnknownIssuer <1ms
โœ… AudioEngineWrapperTests test_openFindawayBook_repeatedOpen_doesNotDoubleReleaseSemaphore 1ms
โœ… AudioEngineWrapperTests test_openFindawayBook_succeeds_withValidLicense 12ms
โœ… AudioInterruptionLogicTests testNoResume_whenNoShouldResume_andWasNotPlaying 2ms
โœ… AudioInterruptionLogicTests testResume_phoneCallDeclinedScenario 928ms
โœ… AudioInterruptionLogicTests testResume_siriInterruptionScenario 1ms
โœ… AudioInterruptionLogicTests testResume_whenNoShouldResume_butWasPlaying 2ms
โœ… AudioInterruptionLogicTests testResume_whenShouldResumeSet_andWasPlaying 2ms
โœ… AudioInterruptionLogicTests testResume_whenShouldResumeSet_butWasNotPlaying 2ms
โœ… AudioSessionActivatorTests testActivate_nonRetriableError_failsImmediately_noRetry_noSleep 99ms
โœ… AudioSessionActivatorTests testActivate_otherAudioPlaying_skipsWithoutActivating 17ms
โœ… AudioSessionActivatorTests testActivate_persistentTransient_isBoundedAtMaxAttempts 3ms
โœ… AudioSessionActivatorTests testActivate_succeedsFirstTry_returnsActivatedOneAttempt_noSleep 6ms
โœ… AudioSessionActivatorTests testActivate_transientThenSuccess_retriesWithBackoff 85ms
โœ… AudioSessionActivatorTests testBackoff_isExponential_andClampedToCap 38ms
โœ… AudioSessionActivatorTests testIsRetriable_terminalCodes_areNotRetriable 28ms
โœ… AudioSessionActivatorTests testIsRetriable_transientActivationCodes_areRetriable <1ms
โœ… AudiobookAccessibilityTests testAudiobookIndicator_labelExists <1ms
โœ… AudiobookAccessibilityTests testPauseLabel_isDescriptive 5ms
โœ… AudiobookAccessibilityTests testPlayLabel_isDescriptive <1ms
โœ… AudiobookAccessibilityTests testPlayPauseLabel_changesWithState 1ms
โœ… AudiobookAccessibilityTests testPlayPauseLabels_areDifferent 2ms
โœ… AudiobookAccessibilityTests testSkipBackLabel_indicatesTimeUnit <1ms
โœ… AudiobookAccessibilityTests testSkipBackLabel_isDescriptiveWithDuration <1ms
โœ… AudiobookBackgroundAudioTests testContinuousPlayback_accumulatesCorrectly 11ms
โœ… AudiobookBackgroundAudioTests testInterruptedPlayback_savesPartialTime 18ms
โœ… AudiobookBookmarkBusinessLogicConcurrencyTests testConcurrentDeleteAndFetch_doesNotCrash 698ms
โœ… AudiobookBookmarkBusinessLogicConcurrencyTests testDeleteBookmark_thenFetch_filtersDeletedBookmark 2.67s
โœ… AudiobookBookmarkBusinessLogicConcurrencyTests testSyncBookmarks_concurrentCallers_everyCompletionFiresExactlyOnce 1.36s
โœ… AudiobookBookmarkBusinessLogicPositionWriteTests testIsAtBeginning_preservedAfterMigration_doesNotOverwriteValidPosition 187ms
โœ… AudiobookBookmarkBusinessLogicPositionWriteTests testSaveListeningPosition_delegatesNetworkSaveToPositionWriter 271ms
โœ… AudiobookBookmarkBusinessLogicPositionWriteTests testSaveListeningPosition_savesLocallyImmediately 7ms
โœ… AudiobookBookmarkBusinessLogicPositionWriteTests testSaveListeningPosition_writerError_doesNotCrash_completionCalledWithError 79ms
โœ… AudiobookBookmarkBusinessLogicPositionWriteTests testSaveListeningPosition_writerThrottled_localStillCommitted 438ms
โœ… AudiobookBookmarkBusinessLogicPositionWriteTests testTimestampNewerRace_preservedAfterMigration_keepsLocal 44ms
โœ… AudiobookBookmarkBusinessLogicTests testBusinessLogic_canBeInitialized 6ms
โœ… AudiobookBookmarkBusinessLogicTests testBusinessLogic_hasBookReference <1ms
โœ… AudiobookBookmarkBusinessLogicTests testDebounce_DeallocDuringPendingWork_DoesNotCrash 1.54s
โœ… AudiobookBookmarkBusinessLogicTests testDebounce_RapidCalls_OnlyLastSyncs 14ms
โœ… AudiobookBookmarkBusinessLogicTests testFlushPendingOperations_ExecutesPendingWork 1ms
โœ… AudiobookBookmarkBusinessLogicTests testFlush_AfterDealloc_DoesNotCrash 5ms
โœ… AudiobookBookmarkBusinessLogicTests testLoadTracks_succeeds 16ms
โœ… AudiobookBookmarkBusinessLogicTests testPositionRestoration_BothNil_ReturnsNil 1ms
โœ… AudiobookBookmarkBusinessLogicTests testPositionRestoration_LocalNewerThanRemote_UsesLocal 4ms
โœ… AudiobookBookmarkBusinessLogicTests testPositionRestoration_OnlyLocalExists_UsesLocal 5ms
โœ… AudiobookBookmarkBusinessLogicTests testPositionRestoration_OnlyRemoteExists_UsesRemote 5ms
โœ… AudiobookBookmarkBusinessLogicTests testPositionRestoration_RemoteNewerThanLocal_UsesRemote 3ms
โœ… AudiobookBookmarkBusinessLogicTests testPositionRestoration_SameTimestamp_UsesLocal 4ms
โœ… AudiobookBookmarkBusinessLogicTests testSaveBookmark_AddsToRegistry 1.01s
โœ… AudiobookBookmarkBusinessLogicTests testSaveBookmark_CreatesBookmark 1.01s
โœ… AudiobookBookmarkBusinessLogicTests testSaveListeningPositionSync_SavesImmediately 20ms
โœ… AudiobookBookmarkBusinessLogicTests testSaveListeningPosition_SavesLocallyImmediately 11ms
โœ… AudiobookBookmarkBusinessLogicTests testSaveListeningPosition_SyncsToServer 40ms
โœ… AudiobookBookmarkBusinessLogicTests testSaveListeningPosition_track0_29s_track1AlreadySaved_doesNotOverwriteWithBeginning 8ms
โœ… AudiobookBookmarkBusinessLogicTests testSaveListeningPosition_track0_time0_savesToServer 14ms
โœ… AudiobookBookmarkBusinessLogicTests testSyncBookmarks_MergesLocalAndRemote 152ms
โœ… AudiobookChapterTOCNormalizationTests testNormalizedChaptersCount_balancedTOC_returnsOriginalCount <1ms
โœ… AudiobookChapterTOCNormalizationTests testNormalizedChaptersCount_exactlyAtThreshold_returnsOriginal <1ms
โœ… AudiobookChapterTOCNormalizationTests testNormalizedChaptersCount_oneOverThreshold_collapses <1ms
โœ… AudiobookChapterTOCNormalizationTests testNormalizedChaptersCount_oversubdividedTOC_collapsesToTrackCount 39ms
โœ… AudiobookChapterTOCNormalizationTests testNormalizedChaptersCount_slightlyInflatedTOC_returnsOriginalCount <1ms
โœ… AudiobookChapterTOCNormalizationTests testNormalizedChaptersCount_zeroTracks_returnsOriginal <1ms
โœ… AudiobookColdLoadRecoveryTests testColdLoad_firstFailure_triggersAutoReopen <1ms
โœ… AudiobookColdLoadRecoveryTests testNoCurrentBook_doesNotAutoReopen 2ms
โœ… AudiobookColdLoadRecoveryTests testSecondFailure_alreadyAttempted_surfacesAlertNotLoop <1ms
โœ… AudiobookColdLoadRecoveryTests testWarmFailure_afterPlaybackStarted_doesNotAutoReopen 1ms
โœ… AudiobookCrossVendorSmokeTests testSmoke_BearerToken_wiresThroughTwoLegManifestFetch 91ms
โœ… AudiobookCrossVendorSmokeTests testSmoke_LCP_wiresThroughToAudiobooksFactory 335ms
โœ… AudiobookCrossVendorSmokeTests testSmoke_LocalFile_wiresThroughLocalManifestRead 140ms
โœ… AudiobookCrossVendorSmokeTests testSmoke_OpenAccess_wiresThroughSingleLegManifestFetch 616ms
โœ… AudiobookDataManagerEmptyQueueTests testSyncValues_withEmptyQueue_makesNoRequests 2ms
โœ… AudiobookDataManagerErrorHandlingTests testSyncValues_with404Response_removesEntriesAndURL 30ms
โœ… AudiobookDataManagerErrorHandlingTests testSyncValues_with500Response_keepsEntriesForRetry 27ms
โœ… AudiobookDataManagerErrorHandlingTests testSyncValues_with503Response_keepsEntriesForRetry 164ms
โœ… AudiobookDataManagerErrorHandlingTests testSyncValues_withNetworkError_keepsEntries 182ms
โœ… AudiobookDataManagerErrorHandlingTests testSyncValues_withPartialSuccess_removesOnlySuccessfulEntries 81ms
โœ… AudiobookDataManagerModelsTests testAudiobookDataManagerStoreInit_empty 47ms
โœ… AudiobookDataManagerModelsTests testAudiobookDataManagerStoreInit_fromData_invalidJson_returnsNil 56ms
โœ… AudiobookDataManagerModelsTests testAudiobookDataManagerStoreInit_fromData_validJson 120ms
โœ… AudiobookDataManagerModelsTests testAudiobookDataManagerStoreJsonRepresentation 2ms
โœ… AudiobookDataManagerModelsTests testAudiobookDataManagerStoreRoundTrip 47ms
โœ… AudiobookDataManagerModelsTests testAudiobookTimeEntryCodable 18ms
โœ… AudiobookDataManagerModelsTests testAudiobookTimeEntryEquality 17ms
โœ… AudiobookDataManagerModelsTests testLibraryBookCodable 8ms
โœ… AudiobookDataManagerModelsTests testLibraryBookEquality <1ms
โœ… AudiobookDataManagerModelsTests testLibraryBookHashable 4ms
โœ… AudiobookDataManagerModelsTests testLibraryBookInit_directAndFromTimeEntryAreEqual <1ms
โœ… AudiobookDataManagerModelsTests testLibraryBookInit_fromTimeEntry 8ms
โœ… AudiobookDataManagerModelsTests testRequestDataInit_fromLibraryBookAndEntries 86ms
โœ… AudiobookDataManagerModelsTests testRequestDataInit_timeEntryDurationMapsToSecondsPlayed 1ms
โœ… AudiobookDataManagerModelsTests testRequestDataJsonRepresentation 127ms
โœ… AudiobookDataManagerModelsTests testRequestDataTimeEntryDescription 18ms
โœ… AudiobookDataManagerModelsTests testResponseDataInit_fromData_emptyResponses 24ms
โœ… AudiobookDataManagerModelsTests testResponseDataInit_fromData_invalidJson_returnsNil 47ms
โœ… AudiobookDataManagerModelsTests testResponseDataInit_fromData_validJson 18ms
โœ… AudiobookDataManagerModelsTests testResponseDataInit_jsonAndDirectProduceSameResult 15ms
โœ… AudiobookDataManagerNetworkSyncTests testAudiobookDataManager_Sync_InitializesCorrectly 9ms
โœ… AudiobookDataManagerNetworkSyncTests testSyncValues_requestBodyContainsCorrectFormat 9ms
โœ… AudiobookDataManagerNetworkSyncTests testSyncValues_withMultipleBooks_makesRequestForEach 19ms
โœ… AudiobookDataManagerNetworkSyncTests testSyncValues_withQueuedEntries_postsToCorrectURL 14ms
โœ… AudiobookDataManagerNetworkSyncTests testSyncValues_withSuccessfulResponse_removesEntriesFromQueue 6ms
โœ… AudiobookDataManagerSaveTests testDataManagerConformance_savesViaProtocol 2ms
โœ… AudiobookDataManagerSaveTests testSave_addsEntryToQueue 2ms
โœ… AudiobookDataManagerSaveTests testSave_multipleEntries_allQueued 42ms
โœ… AudiobookDataManagerSaveTests testSave_storesURLMapping 6ms
โœ… AudiobookDataManagerStoreRecoveryTests testAudiobookDataManagerStoreInit_rejectsMalformedPayloads 5ms
โœ… AudiobookDataManagerStoreRecoveryTests testAudiobookDataManagerStoreInit_withPartialData_returnsNil 7ms
โœ… AudiobookDataManagerStoreRecoveryTests testLoadStore_withCorruptedJSON_doesNotCrash 9ms
โœ… AudiobookDataManagerStoreRecoveryTests testLoadStore_withEmptyFile_doesNotCrash 8ms
โœ… AudiobookDataManagerStoreRecoveryTests testSaveAndLoadStore_preservesData 43ms
โœ… AudiobookFileLoggerTests testCleanup_whenOverSizeLimit_deletesOldestFileFirst 51ms
โœ… AudiobookFileLoggerTests testGetLogsDirectoryUrl_directoryExists 2ms
โœ… AudiobookFileLoggerTests testGetLogsDirectoryUrl_returnsURL 2ms
โœ… AudiobookFileLoggerTests testInit_withCustomLogsRoot_usesProvidedDirectory 2ms
โœ… AudiobookFileLoggerTests testLogEvent_atExact2MBBoundary_appendsRatherThanRotates 82ms
โœ… AudiobookFileLoggerTests testLogEvent_concurrentWritesToSameBook_atLeastSomeEventsAppear 39ms
โœ… AudiobookFileLoggerTests testLogEvent_containsTimestamp 2ms
โœ… AudiobookFileLoggerTests testLogEvent_createsLogFile 2ms
โœ… AudiobookFileLoggerTests testLogEvent_multipleEvents_allAppear 5ms
โœ… AudiobookFileLoggerTests testRetrieveLog_atExact1MBBoundary_doesNotTruncate 17ms
โœ… AudiobookFileLoggerTests testRetrieveLog_nonexistentBook_returnsNil 2ms
โœ… AudiobookFileLoggerTests testRetrieveLog_truncatesAbove1MBAndPrependsMarker 23ms
โœ… AudiobookFileLoggerTests testRetrieveLogs_emptyBookIds_returnsEmptyDict 2ms
โœ… AudiobookFileLoggerTests testRetrieveLogs_multipleBooks 4ms
โœ… AudiobookFirstOpenHangTests testAwaitReadinessAndIssueFirstPlay_drivesProbeAndCommand_onProductionWiring 25ms
โœ… AudiobookFirstOpenHangTests testAwaitReadinessAndIssueFirstPlay_timeout_surfacesLoadFailure_andNeverIssuesPlay 139ms
โœ… AudiobookFirstOpenHangTests testAwaitReady_manyConcurrentAwaiters_parkedBeforeFailed_allResumeSameFailureReason 98ms
โœ… AudiobookFirstOpenHangTests testAwaitReady_manyConcurrentAwaiters_parkedBeforeReady_allResumeReady 71ms
โœ… AudiobookFirstOpenHangTests testConfirmLCPFirstPlay_engineBecameReadyDuringGateWait_suppressesReissue 65ms
โœ… AudiobookFirstOpenHangTests testConfirmLCPFirstPlay_engineNeverLoaded_exhaustsBudgetSilently_noError 315ms
โœ… AudiobookFirstOpenHangTests testConfirmLCPFirstPlay_engineNotReadyInitially_reissuesPlayUntilLoaded 153ms
โœ… AudiobookFirstOpenHangTests testConfirmLCPFirstPlay_engineReadyAfterFirstPlay_issuesExactlyOnePlay 7ms
โœ… AudiobookFirstOpenHangTests testFirstOpen_engineNeverReady_within2s_emitsLoadError 172ms
โœ… AudiobookFirstOpenHangTests testFirstOpen_engineNotReadyAtBindTime_awaitsReadiness_beforeIssuingPlay 211ms
โœ… AudiobookFirstOpenHangTests testNavBackAndReopen_secondOpenSucceeds_withoutDoublePlay 63ms
โœ… AudiobookFirstOpenHangTests testPresentLoadingShellIfEligible_doesNotFireOrPresent_whenInAppNavOff 53ms
โœ… AudiobookFirstOpenHangTests testPresentLoadingShellIfEligible_doesNotFire_whenNotStartPlaying 11ms
โœ… AudiobookFirstOpenHangTests testPresentLoadingShellIfEligible_presentsShellAndFiresHook_whenEligible 102ms
โœ… AudiobookLoadFailureSAMLReauthTests testRegressionForBug_SAMLOpenFailureGetsReauth_perHelpSpot17727 53ms
โœ… AudiobookLoadFailureSAMLReauthTests testShouldNotTrigger_forBasicAuthAccount 75ms
โœ… AudiobookLoadFailureSAMLReauthTests testShouldNotTrigger_forOAuthAccount 113ms
โœ… AudiobookLoadFailureSAMLReauthTests testShouldNotTrigger_onCancelledLoadEvenWhenSAMLStale 157ms
โœ… AudiobookLoadFailureSAMLReauthTests testShouldNotTrigger_whenAuthStateIsLoggedIn 132ms
โœ… AudiobookLoadFailureSAMLReauthTests testShouldNotTrigger_whenAuthStateIsLoggedOut 35ms
โœ… AudiobookLoadFailureSAMLReauthTests testShouldNotTrigger_whenCurrentBookIsNil 243ms
โœ… AudiobookLoadFailureSAMLReauthTests testShouldNotTrigger_whenNoStoredCredentials 32ms
โœ… AudiobookLoadFailureSAMLReauthTests testShouldTrigger_forAnyNonCancelledLoadErrorWhenSAMLStale 167ms
โœ… AudiobookLoadFailureSAMLReauthTests testShouldTrigger_whenStaleCredentialsAndSAMLAndBook 84ms
โœ… AudiobookLoaderDispatchTests testLoad_bearerTokenBook_dispatchesToBearerTokenAdapter 12ms
โœ… AudiobookLoaderDispatchTests testLoad_cancelDuringDispatch_surfacesCancelled 6ms
โœ… AudiobookLoaderDispatchTests testLoad_lcpBook_dispatchesToLCPAdapter 15ms
โœ… AudiobookLoaderDispatchTests testLoad_lcpPriorityOverOthers 16ms
โœ… AudiobookLoaderDispatchTests testLoad_localFileBook_dispatchesToLocalFileAdapter 18ms
โœ… AudiobookLoaderDispatchTests testLoad_noAdapterMatches_failsWithManifestFetchFailed 88ms
โœ… AudiobookLoaderDispatchTests testLoad_openAccessBook_dispatchesToOpenAccessAdapter 8ms
โœ… AudiobookLoaderFinalizeBuildTests test_audiobookLoadError_factoryFailedCarriesManifestType <1ms
โœ… AudiobookLoaderFinalizeBuildTests test_audiobookLoadError_manifestDecodingFailedCarriesUnderlying 5ms
โœ… AudiobookLoaderFinalizeBuildTests test_finalizeBuild_factoryReturnsNil_noEncryptedBlock_decodesFine 36ms
โœ… AudiobookLoaderFinalizeBuildTests test_finalizeBuild_factoryReturnsNil_throwsFactoryFailed 3ms
โœ… AudiobookLoaderFinalizeBuildTests test_finalizeBuild_invalidJSON_throwsManifestDecodingFailed <1ms
โœ… AudiobookLoaderFinalizeBuildTests test_finalizeBuild_nilDecryptor_doesNotTrap 5ms
โœ… AudiobookLoaderFinalizeBuildTests test_finalizeBuild_overdriveBook_passesBearerToken 9ms
โœ… AudiobookLoaderFinalizeBuildTests test_finalizeBuild_truncatedJSON_throwsCleanly <1ms
โœ… AudiobookLoaderFinalizeBuildTests test_finalizeBuild_validManifest_succeeds 7ms
โœ… AudiobookLoaderFinalizeBuildTests test_finalizeBuild_zeroTrackAudiobook_failsWithFactoryFailed_notSuccess 72ms
โœ… AudiobookLoaderFinalizeBuildTests test_finalizeBuild_zeroTrackOverdrive_premise_factoryReturnsNonNilButTrackless 40ms
โŠ˜ AudiobookLoaderOPDSShapeMatrixTests testHermeticGuard_clearingExpiredToken_unblocksAdapterRouting 13ms
โŠ˜ AudiobookLoaderOPDSShapeMatrixTests testMatrix_OPDS1XMLFeedTopLevelLCP_routesToLCP 29ms
โŠ˜ AudiobookLoaderOPDSShapeMatrixTests testMatrix_OPDS2JSONFeedNestedLCP_routesToLCP 22ms
โŠ˜ AudiobookLoaderOPDSShapeMatrixTests testMatrix_findawayTypedManifest_routesToOpenAccessAdapter 157ms
โŠ˜ AudiobookLoaderOPDSShapeMatrixTests testMatrix_nestedBearerTokenMIME_fallsThroughToOpenAccess 40ms
โŠ˜ AudiobookLoaderOPDSShapeMatrixTests testMatrix_openAccessNoDRM_routesToOpenAccessAdapter 22ms
โŠ˜ AudiobookLoaderOPDSShapeMatrixTests testMatrix_openAccessWithBearerToken_routesToBearerTokenAdapter 17ms
โŠ˜ AudiobookLoaderOPDSShapeMatrixTests testRefreshInProgressClassifier_matchesOnlyTheInProgressError 31ms
โœ… AudiobookLoaderPredicateTests testHasRefreshableCredentials_allPresent_returnsTrue <1ms
โœ… AudiobookLoaderPredicateTests testHasRefreshableCredentials_emptyPin_returnsFalse <1ms
โœ… AudiobookLoaderPredicateTests testHasRefreshableCredentials_emptyUsername_returnsFalse <1ms
โœ… AudiobookLoaderPredicateTests testHasRefreshableCredentials_nilPin_returnsFalse 2ms
โœ… AudiobookLoaderPredicateTests testHasRefreshableCredentials_nilTokenURL_returnsFalse <1ms
โœ… AudiobookLoaderPredicateTests testHasRefreshableCredentials_nilUsername_returnsFalse <1ms
โœ… AudiobookLoaderPredicateTests testLooksLikeHTMLResponse_applicationJSON_returnsFalse <1ms
โœ… AudiobookLoaderPredicateTests testLooksLikeHTMLResponse_noContentTypeHeader_returnsFalse 79ms
โœ… AudiobookLoaderPredicateTests testLooksLikeHTMLResponse_textHTMLWithCharset_returnsTrue 2ms
โœ… AudiobookLoaderPredicateTests testLooksLikeHTMLResponse_textHTML_returnsTrue 1ms
โœ… AudiobookLoaderPredicateTests testLooksLikeHTMLResponse_xhtml_returnsTrue 63ms
โœ… AudiobookLoaderTests testLoad_missingLocalFileAndUnreachableURL_failsWithManifestError 98ms
โœ… AudiobookLoaderTests testLoad_whenCancelledFirst_surfacesCancelledError 505ms
โœ… AudiobookMorphingPlayerViewTests testBookmarkErrorMessage_mapsPublicCasesToLocalizedCopy 1.09s
โœ… AudiobookMorphingPlayerViewTests testBookmarkErrorMessage_unknownErrorFallsBackToGeneric 211ms
โœ… AudiobookMorphingPlayerViewTests testControlMetrics_landscapeTier_matchesToolkit <1ms
โœ… AudiobookMorphingPlayerViewTests testControlMetrics_narrowBoundary_isStrictlyLessThan370 1ms
โœ… AudiobookMorphingPlayerViewTests testControlMetrics_narrowTier_matchesToolkit 39ms
โœ… AudiobookMorphingPlayerViewTests testControlMetrics_standardPortraitTier_matchesToolkit 63ms
โœ… AudiobookMorphingPlayerViewTests testFormatTime_returnsExpectedTimecodes 2ms
โœ… AudiobookMorphingPlayerViewTests testRubberBand_nonUpwardOffsetPassesThrough 5ms
โœ… AudiobookMorphingPlayerViewTests testRubberBand_upwardPullIsResistedAndClamped 78ms
โœ… AudiobookMorphingPlayerViewTests testToastIsError_classifiesSuccessAndFailureCopy 3ms
โœ… AudiobookNetworkValidationTests testFullyDownloaded_bypassesNetworkRulesAcrossAllConnectivityCombinations <1ms
โœ… AudiobookNetworkValidationTests testFullyDownloaded_neverNeedsNetwork_offline <1ms
โœ… AudiobookNetworkValidationTests testStreaming_networkValidationCoversAllConnectivityCombinations <1ms
โœ… AudiobookOpenStateRaceTests testF016Repro_audiobookOpenAwaitsReadiness_doesNotSilentlyReadPastNilDetails 127ms
โœ… AudiobookOpenStateRaceTests testF016Repro_audiobookOpenUnderDetailsFailed_gateThrows_callerMapsToNotAuthenticated 144ms
โœ… AudiobookOpenStateRaceTests testIntegration_openAudiobook_underDetailsFailed_returnsNotAuthenticated 130ms
โœ… AudiobookPhoneAlertContentTests testLoaderAndUnknownErrors_returnNil_toAvoidDoubleAlerts <1ms
โœ… AudiobookPhoneAlertContentTests testValidationErrors_allProduceAlertContent 3ms
โœ… AudiobookPhoneAlertContentTests testWifiRequired_producesAlertContent 3ms
โœ… AudiobookPlaybackStateTests testPlaybackStartAndStop_cycle 23ms
โœ… AudiobookPlaybackStateTests testPlaybackStarted_canBeCalledMultipleTimes 8ms
โœ… AudiobookPlaybackStateTests testPlaybackStopped_canBeCalledWithoutStart 3ms
โœ… AudiobookPlaybackTests testAudiobookTimeEntry_DurationCappedAt60 4ms
โœ… AudiobookPlaybackTests testAudiobookTimeEntry_ValidDuration 3ms
โœ… AudiobookPlaybackTests testChapterIndex_ValidTrack 3ms
โœ… AudiobookPlaybackTests testChapterNavigation_NextChapter 3ms
โœ… AudiobookPlaybackTests testChapterNavigation_NextChapter_AtEnd 3ms
โœ… AudiobookPlaybackTests testChapterNavigation_PreviousChapter 3ms
โœ… AudiobookPlaybackTests testChapterNavigation_PreviousChapter_ClampsToZero 3ms
โœ… AudiobookPlaybackTests testPlaybackSpeed_0_75x_CalculatesCorrectDuration 3ms
โœ… AudiobookPlaybackTests testPlaybackSpeed_1_0x_CalculatesCorrectDuration 26ms
โœ… AudiobookPlaybackTests testPlaybackSpeed_1_25x_CalculatesCorrectDuration 3ms
โœ… AudiobookPlaybackTests testPlaybackSpeed_1_5x_CalculatesCorrectDuration 3ms
โœ… AudiobookPlaybackTests testPlaybackSpeed_2_0x_CalculatesCorrectDuration 3ms
โœ… AudiobookPlaybackTests testPlaybackSpeed_ContentPlayedCalculation 3ms
โœ… AudiobookPlaybackTests testSkipAhead_Adds30Seconds 3ms
โœ… AudiobookPlaybackTests testSkipAhead_ClampsToTrackEnd 3ms
โœ… AudiobookPlaybackTests testSkipAhead_WithinTrackDuration 3ms
โœ… AudiobookPlaybackTests testSkipBehind_ClampsToZero 4ms
โœ… AudiobookPlaybackTests testSkipBehind_Subtracts30Seconds 3ms
โœ… AudiobookPlaybackTests testSleepTimer_15Minutes 3ms
โœ… AudiobookPlaybackTests testSleepTimer_30Minutes 3ms
โœ… AudiobookPlaybackTests testSleepTimer_60Minutes 3ms
โœ… AudiobookPlaybackTests testSleepTimer_Expired 3ms
โœ… AudiobookPlaybackTests testSleepTimer_RemainingTime 3ms
โœ… AudiobookPlaybackTests testTrackPosition_Creation 3ms
โœ… AudiobookPlaybackTests testTrackPosition_ToAudioBookmark 10ms
โœ… AudiobookPlaybackTests testTrackPosition_ToTPPBookLocation 3ms
โœ… AudiobookPlaytimesLifecycleTests testPlaytimes_accountSwitchNotification_doesNotClearQueue 36ms
โœ… AudiobookPlaytimesLifecycleTests testPlaytimes_allCrossAccount_backgroundTaskStillEnds 61ms
โœ… AudiobookPlaytimesLifecycleTests testPlaytimes_crossAccountUpload_isSkipped_andQueuePreserved 11ms
โœ… AudiobookPlaytimesLifecycleTests testPlaytimes_midFlightCancellation_notReplayedByQueue 71ms
โœ… AudiobookPlaytimesLifecycleTests testPlaytimes_sameAccountUpload_postsNormally 34ms
โœ… AudiobookPlaytimesLifecycleTests testPlaytimes_switchBack_flushesPreservedEntries 73ms
โœ… AudiobookPositionAdapterContractTests test_audiobookSave_localFirstThenWriter 246ms
โœ… AudiobookPositionAdapterContractTests test_audiobookSave_preservesIsAtBeginningGuard 49ms
โœ… AudiobookPositionAdapterContractTests test_audiobookSave_preservesTimestampNewerRace 81ms
โœ… AudiobookPositionPolicyValidatorTests testValidate_NaNTimestamp_fails 23ms
โœ… AudiobookPositionPolicyValidatorTests testValidate_capMultiplier_isExactly1Point1 <1ms
โœ… AudiobookPositionPolicyValidatorTests testValidate_finiteCheckRunsBeforeNegativeCheck <1ms
โœ… AudiobookPositionPolicyValidatorTests testValidate_happyPath_succeeds 14ms
โœ… AudiobookPositionPolicyValidatorTests testValidate_infiniteTimestamp_fails <1ms
โœ… AudiobookPositionPolicyValidatorTests testValidate_negativeTimestamp_fails <1ms
โœ… AudiobookPositionPolicyValidatorTests testValidate_positionAtExact110Percent_succeeds <1ms
โœ… AudiobookPositionPolicyValidatorTests testValidate_positionAtExactTotalDuration_succeeds 4ms
โœ… AudiobookPositionPolicyValidatorTests testValidate_positionExceeds110Percent_fails <1ms
โœ… AudiobookPositionPolicyValidatorTests testValidate_timestampExactlyAtNegativeBoundary_fails <1ms
โœ… AudiobookPositionPolicyValidatorTests testValidate_timestampZero_succeeds 1ms
โœ… AudiobookPositionPolicyValidatorTests testValidate_totalDurationNegative_skipsCapCheck <1ms
โœ… AudiobookPositionPolicyValidatorTests testValidate_totalDurationZero_skipsCapCheck <1ms
โœ… AudiobookPositionPolicyValidatorTests testValidate_trackKeyMismatch_fails 1ms
โœ… AudiobookPositionRestoreTests testIsUserAuthenticated_authDocLoadFailed_returnsFalse 81ms
โœ… AudiobookPositionRestoreTests testIsUserAuthenticated_noCurrentAccount_returnsFalse 22ms
โœ… AudiobookPositionRestoreTests testIsValidPosition_foreignKey_returnsFalse 34ms
โœ… AudiobookPositionRestoreTests testIsValidPosition_negativeTimestamp_returnsFalse 6ms
โœ… AudiobookPositionRestoreTests testIsValidPosition_validPosition_returnsTrue 7ms
โœ… AudiobookPositionRestoreTests testPreferRemote_noLocalPosition_prefersRemote 44ms
โœ… AudiobookPositionRestoreTests testPreferRemote_remoteNewerByExactly5s_keepsLocal 6ms
โœ… AudiobookPositionRestoreTests testPreferRemote_remoteNewerByLessThan5s_keepsLocal 7ms
โœ… AudiobookPositionRestoreTests testPreferRemote_remoteNewerByMoreThan5s_prefersRemote 6ms
โœ… AudiobookPositionRestoreTests testPreferRemote_remoteOlderThanLocal_keepsLocal 6ms
โœ… AudiobookPositionRestoreTests testPreferRemote_unparseableLocalTimestamp_prefersRemote 5ms
โœ… AudiobookPositionRestoreTests testPreferRemote_unparseableRemoteTimestamp_keepsLocal 46ms
โœ… AudiobookPositionRestoreTests testSelectMostRecentValidBookmark_allFailValidation_returnsNil 29ms
โœ… AudiobookPositionRestoreTests testSelectMostRecentValidBookmark_dropsCapExceedingCandidate_keepsValidOlder 13ms
โœ… AudiobookPositionRestoreTests testSelectMostRecentValidBookmark_ignoresArrayOrder_usesTimestamp 23ms
โœ… AudiobookPositionRestoreTests testSelectMostRecentValidBookmark_picksNewestByTimestamp 14ms
โœ… AudiobookPositionRestoreTests testValidationFailure_trackKeyInManifest_returnsNil 6ms
โœ… AudiobookPositionRestoreTests testValidationFailure_trackKeyNotInManifest_returnsTrackKeyFailure 8ms
โœ… AudiobookSAMLReauthTests testShouldNotTriggerSAMLReauthForNilError 51ms
โœ… AudiobookSAMLReauthTests testShouldNotTriggerSAMLReauthForNonSAMLAuth 1.45s
โœ… AudiobookSAMLReauthTests testShouldNotTriggerSAMLReauthForWrongCode 2.49s
โœ… AudiobookSAMLReauthTests testShouldNotTriggerSAMLReauthForWrongDomain 877ms
โœ… AudiobookSAMLReauthTests testShouldNotTriggerSAMLReauthWithNilBook 1.82s
โœ… AudiobookSAMLReauthTests testShouldNotTriggerSAMLReauthWithoutCredentials 14ms
โœ… AudiobookSessionErrorDescriptionTests testAllErrorCases_haveNonEmptyDescriptions 1ms
โœ… AudiobookSessionErrorDescriptionTests testErrorEquatable_differentTypes <1ms
โœ… AudiobookSessionErrorDescriptionTests testErrorEquatable_sameTypes <1ms
โœ… AudiobookSessionErrorDescriptionTests testUnknownError_preservesCustomMessage <1ms
โœ… AudiobookSessionErrorExtTests testErrorDescriptions 41ms
โœ… AudiobookSessionErrorExtTests testErrorEquality 1ms
โœ… AudiobookSessionErrorExtTests testUnknownErrorDescription_preservesCallerMessageVerbatim 1ms
โœ… AudiobookSessionErrorExtTests testUnknownErrorEquality 5ms
โœ… AudiobookSessionErrorTests testAudiobookSessionError_Equatable 2ms
โœ… AudiobookSessionErrorTests testAudiobookSessionError_localizedDescription_isCaseSpecificAndPreservesUnknownMessage 58ms
โœ… AudiobookSessionErrorTests testRemoteCommandStatus_gatesOnActiveManager 39ms
โœ… AudiobookSessionManagerErrorMappingTests testMap_cancelled_isUnknown <1ms
โœ… AudiobookSessionManagerErrorMappingTests testMap_factoryFailed_isPlayerCreationFailed <1ms
โœ… AudiobookSessionManagerErrorMappingTests testMap_lcpFamily_isManifestLoadFailed 14ms
โœ… AudiobookSessionManagerErrorMappingTests testMap_manifestFamily_isManifestLoadFailed 1ms
โœ… AudiobookSessionManagerErrorMappingTests testMap_tokenRefresh_isNotAuthenticated <1ms
โœ… AudiobookSessionManagerErrorMappingTests testMap_vendorKey_surfacesUnderlyingMessage 1ms
โœ… AudiobookSessionManagerFlagGatePresentationTests testDismissPlayerOnPhone_flagOff_popsAudioRoute_preservesUnderlyingRoute 9ms
โœ… AudiobookSessionManagerFlagGatePresentationTests testDismissPlayerOnPhone_flagOn_clearsPresenter_andDoesNotPopCoordinator 37ms
โœ… AudiobookSessionManagerFlagGatePresentationTests testPresentSession_flagOff_pushesAudioRoute_andDoesNotDrivePresenter 10ms
โœ… AudiobookSessionManagerFlagGatePresentationTests testPresentSession_flagOn_drivesPresenter_andDoesNotPushAudioRoute 170ms
โœ… AudiobookSessionManagerPresenterMigrationTests testOpenAudiobook_firstOpen_callsPresenterPresentOnFirstOpen 10ms
โœ… AudiobookSessionManagerPresenterMigrationTests testOpenAudiobook_firstOpen_doesNotPushAudioRouteOnRealCoordinator 10ms
โœ… AudiobookSessionManagerPresenterMigrationTests testOpenAudiobook_firstOpen_setsPresenterIsPlayerExpandedTrue_beforeReadinessGateCompletes 7ms
โœ… AudiobookSessionManagerPresenterMigrationTests testOpenAudiobook_resumeFromMiniPlayer_doesNOTForceIsPlayerExpanded 4ms
โœ… AudiobookSessionManagerPresenterMigrationTests testOpenAudiobook_switchingAudiobooks_clearsPreviousPlaybackModel 10ms
โœ… AudiobookSessionManagerPresenterMigrationTests testStopPlayback_clearsPresenterPlaybackModel 6ms
โœ… AudiobookSessionManagerPresenterMigrationTests testStopPlayback_doesNotLeaveAudioModelInCoordinatorCache 6ms
โœ… AudiobookSessionManagerPresenterMigrationTests testStopPlayback_doesNotPopRealCoordinatorPath 7ms
โœ… AudiobookSessionManagerPresenterMigrationTests testStopPlayback_nilBook_flagOff_doesNotClear 20ms
โœ… AudiobookSessionManagerPresenterMigrationTests testStopPlayback_nilBook_flagOn_clearsActiveSession 7ms
โœ… AudiobookSessionManagerShutdownTests test_buildPlaybackFailureRecord_isCallableOffMainActor 10ms
โœ… AudiobookSessionManagerShutdownTests test_concurrentRemoteCommandsAndStopPlayback_teardownSerializes 38ms
โœ… AudiobookSessionManagerShutdownTests test_doubleStopPlayback_isIdempotent 16ms
โœ… AudiobookSessionManagerShutdownTests test_lifecycleNotifications_whileUnbound_areHandledSafely 92ms
โœ… AudiobookSessionManagerShutdownTests test_networkValidationError_fullyDownloadedBypassesAllNetworkRules 5ms
โœ… AudiobookSessionManagerShutdownTests test_networkValidationError_isPureAcrossManyCalls 12ms
โœ… AudiobookSessionManagerShutdownTests test_networkValidationError_wifiRequiredOnCellularWhileStreaming 8ms
โœ… AudiobookSessionManagerShutdownTests test_persistActivePositionForLifecycleEvent_unbound_isSafeNoOp 10ms
โœ… AudiobookSessionManagerShutdownTests test_rapidStopPlayback_leavesSessionInIdleState 118ms
โœ… AudiobookSessionManagerShutdownTests test_shouldPersistLifecyclePosition_requiresFullyBoundSession 4ms
โœ… AudiobookSessionManagerShutdownTests test_stopPlayback_emitsIdleStateToPublisher 7ms
โœ… AudiobookSessionManagerShutdownTests test_stopPlayback_neverBound_isFastNoOp 17ms
โœ… AudiobookSessionPresenterTests testChapterProgress_clampsPastChapterEnd 4ms
โœ… AudiobookSessionPresenterTests testChapterProgress_midChapter_isOffsetOverDuration 5ms
โœ… AudiobookSessionPresenterTests testChapterProgress_negativeOffset_clampsToZero 2ms
โœ… AudiobookSessionPresenterTests testChapterProgress_zeroDuration_returnsZeroNotNaN 4ms
โœ… AudiobookSessionPresenterTests testClearActiveSession_resetsChapterProgressFields 9ms
โœ… AudiobookSessionPresenterTests testErrorState_tearsDownSession_soPlaybackViewDoesNotLingerAfterFailedOpen 6ms
โœ… AudiobookSessionPresenterTests testExpand_setsIsPlayerExpandedTrue 2ms
โœ… AudiobookSessionPresenterTests testHasActiveSession_becomesFalseWhenSessionReturnsToIdle 7ms
โœ… AudiobookSessionPresenterTests testHasActiveSession_becomesTrueWhenSessionTransitionsToLoading 6ms
โœ… AudiobookSessionPresenterTests testHasActiveSession_becomesTrueWhenSessionTransitionsToPlaying 16ms
โœ… AudiobookSessionPresenterTests testHasActiveSession_isFalseWhenSessionIdle 6ms
โœ… AudiobookSessionPresenterTests testInit_freshPresenterWithIdleSession_hasNoActiveSessionAndCollapsedPlayer 2ms
โœ… AudiobookSessionPresenterTests testIsReaderActive_isPubliclyMutable_andPersistsTransitions 3ms
โœ… AudiobookSessionPresenterTests testMinimize_setsIsPlayerExpandedFalse 96ms
โœ… AudiobookSessionPresenterTests testPresentLoadingShell_adoptsBookAndCoverAndExpands_withNoPlaybackModelYet 11ms
โœ… AudiobookSessionPresenterTests testPresentLoadingShell_thenErrorState_tearsDownShell 74ms
โœ… AudiobookSessionPresenterTests testPresentLoadingShell_withNilCover_clearsCoverForPlaceholder 4ms
โœ… AudiobookSessionPresenterTests testPresentOnFirstOpen_setsIsPlayerExpandedTrue 7ms
โœ… AudiobookSessionPresenterTests testPresenter_adoptCoverImage_writesIntoPublishedMirror 12ms
โœ… AudiobookSessionPresenterTests testPresenter_adoptsNewPlaybackModel_clearsPriorCurrentLocationSubscription 10ms
โœ… AudiobookSessionPresenterTests testPresenter_clearActiveSession_clearsPolishPhaseFields 4ms
โœ… AudiobookSessionPresenterTests testPresenter_collapse_and_restore_areInertNoOps_isCollapsedStaysFalse 4ms
โœ… AudiobookSessionPresenterTests testPresenter_expand_minimize_expandAgain_drivesIsPlayerExpandedCorrectly_acrossThreeTransitions 3ms
โœ… AudiobookSessionPresenterTests testPresenter_isPlayingFlipsAfterSessionPublisherEmits 5ms
โœ… AudiobookSessionPresenterTests testPresenter_managerNotPlaying_reconcileLeavesGlyphOnPlay 47ms
โœ… AudiobookSessionPresenterTests testPresenter_minimize_landsOnFullBar_notStalePill 3ms
โœ… AudiobookSessionPresenterTests testPresenter_normalizedProgress_handlesEdgeCases 4ms
โœ… AudiobookSessionPresenterTests testPresenter_playheadAdvancesWhileManagerIsPlaying_reconcileSelfHealsPlayGlyph 7ms
โœ… AudiobookSessionPresenterTests testShowDownloadProgress_clampsOutOfRangeFractions 1ms
โœ… AudiobookSessionPresenterTests testShowDownloadProgress_clearedByClearActiveSession 2ms
โœ… AudiobookSessionPresenterTests testShowDownloadProgress_setsProgressAndDownloadingFlag 7ms
โœ… AudiobookSessionStateTests testErrorState <1ms
โœ… AudiobookSessionStateTests testIdleState <1ms
โœ… AudiobookSessionStateTests testLoadingState <1ms
โœ… AudiobookSessionStateTests testPausedState 2ms
โœ… AudiobookSessionStateTests testPlayingState 1ms
โœ… AudiobookSessionStateTests testStateEquality <1ms
โœ… AudiobookSessionStateTransitionTests testErrorState_isNotActive_butHasBookId 522ms
โœ… AudiobookSessionStateTransitionTests testIdleState_isNotActive 524ms
โœ… AudiobookSessionStateTransitionTests testLoadingState_isActive_andHasBookId 586ms
โœ… AudiobookSessionStateTransitionTests testPausedState_isActive_andHasBookId 574ms
โœ… AudiobookSessionStateTransitionTests testPlayingState_isActive_andHasBookId 647ms
โœ… AudiobookSessionStateTransitionTests testSessionManager_cyclePlaybackRate_withoutManager_returnsNormalTime 519ms
โœ… AudiobookSessionStateTransitionTests testSessionManager_initialState_isIdle 514ms
โœ… AudiobookSessionStateTransitionTests testSessionManager_pause_withoutManager_doesNotCrash 497ms
โœ… AudiobookSessionStateTransitionTests testSessionManager_play_withoutManager_doesNotCrash 490ms
โœ… AudiobookSessionStateTransitionTests testSessionManager_skipToChapter_withoutManager_doesNotCrash 577ms
โœ… AudiobookSessionStateTransitionTests testSessionManager_stopPlayback_publishesIdleState 601ms
โœ… AudiobookSessionStateTransitionTests testSessionManager_stopPlayback_resetsState 673ms
โœ… AudiobookSessionStateTransitionTests testSessionManager_togglePlayPause_withoutManager_doesNotCrash 595ms
โœ… AudiobookSessionStateTransitionTests testSessionManager_updateCoverImage_nil_clearsImage 641ms
โœ… AudiobookSessionStateTransitionTests testSessionManager_updateCoverImage_setsImage 782ms
โœ… AudiobookSessionStateTransitionTests testShouldStopPlayback_currentBookNonUnregistered_returnsFalse 401ms
โœ… AudiobookSessionStateTransitionTests testShouldStopPlayback_currentBookUnregistered_returnsTrue 519ms
โœ… AudiobookSessionStateTransitionTests testShouldStopPlayback_differentBookUnregistered_returnsFalse 586ms
โœ… AudiobookSessionStateTransitionTests testShouldStopPlayback_noCurrentBook_returnsFalse 708ms
โœ… AudiobookSessionStateTransitionTests testStateEquality_differentBookIds 528ms
โœ… AudiobookSessionStateTransitionTests testStateEquality_differentStates 763ms
โœ… AudiobookSessionStateTransitionTests testStateEquality_sameStates 559ms
โœ… AudiobookSkipIntervalSettingsTests testAllowedOptions_areTheDefinedSet 1ms
โœ… AudiobookSkipIntervalSettingsTests testChangingOneDirection_doesNotMoveTheOther 4ms
โœ… AudiobookSkipIntervalSettingsTests testDefaults_whenUnset_areThirtySecondsEachDirection 2ms
โœ… AudiobookSkipIntervalSettingsTests testForwardAndBack_areIndependent 5ms
โœ… AudiobookSkipIntervalSettingsTests testInvalidValue_fallsBackToDefault 37ms
โœ… AudiobookSkipIntervalSettingsTests testRawInvalidValueInDefaults_readsBackAsDefault 81ms
โœ… AudiobookSkipIntervalSettingsTests testValues_persistAcrossStoreInstances 69ms
โœ… AudiobookSleepTimerIntegrationTests testEndOfChapterSleepTimer_savesPartialTime 108ms
โœ… AudiobookSleepTimerIntegrationTests testSleepTimer30Minutes_savesAllPlayedTime 117ms
โœ… AudiobookSleepTimerIntegrationTests testSleepTimerCancelResume_preservesAllTime 120ms
โœ… AudiobookSleepTimerIntegrationTests testSleepTimerMultipleMinutes_createsSeparateEntries 28ms
โœ… AudiobookSleepTimerIntegrationTests testSleepTimerScenario_savesAllPlayedTime 143ms
โœ… AudiobookStorageLocationTests testApplicationSupportDirectoryExists <1ms
โœ… AudiobookStorageLocationTests testAudiobooksDirectoryPath 2ms
โœ… AudiobookStorageLocationTests testOverdriveDirectoryPath 21ms
โœ… AudiobookTOCTests testChapterName_MatchesAfterNavigation 18ms
โœ… AudiobookTOCTests testChapterName_SavedCorrectly 5ms
โœ… AudiobookTOCTests testChapter_AutoAdvanceToNext 5ms
โœ… AudiobookTOCTests testChapter_HasDuration 28ms
โœ… AudiobookTOCTests testChapter_PositionAtStart 3ms
โœ… AudiobookTOCTests testChapter_PositionInMiddle 25ms
โœ… AudiobookTOCTests testChapter_PositionPersistsAfterRestart 4ms
โœ… AudiobookTOCTests testChapter_SelectionPersistsAfterReturn 15ms
โœ… AudiobookTOCTests testChapter_TotalDuration 4ms
โœ… AudiobookTOCTests testTOC_ChaptersAreOrdered 6ms
โœ… AudiobookTOCTests testTOC_ChaptersHaveTitles 4ms
โœ… AudiobookTOCTests testTOC_ContentsAndBookmarksTabs 3ms
โœ… AudiobookTOCTests testTOC_HasChapters 4ms
โœ… AudiobookTOCTests testTOC_OpenFirstChapter 59ms
โœ… AudiobookTOCTests testTOC_OpenRandomChapter 46ms
โœ… AudiobookTOCTests testTOC_OpenSpecificChapter 3ms
โœ… AudiobookTOCTests testTOC_SwitchToBookmarks 3ms
โœ… AudiobookTOCTests testTOC_SwitchToChapters 26ms
โœ… AudiobookTimeEntryTests testTimeEntry_codableRoundTrip 7ms
โœ… AudiobookTimeEntryTests testTimeEntry_conformsToProtocol <1ms
โœ… AudiobookTimeEntryTests testTimeEntry_durationCanExceed60InStruct 1ms
โœ… AudiobookTimeEntryTests testTimeEntry_equality 2ms
โœ… AudiobookTimeEntryTests testTimeEntry_hashable 2ms
โœ… AudiobookTimeEntryTests testTimeEntry_storesProperties <1ms
โœ… AudiobookTimeTrackerEdgeTests testPlaybackStopped_savesAccumulatedTime_beforeCancellingTimer 5ms
โœ… AudiobookTimeTrackerEdgeTests testReceiveValue_crossingMinuteBoundary_savesEntry 8ms
โœ… AudiobookTimeTrackerEdgeTests testReceiveValue_withinSameMinute_doesNotSaveUntilStop 3ms
โœ… AudiobookTimeTrackerEdgeTests testStopAndSave_calledMultipleTimes_doesNotDuplicate 18ms
โœ… AudiobookTimeTrackerEdgeTests testTimeEntry_containsCorrectBookAndLibraryIds 3ms
โœ… AudiobookTimeTrackerEdgeTests testTimeEntry_durationCappedAt60_andIsNonNegativeAtInit 2ms
โœ… AudiobookTimeTrackerEdgeTests testTimeEntry_duringMinute_isUTCFormat 5ms
โœ… AudiobookTimeTrackerEdgeTests testZeroDuration_isNotSaved 3ms
โœ… AudiobookTimeTrackerLifecycleTests testAppTerminationNotification_savesData 1.02s
โœ… AudiobookTimeTrackerLifecycleTests testStopAndSave_canBeCalledMultipleTimes 6ms
โœ… AudiobookTimeTrackerLifecycleTests testStopAndSave_savesAllAccumulatedTime 5ms
โœ… AudiobookTimeTrackerLifecycleTests testTimeEntryProperty_isThreadSafe 26ms
โœ… AudiobookTimeTrackerLifecycleTests testTrackerDeallocation_savesAccumulatedTime 7ms
โœ… AudiobookTimeTrackerTests testExactMinuteOfPlayback_savesCorrectTimeEntry 13ms
โœ… AudiobookTimeTrackerTests testMultipleMinuteBoundaries_createsMultipleEntries 9ms
โœ… AudiobookTimeTrackerTests testNoPlayback_savesNoTimeEntry 52ms
โœ… AudiobookTimeTrackerTests testPlaybackStarted_savesCorrectAggregateTime 19ms
โœ… AudiobookTimeTrackerTests testPlaybackStopped_stopsTimer 6ms
โœ… AudiobookTimeTrackerTests testSaveCurrentDuration_savesTimeEntryCorrectly 11ms
โœ… AudiobookTimeTrackerTests testTimeEntries_areInUTC 5ms
โœ… AudiobookTimeTrackerTests testTimeEntries_areLimitedTo60Seconds 6ms
โœ… AudiobookTimeTrackerTests testTimeEntry_hasCorrectMetadata 15ms
โœ… AudiobookTrackCompletionTests testTrackerFinalize_savesAccumulatedTime 9ms
โœ… AudiobookTrackCompletionTests testZeroDuration_notSaved 7ms
โœ… AudiobookTypeRoutingTests testAudiobookLCPBook_hasExpectedIdentifiers 17ms
โœ… AudiobookTypeRoutingTests testBearerTokenBook_hasExpectedIdentifiers 5ms
โœ… AudiobookTypeRoutingTests testLCPAudiobook_canOpenBook_usesCorrectAcquisitionType 13ms
โœ… AudiobookTypeRoutingTests testOpenAccessAudiobook_hasExpectedIdentifiers 4ms
โœ… AudiobookTypeRoutingTests testReadiumLCPBook_hasExpectedIdentifiers 6ms
โœ… AudiobookVendorAdapterTests testFirstMatchPriorityOrder 6ms
โœ… AudiobookVendorAdapterTests testFirstMatchPriorityOrder_skipsNonClaimingAdapter 2ms
โœ… AudiobookVendorAdapterTests testProtocol_canHandleMustBeSync 3ms
โœ… AudiobookVendorAdapterTests testProtocol_resolveManifestSignature_propagatesFailure 3ms
โœ… AudiobookVendorAdapterTests testProtocol_resolveManifestSignature_propagatesSuccess 4ms
โœ… AudiobookmarkTests testDecodeEarlyBookmark 11ms
โœ… AudiobookmarkTests testDecodeLocatorAudioBookTime2 2ms
โœ… AudiobookmarkTests testDecodeNewerBookmark 43ms
โœ… AudiobookmarkTests testEncodeAndDecodeBookmark 6ms
โœ… AuthCoordinatorTelemetryTests testAppContainerProduction_wiresAuthCoordinator 72ms
โœ… AuthCoordinatorTelemetryTests testCoordinator_payload_idpType_reflectsMechanismProvider 2ms
โœ… AuthCoordinatorTelemetryTests testCoordinator_payload_libraryUUID_reflectsProviderClosure 9ms
โœ… AuthCoordinatorTelemetryTests testCoordinator_refreshFlow_emitsStartAndEnd_correlatedByID 4ms
โœ… AuthCoordinatorTelemetryTests testCoordinator_samlModalCancel_emitsCancelSubEvent_forFastDashboardFilter 12ms
โœ… AuthDecisionEventEmissionTests testErrorCode_classifierClassified_is1001 4ms
โœ… AuthDecisionEventEmissionTests testErrorCode_partitionsPerStep_eachStepGetsDistinctCode 2ms
โœ… AuthDecisionEventEmissionTests testErrorDomain_isStableValue_distinctFromPlaybackFailureDomain 2ms
โœ… AuthDecisionEventEmissionTests testErrorUserInfo_dropsAbsentFields 1ms
โœ… AuthDecisionEventEmissionTests testErrorUserInfo_includesAllDashboardFields 4ms
โœ… AuthDecisionEventEmissionTests testErrorUserInfo_includesNSLocalizedDescription_withStepAndDecision 1ms
โœ… AuthDecisionEventEmissionTests testProductionRecorder_constructsWithoutCrash 5ms
โœ… AuthDocumentContractTests testAuthDocument_HasRequiredLinks 4ms
โœ… AuthDocumentContractTests testParseAuthDocument_ExtractsAllFields 8ms
โœ… AuthDocumentVariantsContractTests testOAuthAuthDocument_FeatureFlagsExpressedViaDisabledList 6ms
โœ… AuthDocumentVariantsContractTests testOAuthAuthDocument_HasMultipleAuthMethods 7ms
โœ… AuthDocumentVariantsContractTests testSAMLAuthDocument_HasAnnouncements 1ms
โœ… AuthDocumentVariantsContractTests testSAMLAuthDocument_HasRequiredLinks 6ms
โœ… AuthDocumentVariantsContractTests testSAMLAuthDocument_ParsesWithSAMLType 1ms
โœ… AuthErrorCategoryTests testHTTPURLResponse_bare401WithoutProblemDoc_shouldIndicateAuthRefresh 28ms
โœ… AuthErrorCategoryTests testHTTPURLResponse_withOldCredentialsInvalidType_shouldIndicateAuthRefresh 1ms
โœ… AuthErrorCategoryTests testHTTPURLResponse_withRecoverableError_shouldIndicateAuthRefresh <1ms
โœ… AuthErrorCategoryTests testHTTPURLResponse_withUnrecoverableError_shouldNotIndicateAuthRefresh <1ms
โœ… AuthErrorCategoryTests testHTTPURLResponse_withUnrecoverableNoAccess_shouldNotIndicateAuthRefresh <1ms
โœ… AuthErrorCategoryTests testProblemDocument_nilType_isNeitherCategory <1ms
โœ… AuthErrorCategoryTests testProblemDocument_nonAuthType_isNeitherCategory <1ms
โœ… AuthErrorCategoryTests testProblemDocument_recoverableSAMLBearerTokenInvalid_isRecoverable 2ms
โœ… AuthErrorCategoryTests testProblemDocument_recoverableSAMLSessionExpired_isRecoverable <1ms
โœ… AuthErrorCategoryTests testProblemDocument_recoverableTokenExpired_isRecoverable <1ms
โœ… AuthErrorCategoryTests testProblemDocument_unrecoverableInvalidCredentials_isUnrecoverable <1ms
โœ… AuthErrorCategoryTests testProblemDocument_unrecoverableNoAccess_isUnrecoverable <1ms
โœ… AuthErrorProblemDocSeamTests testMakeFromHTTPResponse_PreservesCallerUserInfo 28ms
โœ… AuthErrorProblemDocSeamTests testMakeFromHTTPResponse_WithNonJSONBody_NoProblemDoc <1ms
โœ… AuthErrorProblemDocSeamTests testMakeFromHTTPResponse_WithProblemDocBody_EmbedsDoc <1ms
โœ… AuthErrorProblemDocSeamTests testRewrappedError_PreservesUpstreamProblemDocument <1ms
โœ… AuthErrorProblemDocSeamTests testTokenRequest_On403WithProblemDoc_FlowsThroughToUserFacingTitle 2ms
โœ… AuthErrorProblemDocSeamTests testTokenRequest_On403WithoutProblemDoc_FallsBackToGenericTitle 13ms
โŠ˜ AuthFlowSecurityTests testSession_identifierRotatedOnSignIn 2ms
โŠ˜ AuthFlowSecurityTests testToken_networkExecutorRefreshCount_singleFlightSemantics 5ms
โŠ˜ AuthFlowSecurityTests testToken_reauthenticatorCallCount_observableForRawCallAssertion 22ms
โœ… AuthReducerTests testAuthDocumentLoadCompleted_clearsLoadingFlag 4ms
โœ… AuthReducerTests testAuthDocumentLoadStarted_setsLoadingFlag <1ms
โœ… AuthReducerTests testBearerTokenReceived_storesTokenAndExpiration <1ms
โœ… AuthReducerTests testClassifyValidationError_genericError_fallsBackToInvalidCredentials <1ms
โœ… AuthReducerTests testClassifyValidationError_networkConnectivityError_returnsConnectivityCopy 124ms
โœ… AuthReducerTests testClassifyValidationError_problemDocument_takesPrecedenceOverEverything 2ms
โœ… AuthReducerTests testCredentialCaptureStarted_acceptsNilCredentials 208ms
โœ… AuthReducerTests testCredentialCaptureStarted_storesBarcodeAndPinAndClearsStaleError 24ms
โœ… AuthReducerTests testCredentialsValidationFailed_clearsFlagAndSurfacesError 192ms
โœ… AuthReducerTests testCredentialsValidationStarted_setsFlagAndClearsAnyPriorError 1ms
โœ… AuthReducerTests testCredentialsValidationSucceeded_clearsFlagWithoutTouchingCapturedCreds 73ms
โœ… AuthReducerTests testErrorCleared_dropsPriorErrorWithoutTouchingOtherFields 2ms
โœ… AuthReducerTests testLoggingInAfterSignUpFlagSet_storesValue 2ms
โœ… AuthReducerTests testRefreshAuthStarted_basicAuth_neverArmsBypass 9ms
โœ… AuthReducerTests testRefreshAuthStarted_oauthNonExisting_armsIgnoreSignedInState 7ms
โœ… AuthReducerTests testRefreshAuthStarted_oidcNonExisting_armsIgnoreSignedInState <1ms
โœ… AuthReducerTests testRefreshAuthStarted_samlNonExisting_armsIgnoreSignedInState 6ms
โœ… AuthReducerTests testRefreshAuthStarted_samlWithExistingCredentials_doesNotArmBypass <1ms
โœ… AuthReducerTests testRefreshAuthStarted_tokenAuth_neverArmsBypass <1ms
โœ… AuthReducerTests testSignOutCompleted_resetsToInitialState <1ms
โœ… AuthReducerTests testUserAccountUpdated_clearsAllInFlightAuthState 107ms
โœ… AuthTypeTests testAuthType_AnonymousRawValue_IsCorrect 45ms
โœ… AuthTypeTests testAuthType_BasicRawValue_IsCorrect <1ms
โœ… AuthTypeTests testAuthType_CoppaRawValue_IsCorrect <1ms
โœ… AuthTypeTests testAuthType_InitFromInvalidString_ReturnsNil 10ms
โœ… AuthTypeTests testAuthType_OAuthRawValue_IsCorrect 3ms
โœ… AuthTypeTests testAuthType_SamlRawValue_IsCorrect 1ms
โœ… AuthTypeTests testAuthType_TokenRawValue_IsCorrect <1ms
โœ… AuthenticationTests testCatalogRequiresAuthentication_ForBasicType_ReturnsFalse <1ms
โœ… AuthenticationTests testCatalogRequiresAuthentication_ForOAuthType_ReturnsTrue 27ms
โœ… AuthenticationTests testCoppaURL_WhenOfAge_ReturnsOverUrl 5ms
โœ… AuthenticationTests testCoppaURL_WhenUnderAge_ReturnsUnderUrl 2ms
โœ… AuthenticationTests testIsBasic_ForBasicType_ReturnsTrue <1ms
โœ… AuthenticationTests testIsOauth_ForOAuthType_ReturnsTrue <1ms
โœ… AuthenticationTests testIsSaml_ForSamlType_ReturnsTrue 5ms
โœ… AuthenticationTests testIsToken_ForTokenType_ReturnsTrue <1ms
โœ… AuthenticationTests testNeedsAgeCheck_ForBasicType_ReturnsFalse <1ms
โœ… AuthenticationTests testNeedsAgeCheck_ForCoppaType_ReturnsTrue 24ms
โœ… AuthenticationTests testNeedsAuth_ForAnonymousType_ReturnsFalse 1ms
โœ… AuthenticationTests testNeedsAuth_ForBasicType_ReturnsTrue 2ms
โœ… AuthenticationTests testNeedsAuth_ForCoppaType_ReturnsFalse <1ms
โœ… AuthenticationTests testNeedsAuth_ForOAuthType_ReturnsTrue <1ms
โœ… AuthenticationTests testNeedsAuth_ForSamlType_ReturnsTrue <1ms
โœ… AuthenticationTests testNeedsAuth_ForTokenType_ReturnsTrue <1ms
โœ… BackgroundDownloadHandlerTests testDetectRightsManagement_adobeAdept <1ms
โœ… BackgroundDownloadHandlerTests testDetectRightsManagement_bearerToken 618ms
โœ… BackgroundDownloadHandlerTests testDetectRightsManagement_epubZip 57ms
โœ… BackgroundDownloadHandlerTests testDetectRightsManagement_readiumLCP 4ms
โœ… BackgroundDownloadHandlerTests testDetectRightsManagement_unknownType <1ms
โœ… BackgroundDownloadHandlerTests testHandleDownloadProgress_firstBytes_detectsMimeType 5ms
โœ… BackgroundDownloadHandlerTests testHandleDownloadProgress_noDelegate_doesNotCrash 5ms
โœ… BackgroundDownloadHandlerTests testInit_withDelegate 1ms
โœ… BackgroundDownloadHandlerTests testInit_withoutDelegate <1ms
โœ… BackgroundDownloadHandlerTests testIsOPDSEntryMimeType_applicationXml 1ms
โœ… BackgroundDownloadHandlerTests testIsOPDSEntryMimeType_atomXml 3ms
โœ… BackgroundDownloadHandlerTests testIsOPDSEntryMimeType_caseInsensitive 1ms
โœ… BackgroundDownloadHandlerTests testIsOPDSEntryMimeType_epub_returnsFalse <1ms
โœ… BackgroundDownloadHandlerTests testIsOPDSEntryMimeType_html_returnsFalse 2ms
โœ… BackgroundDownloadHandlerTests testIsOPDSEntryMimeType_json_returnsFalse 2ms
โœ… BackgroundDownloadHandlerTests testIsOPDSEntryMimeType_opdsCatalog <1ms
โœ… BackgroundDownloadHandlerTests testIsOPDSEntryMimeType_textXml <1ms
โœ… BackgroundDownloadHandlerTests testMoveFile_moveFailure_logsError 4ms
โœ… BackgroundDownloadHandlerTests testMoveFile_noDelegate_returnsFalse 2ms
โœ… BackgroundDownloadHandlerTests testMoveFile_noFileUrl_returnsFalse 3ms
โœ… BackgroundDownloadHandlerTests testMoveFile_success_setsDownloadSuccessful 31ms
โœ… BackgroundDownloadHandlerTests testReplaceBook_existingFile_replacesIt 4ms
โœ… BackgroundDownloadHandlerTests testReplaceBook_noDelegate_returnsFalse 2ms
โœ… BackgroundDownloadHandlerTests testReplaceBook_noFileUrl_returnsFalse 2ms
โœ… BackgroundDownloadHandlerTests testReplaceBook_success_setsDownloadSuccessful 20ms
โœ… BackgroundDownloadHandlerTests testValidateDownloadedFile_emptyFile_returnsFalse 12ms
โœ… BackgroundDownloadHandlerTests testValidateDownloadedFile_existingFileWithContent_returnsTrue 746ms
โœ… BackgroundDownloadHandlerTests testValidateDownloadedFile_missingFile_returnsFalse 2ms
โœ… BackgroundListenerTests testOpenAccessListenerIdentifiesCorrectSessions 110ms
โœ… BackgroundListenerTests testOverdriveListenerIdentifiesCorrectSessions 7ms
โœ… BackgroundSessionRoutingTests testDownloadCenterIdentifier_hasExpectedSuffix 1ms
โœ… BackgroundSessionRoutingTests testFinishEvents_afterClear_newHandlerCanBeStoredAndFiredOnce 52ms
โœ… BackgroundSessionRoutingTests testFinishEvents_invokesStoredHandlerOnce 4ms
โœ… BackgroundSessionRoutingTests testFinishEvents_withNoStoredHandler_isNoOp 99ms
โœ… BackgroundSessionRoutingTests testIsDownloadCenterBackgroundSession_matchesOwnIdentifier 21ms
โœ… BackgroundSessionRoutingTests testIsDownloadCenterBackgroundSession_rejectsAudiobookIdentifier <1ms
โœ… BackupExclusionMigrationTests test_run_continuesAfterMissingRoot_doesNotPoisonSubsequentRoots 5ms
โœ… BackupExclusionMigrationTests test_run_flagsFilesAddedBetweenInvocations 8ms
โœ… BackupExclusionMigrationTests test_run_recursivelyFlagsEveryFileAndDirectory 6ms
โœ… BadgeDefinitionTests testBadgeCatalog_ContainsAllBadges 20ms
โœ… BadgeDefinitionTests testBadgeCatalog_HasUniqueIDs 3ms
โœ… BadgeDefinitionTests testFiftyBooksClub_CapsAtOne 3ms
โœ… BadgeDefinitionTests testFiftyBooksClub_FailingCriteria 17ms
โœ… BadgeDefinitionTests testFiftyBooksClub_Metadata 2ms
โœ… BadgeDefinitionTests testFiftyBooksClub_PassingCriteria 4ms
โœ… BadgeDefinitionTests testFiftyBooksClub_ProgressCalculation 3ms
โœ… BadgeDefinitionTests testHundredBooksClub_FailingCriteria 2ms
โœ… BadgeDefinitionTests testHundredBooksClub_Metadata 22ms
โœ… BadgeDefinitionTests testHundredBooksClub_PassingCriteria 1.53s
โœ… BadgeDefinitionTests testHundredBooksClub_ProgressCalculation 2ms
โœ… BadgeDefinitionTests testHundredBooksClub_ZeroCompletions 116ms
โœ… BadgeDefinitionTests testMakeBadge_DefaultsToNotEarned 3ms
โœ… BadgeDefinitionTests testMakeBadge_ProducesCorrectBadge 26ms
โœ… BadgeDefinitionTests testSpeedReader_FailingCriteria_MultiDayRead 5ms
โœ… BadgeDefinitionTests testSpeedReader_Metadata 2ms
โœ… BadgeDefinitionTests testSpeedReader_PassingCriteria_SameDayStartAndFinish 2ms
โœ… BadgeDefinitionTests testSpeedReader_ProgressWithCompletionsButNoneSameDay 90ms
โœ… BadgeDefinitionTests testSpeedReader_ZeroProgress_NoCompletions 1ms
โœ… BadgeDefinitionTests testStreakImmortal_CapsAtOne 8ms
โœ… BadgeDefinitionTests testStreakImmortal_FailingCriteria <1ms
โœ… BadgeDefinitionTests testStreakImmortal_Metadata 269ms
โœ… BadgeDefinitionTests testStreakImmortal_PassingCriteria 3ms
โœ… BadgeDefinitionTests testStreakImmortal_ProgressCalculation 12.81s
โœ… BadgeDefinitionTests testStreakLegend_FailingCriteria 8ms
โœ… BadgeDefinitionTests testStreakLegend_Metadata 8ms
โœ… BadgeDefinitionTests testStreakLegend_PassingCriteria 3ms
โœ… BadgeDefinitionTests testStreakLegend_ProgressCalculation 121ms
โœ… BadgeDefinitionTests testStreakLegend_UsesLongestStreak 237ms
โœ… BadgeDefinitionTests testWeekendWarrior_FailingCriteria_NoWeekendSessions 44ms
โœ… BadgeDefinitionTests testWeekendWarrior_Metadata 9ms
โœ… BadgeDefinitionTests testWeekendWarrior_PassingCriteria_FourConsecutiveWeekends 55ms
โœ… BadgeDefinitionTests testWeekendWarrior_ProgressCalculation_TwoWeekends 8ms
โœ… BadgeServiceTests testAllBadgesAreDefined 2ms
โœ… BadgeServiceTests testAudiobookAdventurerEarned 5ms
โœ… BadgeServiceTests testBadgeEarnedNotificationFires 8ms
โœ… BadgeServiceTests testEarlyBirdBadge 9ms
โœ… BadgeServiceTests testFirstBookFinishedBadge 4ms
โœ… BadgeServiceTests testFirstBookNotEarnedWithNoCompletions 19ms
โœ… BadgeServiceTests testGenreExplorerProgress 3ms
โœ… BadgeServiceTests testInProgressBadges 4ms
โœ… BadgeServiceTests testLibraryExplorerProgress 8ms
โœ… BadgeServiceTests testLockedBadges 41ms
โœ… BadgeServiceTests testMarathonReaderEarned 67ms
โœ… BadgeServiceTests testMarathonReaderProgress 4ms
โœ… BadgeServiceTests testNightOwlBadge 9ms
โœ… BadgeServiceTests testStreakMasterProgress 14ms
โœ… BadgeServiceTests testTenBooksClubEarned 7ms
โœ… BadgeServiceTests testTenBooksClubProgress 6ms
โœ… BadgeUnlockPhaseTests testAnimation_idleRestsWithoutAnimation 1ms
โœ… BadgeUnlockPhaseTests testAnimation_popAndSettle_useSharedMotion <1ms
โœ… BadgeUnlockPhaseTests testPhaseOrder_isIdleThenPopThenSettle 2ms
โœ… BadgeUnlockPhaseTests testPop_scalesUp_whileIdleAndSettleRestAtUnitScale <1ms
โœ… BadgesViewModelTests testBadgeCategories_AreMutuallyExclusive 3ms
โœ… BadgesViewModelTests testInitialState_HasEmptyBadgeLists 135ms
โœ… BadgesViewModelTests testInitialState_IsNotLoading 195ms
โœ… BadgesViewModelTests testInitialState_NoSelectedBadge <1ms
โœ… BadgesViewModelTests testLoad_PopulatesEarnedBadges 2ms
โœ… BadgesViewModelTests testLoad_PopulatesInProgressBadges 624ms
โœ… BadgesViewModelTests testLoad_PopulatesLockedBadges 34ms
โœ… BadgesViewModelTests testLoad_SetsIsLoadingFalseOnCompletion 110ms
โœ… BadgesViewModelTests testNewBadgeNotification_AddsToBadgeIDs 4ms
โœ… BadgesViewModelTests testNewBadgeNotification_TriggersReload 55ms
โœ… BadgesViewModelTests testProgressSummary_FormatsCorrectly 1ms
โœ… BadgesViewModelTests testProgressSummary_ZeroEarned 14ms
โœ… BadgesViewModelTests testSelectBadge_SetsSelectedBadge 4ms
โœ… BadgesViewModelTests testTotalBadgesCount_MatchesCatalogCount <1ms
โœ… BasicAuthEmptyCredentialTests testHandleChallenge_EmptyUsername_StillUsesCredential 1ms
โœ… BasicAuthEmptyCredentialTests testHandleChallenge_NilPassword_CancelsChallenge <1ms
โœ… BasicAuthEmptyCredentialTests testHandleChallenge_NilUsername_CancelsChallenge 129ms
โœ… BasicAuthEmptyCredentialTests testHandleChallenge_ValidCredentials_UsesCredentialWithNoPersistence 328ms
โœ… BearerTokenAdapterTests testCanHandle_anyBookWithAcquisition_returnsTrue 2ms
โœ… BearerTokenAdapterTests testResolveManifest_bearerTokenFetchFails_failsWithManifestFetchFailed 13ms
โœ… BearerTokenAdapterTests testResolveManifest_bearerTokenFetchSuccess_completesWithRealManifest 5ms
โœ… BearerTokenAdapterTests testResolveManifest_detectsBearerTokenInResponse_recursesToLocationURL 6ms
โŠ˜ BearerTokenAdapterTests testResolveManifest_setsBookBearerTokenSideEffect 4ms
โœ… BearerTokenFulfillFlowTests testFulfillURL_andManifestURL_areDifferentEndpoints <1ms
โœ… BearerTokenFulfillFlowTests testFullFlow_bearerTokenWithExpiredManifestFetch_returnsNil 8ms
โœ… BearerTokenFulfillFlowTests testFullFlow_fulfillReturnsBearerToken_thenManifestIsFetched 17ms
โœ… BearerTokenFulfillFlowTests testFullFlow_manifestResponseIsNotMistakenForBearerToken <1ms
โœ… BearerTokenRefreshTests testRefreshRequest_includesAuthHeader 45ms
โœ… BearerTokenRefreshTests testRefreshRequest_withoutToken_noAuthHeader 3ms
โœ… BearerTokenRefreshTests testSimplifiedBearerToken_isExpired_withPastDate 1ms
โœ… BearerTokenRefreshTests testSimplifiedBearerToken_isNotExpired_withFutureDate 1ms
โœ… BearerTokenResponseDetectionTests testAudiobookManifestJSON_isNotMistakenForBearerToken <1ms
โœ… BearerTokenResponseDetectionTests testBearerTokenJSON_isDetectedCorrectly 17ms
โœ… BearerTokenResponseDetectionTests testBearerTokenJSON_withExpirationKey_isDetected <1ms
โœ… BearerTokenResponseDetectionTests testManifestWithAccessTokenKey_butNoLocation_isNotBearerToken <1ms
โœ… BearerTokenResponseDetectionTests testManifestWithLocationKey_butNoAccessToken_isNotBearerToken <1ms
โœ… BearerTokenResponseDetectionTests testNonBearerJSONShapes_areRejected 7ms
โœ… BearerTokenResponseDetectionTests testProblemDocumentJSON_isNotBearerToken 34ms
โœ… BeginningPositionPolicyTests testIsAtBeginning_negativePlaybackTime_isNotBeginning 8ms
โœ… BeginningPositionPolicyTests testIsAtBeginning_negativeTrackIndex_isNotBeginning <1ms
โœ… BeginningPositionPolicyTests testIsAtBeginning_track0_29s_isNotBeginning <1ms
โœ… BeginningPositionPolicyTests testIsAtBeginning_track0_30s_isNotBeginning <1ms
โœ… BeginningPositionPolicyTests testIsAtBeginning_track0_smallestPositiveTime_isNotBeginning <1ms
โœ… BeginningPositionPolicyTests testIsAtBeginning_track0_time0_isBeginning 3ms
โœ… BeginningPositionPolicyTests testIsAtBeginning_track1_anyTime_isNotBeginning <1ms
โœ… BeginningPositionPolicyTests testIsAtBeginning_track1_time0_isNotBeginning <1ms
โœ… BookAvailabilityFormatterTests test_isDate_crossDayBoundary <1ms
โœ… BookAvailabilityFormatterTests test_isDate_crossYearBoundary 1ms
โœ… BookAvailabilityFormatterTests test_isDate_emptyStrings_returnsFalse 6ms
โœ… BookAvailabilityFormatterTests test_isDate_invalidDateStrings_returnsFalse 1ms
โœ… BookAvailabilityFormatterTests test_isDate_moreRecentThan_newerDate_isMoreRecent 2ms
โœ… BookAvailabilityFormatterTests test_isDate_moreRecentThan_olderDate_notMoreRecent 48ms
โœ… BookAvailabilityFormatterTests test_isDate_moreRecentThan_sameDate_notMoreRecent 12ms
โœ… BookAvailabilityFormatterTests test_isDate_negativeDelay_makesNewerDateFail 26ms
โœ… BookAvailabilityFormatterTests test_isDate_newerDateWithDelay_alwaysPasses 1ms
โœ… BookAvailabilityFormatterTests test_isDate_oneSecondDifference_noDelay <1ms
โœ… BookAvailabilityFormatterTests test_isDate_sameTimestamp_withSmallDelay_returnsTrue 1ms
โœ… BookAvailabilityFormatterTests test_isDate_withInsufficientDelay_olderDateStillFails 1ms
โœ… BookAvailabilityFormatterTests test_isDate_withPositiveDelay_makesOlderDatePassAsNewer <1ms
โœ… BookAvailabilityFormatterTests test_syncDecision_bothExist_localNewer_usesLocal 5ms
โœ… BookAvailabilityFormatterTests test_syncDecision_bothExist_remoteNewer_promptsSync 1ms
โœ… BookAvailabilityFormatterTests test_syncDecision_localExistsRemoteNil_localIsUsed 6ms
โœ… BookAvailabilityFormatterTests test_syncDecision_localNilRemoteExists_remoteIsNewer <1ms
โœ… BookAvailabilityFormatterTests test_syncDecision_localNilRemoteNil_noSync <1ms
โœ… BookButtonMapperHoldReadyTests testMap_DownloadingState_Unaffected 1ms
โœ… BookButtonMapperHoldReadyTests testMap_HoldingState_LimitedNoCopiesAvailability_ReturnsHolding 116ms
โœ… BookButtonMapperHoldReadyTests testMap_HoldingState_LimitedWithCopiesAvailability_ReturnsHolding <1ms
โœ… BookButtonMapperHoldReadyTests testMap_HoldingState_NilAvailability_ReturnsHolding 18ms
โœ… BookButtonMapperHoldReadyTests testMap_HoldingState_ReadyAvailability_ReturnsCanBorrow 20ms
โœ… BookButtonMapperHoldReadyTests testMap_HoldingState_ReservedAvailability_ReturnsHolding 2ms
โœ… BookButtonMapperHoldReadyTests testMap_HoldingState_UnavailableAvailability_ReturnsHolding <1ms
โœ… BookButtonMapperHoldReadyTests testMap_HoldingState_UnlimitedAvailability_ReturnsHolding 2ms
โœ… BookButtonMapperHoldReadyTests testMap_ProcessingDownload_Unaffected <1ms
โœ… BookButtonMapperHoldReadyTests testStateForAvailability_dispatchesEachAvailabilityToItsExpectedButtonState 10ms
โœ… BookButtonMapperTests testBookButtonState_buttonTypes_streamingHTMLDownloadNeeded_yieldsReadStreamingAndReturn 2ms
โœ… BookButtonMapperTests testBookButtonState_buttonTypes_streamingHTMLDownloadSuccessful_yieldsReadStreaming 2ms
โœ… BookButtonMapperTests testBookButtonState_buttonTypes_streamingHTMLUnregistered_yieldsGet 3ms
โœ… BookButtonMapperTests testMapDownloadFailed 121ms
โœ… BookButtonMapperTests testMapDownloadNeeded 1ms
โœ… BookButtonMapperTests testMapDownloadSuccessful 102ms
โœ… BookButtonMapperTests testMapDownloading 2ms
โœ… BookButtonMapperTests testMapHolding 3ms
โœ… BookButtonMapperTests testMapReturning <1ms
โœ… BookButtonMapperTests testMapSAMLStarted_returnsDownloadInProgress 1ms
โœ… BookButtonMapperTests testMapUsed 1ms
โœ… BookButtonMapperTests testMap_coversAllTPPBookStates_withNeutralInputs 97ms
โœ… BookButtonMapperTests testMap_exhaustiveSwitch_noDefaultClause_andSAMLStartedExplicit 3ms
โœ… BookButtonMapperTests testMap_unregistered_limitedWithPositiveCopies_returnsCanBorrow <1ms
โœ… BookButtonMapperTests testMap_unregistered_limitedWithUnknownCopies_returnsCanBorrow 23ms
โœ… BookButtonMapperTests testMap_unregistered_limitedWithZeroCopies_returnsCanHold 2ms
โœ… BookButtonMapperTests testMappingIsDeterministic <1ms
โœ… BookButtonMapperTests testProcessingDownloadOverridesDownloadSuccessful 2ms
โœ… BookButtonMapperTests testProcessingDownloadOverridesState 3ms
โœ… BookButtonMapperTests testStateForNilAvailability 3ms
โœ… BookButtonMapperTests testUnregisteredWithNilAvailability 1ms
โœ… BookButtonMapperViewModelTests testMap_DownloadFailed_ReturnsDownloadFailed <1ms
โœ… BookButtonMapperViewModelTests testMap_DownloadNeeded_ReturnsDownloadNeeded 1ms
โœ… BookButtonMapperViewModelTests testMap_DownloadSuccessful_ReturnsDownloadSuccessful 2ms
โœ… BookButtonMapperViewModelTests testMap_DownloadingPrioritizedOverAvailability 2ms
โœ… BookButtonMapperViewModelTests testMap_Downloading_ReturnsDownloadInProgress 21ms
โœ… BookButtonMapperViewModelTests testMap_Holding_WithNilAvailability_ReturnsHolding 3ms
โœ… BookButtonMapperViewModelTests testMap_Holding_WithReadyAvailability_ReturnsCanBorrow <1ms
โœ… BookButtonMapperViewModelTests testMap_Holding_WithReservedAvailability_ReturnsHolding 298ms
โœ… BookButtonMapperViewModelTests testMap_IsProcessingDownload_ReturnsDownloadInProgress 49ms
โœ… BookButtonMapperViewModelTests testMap_Returning_ReturnsReturning <1ms
โœ… BookButtonMapperViewModelTests testMap_Unregistered_WithLimitedAvailability_CopiesAvailable_ReturnsCanBorrow 172ms
โœ… BookButtonMapperViewModelTests testMap_Unregistered_WithNilAvailability_ReturnsUnsupported 126ms
โœ… BookButtonMapperViewModelTests testMap_Unregistered_WithUnavailability_ReturnsCanHold <1ms
โœ… BookButtonMapperViewModelTests testMap_Unregistered_WithUnlimitedAvailability_ReturnsCanBorrow <1ms
โœ… BookButtonMapperViewModelTests testMap_Used_ReturnsUsed 1ms
โœ… BookButtonMapperViewModelTests testStateForAvailability_Nil_ReturnsNil 42ms
โœ… BookButtonMapperViewModelTests testStateForAvailability_Ready_ReturnsCanBorrow 2ms
โœ… BookButtonMapperViewModelTests testStateForAvailability_Reserved_ReturnsHoldingFrontOfQueue 2ms
โœ… BookButtonStateTests testAllCases <1ms
โœ… BookButtonStateTests testDownloadFailed_cancelAndRetry 2ms
โœ… BookButtonStateTests testDownloadInProgress_cancelButton 1ms
โœ… BookButtonStateTests testEquatable 59ms
โœ… BookButtonStateTests testReturning_returningButton 3ms
โœ… BookButtonStateTests testStateForAvailability_nilAvailability 5ms
โœ… BookButtonStateTests testStateForAvailability_unlimited 2ms
โœ… BookButtonStateTests testUnsupported_emptyButtons <1ms
โœ… BookButtonTypeMetaTests testBookButtonType_exhaustiveSwitch_coverage_includesReadStreaming 6ms
โœ… BookButtonTypeMetaTests testBookButtonType_readStreaming_displaysIndicatorTrue <1ms
โœ… BookButtonTypeMetaTests testBookButtonType_readStreaming_titleIsRead <1ms
โœ… BookButtonTypeMetaTests testBookButtonType_readStreaming_usesPrimaryButtonStyle 4ms
โœ… BookButtonTypeTests testAllCases_haveRawValues 8ms
โœ… BookButtonTypeTests testBorderColor 3ms
โœ… BookButtonTypeTests testButtonBackgroundColor <1ms
โœ… BookButtonTypeTests testButtonStyle_destructive <1ms
โœ… BookButtonTypeTests testButtonStyle_primary 14ms
โœ… BookButtonTypeTests testButtonStyle_secondary <1ms
โœ… BookButtonTypeTests testButtonStyle_tertiary 53ms
โœ… BookButtonTypeTests testButtonTextColor 7ms
โœ… BookButtonTypeTests testDisplaysIndicator_falseForOthers <1ms
โœ… BookButtonTypeTests testDisplaysIndicator_trueForExpected 1ms
โœ… BookButtonTypeTests testHasBorder <1ms
โœ… BookButtonTypeTests testIsPrimary 2ms
โœ… BookButtonTypeTests testTitle_returnsNonEmptyStrings 62ms
โœ… BookCellModelActionTests testAcquireReaderPresentationLock_FirstCall_Succeeds 5ms
โœ… BookCellModelActionTests testAcquireReaderPresentationLock_ReleasesAfterDelay 521ms
โœ… BookCellModelActionTests testAcquireReaderPresentationLock_SecondRapidCall_IsBlocked 3ms
โœ… BookCellModelActionTests testCancelHold_AlertContainsBookTitle 3ms
โœ… BookCellModelActionTests testCancelHold_AlertHasBothPrimaryAndDistinctCancelButton 3ms
โœ… BookCellModelActionTests testCancelHold_CancellingAlert_DoesNotSetReturningState 6ms
โœ… BookCellModelActionTests testCancelHold_ConfirmingAlert_SetsReturningState 4ms
โœ… BookCellModelActionTests testCancelHold_DoesNotStartReturnImmediately 6ms
โœ… BookCellModelActionTests testCancelHold_ShowsConfirmationAlert_BeforeRevoking 3ms
โœ… BookCellModelActionTests testRemove_doesNotShowAlertImmediatelyOrAfterDrain 7ms
โœ… BookCellModelActionTests testReturn_AlertContainsBookTitle 5ms
โœ… BookCellModelActionTests testReturn_AlertHasBothPrimaryAndDistinctCancelButton 3ms
โœ… BookCellModelActionTests testReturn_CancellingAlert_DoesNotSetReturningState 3ms
โœ… BookCellModelActionTests testReturn_CancellingAlert_ResetsIsLoading 3ms
โœ… BookCellModelActionTests testReturn_ConfirmingAlert_DismissesAlert 27ms
โœ… BookCellModelActionTests testReturn_ConfirmingAlert_SetsReturningState 3ms
โœ… BookCellModelActionTests testReturn_DoesNotStartReturnImmediately 3ms
โœ… BookCellModelActionTests testReturn_ShowsConfirmationAlert_BeforeRevoking 7ms
โœ… BookCellModelCacheInvalidationTests testCacheInvalidatesDownloadingToFailed 11ms
โœ… BookCellModelCacheInvalidationTests testCacheInvalidatesDownloadingToSuccessful 8ms
โœ… BookCellModelCacheInvalidationTests testCacheInvalidatesFailedToSuccessful 9ms
โœ… BookCellModelCacheInvalidationTests testCacheInvalidatesOnDirectInvalidation 69ms
โœ… BookCellModelCacheInvalidationTests testCacheReturnsDifferentModelsForDifferentBooks 6ms
โœ… BookCellModelCacheInvalidationTests testCacheReturnsSameModel 3ms
โœ… BookCellModelCacheInvalidationTests testClearAllRemovesAllModels 26ms
โœ… BookCellModelCacheInvalidationTests testInvalidateForSpecificBook 9ms
โœ… BookCellModelCachePrefetchSafetyTests testPrefetch_EmptyBooksArray_DoesNotCrash 4ms
โœ… BookCellModelCachePrefetchSafetyTests testPrefetch_EmptyBooksArray_WithNonZeroRange_DoesNotCrash 16ms
โœ… BookCellModelCachePrefetchSafetyTests testPrefetch_EndOfList_DoesNotAccessBeyondBounds 110ms
โœ… BookCellModelCachePrefetchSafetyTests testPrefetch_LargeBuffer_ClampsToArraySize 17ms
โœ… BookCellModelCachePrefetchSafetyTests testPrefetch_NegativeBufferRange_ClampsToZero 21ms
โœ… BookCellModelCachePrefetchSafetyTests testPrefetch_NormalRange_PreloadsModels 21ms
โœ… BookCellModelCachePrefetchSafetyTests testPrefetch_RangeExceedsArraySize_DoesNotCrash 10ms
โœ… BookCellModelCachePrefetchSafetyTests testPrefetch_SingleElementArray_DoesNotCrash 7ms
โœ… BookCellModelCachePrefetchSafetyTests testPrefetch_StartOfList_DoesNotAccessNegativeIndex 20ms
โœ… BookCellModelCacheTests testAggressiveConfiguration_HasLargerValues 423ms
โœ… BookCellModelCacheTests testCacheWithSameIdentifierDifferentUpdatedDate 766ms
โœ… BookCellModelCacheTests testClear 3.41s
โœ… BookCellModelCacheTests testConcurrentAccess_DoesNotCrash 385ms
โœ… BookCellModelCacheTests testDefaultConfiguration_HasReasonableValues 370ms
โœ… BookCellModelCacheTests testDifferentBooksGetDifferentModels 1.91s
โœ… BookCellModelCacheTests testDirectInvalidation_RefreshesModel 565ms
โœ… BookCellModelCacheTests testDirectInvalidation_WorksForHoldingState 604ms
โœ… BookCellModelCacheTests testDirectInvalidation_WorksForStateTransitions 905ms
โœ… BookCellModelCacheTests testEmptyCache_survivesAllPublicMutatorsWithoutCrashOrSpuriousEntries 313ms
โœ… BookCellModelCacheTests testInvalidate 651ms
โœ… BookCellModelCacheTests testInvalidateMultiple 354ms
โœ… BookCellModelCacheTests testLRUEviction 2.67s
โœ… BookCellModelCacheTests testMemoryWarning 575ms
โœ… BookCellModelCacheTests testModelCreation 476ms
โœ… BookCellModelCacheTests testModelReuse_returnsSameInstanceAndDoesNotGrowCacheCount 484ms
โœ… BookCellModelCacheTests testModelUpdate_SameInstance_DoesNotMutateBook 504ms
โœ… BookCellModelCacheTests testModelUpdate_SwapsInstance_IgnoringTimestamp 497ms
โœ… BookCellModelCacheTests testModelUpdate_WithNewerBook_DefersUpdateToTask 361ms
โœ… BookCellModelCacheTests testModelUpdate_WithSameBook_DoesNotUpdate 488ms
โœ… BookCellModelCacheTests testModelUpdatesWhenBookChanges 578ms
โœ… BookCellModelCacheTests testPreload 475ms
โœ… BookCellModelComputedPropertyTests testAuthors_ReturnsBookAuthors 9ms
โœ… BookCellModelComputedPropertyTests testAuthors_ReturnsEmptyStringWhenNil 9ms
โœ… BookCellModelComputedPropertyTests testBookState_ReturnsRegistryStateByDefault 3ms
โœ… BookCellModelComputedPropertyTests testBookState_SetToNonReturning_ClearsOverride 4ms
โœ… BookCellModelComputedPropertyTests testBookState_SetToReturning_OverridesRegistryState 4ms
โœ… BookCellModelComputedPropertyTests testButtonTypes_WhenReturning_UsesReturningState 7ms
โœ… BookCellModelComputedPropertyTests testIsManagingHold_DefaultsFalse 456ms
โœ… BookCellModelComputedPropertyTests testIsProcessing_ReturnsIsLoading 6ms
โœ… BookCellModelComputedPropertyTests testLoadBookCoverImage_UsesCachedImage 74ms
โœ… BookCellModelComputedPropertyTests testShowHalfSheet_CanBeToggled 5ms
โœ… BookCellModelComputedPropertyTests testShowHalfSheet_DefaultsFalse 5ms
โœ… BookCellModelComputedPropertyTests testShowUnreadIndicator_FalseForDownloadFailed 126ms
โœ… BookCellModelComputedPropertyTests testShowUnreadIndicator_FalseForDownloading 8ms
โœ… BookCellModelComputedPropertyTests testShowUnreadIndicator_FalseForHolding 30ms
โœ… BookCellModelComputedPropertyTests testShowUnreadIndicator_FalseForUnregistered 5ms
โœ… BookCellModelComputedPropertyTests testShowUnreadIndicator_FalseForUsed 11ms
โœ… BookCellModelComputedPropertyTests testShowUnreadIndicator_TrueForDownloadSuccessful 6ms
โœ… BookCellModelComputedPropertyTests testStatePublisher_EmitsOnIsLoadingChange 162ms
โœ… BookCellModelComputedPropertyTests testTitle_ReturnsBookTitle 6ms
โœ… BookCellModelOfflineTests testDidSelectDownload_whenOffline_doesNotInvokeDownloadCenter 7ms
โœ… BookCellModelOfflineTests testDidSelectDownload_whenOffline_doesNotSetIsLoading 10ms
โœ… BookCellModelOfflineTests testDidSelectDownload_whenOffline_surfacesRetryableNoConnectionAlert 51ms
โœ… BookCellModelOfflineTests testDidSelectDownload_whenOnline_proceedsWithoutAlert 7ms
โœ… BookCellModelOfflineTests testDidSelectReserve_whenOffline_doesNotSetIsLoading 8ms
โœ… BookCellModelOfflineTests testReachabilityDropsToOffline_whileLoading_clearsLoadingAndShowsAlert 8ms
โœ… BookCellModelOfflineTests testReachabilityInitialState_offline_withoutLoading_doesNotShowAlert 7ms
โœ… BookCellModelOfflineTests testReachabilityRecovers_doesNotAutoStartDownload 8ms
โœ… BookCellModelOfflineTests testReadAction_whenOffline_isNotGatedByReachability 63ms
โœ… BookCellModelRegistryBindingTests testRegistryStateChange_ClearsLoadingForTerminalStates 419ms
โœ… BookCellModelRegistryBindingTests testRegistryStateChange_IgnoresOtherBookIds 355ms
โœ… BookCellModelRegistryBindingTests testRegistryStateChange_ToDownloadFailed_ClearsLoading 341ms
โœ… BookCellModelRegistryBindingTests testRegistryStateChange_UpdatesRegistryState 355ms
โœ… BookCellModelStateTests testBookCellStateButtonState_MapsThroughCorrectly 4ms
โœ… BookCellModelStateTests testBookCellStateForDownloadFailed 8ms
โœ… BookCellModelStateTests testBookCellStateForDownloadInProgress 10ms
โœ… BookCellModelStateTests testBookCellStateForDownloadSuccessful 4ms
โœ… BookCellModelStateTests testDownloadErrorRoutesToCellAlertWhenHalfSheetHidden 11ms
โœ… BookCellModelStateTests testDownloadErrorRoutesToHalfSheetAlertWhenHalfSheetVisible 32ms
โœ… BookCellModelStateTests testInitialStateForDownloadFailed 4ms
โœ… BookCellModelStateTests testInitialStateForDownloadNeeded 58ms
โœ… BookCellModelStateTests testInitialStateForDownloading 4ms
โœ… BookCellModelStateTests testInitialStateForHolding 5ms
โœ… BookCellModelStateTests testInitialStateForUnregisteredBook 5ms
โœ… BookCellModelStateTests testInitialStateMatchesRegistry 16ms
โœ… BookCellModelStateTests testIsLoading_EmitsViaStatePublisher_WhenChanged 6ms
โœ… BookCellModelStateTests testIsLoading_SettlesFalseAfterImageFetchCompletes 12ms
โœ… BookCellModelStateTests testValidateStateConsistencyDetectsMismatch 56ms
โœ… BookCellModelStateTests testValidateStateConsistencyPasses 8ms
โœ… BookCellModelStreamingHTMLTests testBookCellModel_didSelectRead_epubBook_doesNotPushStreamingRoute 136ms
โœ… BookCellModelStreamingHTMLTests testBookCellModel_didSelectRead_streamingHTMLBook_presentsStreamingReaderView_viaCoordinator 149ms
โœ… BookCellStateComprehensiveTests testBookCellState_CanBorrow_MapsToNormal <1ms
โœ… BookCellStateComprehensiveTests testBookCellState_CanHold_MapsToNormal 2ms
โœ… BookCellStateComprehensiveTests testBookCellState_DownloadFailed_MapsToDownloadFailed 2ms
โœ… BookCellStateComprehensiveTests testBookCellState_DownloadInProgress_MapsToDownloading 477ms
โœ… BookCellStateComprehensiveTests testBookCellState_DownloadNeeded_MapsToNormal 2ms
โœ… BookCellStateComprehensiveTests testBookCellState_HoldingFrontOfQueue_MapsToNormal <1ms
โœ… BookCellStateComprehensiveTests testBookCellState_Holding_MapsToNormal 3ms
โœ… BookCellStateComprehensiveTests testBookCellState_ManagingHold_MapsToNormal 2ms
โœ… BookCellStateComprehensiveTests testBookCellState_Returning_MapsToNormal 124ms
โœ… BookCellStateComprehensiveTests testBookCellState_Unsupported_MapsToNormal 178ms
โœ… BookCellStateComprehensiveTests testBookCellState_Used_MapsToNormal <1ms
โœ… BookCellStateComprehensiveTests testButtonState_ExtractionFromDownloadFailed <1ms
โœ… BookCellStateComprehensiveTests testButtonState_ExtractionFromDownloading 4ms
โœ… BookCellStateComprehensiveTests testButtonState_ExtractionFromNormal <1ms
โœ… BookContentResetServiceTests testPurge_force_invokesEvenWithActiveAudiobooks 17ms
โœ… BookContentResetServiceTests testResetAccount_otherAccount_removesContentDirectory 2ms
โœ… BookDetailMetadataHydrationTests testHydrate_PopulatesAudienceAndLanguageFromAlternateFeed 15ms
โœ… BookDetailMetadataHydrationTests testHydrate_PreservesAcquisitionAndNavigationalURLs 13ms
โœ… BookDetailMetadataHydrationTests testHydrate_TriggeredWhenOnlyAudienceOrLanguageMissing_DoesNotFireIfOthersPopulated 8ms
โœ… BookDetailMetadataHydrationTests testHydrate_WhenAllTargetFieldsEmpty_PopulatesFromAlternateFeed 6ms
โœ… BookDetailMetadataHydrationTests testHydrate_WhenMetadataAlreadyPresent_DoesNotFetch 18ms
โœ… BookDetailMetadataHydrationTests testHydrate_WhenNoAlternateURL_DoesNotFetch 32ms
โœ… BookDetailViewModelAudiobookDismissTests testHandleActionListen_earlyShellHook_dismissesHalfSheetBeforeOpenCompletes 18ms
โœ… BookDetailViewModelTests testAllBookStates_HaveValidMapping 2ms
โœ… BookDetailViewModelTests testAllButtonStates_HaveValidButtonTypes 9ms
โœ… BookDetailViewModelTests testAvailability_Nil_ReturnsNil 4ms
โœ… BookDetailViewModelTests testAvailability_Unlimited_MapsToCanBorrow 2ms
โœ… BookDetailViewModelTests testBookContentType_Audiobook 6ms
โœ… BookDetailViewModelTests testBookContentType_EPUB 4ms
โœ… BookDetailViewModelTests testBookContentType_PDF 4ms
โœ… BookDetailViewModelTests testBookDetailViewModel_didSelectGet_streamingHTMLBook_thenButtonsAreReadStreaming 3ms
โœ… BookDetailViewModelTests testBookDetailViewModel_handleAction_readStreaming_callsDidSelectReadStreaming 18ms
โœ… BookDetailViewModelTests testBookLane_Creation 15ms
โœ… BookDetailViewModelTests testBookLane_EmptyBooks 2ms
โœ… BookDetailViewModelTests testBookLane_WithNilURL 5ms
โœ… BookDetailViewModelTests testBookState_SetReturning_SetsLocalOverride_HidesViaRegistryOnlyWhenUnregistered 279ms
โœ… BookDetailViewModelTests testBookState_SetUnregistered_ClearsLocalOverride 3ms
โœ… BookDetailViewModelTests testBook_GetExpirationDate_ReturnsDate_WhenLimitedAvailability 8ms
โœ… BookDetailViewModelTests testBook_GetExpirationDate_ReturnsNilForUnborrowed 4ms
โœ… BookDetailViewModelTests testButtonState_DownloadFailed_MapsToDownloadFailed 2ms
โœ… BookDetailViewModelTests testButtonState_DownloadNeeded_MapsToDownloadNeeded 23ms
โœ… BookDetailViewModelTests testButtonState_DownloadSuccessful_MapsToDownloadSuccessful 2ms
โœ… BookDetailViewModelTests testButtonState_Downloading_MapsToDownloadInProgress 31ms
โœ… BookDetailViewModelTests testButtonState_Holding_MapsToHolding 59ms
โœ… BookDetailViewModelTests testButtonState_IsProcessingDownload_MapsToDownloadInProgress 3ms
โœ… BookDetailViewModelTests testButtonState_Returning_MapsToReturning 2ms
โœ… BookDetailViewModelTests testButtonState_ReturnsStableButtonState 11ms
โœ… BookDetailViewModelTests testButtonState_Unregistered_MapsToCanBorrow 20ms
โœ… BookDetailViewModelTests testButtonState_Used_MapsToUsed 40ms
โœ… BookDetailViewModelTests testButtonTypesProvider_DelegatesToStableButtonState 6ms
โœ… BookDetailViewModelTests testButtonTypes_CanBorrowAudiobookWithSample_IncludesAudiobookSample 53ms
โœ… BookDetailViewModelTests testButtonTypes_CanBorrowWithSample_IncludesSampleButton 13ms
โœ… BookDetailViewModelTests testButtonTypes_CanBorrow_ReturnsGetButton 4ms
โœ… BookDetailViewModelTests testButtonTypes_CanHold_ReturnsReserveButton 5ms
โœ… BookDetailViewModelTests testButtonTypes_DownloadFailed_ReturnsCancelAndRetry 4ms
โœ… BookDetailViewModelTests testButtonTypes_DownloadInProgress_ReturnsCancelButton 10ms
โœ… BookDetailViewModelTests testButtonTypes_DownloadSuccessful_AudiobookReturnsListen 4ms
โœ… BookDetailViewModelTests testButtonTypes_DownloadSuccessful_EpubReturnsRead 5ms
โœ… BookDetailViewModelTests testButtonTypes_PreviewDisabled_ExcludesSampleButton 15ms
โœ… BookDetailViewModelTests testButtonTypes_Returning_ReturnsReturningButton 33ms
โœ… BookDetailViewModelTests testButtonTypes_Unsupported_ReturnsEmpty 5ms
โœ… BookDetailViewModelTests testCredentialCheck_AllowsActionWhenLoggedIn 88ms
โœ… BookDetailViewModelTests testCredentialCheck_PreventsActionWhenNotLoggedIn 1ms
โœ… BookDetailViewModelTests testDidSelectCancel_ResetsDownloadProgress 6ms
โœ… BookDetailViewModelTests testDownloadProgress_IgnoresDifferentBook 533ms
โœ… BookDetailViewModelTests testDownloadProgress_NeverGoesBackwards 25ms
โœ… BookDetailViewModelTests testEnsureAuthPattern_ChecksCredentialsAfterModalDismiss 2ms
โœ… BookDetailViewModelTests testFetchRelatedBooks_NilURL_IsNoOp_AndDoesNotSetLoading 17ms
โœ… BookDetailViewModelTests testHalfSheet_DismissedOnHoldPlaced 82ms
โœ… BookDetailViewModelTests testHalfSheet_DismissedOnUnregistered 11ms
โœ… BookDetailViewModelTests testHalfSheet_StaysOpenDuringDownload 56ms
โœ… BookDetailViewModelTests testHalfSheet_StaysOpenOnDownloadFailed 4ms
โœ… BookDetailViewModelTests testHalfSheet_StaysOpenOnDownloadSuccess 2ms
โœ… BookDetailViewModelTests testHalfSheet_StaysOpenOnUsedState 9ms
โœ… BookDetailViewModelTests testHandleAction_Cancel_ResetsDownloadProgressToZero 5ms
โœ… BookDetailViewModelTests testHandleAction_Close_DoesNothingButInsertsProcessing 5ms
โœ… BookDetailViewModelTests testHandleAction_DuplicateTap_IsIgnored 3ms
โœ… BookDetailViewModelTests testHandleAction_ManageHold_SetsManagingHoldAndHoldingState 8ms
โœ… BookDetailViewModelTests testHandleBookRegistryChange_UpdatesBookFromRegistry 9ms
โœ… BookDetailViewModelTests testHoldingState_ButtonTypesIncludeHoldManagement 3ms
โœ… BookDetailViewModelTests testHoldingState_MapsFromBorrowAttempt 1ms
โœ… BookDetailViewModelTests testIsBorrowProcessing_DefaultsToRegistryProcessingFlagAtInit 3ms
โœ… BookDetailViewModelTests testIsBorrowProcessing_FlipsBackToFalseOnCompletionNotification 9ms
โœ… BookDetailViewModelTests testIsBorrowProcessing_FlipsOnProcessingNotification_ForSameBook 33ms
โœ… BookDetailViewModelTests testIsBorrowProcessing_IgnoresNotificationsForDifferentBook 8ms
โœ… BookDetailViewModelTests testIsFullSize_ReturnsFalseOnNonIpad 3ms
โœ… BookDetailViewModelTests testIsProcessing_ReturnsTrueWhenButtonInSet 4ms
โœ… BookDetailViewModelTests testManagedHoldState_ButtonTypes 5ms
โœ… BookDetailViewModelTests testProcessingButtonTypes_DownloadRelated 3ms
โœ… BookDetailViewModelTests testProcessingButtons_ClearedWhenLoginCancelled 12ms
โœ… BookDetailViewModelTests testProcessingButtons_DidSetUpdatesIsProcessingFlag 23ms
โœ… BookDetailViewModelTests testRegistryTransitionToDownloadFailed_ClearsDownloadProcessingButtons 26ms
โœ… BookDetailViewModelTests testRegistryTransitionToDownloadSuccessful_ClearsDownloadProcessingButtons 11ms
โœ… BookDetailViewModelTests testRegistryTransitionToDownloading_ClearsDownloadProcessingButtons 10ms
โœ… BookDetailViewModelTests testRegistryTransitionToHolding_ClearsReserveAndDismissesHalfSheet 9ms
โœ… BookDetailViewModelTests testRegistryTransitionToUnregistered_ResetsManagingHoldAndHalfSheetAndReturning 10ms
โœ… BookDetailViewModelTests testRelatedBooks_ClearedWhenNavigatingToDifferentBook 7ms
โœ… BookDetailViewModelTests testRelatedBooks_PersistAfterViewReappears 5ms
โœ… BookDetailViewModelTests testRelatedBooks_PreservedDuringRefetchForSameBook 5ms
โœ… BookDetailViewModelTests testRemoveProcessingButton_RemovesTheButton 3ms
โœ… BookDetailViewModelTests testSelectRelatedBook_DifferentBook_UpdatesBookAndClearsLanes 8ms
โœ… BookDetailViewModelTests testSelectRelatedBook_SameBook_IsNoOp 6ms
โœ… BookDetailViewModelTests testSeriesRowDisplay_emptyName_isHidden 2ms
โœ… BookDetailViewModelTests testSeriesRowDisplay_nameAndURL_isLink 29ms
โœ… BookDetailViewModelTests testSeriesRowDisplay_nameWithoutURL_isPlainText 4ms
โœ… BookDetailViewModelTests testSeriesRowDisplay_nilName_isHidden 40ms
โœ… BookDetailViewModelTests testShowMoreBooksForLane_LaneWithNilURL_DoesNotSetSelected 5ms
โœ… BookDetailViewModelTests testShowMoreBooksForLane_MissingLane_LeavesSelectedNil 7ms
โœ… BookDetailViewModelTests testShowMoreBooksForLane_SetsSelectedBookURL 3ms
โœ… BookDetailViewModelTests testStableButtonState_ManagingHold_WhileHoldingOverridesToManagingHold 34ms
โœ… BookDetailViewModelTests testStableButtonState_UpdatesWhenBookStateChanges 43ms
โœ… BookDetailViewModelTests testViewModel_BookStatePublisher_TriggersBookUpdate 21ms
โœ… BookDetailViewModelTests testViewModel_ReceivesBookFromRegistry_NotCachedVersion 78ms
โœ… BookDetailViewModelTests testViewModel_UpdatesBookWhenRegistryChanges 76ms
โœ… BookFileManagerSideloadResolutionTests test_nonSideloadedId_resolvesAgainstCurrentAccount_unchanged 97ms
โœ… BookFileManagerSideloadResolutionTests test_sideloadPrefixedId_notInProvider_resolvesAgainstAccount_defenseInDepth 562ms
โœ… BookFileManagerSideloadResolutionTests test_sideloadedId_resolvesToFixedAccount_evenWhenCurrentAccountDiffers 75ms
โœ… BookFileManagerSideloadResolutionTests test_sideloadedId_resolvesToFixedAccount_evenWhenExplicitAccountDiffers 11ms
โœ… BookFileManagerTests testContentDirectoryURL_createsDirectoryOnFirstCall 8ms
โœ… BookFileManagerTests testContentDirectoryURL_distinctAccounts_distinctDirectories 3ms
โœ… BookFileManagerTests testContentDirectoryURL_idempotent_reusesExistingDirectory 31ms
โœ… BookFileManagerTests testFileUrl_byIdentifier_andByBook_returnSameUrlForSameAccount 10ms
โœ… BookFileManagerTests testFileUrl_byIdentifier_returnsNilWhenBookNotInRegistry 75ms
โœ… BookFileManagerTests testFileUrl_byIdentifier_returnsUrlWhenBookInRegistry 5ms
โœ… BookFileManagerTests testFileUrl_forBook_buildsHashedFileNameWithEpubExtension 5ms
โœ… BookFileManagerTests testPathExtension_defaultsToEpub_forNilOrNonLCPBooks 5ms
โœ… BookListViewAccessibilityTests testBookCell_unchangedFrom3_0_1 6ms
โœ… BookListViewAccessibilityTests testBookListView_announcesOpenDetailsHint 510ms
โœ… BookListViewAccessibilityTests testBookListView_doesNotIgnoreChildren <1ms
โœ… BookListViewAccessibilityTests testBookListView_doesNotRemoveButtonTrait 699ms
โœ… BookListViewAccessibilityTests testBookListView_rowWrapperIsSwiftUIButton 10ms
โœ… BookListViewAccessibilityTests testBookListView_usesCanonicalVoiceOverLabel 190ms
โœ… BookListViewAccessibilityTests testNormalBookCell_unchangedFrom3_0_1 2ms
โœ… BookListViewAccessibilityTests testVoiceOverLabel_audiobook_includesAudiobookDesignation 16ms
โœ… BookListViewAccessibilityTests testVoiceOverLabel_ebook_titleByAuthor 6ms
โœ… BookPreviewTests testEpubBookPreviewExtraction 1ms
โœ… BookPreviewTests testOverdriveMPEGAudiobookExtraction 45ms
โœ… BookPreviewTests testOverdriveWaveAudiobookExtraction <1ms
โœ… BookPreviewTests testOverdriveWebAudiobookExtraction 1ms
โœ… BookRegistryStoreTests test_addBook_thenRetrieve 10ms
โœ… BookRegistryStoreTests test_addBook_withLocationAndBookmarks 153ms
โœ… BookRegistryStoreTests test_allBooks_returnsAllRegisteredBooks 117ms
โœ… BookRegistryStoreTests test_bookForIdentifier_returnsNilForUnregisteredOrInvalidInputs 21ms
โœ… BookRegistryStoreTests test_concurrentReadsAndWrites_noDataRace 185ms
โœ… BookRegistryStoreTests test_fulfillmentId_emptyIdentifier_returnsNil 2ms
โœ… BookRegistryStoreTests test_fulfillmentId_nilIdentifier_returnsNil <1ms
โœ… BookRegistryStoreTests test_fulfillmentId_setAndGet 20ms
โœ… BookRegistryStoreTests test_heldBooks_onlyReturnsHoldingState 16ms
โœ… BookRegistryStoreTests test_mutateRegistrySync_directMutation 273ms
โœ… BookRegistryStoreTests test_myBooks_returnsCorrectStates 22ms
โœ… BookRegistryStoreTests test_processing_defaultsFalseForUnknownAndRegisteredBooks 9ms
โœ… BookRegistryStoreTests test_readRegistry_returnsSnapshot 11ms
โœ… BookRegistryStoreTests test_record_returnsNilForUnregisteredOrInvalidInputs 13ms
โœ… BookRegistryStoreTests test_registrySnapshot_returnsDictionaryRepresentations 10ms
โœ… BookRegistryStoreTests test_registrySubject_emitsOnAdd 8ms
โœ… BookRegistryStoreTests test_removeAll_clearsRegistry 15ms
โœ… BookRegistryStoreTests test_removeBook_nonexistentId_completesWithNilBook 21ms
โœ… BookRegistryStoreTests test_removeBook_removesFromRegistry 26ms
โœ… BookRegistryStoreTests test_setProcessing_true_thenFalse 4ms
โœ… BookRegistryStoreTests test_setState_updatesState 28ms
โœ… BookRegistryStoreTests test_state_returnsUnregisteredForUnregisteredOrInvalidInputs 200ms
โœ… BookRegistryStoreTests test_updateAndRemoveBook_setsStateUnregistered 3ms
โœ… BookRegistryStoreTests test_updatedBookMetadata_preservesExistingAuthorsWhenIncomingIsEmpty 1ms
โœ… BookRegistryStoreTests test_updatedBookMetadata_returnsNilWhenBookIsNotInRegistry 47ms
โœ… BookRegistryStoreTests test_updatedBookMetadata_takesIncomingAuthorsWhenPresent 124ms
โŠ˜ BookRegistrySyncReadinessTests testIntegration_underDetailsLoading_setStateSyncingFiresUnconditionally 177ms
โœ… BookRegistrySyncReadinessTests testReadiness_underDetailsFailed_throwsAuthDocumentFetchFailed 295ms
โœ… BookRegistrySyncReadinessTests testReadiness_underDetailsLoading_blocksUntilTransition 290ms
โœ… BookRegistrySyncReentrancyTests testConcurrentLoadAndSync_bothComplete 10ms
โœ… BookRegistrySyncReentrancyTests testConcurrentSaveSync_allComplete 25ms
โœ… BookRegistrySyncReentrancyTests testSaveSync_fromInsideRegistryStoreBarrier_doesNotDeadlock 20ms
โœ… BookRegistrySyncReentrancyTests testSaveSync_persistsCurrentRegistrySnapshotToDisk 5ms
โœ… BookRegistrySyncReentrancyTests testSaveSync_writeRoutesThroughDiskWriteQueue_landsAfterInFlightAsyncSaves 54ms
โœ… BookRegistrySyncReentrancyTests testSetLocationSync_fromMultipleThreads_savesyncSucceeds 50ms
โŠ˜ BookRegistrySyncSideloadExemptionTests test_sync_withEmptyExemption_evictsTheSameBook_andDeletesItsContent 505ms
โŠ˜ BookRegistrySyncSideloadExemptionTests test_sync_withSideloadedIdExempt_preservesBookAndSkipsOnDiskDelete 847ms
โœ… BookRegistrySyncTests testCorruptLoad_recoversFromNonEmptyBackup_andQuarantinesOriginal 45ms
โœ… BookRegistrySyncTests testCorruptLoad_thenNonAuthoritativeEmptySave_isRefused_untilServerSync 178ms
โœ… BookRegistrySyncTests testCorruptLoad_withoutBackup_leavesEmptyAndFlagsRebuild_andQuarantines 88ms
โœ… BookRegistrySyncTests testNonEmptySave_isNeverBlocked_evenDuringRebuildWindow 40ms
โœ… BookRegistrySyncTests testSaveEmptyOverNonEmptyBackup_isRefusedWithoutServerAuthority 411ms
โœ… BookRegistrySyncTests testSaveEmpty_withServerAuthority_persistsAndClearsRebuildFlag 8ms
โœ… BookRegistrySyncTests testSave_writesSchemaVersionField 12ms
โœ… BookRegistrySyncTests testSchemaMigration_unversionedFileLoads_thenSaveWritesVersion 141ms
โœ… BookRegistrySyncTests test_bulkDeletionProtection_emptyFeedWithLargeLibrary_skipsDeletion 8ms
โœ… BookRegistrySyncTests test_bulkDeletionProtection_emptyFeedWithSingleLocalBook_skipsDeletion 4ms
โœ… BookRegistrySyncTests test_bulkDeletionProtection_emptyFeedWithTwoLocalBooks_skipsDeletion 2ms
โœ… BookRegistrySyncTests test_bulkDeletionProtection_normalFeedDoesNotSkip 215ms
โœ… BookRegistrySyncTests test_bulkDeletionProtection_zeroLocalBooks_doesNotSkip 81ms
โœ… BookRegistrySyncTests test_checkIfBookFileExists_returnsFalseForUnknownBook 50ms
โœ… BookRegistrySyncTests test_largeDeletionWarning_notTriggeredForSmallRatio 5ms
โœ… BookRegistrySyncTests test_loadStateTransition_downloadingWithNoFile_becomesDownloadFailed 3ms
โœ… BookRegistrySyncTests test_load_allowsLoadForDifferentAccount 24ms
โœ… BookRegistrySyncTests test_load_preventsReentrantLoadsForSameAccount 10ms
โœ… BookRegistrySyncTests test_load_withMalformedJSON_doesNotCrashAndLoadsEmpty 12ms
โœ… BookRegistrySyncTests test_load_withMissingFile_transitionsToLoadedWithEmptyRegistry 14ms
โœ… BookRegistrySyncTests test_registrySnapshot_producesSerializableData 40ms
โœ… BookRegistrySyncTests test_registryUrl_returnsPathContainingAccountAndRegistryFile 2ms
โœ… BookRegistrySyncTests test_reset_clearsSyncUrlAndStore 11ms
โœ… BookRegistrySyncTests test_reset_removesRegistryFileFromDisk 4ms
โœ… BookRegistrySyncTests test_storeSnapshotWithMultipleStates 12ms
โœ… BookRegistrySyncTests test_syncUrl_isSetDuringSync_andClearedAfter 3ms
โŠ˜ BookRegistrySyncTests test_sync_whenAlreadySyncing_returnsBeforeSettingSyncingState 9ms
โŠ˜ BookRegistrySyncTests test_sync_whenAwaitReadyFails_revertsToLoadedWithoutFetching 25ms
โŠ˜ BookRegistrySyncTests test_sync_whenFeedFetchFails_revertsToLoadedAndForwardsErrorDocument 102ms
โŠ˜ BookRegistrySyncTests test_sync_whenFeedFetchSucceeds_resolvesToSyncedAndClearsSyncUrl 7ms
โŠ˜ BookRegistrySyncTests test_sync_whenNotSyncing_withCredentialsAndNoLoansUrl_resolvesToLoaded 12ms
โœ… BookRegistrySyncTests test_sync_whenStateIsLoading_shortCircuitsBeforeTouchingAccounts 14ms
โœ… BookRegistrySyncTests test_sync_whenStateIsUnloaded_shortCircuitsBeforeTouchingAccounts 95ms
โœ… BookRegistrySyncTests test_sync_withCurrentAccountButNoCredentials_resolvesToLoadedSynchronously 9ms
โœ… BookRegistrySyncTests test_validateDownloadedContent_marksDownloadNeededWhenFileMissing 12ms
โœ… BookReturnCleverReauthTests testReturn_OAuthIntermediary_AuthError_MarksCredentialsStaleBeforeReauth 135ms
โœ… BookReturnServiceAuthCoordinatorTests testService_authErrorOnReturn_withCoordinatorWired_routesThroughCoordinator_notLegacyReauthenticator 19ms
โœ… BookReturnServiceAuthCoordinatorTests testService_authErrorOnReturn_withoutCoordinator_fallsBackToLegacyReauthenticator 10ms
โœ… BookReturnServiceAuthCoordinatorTests testService_coordinatorCancellation_announcesReturnFailed_andDoesNotRetry 131ms
โœ… BookReturnServiceContractTests test_returnBook_authError_triggersReauth 12ms
โœ… BookReturnServiceContractTests test_returnBook_genericError_presentsAlert 29ms
โœ… BookReturnServiceContractTests test_returnBook_noActiveLoan_treatsAsSuccess 54ms
โœ… BookReturnServiceContractTests test_returnBook_offlineError_enqueues_noLocalCleanup 23ms
โœ… BookReturnServiceContractTests test_returnBook_withRevokeURL_happyPath_callsRegistrySetState_then_syncCompletes 56ms
โœ… BookReturnServiceContractTests test_returnBook_withoutRevokeURL_skipsNetwork_clearsLocalContent 18ms
โœ… BookReturnServiceTests testIsOfflineNSURLError_classifiesConnectivityCodes 3ms
โœ… BookReturnServiceTests testOfflineReturn_enqueues_doesNotDeleteLocalContent 37ms
โœ… BookReturnServiceTests testReturnBook_SAMLBrowserAuth_invalidCredentials_marksCredentialsStaleBeforeReauth 23ms
โœ… BookReturnServiceTests testReturnBook_basicAuth_invalidCredentials_doesNotMarkCredentialsStale 20ms
โœ… BookReturnServiceTests testReturnBook_bookNotInRegistry_callsCompletionAndDoesNothing 5ms
โœ… BookReturnServiceTests testReturnBook_cancelAllInFlightTasks_emptiesTheRetentionSet 11ms
โœ… BookReturnServiceTests testReturnBook_noRevokeURL_downloaded_deletesContentAndRemovesBook 20ms
โœ… BookReturnServiceTests testReturnBook_noRevokeURL_notDownloaded_skipsContentDeletion 5ms
โœ… BookReturnServiceTests testReturnBook_revokeURLPath_retainsTaskWhileInFlight_andDrainsOnCompletion 15ms
โœ… BookReturnServiceTests testReturnBook_revokeURLReturnsGenericError_announcesFailureAndRunsCompletion 46ms
โœ… BookReturnServiceTests testReturnBook_revokeURLReturnsInvalidCredentials_reauthenticatesAndRetries 26ms
โœ… BookReturnServiceTests testReturnBook_revokeURLReturnsLoanTermLimitDetail_cleansUpLocallyAndAnnouncesSuccess 8ms
โœ… BookReturnServiceTests testReturnBook_revokeURLReturnsNoActiveLoan_cleansUpLocallyAndAnnouncesSuccess 46ms
โœ… BookReturnServiceTests testReturnBook_revokeURLReturnsParsingError_treatsAsSuccessAndCleansUp 15ms
โœ… BookReturnServiceTests testReturnService_cancelAllInFlightTasks_cancelsRetainedTask 12ms
โœ… BookReturnServiceTests testReturnService_inFlightTasks_shortCircuitAfterServiceDeinits 43ms
โœ… BookServiceAudiobookOpenTests testOpen_audiobook_failureWithoutShellHook_stillCallsOnFinishBackstop 2ms
โœ… BookServiceAudiobookOpenTests testOpen_audiobook_firesLoadingShellPresentedBeforeOnFinish 4ms
โœ… BookSignInRedirectHandlerTests testClearAndSetCookies_replacesSessionCookiesWithUserAccountCookies 3ms
โœ… BookSignInRedirectHandlerTests testHandleBookFound_nilRequest_skipsRetry 2ms
โœ… BookSignInRedirectHandlerTests testHandleBookFound_setsCookiesAndRetriesDownloadIfRequestPresent 3ms
โœ… BookSignInRedirectHandlerTests testHandleLoginCancellation_setsDownloadNeededAndCancelsViaDelegate 2ms
โœ… BookSignInRedirectHandlerTests testHandleProblem_alreadySAMLStarted_setsFailedAndPresentsReauthModal 13ms
โœ… BookSignInRedirectHandlerTests testHandleProblem_hasCredentialsAndNotSaml_logsButDoesNotAuthenticate 49ms
โœ… BookSignInRedirectHandlerTests testHandleProblem_noCredentialsLoginRequired_presentsReauthAndRetriesOnHasCredentials 6ms
โœ… BookSignInRedirectHandlerTests testHandleProblem_samlCookiesExpired_setsSAMLStartedAndRetries 31ms
โœ… BookStateIntegrationTests testBookBorrow_UpdatesRegistry 3ms
โœ… BookStateIntegrationTests testBookDownloadFailure_UpdatesStateToDownloadFailed 1ms
โœ… BookStateIntegrationTests testBookReturn_RemovesFromRegistry 39ms
โœ… BookStateIntegrationTests testBookStateChange_PublishesViaCombine 1ms
โœ… BookStateIntegrationTests testBookStateTransition_FullDownloadLifecycle 39ms
โœ… BookStateIntegrationTests testBookWithHolds_ShowsHoldingState 2ms
โœ… BookStateIntegrationTests testConcurrentStateChanges_DoNotCorruptRegistry 4ms
โœ… BookStateIntegrationTests testRegistryPublisher_EmitsOnBookAdd 2ms
โœ… BookmarkBusinessLogicExtendedTests testBookmarkAtIndex_returnsNilForOutOfRangeIndicesAndItemForValid 290ms
โœ… BookmarkBusinessLogicExtendedTests testBookmarkAtIndex_validIndex_returnsBookmark 42ms
โœ… BookmarkBusinessLogicExtendedTests testDeleteBookmarkAtIndex_guardsOutOfRangeAndRemovesOnlyValidIndex 81ms
โœ… BookmarkBusinessLogicExtendedTests testDeleteBookmarkAtIndex_validIndex_removesAndReturns 87ms
โœ… BookmarkBusinessLogicExtendedTests testDeleteBookmark_existingBookmark_removes 43ms
โœ… BookmarkBusinessLogicExtendedTests testReadOnlySurfaces_noBookmarksText_shouldSelect_shouldAllowRefresh 94ms
โœ… BookmarkDeletionLogTests testUpdateLocalBookmarks_matchingLocalBookmark_preservesLocal 33ms
โœ… BookmarkDeletionLogTests testUpdateLocalBookmarks_serverBookmarkNotDeleted_addsLocally 38ms
โœ… BookmarkDeletionLogTests testUpdateLocalBookmarks_withPendingDeletion_deletesFromServer 38ms
โœ… BookmarkDeviceIdMatchingTests testUpdateLocalBookmarks_ServerBookmarkFromDifferentDevice_AddedLocally 33ms
โœ… BookmarkDeviceIdMatchingTests testUpdateLocalBookmarks_ServerBookmarkFromSameDevice_NotLocallyPresent_MarkedForDeletion 36ms
โœ… BookmarkDeviceIdMatchingTests testUpdateLocalBookmarks_ServerBookmarkWithNilDevice_AddedLocally 31ms
โœ… BookmarkExistenceTests testIsBookmarkExisting_differentProgress_returnsNil 32ms
โœ… BookmarkExistenceTests testIsBookmarkExisting_matchingBookmark_returnsBookmark 49ms
โœ… BookmarkExistenceTests testIsBookmarkExisting_noBookmarks_returnsNil 27ms
โœ… BookmarkExistenceTests testIsBookmarkExisting_returnsNilForNilLocationAndForLocationWithoutMatch 31ms
โœ… BookmarkManagerTests test_addGenericBookmark 4ms
โœ… BookmarkManagerTests test_addGenericBookmark_initializesArrayIfNil 6ms
โœ… BookmarkManagerTests test_addGenericBookmark_toMissingBook_doesNotCrash 17ms
โœ… BookmarkManagerTests test_addMultipleReadiumBookmarks_sortedByProgress 8ms
โœ… BookmarkManagerTests test_addOrReplaceGenericBookmark_addsWhenNew 11ms
โœ… BookmarkManagerTests test_addOrReplaceGenericBookmark_initializesArrayIfNil 6ms
โœ… BookmarkManagerTests test_addOrReplaceGenericBookmark_replacesExisting 12ms
โœ… BookmarkManagerTests test_addReadiumBookmark 8ms
โœ… BookmarkManagerTests test_addReadiumBookmark_initializesArrayIfNil 13ms
โœ… BookmarkManagerTests test_addReadiumBookmark_toMissingBook_doesNotCrash 128ms
โœ… BookmarkManagerTests test_bookmarksAreIsolatedBetweenBooks 8ms
โœ… BookmarkManagerTests test_deleteGenericBookmark_byAnnotationId 16ms
โœ… BookmarkManagerTests test_deleteGenericBookmark_bySimilarity 61ms
โœ… BookmarkManagerTests test_deleteReadiumBookmark 15ms
โœ… BookmarkManagerTests test_everyMutationCallsSave 12ms
โœ… BookmarkManagerTests test_locationAndBookmarksAreIndependent 9ms
โœ… BookmarkManagerTests test_missingBook_locationAndBookmarkLookups_returnAbsentValues 2ms
โœ… BookmarkManagerTests test_replaceGenericBookmark 17ms
โœ… BookmarkManagerTests test_replaceReadiumBookmark 5ms
โœ… BookmarkManagerTests test_setAndGetLocation 75ms
โœ… BookmarkManagerTests test_setLocationSync_callsSaveSyncInsteadOfSave 10ms
โœ… BookmarkManagerTests test_setLocationSync_emptyIdentifier_neitherSyncNorAsyncSaveFires <1ms
โœ… BookmarkManagerTests test_setLocation_emptyIdentifier_doesNotSaveAndDoesNotTouchAnyBook 88ms
โœ… BookmarkManagerTests test_setLocation_nil_clearsLocation 9ms
โœ… BookmarkSortingTests testBookmarks_sortedByProgressWithinBook 385ms
โœ… BookmarkSyncTests testUpdateLocalBookmarks_addsServerBookmarks 345ms
โœ… BookmarkSyncTests testUpdateLocalBookmarks_handlesEmptyServerList 112ms
โœ… BookmarkSyncTests testUpdateLocalBookmarks_preservesFailedUploads 349ms
โœ… BorrowAndDownloadIntegrationTests testAudiobookBorrow_ManifestWithZeroTracks_ParsesGracefully 32ms
โœ… BorrowAndDownloadIntegrationTests testBorrowFlow_NetworkError_ShowsAlert_RegistryUnchanged 77ms
โœ… BorrowAndDownloadIntegrationTests testBorrowFlow_Success_RegistryUpdated_DownloadTriggered_NoAlert 12ms
โœ… BorrowAndDownloadIntegrationTests testDownload_StartedWhileOffline_FailsImmediately_NoTaskSpawned 14ms
โœ… BorrowAndDownloadIntegrationTests testFullLifecycle_BorrowDownloadReturn_OnRealRegistry 96ms
โœ… BorrowAndDownloadIntegrationTests testReachabilityDrop_DuringActiveDownloads_FailsAllOfThem 42ms
โœ… BorrowAndDownloadIntegrationTests testReturn_RemovesBookFromRegistry_AndEmitsUnregisteredState 29ms
โœ… BorrowErrorMessageTests testAllRetryableParsingErrors_showUserFriendlyBaseMessage 3ms
โœ… BorrowErrorMessageTests testBookTitle_isIncludedInMessage <1ms
โœ… BorrowErrorMessageTests testDifferentBookTitles_produceDistinctMessages 99ms
โœ… BorrowErrorMessageTests testMessageFormat_matchesLegacyPattern_noProblemDoc <1ms
โœ… BorrowErrorMessageTests testMessageFormat_matchesLegacyPattern_withProblemDoc 1ms
โœ… BorrowErrorMessageTests testNetworkErrors_showUserFriendlyBaseMessage <1ms
โœ… BorrowErrorMessageTests testNilProblemDocument_usesRecoverySuggestion 1ms
โœ… BorrowErrorMessageTests testNoTechnicalErrorString_appearsAsMessage 118ms
โœ… BorrowErrorMessageTests testOPDSFeedInvalid_showsUserFriendlyMessage_notTechnicalError 5ms
โœ… BorrowErrorMessageTests testProblemDocument_takesPriorityOverRecoverySuggestion 2ms
โœ… BorrowErrorMessageTests testWithProblemDocument_appendsServerDetail <1ms
โœ… BorrowErrorMessageTests testWithProblemDocument_emptyDetail_fallsBackToBaseMessage 3ms
โœ… BorrowErrorMessageTests testWithProblemDocument_nilDetail_fallsBackToBaseMessage <1ms
โœ… BorrowErrorPresenterTests testProcess_genericProblemDoc_publishesAlertWithProblemDocDetail 13ms
โœ… BorrowErrorPresenterTests testProcess_invalidCredentialsTwice_secondCallSkipsReauthAndShowsAlert 193ms
โœ… BorrowErrorPresenterTests testProcess_invalidCredentialsWhileAlreadyRequesting_skipsBoth 14ms
โœ… BorrowErrorPresenterTests testProcess_invalidCredentials_triggersReauthAndRetriesViaDelegate 7ms
โœ… BorrowErrorPresenterTests testProcess_loanAlreadyExists_publishesLoanAlreadyExistsAlertWithoutRetry 9ms
โœ… BorrowErrorPresenterTests testProcess_noErrorDict_publishesGenericBorrowFailedAlert 9ms
โœ… BorrowOperationAuthCoordinatorTests testCoordinator_OAuthIntermediary_authError_routesThroughCoordinator 70ms
โœ… BorrowOperationAuthCoordinatorTests testCoordinator_OIDC_silentReauthFails_fallsBackToCoordinator 7ms
โœ… BorrowOperationAuthCoordinatorTests testCoordinator_OIDC_silentReauthSucceeds_doesNotInvokeCoordinator 4ms
โœ… BorrowOperationAuthCoordinatorTests testCoordinator_SAML_authError_routesThroughCoordinator_skipsLegacyPresentSignInModal 48ms
โœ… BorrowOperationAuthCoordinatorTests testCoordinator_perBookCircuitBreaker_clearAllReleasesAllBookGates 9ms
โœ… BorrowOperationAuthCoordinatorTests testCoordinator_perBookCircuitBreaker_isStillHonored_acrossTwoSeparateAttempts 73ms
โœ… BorrowOperationCleverReauthTests testBorrow_OAuthIntermediary_AuthError_RoutesToBrowserReauthModal 221ms
โœ… BorrowOperationCleverReauthTests testBorrow_OAuthIntermediary_NoActiveLoanProblemDoc_TreatedAsAuthError 56ms
โœ… BorrowOperationContractTests test_borrowAsync_401NoProblemDoc_routesToSignInModal 95ms
โœ… BorrowOperationContractTests test_borrowAsync_alreadyBorrowed_isIdempotent_perSQ007 830ms
โœ… BorrowOperationContractTests test_borrowAsync_attemptDownloadFalse_onSuccessfulBorrow_doesNotCallStartDownload 200ms
โœ… BorrowOperationContractTests test_borrowAsync_attemptDownloadTrue_onSuccessfulBorrow_callsStartDownload 16ms
โœ… BorrowOperationContractTests test_borrowAsync_authError_triggersRetryViaSilentReauth 269ms
โœ… BorrowOperationContractTests test_borrowAsync_holdResponse_doesNotCallStartDownload 213ms
โœ… BorrowOperationStreamingHTMLTests testBorrowOperation_borrowSucceeded_epubBook_callsStartDownloadOnce 5ms
โœ… BorrowOperationStreamingHTMLTests testBorrowOperation_borrowSucceeded_streamingHTMLBook_attemptDownloadFalse_doesNotCallStartDownload 7ms
โœ… BorrowOperationStreamingHTMLTests testBorrowOperation_borrowSucceeded_streamingHTMLBook_doesNotCallStartDownload 4ms
โœ… BorrowOperationTests testBorrowAsync_attemptDownloadTrue_callsDelegateStartDownload 9ms
โœ… BorrowOperationTests testBorrowAsync_genericError_presentsAlertAndRethrows 5ms
โœ… BorrowOperationTests testBorrowAsync_holdingRace_throwsHoldCopyUnavailableAndSetsHolding 32ms
โœ… BorrowOperationTests testBorrowAsync_noAcquisitionURL_throwsInvalidState 6ms
โœ… BorrowOperationTests testBorrowAsync_success_addsBookToRegistryAsDownloadNeeded 5ms
โœ… BorrowOperationTests testBorrow_401NetworkUnauthorizedNoProblemDoc_presentsSignInModal 5ms
โœ… BorrowOperationTests testBorrow_403NetworkForbiddenNoProblemDoc_presentsSignInModal 41ms
โœ… BorrowOperationTests testBorrow_AlreadyHasLoanWithoutCredentials_proceedsAsAuthError 11ms
โœ… BorrowOperationTests testBorrow_NetworkUnknownError_fallsThroughToAlert 15ms
โœ… BorrowOperationTests testBorrow_SAMLBrowserAuth_withCredentials_routesToReauthModalNotAlert 8ms
โœ… BorrowOperationTests testBorrow_SQ007AlreadyHasLoanWithCredentials_doesNotShowAlert 16ms
โœ… BorrowOperationTests testBorrow_StateHolding_isTreatedAsAlreadyHavingLoan 5ms
โœ… BorrowOperationTests testBorrow_StateUnregistered_isNotTreatedAsAlreadyHavingLoan 35ms
โœ… BorrowOperationTimeoutTests testWithTimeout_FastOperation_ReturnsValue 1ms
โœ… BorrowOperationTimeoutTests testWithTimeout_OperationThrowsBeforeDeadline_PropagatesOriginalError 6ms
โœ… BorrowOperationTimeoutTests testWithTimeout_SlowOperation_ThrowsTimeoutError 107ms
โœ… BorrowReducerContractTests test_registryStateChanged_transitionContract 22ms
โœ… BorrowReducerContractTests test_userActions_transitionContract 12ms
โœ… BorrowReducerTests testBookStateAssigned_toOtherState_doesNotChangeOverride 34ms
โœ… BorrowReducerTests testBookStateAssigned_toReturning_armsTheOverride <1ms
โœ… BorrowReducerTests testBookStateAssigned_toUnregistered_clearsTheOverride <1ms
โœ… BorrowReducerTests testCancelTapped_resetsDownloadProgressAndIsIdempotent <1ms
โœ… BorrowReducerTests testDownloadErrorOccurred_resyncsBookStateAndPurgesAllAcquireSpinners 14ms
โœ… BorrowReducerTests testDownloadProgressUpdated_clampsToMaxSeen_neverSlidesBackward <1ms
โœ… BorrowReducerTests testDownloadStartConfirmed_setsDownloadingAndOpensHalfSheet <1ms
โœ… BorrowReducerTests testManageHoldTapped_setsHoldingStateAndManagingFlag <1ms
โœ… BorrowReducerTests testProcessingButtonInserted_addsTheButton 5ms
โœ… BorrowReducerTests testProcessingButtonRemoved_removesOnlyThatButton_andIsIdempotent 18ms
โœ… BorrowReducerTests testRegistryStateChanged_clearsAcquireFlags_forAllBorrowCompletedStates 11ms
โœ… BorrowReducerTests testRegistryStateChanged_toDownloadFailed_keepsHalfSheetOpenForRetryAlert <1ms
โœ… BorrowReducerTests testRegistryStateChanged_toDownloadNeeded_clearsBorrowProcessingFlags 1ms
โœ… BorrowReducerTests testRegistryStateChanged_toDownloadSuccessful_keepsHalfSheetOpenSoUserCanReadOrListen 3ms
โœ… BorrowReducerTests testRegistryStateChanged_toDownloading_clearsDownloadSpinnersOnly 3ms
โœ… BorrowReducerTests testRegistryStateChanged_toHolding_clearsReserveAndDismissesHalfSheet 9ms
โœ… BorrowReducerTests testRegistryStateChanged_toUnregistered_closesHalfSheetAndClearsReturnSpinners <1ms
โœ… BorrowReducerTests testRegistryStateChanged_whenReturningOverrideArmed_acceptsUnregisteredAsTerminal 5ms
โœ… BorrowReducerTests testRegistryStateChanged_whenReturningOverrideArmed_suppressesNonTerminalState <1ms
โœ… BorrowReducerTests testReturnStartConfirmed_insertsReturningSpinnerOnlyAndPreservesBookState <1ms
โœ… BorrowReducerTests testSignInCancelled_releasesAcquireSpinnersAndPreservesUnrelatedFlags 2ms
โœ… BundledRegistrySnapshotTests testBundleMain_LoadsAValidSnapshotWhenEmbedded 170ms
โœ… BundledRegistrySnapshotTests testLoad_RoundTripsThroughOPDS2CatalogsFeedDecoder 2ms
โœ… BundledRegistrySnapshotTests testLoad_WhenResourceMissing_ReturnsNil 1ms
โœ… BundledRegistrySnapshotTests testLoad_WhenResourcePresent_ReturnsBytes 2ms
โœ… BundledRegistrySnapshotTests testLoad_WhenResourceUnreadable_ReturnsNil 2ms
โœ… ButtonStateMonotonicClampTests testCell_downloadFailedThenReDownload_latchDropped_showsDownloading 1.38s
โœ… ButtonStateMonotonicClampTests testCell_downloadingToDownloadNeeded_notClamped_showsDownload 134ms
โœ… ButtonStateMonotonicClampTests testCell_evictionToDownloadNeeded_showsDownload_notStrandedListen 134ms
โœ… ButtonStateMonotonicClampTests testCell_forwardProgressionStillAdvances 193ms
โœ… ButtonStateMonotonicClampTests testCell_listenHoldsAgainstTransientDownloading 820ms
โœ… ButtonStateMonotonicClampTests testCell_returnThenReDownload_latchDropped_showsDownloading 201ms
โœ… ButtonStateMonotonicClampTests testDetail_evictionToDownloadNeeded_showsDownload 128ms
โœ… ButtonStateMonotonicClampTests testDetail_forwardProgressionStillAdvances 190ms
โœ… ButtonStateMonotonicClampTests testDetail_listenHoldsAgainstTransientDownloading 126ms
โœ… ButtonStateMonotonicClampTests testDetail_returnThenReDownload_latchDropped_showsDownloading 192ms
โœ… ButtonStateTests testCanBorrow_audiobookButtonsRespectPreviewToggle 2ms
โœ… ButtonStateTests testCanBorrow_epubButtonsRespectPreviewToggle 29ms
โœ… ButtonStateTests testCanHold_audiobookButtonsRespectPreviewToggle 3ms
โœ… ButtonStateTests testCanHold_epubButtonsRespectPreviewToggle 5ms
โœ… ButtonStateTests testDownloadFailed_yieldsCancelAndRetry 4ms
โœ… ButtonStateTests testDownloadInProgress_yieldsOnlyCancelButton 4ms
โœ… ButtonStateTests testDownloadNeededAudiobook 5ms
โœ… ButtonStateTests testDownloadNeededEpub 23ms
โœ… ButtonStateTests testDownloadSuccessfulAudiobook 22ms
โœ… ButtonStateTests testDownloadSuccessfulEpub 51ms
โœ… ButtonStateTests testDownloadSuccessfulPDF 3ms
โœ… ButtonStateTests testHoldingFrontOfQueue_withoutHoldReady_returnsManageHoldOnly 4ms
โœ… ButtonStateTests testHolding_audiobookButtonsRespectPreviewToggle 6ms
โœ… ButtonStateTests testHolding_epubButtonsRespectPreviewToggle 3ms
โœ… ButtonStateTests testUnsupported_yieldsEmptyButtonSetAndNoLeakageFromOtherStates 4ms
โœ… ButtonStateTests testUsedEpub 2ms
โœ… ButtonStyleTypeTests testAllCases 2ms
โœ… ButtonStyleTypeTests testEquality 1ms
โœ… C64ConversionTests testC64ConverionWithAccentedString <1ms
โœ… C64ConversionTests testC64ConverionWithEmptyString <1ms
โœ… C64ConversionTests testC64ConverionWithNilString 4ms
โœ… C64ConversionTests testC64ConverionWithRegularString <1ms
โœ… C64ConversionTests testC64ConverionWithSpecialCharacters 5ms
โœ… C64ConversionTests testC64ConverionWithUnicodeCharecters <1ms
โœ… CarPlayAudiobookBridgePresenterMigrationTests testCarPlayBridge_dismissBookOnPhone_callsPresenterMinimize 416ms
โœ… CarPlayAudiobookBridgePresenterMigrationTests testCarPlayBridge_dismissBookOnPhone_doesNotKillSession 117ms
โœ… CarPlayAuthHelperReadinessTests testIntegration_underDetailsFailed_returnsFalse 227ms
โœ… CarPlayAuthHelperReadinessTests testReadiness_underDetailsFailed_gateThrows 546ms
โœ… CarPlayAuthHelperReadinessTests testReadiness_underDetailsLoading_gateBlocksUntilTransition 782ms
โœ… CarPlayChapterListTests testCarPlayBridge_NoChaptersAvailable_ReturnsNil 5ms
โœ… CarPlayChapterListTests testCarPlayBridge_NoPlayback_CurrentChapterIsNil <1ms
โœ… CarPlayChapterListTests testCarPlayBridge_SkipToChapter_WithoutPlayback_DoesNotCrash 37ms
โœ… CarPlayIntegrationTests testCarPlayTemplateIntegration_BookSelectionHandling 12ms
โœ… CarPlayIntegrationTests testCarPlay_ImageProvider_CachesBehavior 10ms
โœ… CarPlayLibraryRefreshTests testCarPlay_BookRegistry_IsAccessible 3ms
โœ… CarPlayLibraryRefreshTests testCarPlay_DownloadedAudiobooks_CanBeFiltered <1ms
โœ… CarPlayLibraryRefreshTests testCarPlay_LibraryName_CanBeUpdated 6ms
โœ… CarPlayNowPlayingTemplateTests testCarPlayBridge_DoesNotConfigureNowPlayingOnInit 9ms
โœ… CarPlayNowPlayingTemplateTests testCarPlayBridge_HasPlaybackStatePublisher 507ms
โœ… CarPlayNowPlayingTemplateTests testCarPlayBridge_NowPlayingConfigurationIsIdempotent <1ms
โœ… CarPlayNowPlayingTemplateTests testCarPlayImageProvider_InitializesIndependently 9ms
โœ… CarPlayOpenAppAlertTests testCarPlay_OpenAppMessage_MentionsPalace 686ms
โœ… CarPlayOpenAppAlertTests testCarPlay_OpenAppMessage_MentionsPhone 825ms
โœ… CarPlayOpenAppAlertTests testCarPlay_OpenAppStrings_AreConfigured 818ms
โœ… CarPlayOpenAppAlertTests testShouldShowOpenAppAlert_whenMainSceneConnected_isFalse 697ms
โœ… CarPlayOpenAppAlertTests testShouldShowOpenAppAlert_whenMainSceneNotConnected_isTrue 762ms
โœ… CarPlayOpenAppAlertTests testStatebleed_resetForTesting_rebuildsFreshAudiobookStatics 1.12s
โœ… CarPlayPlaybackErrorTests testAudiobookSessionError_MapsToCarPlayAlert <1ms
โœ… CarPlayPlaybackErrorTests testBridge_currentBook_nilWhenNoSession 11ms
โœ… CarPlayPlaybackErrorTests testBridge_isPlaying_reflectsSessionManager 2ms
โœ… CarPlayPlaybackErrorTests testCarPlay_ErrorStrings_AuthRequired <1ms
โœ… CarPlayPlaybackErrorTests testCarPlay_ErrorStrings_NotDownloaded <1ms
โœ… CarPlayPlaybackErrorTests testCarPlay_ErrorStrings_Offline <1ms
โœ… CarPlayPlaybackErrorTests testCarPlay_ErrorStrings_PlaybackFailed 1ms
โœ… CarPlayPlaybackErrorTests testNowPlayingInfo_isAccessible 4ms
โœ… CarPlayTests testAudiobookSessionManager_Initialization 3ms
โœ… CarPlayTests testCarPlayBridge_Initialization <1ms
โœ… CarPlayTests testCarPlayImageProvider_GeneratesPlaceholder 4ms
โœ… CarPlayTests testCarPlay_BookDownloadedState 10ms
โœ… CarPlayTests testCarPlay_ChapterListFormatting <1ms
โœ… CarPlayTests testCarPlay_ChapterNumber_Formatting 24ms
โœ… CarPlayTests testCarPlay_ErrorStrings_NotEmpty 3ms
โœ… CarPlayTests testCarPlay_FiltersOnlyAudiobooks 4ms
โœ… CarPlayTests testCarPlay_NoEbooksInLibrary 2ms
โœ… CarPlayTests testCarPlay_ShortDurationFormatting <1ms
โœ… CarPlayTests testCarPlay_UIStrings_NotEmpty 1ms
โœ… CarPlayTests testCarPlay_ZeroDurationFormatting 34ms
โœ… CarPlayTimeTrackingTests testCarPlayChapterSkip_properlyTracksTime 25ms
โœ… CarPlayTimeTrackingTests testCarPlayDisconnect_trackerContinuesIndependently 113ms
โœ… CarPlayTimeTrackingTests testCarPlayPlayback_usesStandardTrackerDelegateMethods 35ms
โœ… CatalogAPIDedupeTests testFetchFeed_ConcurrentCallersForDifferentURLs_DoNotDedupe 121ms
โœ… CatalogAPIDedupeTests testFetchFeed_ConcurrentCallersForSameURL_ShareOneNetworkRequest 107ms
โœ… CatalogAPIDedupeTests testFetchFeed_SequentialCallsAfterCompletion_FireFreshRequests 217ms
โœ… CatalogAPIEntryPointTests testExtractSearchEntryPointsFromEmptyFeed 3ms
โœ… CatalogAccessibilityTests testCollapseSectionLabel_isDescriptive <1ms
โœ… CatalogAccessibilityTests testExpandCollapseLabel_roundTripsOnRepeatedFlips 1ms
โœ… CatalogAccessibilityTests testExpandCollapseLabels_areDifferent 5ms
โœ… CatalogAccessibilityTests testExpandSectionLabel_isDescriptive <1ms
โœ… CatalogAccessibilityTests testMoreBooksInLaneLabel_includesLaneTitle 48ms
โœ… CatalogAccessibilityTests testMoreBooksLabel_differsForDifferentLanes <1ms
โœ… CatalogAccessibilityTests testMoreBooksLabel_indicatesNavigation 47ms
โœ… CatalogAccessibilityTests testSwitchLibraryLabel_isDescriptive <1ms
โœ… CatalogCacheKeyAndIsolationTests testCacheKey_SameAccount_RepeatedReads_ShareOneCacheEntry 16ms
โœ… CatalogCacheKeyAndIsolationTests testCacheKey_SamePathDifferentQueryStrings_AreDistinctEntries 18ms
โœ… CatalogCacheKeyAndIsolationTests testCacheKey_SameURL_DistinctAccounts_AreDistinctEntries 352ms
โœ… CatalogCacheKeyAndIsolationTests testCacheKey_SchemeCasing_RetainedAsURLSpec 301ms
โœ… CatalogCacheKeyAndIsolationTests testCacheKey_TrailingSlashDifference_AreDistinctEntries 112ms
โœ… CatalogCacheKeyAndIsolationTests testConcurrentStaleReads_AcrossDistinctURLs_EachURLGetsItsOwnRefresh 207ms
โœ… CatalogCacheKeyAndIsolationTests testConcurrentStaleReads_BackgroundRefreshDoesNotPoisonNeighborKey 1.01s
โœ… CatalogCacheKeyAndIsolationTests testInMemoryCache_AfterSystemMemoryWarning_IsClearedAndNextReadHitsNetwork 533ms
โœ… CatalogCacheKeyAndIsolationTests testInvalidateCache_DoesNotClearUnrelatedURLs 18ms
โœ… CatalogCacheKeyAndIsolationTests testInvalidateCache_IsScopedToCurrentAccount 18ms
โœ… CatalogCacheKeyAndIsolationTests testMemoryWarning_ClearsBothInMemoryAndFormatEntriesCache 10ms
โœ… CatalogCacheKeyAndIsolationTests testSignOutContract_InvalidateAllCachedURLs_NextReadsHitNetwork 30ms
โœ… CatalogCacheMetadataExactBoundaryTests testIsExpired_AtExactlyMaxAge_IsNotExpired <1ms
โœ… CatalogCacheMetadataExactBoundaryTests testIsStale_AtExactlyDefaultStaleTTL_IsFresh <1ms
โœ… CatalogCacheMetadataExactBoundaryTests testStaleTTL_ExtremelyLargeServerMaxAge_IsClampedToCeiling <1ms
โœ… CatalogCacheMetadataExactBoundaryTests testStaleTTL_ServerMaxAgeJustBelowFloor_IsClampedToFiveMinutes <1ms
โœ… CatalogCacheMetadataTests testCacheLifecycle_FreshThenStaleThenExpired <1ms
โœ… CatalogCacheMetadataTests testDecode_LegacyMetadataWithoutIsBundledField_DefaultsToFalse <1ms
โœ… CatalogCacheMetadataTests testEncodeDecode_PreservesAllProperties 3ms
โœ… CatalogCacheMetadataTests testEncodeDecode_PreservesIsBundledFalse_Explicitly <1ms
โœ… CatalogCacheMetadataTests testEncodeDecode_PreservesIsBundledTrue 1ms
โœ… CatalogCacheMetadataTests testInvariant_ExpiredImpliesStale <1ms
โœ… CatalogCacheMetadataTests testIsBundled_DefaultsFalse_ForBackCompat <1ms
โœ… CatalogCacheMetadataTests testIsBundled_False_PreservesExistingStalenessBehavior 12ms
โœ… CatalogCacheMetadataTests testIsBundled_True_ForcesStaleness_AcrossAllServerMaxAges <1ms
โœ… CatalogCacheMetadataTests testIsBundled_True_ForcesStaleness_RegardlessOfFreshTimestamp 33ms
โœ… CatalogCacheMetadataTests testIsExpired_EpochTimestamp_IsAlwaysStaleAndExpired 33ms
โœ… CatalogCacheMetadataTests testIsExpired_TransitionsAtTwentyFourHourBoundary <1ms
โœ… CatalogCacheMetadataTests testIsStale_DeepInsideTTL_RemainsFresh 4ms
โœ… CatalogCacheMetadataTests testIsStale_FreshCache_StaysFreshAcrossSubSecondJitter <1ms
โœ… CatalogCacheMetadataTests testIsStale_FutureTimestamp_TreatsAsFresh <1ms
โœ… CatalogCacheMetadataTests testIsStale_TransitionsAtSixHourBoundary <1ms
โœ… CatalogCacheMetadataTests testIsStale_WithServerMaxAge_RespectsOverride <1ms
โœ… CatalogCacheMetadataTests testStaleTTL_ClampsAboveTwelveHoursDownToCeiling <1ms
โœ… CatalogCacheMetadataTests testStaleTTL_ClampsBelowFiveMinutesUpToFloor <1ms
โœ… CatalogCacheMetadataTests testStaleTTL_HalvesServerMaxAgeInMidRange 2ms
โœ… CatalogCacheMetadataTests testStaleTTL_NilOrNegativeServerMaxAge_UsesDefault <1ms
โœ… CatalogFeedModelTests testCatalogEntryFromOPDS1Entry 6ms
โœ… CatalogFeedModelTests testCatalogFeedFromNilFeedReturnsNil 575ms
โœ… CatalogFeedModelTests testCatalogFeedFromOPDS1 35ms
โœ… CatalogFeedModelTests testSearchFormatEntryEquality 51ms
โœ… CatalogFilterGroupModelTests testEdgeCase_EmptyGroupName 2ms
โœ… CatalogFilterGroupModelTests testEdgeCase_SpecialCharactersInName <1ms
โœ… CatalogFilterGroupModelTests testEquality_DifferentFiltersMakesGroupsUnequal 2ms
โœ… CatalogFilterGroupModelTests testEquality_DifferentIdsMakesGroupsUnequal 1ms
โœ… CatalogFilterGroupModelTests testEquality_DifferentNamesMakesGroupsUnequal 2ms
โœ… CatalogFilterGroupModelTests testEquality_IdenticalGroupsAreEqual 2ms
โœ… CatalogFilterGroupModelTests testFilters_FilterByHrefPresence 2ms
โœ… CatalogFilterGroupModelTests testFilters_FindActiveFilter 7ms
โœ… CatalogFilterGroupModelTests testFilters_MultipleActiveFilters <1ms
โœ… CatalogFilterGroupModelTests testFilters_NoActiveFilter 1ms
โœ… CatalogFilterGroupModelTests testHashable_EqualGroupsHaveSameHash <1ms
โœ… CatalogFilterGroupModelTests testHashable_GroupsCanBeUsedInSet 3ms
โœ… CatalogFilterGroupModelTests testIdentifiable_UsesIdProperty <1ms
โœ… CatalogFilterGroupModelTests testInit_StoresAllProperties 1ms
โœ… CatalogFilterGroupModelTests testInit_WithEmptyFilters 1ms
โœ… CatalogFilterGroupModelTests testInit_WithManyFilters <1ms
โœ… CatalogFilterGroupModelTests testInit_WithSingleFilter <1ms
โœ… CatalogFilterModelTests testEdgeCase_ComplexURL <1ms
โœ… CatalogFilterModelTests testEdgeCase_EmptyStringId <1ms
โœ… CatalogFilterModelTests testEdgeCase_EmptyStringTitle 23ms
โœ… CatalogFilterModelTests testEdgeCase_SpecialCharactersInTitle 3ms
โœ… CatalogFilterModelTests testEdgeCase_UnicodeInTitle <1ms
โœ… CatalogFilterModelTests testEquality_DifferentActiveStateMakesFiltersUnequal 10ms
โœ… CatalogFilterModelTests testEquality_DifferentHrefMakesFiltersUnequal 1ms
โœ… CatalogFilterModelTests testEquality_DifferentIdsMakesFiltersUnequal 85ms
โœ… CatalogFilterModelTests testEquality_DifferentTitlesMakesFiltersUnequal 2ms
โœ… CatalogFilterModelTests testEquality_IdenticalFiltersAreEqual 1ms
โœ… CatalogFilterModelTests testEquality_NilAndNonNilHrefMakesFiltersUnequal 1ms
โœ… CatalogFilterModelTests testHashable_DifferentFiltersCanBeUsedInSet 124ms
โœ… CatalogFilterModelTests testHashable_EqualFiltersHaveSameHash <1ms
โœ… CatalogFilterModelTests testIdentifiable_UsesIdProperty 8ms
โœ… CatalogFilterModelTests testInit_StoresAllProperties <1ms
โœ… CatalogFilterModelTests testInit_WithInactiveState 2ms
โœ… CatalogFilterModelTests testInit_WithNilHref 109ms
โœ… CatalogFilterServiceTests testActiveFacetHrefs_excludesDefaultsWhenFlagFalse <1ms
โœ… CatalogFilterServiceTests testActiveFacetHrefs_returnsActiveURLs <1ms
โœ… CatalogFilterServiceTests testActiveFiltersCount_emptySet_returnsZero <1ms
โœ… CatalogFilterServiceTests testActiveFiltersCount_excludesDefaults <1ms
โœ… CatalogFilterServiceTests testCategorizeFacetURL_categorisesCorrectly 1ms
โœ… CatalogFilterServiceTests testFindFacetGroupName_matchesURL <1ms
โœ… CatalogFilterServiceTests testFindFacetGroupName_returnsNilForUnknownURL <1ms
โœ… CatalogFilterServiceTests testFindFilterInCurrentFacets_caseInsensitiveMatch <1ms
โœ… CatalogFilterServiceTests testFindFilterInCurrentFacets_returnsNilWhenNotFound 2ms
โœ… CatalogFilterServiceTests testGroupPriority_caseInsensitive 1ms
โœ… CatalogFilterServiceTests testGroupPriority_collectionIsHighest <1ms
โœ… CatalogFilterServiceTests testGroupPriority_distributorBeforeFormat <1ms
โœ… CatalogFilterServiceTests testGroupPriority_unknownGroupReturnsFallback <1ms
โœ… CatalogFilterServiceTests testKeysForCurrentFacets_excludesSortGroups <1ms
โœ… CatalogFilterServiceTests testKeysForCurrentFacets_mapsGroupTitleKeysToFullKeys <1ms
โœ… CatalogFilterServiceTests testMakeGroupTitleKey_omitsHref <1ms
โœ… CatalogFilterServiceTests testMakeKey_producesCanonicalFormat <1ms
โœ… CatalogFilterServiceTests testNormalizeTitle_trimsAndLowercases <1ms
โœ… CatalogFilterServiceTests testParseKey_handlesEmptyComponents <1ms
โœ… CatalogFilterServiceTests testParseKey_returnsNilForInvalidKey <1ms
โœ… CatalogFilterServiceTests testParseKey_roundTrips 4ms
โœ… CatalogFilterServiceTests testParsedKey_isDefaultTitle_detectsAllVariants <1ms
โœ… CatalogFilterServiceTests testParsedKey_isDefaultTitle_rejectsNonDefaults <1ms
โœ… CatalogFilterServiceTests testPrioritizeSelectedFilters_ordersCollectionBeforeFormat 2ms
โœ… CatalogFilterServiceTests testReconstructSelections_matchesByGroupAndTitle <1ms
โœ… CatalogFilterServiceTests testReconstructSelections_skipsInvalidKeys 18ms
โœ… CatalogFilterServiceTests testSelectionKeys_excludesDefaultsWhenFlagFalse <1ms
โœ… CatalogFilterServiceTests testSelectionKeys_excludesSortGroups <1ms
โœ… CatalogFilterServiceTests testSelectionKeys_includesDefaultsWhenFlagTrue <1ms
โœ… CatalogFilterTests testCatalogFilter_StoresValues <1ms
โœ… CatalogLaneAssemblyTests testDistinctIDs_sameTitle_areNotDeduped 150ms
โœ… CatalogLaneAssemblyTests testFlatPublications_duplicateIDs_areDeduped 2ms
โœ… CatalogLaneAssemblyTests testNoGroupsOrPublications_emptyEntries 1ms
โœ… CatalogLaneAssemblyTests testOrdering_groupOrderPreservedAcrossDedupe 1ms
โœ… CatalogLaneAssemblyTests testPublicationInEveryGroup_resultsInNEntriesNotNPlusOne 10ms
โœ… CatalogLaneAssemblyTests testPublicationInMultipleGroups_dedupedByID_firstOccurrenceWins 1ms
โœ… CatalogLaneAssemblyTests testSingleGroup_unchangedFromFlatten 1ms
โœ… CatalogLaneModelStructTests testBooks_EmptyCollection 1ms
โœ… CatalogLaneModelStructTests testBooks_LargeCollection 171ms
โœ… CatalogLaneModelStructTests testBooks_MixedContentTypes 8ms
โœ… CatalogLaneModelStructTests testBooks_MultipleBooks 10ms
โœ… CatalogLaneModelStructTests testBooks_OrderPreserved 5ms
โœ… CatalogLaneModelStructTests testBooks_SingleBook 2ms
โœ… CatalogLaneModelStructTests testEdgeCase_ComplexMoreURL 8ms
โœ… CatalogLaneModelStructTests testEdgeCase_EmptyTitle 2ms
โœ… CatalogLaneModelStructTests testEdgeCase_LongTitle <1ms
โœ… CatalogLaneModelStructTests testEdgeCase_SpecialCharactersInTitle <1ms
โœ… CatalogLaneModelStructTests testEdgeCase_UnicodeInTitle 6ms
โœ… CatalogLaneModelStructTests testIdentity_DifferentMoreURL_ProducesDifferentID 2ms
โœ… CatalogLaneModelStructTests testIdentity_DifferentTitle_ProducesDifferentID 49ms
โœ… CatalogLaneModelStructTests testIdentity_NilMoreURL_IsStableAndDistinctFromNonNil <1ms
โœ… CatalogLaneModelStructTests testIdentity_SameTitleAndURL_ProducesEqualID 2ms
โœ… CatalogLaneModelStructTests testInit_StoresAllProperties 47ms
โœ… CatalogLaneModelStructTests testInit_WithDefaultIsLoading 1ms
โœ… CatalogLaneModelStructTests testInit_WithLoadingState <1ms
โœ… CatalogLaneModelStructTests testInit_WithNilMoreURL <1ms
โœ… CatalogLaneModelStructTests testSnapshotBooks_WithDeterministicData 3ms
โœ… CatalogLaneModelTests testId_differsWhenMoreURLDiffers <1ms
โœ… CatalogLaneModelTests testId_differsWhenTitleDiffers <1ms
โœ… CatalogLaneModelTests testId_isStableAcrossReMapsOfSameLane 5ms
โœ… CatalogLaneMoreFilterStateTests testActiveSortTitle_WithMultipleActive_ReturnsFirst 3ms
โœ… CatalogLaneMoreFilterStateTests testOpeningFilterSheet_PopulatesPendingFromApplied 2ms
โœ… CatalogLaneMoreFilterStateTests testOpeningFilterSheet_WithNoApplied_ClearsPending 2ms
โœ… CatalogLaneMoreFilterStateTests testRestoreFilterState_RestoresAppliedSelections 21ms
โœ… CatalogLaneMoreFilterStateTests testRestoreFilterState_RestoresFacetGroups 2ms
โœ… CatalogLaneMoreFilterStateTests testRestoreFilterState_WithEmptyState_ClearsAll 2ms
โœ… CatalogLaneMoreFilterStateTests testSortFacets_CaseInsensitiveGroupMatch 2ms
โœ… CatalogLaneMoreFilterStateTests testURL_MatchesInitializer 2ms
โœ… CatalogLaneMoreViewModelTests testActiveFiltersCount_AfterClearingSelections 3ms
โœ… CatalogLaneMoreViewModelTests testActiveFiltersCount_FiltersOutAllDefaults 3ms
โœ… CatalogLaneMoreViewModelTests testActiveFiltersCount_WhenEmpty 10ms
โœ… CatalogLaneMoreViewModelTests testActiveFiltersCount_WithAppliedSelections 15ms
โœ… CatalogLaneMoreViewModelTests testActiveSortTitle_WhenActiveFacetExists_ReturnsTitle 2ms
โœ… CatalogLaneMoreViewModelTests testActiveSortTitle_WhenNoActiveFacet_FallsBackToFirstFilterTitle 2ms
โœ… CatalogLaneMoreViewModelTests testActiveSortTitle_WhenSortGroupEmpty_ReturnsNil 6ms
โœ… CatalogLaneMoreViewModelTests testAllBooks_CombinesMultipleLanes 9ms
โœ… CatalogLaneMoreViewModelTests testAllBooks_EmptyWhenNoData 15ms
โœ… CatalogLaneMoreViewModelTests testAllBooks_WhenLanesEmpty_ReturnsUngroupedBooks 7ms
โœ… CatalogLaneMoreViewModelTests testAllBooks_WhenLanesHaveBooks_ReturnsLaneBooks 11ms
โœ… CatalogLaneMoreViewModelTests testAppliedSelectionsUpdate 5ms
โœ… CatalogLaneMoreViewModelTests testApplyRegistryUpdates_OnlyTargetsChangedIdentifier_WhenProvided 5ms
โœ… CatalogLaneMoreViewModelTests testApplyRegistryUpdates_PreservesIdentifierSequenceAfterBorrow 8ms
โœ… CatalogLaneMoreViewModelTests testDisplayedSortFacets_WhenNoneActive_MarksFirstAsDefault 2ms
โœ… CatalogLaneMoreViewModelTests testDisplayedSortFacets_WhenOneActive_Unchanged 4ms
โœ… CatalogLaneMoreViewModelTests testDisplayedSortFacets_WhenPendingIDUnknown_FallsBackNormally 6ms
โœ… CatalogLaneMoreViewModelTests testDisplayedSortFacets_WhenPendingSet_HighlightsOnlyPendingFacet 3ms
โœ… CatalogLaneMoreViewModelTests testErrorPublishes 2ms
โœ… CatalogLaneMoreViewModelTests testError_CanBeCleared 2ms
โœ… CatalogLaneMoreViewModelTests testError_CanBeSet 5ms
โœ… CatalogLaneMoreViewModelTests testFacetGroups_MultipleGroups 2ms
โœ… CatalogLaneMoreViewModelTests testFilterStateInitialValues 2ms
โœ… CatalogLaneMoreViewModelTests testInitialState 2ms
โœ… CatalogLaneMoreViewModelTests testIsApplyingFiltersInitiallyFalse 2ms
โœ… CatalogLaneMoreViewModelTests testIsLoadingMoreInitiallyFalse 13ms
โœ… CatalogLaneMoreViewModelTests testIsLoadingPublishes 2ms
โœ… CatalogLaneMoreViewModelTests testLanesPublishes 14ms
โœ… CatalogLaneMoreViewModelTests testPagination_ClearedWhenNil 2ms
โœ… CatalogLaneMoreViewModelTests testPagination_NextPageURLCanBeSet 3ms
โœ… CatalogLaneMoreViewModelTests testPendingSelectionsUpdate 5ms
โœ… CatalogLaneMoreViewModelTests testProcessOPDS2GroupedFeed_UsesFeedURLForActiveDetection 4ms
โœ… CatalogLaneMoreViewModelTests testProcessOPDS2GroupedFeed_singleTitleLane_isNotLoading_soCoverRenders 6ms
โœ… CatalogLaneMoreViewModelTests testProcessOPDS2PublicationFeed_UsesFeedURLForActiveDetection 3ms
โœ… CatalogLaneMoreViewModelTests testShouldShowPagination_WhenNextPageURLExists 4ms
โœ… CatalogLaneMoreViewModelTests testShowSearchToggle 6ms
โœ… CatalogLaneMoreViewModelTests testShowingFiltersSheetToggle 2ms
โœ… CatalogLaneMoreViewModelTests testShowingSortSheetToggle 2ms
โœ… CatalogLaneMoreViewModelTests testSortFacets_WhenNoSortGroup_ReturnsEmpty 3ms
โœ… CatalogLaneMoreViewModelTests testSortFacets_WhenSortGroupExists_ReturnsFacets 2ms
โœ… CatalogLaneMoreViewModelTests testTitle_Empty 2ms
โœ… CatalogLaneMoreViewModelTests testTitle_WithSpecialCharacters 8ms
โœ… CatalogLaneMoreViewModelTests testUIStateInitialValues 8ms
โœ… CatalogLaneRowViewAccessibilityTests testAccessibilityLabel_audiobookFormat 2ms
โœ… CatalogLaneRowViewAccessibilityTests testAccessibilityLabel_audiobookIncludesAudiobookDesignation 3ms
โœ… CatalogLaneRowViewAccessibilityTests testAccessibilityLabel_audiobook_authorOnly 10ms
โœ… CatalogLaneRowViewAccessibilityTests testAccessibilityLabel_bookWithoutAuthor 74ms
โœ… CatalogLaneRowViewAccessibilityTests testAccessibilityLabel_doesNotIncludeSummaryOrBlurbs 2ms
โœ… CatalogLaneRowViewAccessibilityTests testAccessibilityLabel_ebookDoesNotIncludeAudiobookDesignation 3ms
โœ… CatalogLaneRowViewAccessibilityTests testAccessibilityLabel_ebook_noAuthor_titleOnly 30ms
โœ… CatalogLaneRowViewAccessibilityTests testAccessibilityLabel_ebook_titleByAuthor 2ms
โœ… CatalogLaneRowViewAccessibilityTests testAccessibilityLabel_includesTitleAndAuthor 2ms
โœ… CatalogLaneRowViewAccessibilityTests testAccessibilityLabel_usesCommaSeparatedFormat 2ms
โœ… CatalogLaneRowViewAccessibilityTests testSwimlaneTitle_sourceDeclaresHeaderAccessibilityTrait 3ms
โœ… CatalogLaneSortingTests testExtractFacets_ActiveSortFacet_IsMarkedActive 1ms
โœ… CatalogLaneSortingTests testExtractFacets_GroupedFeedWithSortFacets_ExtractsSortGroup 10ms
โœ… CatalogLaneSortingTests testLaneMoreViewModel_ActiveSortTitle_ReturnsActiveFacetTitle 12ms
โœ… CatalogLaneSortingTests testLaneMoreViewModel_GroupedFeedWithSortFacets_ExposesSortFacets 5ms
โœ… CatalogLaneSortingTests testMapFeed_opds1GroupedSingleTitleLane_isNotLoading_soCoverRenders 1ms
โœ… CatalogLoadIntegrationTests testAuthenticationRequired_ReturnsUnauthorizedError 27ms
โœ… CatalogLoadIntegrationTests testCacheInvalidation_TriggersFreshFetch <1ms
โœ… CatalogLoadIntegrationTests testFetchFeed_DelegatesToLoadTopLevelCatalog <1ms
โœ… CatalogLoadIntegrationTests testFreshLoad_FetchesFromNetwork <1ms
โœ… CatalogLoadIntegrationTests testNetworkFailure_PropagatesError 2ms
โœ… CatalogLoadIntegrationTests testOPDSFeedXML_IsGeneratedCorrectly 1ms
โœ… CatalogOPDS2NegotiationTests testFetchFeed_OPDS1AtomBodyTaggedWithOPDS2ContentType_StillFallsBackToOPDS1 20ms
โœ… CatalogOPDS2NegotiationTests testFetchFeed_OPDS2JSONBodyTaggedWithOPDS1ContentType_StillParsesAsOPDS2 124ms
โœ… CatalogOPDS2NegotiationTests testFetchFeed_OPDS2RequestedButServerReturnsMalformedJSON_ThrowsInvalidJSON 57ms
โœ… CatalogOPDS2NegotiationTests testFetchFeed_OPDS2RequestedButServerReturnsOPDS1Atom_FallsBackToOPDS1 11ms
โœ… CatalogOPDS2NegotiationTests testFetchFeed_ServerReturnsOPDS2JSON_ParsesAsOPDS2Feed 27ms
โœ… CatalogOPDS2NegotiationTests testOPDSFormatDetect_ByFirstByte_JSON_RoutesToOPDS2 77ms
โœ… CatalogOPDS2NegotiationTests testOPDSFormatDetect_ByFirstByte_XML_RoutesToOPDS1 5ms
โœ… CatalogOPDS2NegotiationTests testOPDSFormatDetect_NonJSONNonXMLFirstByte_RoutesToUnknown 90ms
โœ… CatalogOPDS2NegotiationTests testRepositoryCache_AfterOPDS1FallbackNegotiation_PreservesIsOPDS2False 23ms
โœ… CatalogOPDS2NegotiationTests testRepositoryCache_AfterOPDS2Negotiation_PreservesIsOPDS2Flag 21ms
โœ… CatalogOPDS2NegotiationTests testRequestAcceptHeader_WhenOPDS2Disabled_DoesNotAdvertiseOPDS2 11ms
โœ… CatalogOPDS2NegotiationTests testRequestAcceptHeader_WhenOPDS2Enabled_PrefersJSONOverAtom 9ms
โœ… CatalogPreloaderTests testPreloader_ContinuesOnFailure 8ms
โœ… CatalogPreloaderTests testPreloader_NilCurrentAccount_StillPreloadsRecent 4ms
โœ… CatalogPreloaderTests testPreloader_PreloadsCurrentAccountCatalog 7ms
โœ… CatalogPreloaderTests testPreloader_PreloadsRecentlyUsedAccounts_UpToLimit 3ms
โœ… CatalogPreloaderTests testPreloader_SkipsAccountsWithNoCatalogURL 3ms
โœ… CatalogPreloaderTests testPreloader_SkipsDuplicateCurrentAccount 6ms
โœ… CatalogProblemDocumentTests testFetchFeed_503ProblemDocument_surfacesStructuredErrorThroughAPI 9ms
โœ… CatalogProblemDocumentTests testParser_plainJSONContentType_doesNotTriggerProblemDocumentPath 89ms
โœ… CatalogProblemDocumentTests testParser_problemJSONContentTypeWithCharset_stillDetected 2ms
โœ… CatalogProblemDocumentTests testParser_problemJSONContentType_errorDescriptionIncludesTitleAndDetail 2ms
โœ… CatalogProblemDocumentTests testParser_problemJSONContentType_throwsProblemDocumentErrorNotInvalidJSON 2ms
โœ… CatalogProblemDocumentTests testParser_undecodableProblemBody_stillSurfacesAsProblemDocument 2ms
โœ… CatalogRepositoryCoreTests testDifferentURLsAreCachedSeparately 254ms
โœ… CatalogRepositoryCoreTests testInvalidateCacheForcesFreshFetch 135ms
โœ… CatalogRepositoryCoreTests testLoadTopLevelCatalogCachesFeed 48ms
โœ… CatalogRepositoryCoreTests testLoadTopLevelCatalogCallsAPI 12ms
โœ… CatalogRepositoryCoreTests testLoadTopLevelCatalogFallsToCacheOnNetworkError 14ms
โœ… CatalogRepositoryCoreTests testLoadTopLevelCatalogPropagatesError 10ms
โœ… CatalogRepositoryCoreTests testLoadTopLevelCatalogReturnsFeedTitle 9ms
โœ… CatalogRepositoryCoreTests testSearchDelegatesToAPI 15ms
โœ… CatalogRepositoryCoreTests testSearchPropagatesError 9ms
โœ… CatalogRepositoryStaleWhileRevalidateTests testCachedFeed_AtExactly24h_ReturnsFeed_PastBoundary_ReturnsNil 6ms
โœ… CatalogRepositoryStaleWhileRevalidateTests testCachedFeed_PerURLIsolation_DoesNotLeakBetweenURLs 16ms
โœ… CatalogRepositoryStaleWhileRevalidateTests testInvalidateCache_ExplicitInvalidate_ForcesNextReadToNetwork 10ms
โœ… CatalogRepositoryStaleWhileRevalidateTests testInvalidateCache_OnlyClearsRequestedURL_DoesNotClearOthers 9ms
โœ… CatalogRepositoryStaleWhileRevalidateTests testLoadTopLevelCatalog_AtExactly24HourBoundary_StillStaleButUsableNotTooOld 9ms
โœ… CatalogRepositoryStaleWhileRevalidateTests testLoadTopLevelCatalog_AtExactlyTenMinuteBoundary_StillCountsAsFresh 4ms
โœ… CatalogRepositoryStaleWhileRevalidateTests testLoadTopLevelCatalog_ConcurrentStaleReads_BothSeeCachedAndCacheGetsRefreshed 47ms
โœ… CatalogRepositoryStaleWhileRevalidateTests testLoadTopLevelCatalog_FreshCacheWithinTenMinutes_ReturnsCacheAndSkipsNetwork 29ms
โœ… CatalogRepositoryStaleWhileRevalidateTests testLoadTopLevelCatalog_JustPastTenMinutes_ReturnsStaleAndSchedulesBackgroundRefresh 8ms
โœ… CatalogRepositoryStaleWhileRevalidateTests testLoadTopLevelCatalog_NetworkFailureWithNoCache_Throws 9ms
โœ… CatalogRepositoryStaleWhileRevalidateTests testLoadTopLevelCatalog_NetworkFailureWithTooOldCache_ReturnsCachedFallback 203ms
โœ… CatalogRepositoryStaleWhileRevalidateTests testLoadTopLevelCatalog_PastTwentyFourHours_FetchesFromNetworkAndReplacesCache 7ms
โœ… CatalogRepositoryTests testFetchFeed_DoesNotCache_AlwaysFetchesFresh 16ms
โœ… CatalogRepositoryTests testFetchFeed_NetworkError_ThrowsError 12ms
โœ… CatalogRepositoryTests testFetchFeed_Success_ReturnsFeed 11ms
โœ… CatalogRepositoryTests testIntegration_ErrorPropagation 14ms
โœ… CatalogRepositoryTests testIntegration_FullFetchFlow 15ms
โœ… CatalogRepositoryTests testInvalidateCache_ClearsSpecificURL 19ms
โœ… CatalogRepositoryTests testLoadTopLevelCatalog_401Unauthorized_ThrowsError 14ms
โœ… CatalogRepositoryTests testLoadTopLevelCatalog_500ServerError_ThrowsError 97ms
โœ… CatalogRepositoryTests testLoadTopLevelCatalog_CachesFeed_ReturnsFromCache 119ms
โœ… CatalogRepositoryTests testLoadTopLevelCatalog_EmptyFeed_ReturnsEmptyEntries 13ms
โœ… CatalogRepositoryTests testLoadTopLevelCatalog_InvalidXML_ThrowsParsingError 9ms
โœ… CatalogRepositoryTests testLoadTopLevelCatalog_MultipleURLs_CachesIndependently 4.26s
โœ… CatalogRepositoryTests testLoadTopLevelCatalog_NetworkError_FallsBackToStaleCache 22ms
โœ… CatalogRepositoryTests testLoadTopLevelCatalog_NetworkError_ThrowsError 19ms
โœ… CatalogRepositoryTests testLoadTopLevelCatalog_PreservesQueryParameters 47ms
โœ… CatalogRepositoryTests testLoadTopLevelCatalog_ProblemDocument_ParsesErrorDetails 957ms
โœ… CatalogRepositoryTests testLoadTopLevelCatalog_SpecialCharactersInTitle_ParsesCorrectly 25ms
โœ… CatalogRepositoryTests testLoadTopLevelCatalog_Success_ReturnsFeed 37ms
โœ… CatalogRepositoryTests testLoadTopLevelCatalog_UsesGETMethod 47ms
โœ… CatalogSearchViewModelRegistryUpdateTests testApplyRegistryUpdates_EmptyFilteredBooks_DoesNotCrash 20ms
โœ… CatalogSearchViewModelRegistryUpdateTests testApplyRegistryUpdates_MultipleRapidCalls_DoesNotCrash 71ms
โœ… CatalogSearchViewModelRegistryUpdateTests testApplyRegistryUpdates_NilChangedIdentifier_UpdatesAllBooks 7ms
โœ… CatalogSearchViewModelRegistryUpdateTests testApplyRegistryUpdates_UnknownIdentifier_NoChanges 4ms
โœ… CatalogSearchViewModelRegistryUpdateTests testApplyRegistryUpdates_WithBooks_UpdatesMatchingBook 5ms
โœ… CatalogSearchViewModelTests testApplyRegistryUpdates_DoesNotChangeSearchId 2ms
โœ… CatalogSearchViewModelTests testApplyRegistryUpdates_WithEmptyFilteredBooks_DoesNothing <1ms
โœ… CatalogSearchViewModelTests testClearSearch_CancelsPendingOperations 317ms
โœ… CatalogSearchViewModelTests testClearSearch_ChangesSearchId <1ms
โœ… CatalogSearchViewModelTests testClearSearch_ResetsSelectedFormat_DoesNotChangeFormatEntries 3ms
โœ… CatalogSearchViewModelTests testClearSearch_ResetsState 2ms
โœ… CatalogSearchViewModelTests testClearSearch_RestoresAllBooks 6ms
โœ… CatalogSearchViewModelTests testConcurrentUpdates_DoNotCrash 10ms
โœ… CatalogSearchViewModelTests testHasCompletedSearch_BecomesTrue_AfterSearchReturnsEmpty 156ms
โœ… CatalogSearchViewModelTests testHasCompletedSearch_FlipsTrue_OnSearchError 159ms
โœ… CatalogSearchViewModelTests testHasCompletedSearch_ResetByClearSearch 168ms
โœ… CatalogSearchViewModelTests testHasCompletedSearch_StartsFalse 2ms
โœ… CatalogSearchViewModelTests testInit_HasCorrectDefaults 2ms
โœ… CatalogSearchViewModelTests testLoadFormatEntryPoints_SelectsActiveEntry 9ms
โœ… CatalogSearchViewModelTests testLoadFormatEntryPoints_WhenFeedHasNoEntryPoints_LeavesFormatEntriesEmpty 3ms
โœ… CatalogSearchViewModelTests testLoadFormatEntryPoints_WhenFetchFails_LeavesFormatEntriesEmpty 163ms
โœ… CatalogSearchViewModelTests testLoadFormatEntryPoints_WhenSuccessful_PopulatesFormatEntries 4ms
โœ… CatalogSearchViewModelTests testLoadFormatEntryPoints_WithNilBaseURL_DoesNotCallRepository 160ms
โœ… CatalogSearchViewModelTests testLoadNextPage_DoesNotChangeSearchId 3ms
โœ… CatalogSearchViewModelTests testLoadNextPage_SetsIsLoadingMore 3ms
โœ… CatalogSearchViewModelTests testLoadNextPage_WhenAlreadyLoading_DoesNothing 2ms
โœ… CatalogSearchViewModelTests testLoadNextPage_WithNoNextURL_DoesNothing 7ms
โœ… CatalogSearchViewModelTests testPP3605_ApplyRegistryUpdates_DoesNotChangeSearchId 3ms
โœ… CatalogSearchViewModelTests testPP3605_ClearSearch_ChangesSearchId 2ms
โœ… CatalogSearchViewModelTests testPP3605_DifferentSearches_EachHaveUniqueSearchId 112ms
โœ… CatalogSearchViewModelTests testPP3605_LoadNextPage_DoesNotChangeSearchId 61ms
โœ… CatalogSearchViewModelTests testPP3605_NewSearch_ChangesSearchId 57ms
โœ… CatalogSearchViewModelTests testPP3673_clearSearch_doesNotAnnounce 217ms
โœ… CatalogSearchViewModelTests testPP3673_search_emptyQuery_doesNotAnnounce 154ms
โœ… CatalogSearchViewModelTests testPP3673_search_error_announcesFailure 57ms
โœ… CatalogSearchViewModelTests testPP3673_search_noResults_announcesNoResults 59ms
โœ… CatalogSearchViewModelTests testPP3673_search_rerun_announcesUpdatedResults 113ms
โœ… CatalogSearchViewModelTests testSearch_CancelsDebounce_OnNewQuery 1.34s
โœ… CatalogSearchViewModelTests testSearch_CancelsInFlight_OnNewQuery 219ms
โœ… CatalogSearchViewModelTests testSearch_Debounces_DoesNotSearchDuringDebounceWindow 1.02s
โœ… CatalogSearchViewModelTests testSearch_Debounces_MultipleQueries 106ms
โœ… CatalogSearchViewModelTests testSearch_DifferentQueries_HaveDifferentSearchIds 109ms
โœ… CatalogSearchViewModelTests testSearch_NewSearch_ChangesSearchId 56ms
โœ… CatalogSearchViewModelTests testSearch_SpecialCharacters_DoesNotCrash 57ms
โœ… CatalogSearchViewModelTests testSearch_UnicodeCharacters_Works 56ms
โœ… CatalogSearchViewModelTests testSearch_VeryLongQuery_Works 59ms
โœ… CatalogSearchViewModelTests testSearch_WithEmptyQuery_DoesNotCallRepository 165ms
โœ… CatalogSearchViewModelTests testSearch_WithEmptyQuery_ShowsAllBooks 157ms
โœ… CatalogSearchViewModelTests testSearch_WithError_ClearsNextPageURL 55ms
โœ… CatalogSearchViewModelTests testSearch_WithError_SetsErrorMessage 60ms
โœ… CatalogSearchViewModelTests testSearch_WithNilBaseURL_ClearsNextPageURL 154ms
โœ… CatalogSearchViewModelTests testSearch_WithNilBaseURL_DoesNotSearch 154ms
โœ… CatalogSearchViewModelTests testSearch_WithNilResult_SetsEmptyResults 57ms
โœ… CatalogSearchViewModelTests testSearch_WithNoFormatEntries_UsesDefaultBaseURL 58ms
โœ… CatalogSearchViewModelTests testSearch_WithResults_UpdatesResults 57ms
โœ… CatalogSearchViewModelTests testSearch_WithValidQuery_CallsRepository 57ms
โœ… CatalogSearchViewModelTests testSearch_WithValidQuery_ClearsIsLoadingAfterCompletion 56ms
โœ… CatalogSearchViewModelTests testSearch_WithValidQuery_SetsIsSearching 56ms
โœ… CatalogSearchViewModelTests testSearch_WithWhitespaceOnlyQuery_DoesNotCallRepository 153ms
โœ… CatalogSearchViewModelTests testSelectFormat_ChangesSelectedIndex 5ms
โœ… CatalogSearchViewModelTests testSelectFormat_SameIndex_DoesNotChangeIndex 164ms
โœ… CatalogSearchViewModelTests testSelectFormat_WithActiveQuery_TriggersNewSearch 56ms
โœ… CatalogSearchViewModelTests testSelectFormat_WithCachedDescriptorURL_UsesDescriptorSearch 59ms
โœ… CatalogSearchViewModelTests testSelectFormat_WithEmptyQuery_DoesNotSearch 163ms
โœ… CatalogSearchViewModelTests testShouldShowNoResultsState_False_WhenQueryEmpty <1ms
โœ… CatalogSearchViewModelTests testShouldShowNoResultsState_False_WhenResultsPresent 9ms
โœ… CatalogSearchViewModelTests testShouldShowNoResultsState_False_WhileLoading 55ms
โœ… CatalogSearchViewModelTests testShouldShowNoResultsState_True_WhenSearchCompletedWithZeroResults 164ms
โœ… CatalogSearchViewModelTests testUpdateBooks_DoesNotChangeFilteredBooks_WhenQueryNotEmpty 3ms
โœ… CatalogSearchViewModelTests testUpdateBooks_EmptyArray_Works 3ms
โœ… CatalogSearchViewModelTests testUpdateBooks_LargeArray_Works 107ms
โœ… CatalogSearchViewModelTests testUpdateBooks_SetsFilteredBooks_WhenQueryEmpty 2ms
โœ… CatalogSelectorsTests testWithSelectedEntryPoint_UpdatesActiveState <1ms
โœ… CatalogSelectorsTests testWithSelectedFacet_UpdatesActiveState <1ms
โœ… CatalogSortServiceTests testAllCases 3ms
โœ… CatalogSortServiceTests testSortByAuthorAZ 8ms
โœ… CatalogSortServiceTests testSortByAuthorZA 96ms
โœ… CatalogSortServiceTests testSortByRecentlyAddedAZ 7ms
โœ… CatalogSortServiceTests testSortByRecentlyAddedZA 96ms
โœ… CatalogSortServiceTests testSortByTitleAZ 33ms
โœ… CatalogSortServiceTests testSortByTitleZA 13ms
โœ… CatalogSortServiceTests testSortEmptyArray <1ms
โœ… CatalogSortServiceTests testSortOptionFromLocalizedString_invalidString_returnsNil 1ms
โœ… CatalogSortServiceTests testSortOptionFromLocalizedString_validStrings 1ms
โœ… CatalogSortServiceTests testSortOptionLocalizedStrings 2ms
โœ… CatalogSortServiceTests testSortSingleBook 3ms
โœ… CatalogSortServiceTests testSortWithNilAuthors 11ms
โœ… CatalogSortServiceTests testSortedReturnsNewArray 14ms
โœ… CatalogStateTests testState_AllBooks_Grouped 3ms
โœ… CatalogStateTests testState_AllBooks_Ungrouped 8ms
โœ… CatalogStateTests testState_ApplyingFacet_IsTrue <1ms
โœ… CatalogStateTests testState_Error_HasNoContent <1ms
โœ… CatalogStateTests testState_Loaded_ExposesContent 2ms
โœ… CatalogStateTests testState_Loading_HasNoContent 3ms
โœ… CatalogStateTests testState_SwitchingEntryPoint_HasNoContent 5ms
โœ… CatalogViewContinueRowsIntegrationTests testCatalogContentView_passesActiveSessionsToContinueRowSection 51ms
โœ… CatalogViewContinueRowsIntegrationTests testCatalogView_resumeListening_sourceWiresBothBranches 4ms
โœ… CatalogViewContinueRowsIntegrationTests testCatalogView_resumeReading_sourceWiresReaderServiceCalls 10ms
โœ… CatalogViewModelStateMachineTests testApplyEntryPoint_RequiresLoadedState 2ms
โœ… CatalogViewModelStateMachineTests testApplyEntryPoint_WithNilHref_NoOp 72ms
โœ… CatalogViewModelStateMachineTests testApplyFacet_RequiresLoadedState 92ms
โœ… CatalogViewModelStateMachineTests testApplyFacet_WithNilHref_NoOp 22ms
โœ… CatalogViewModelStateMachineTests testCancelPrefetch_cancelsAndClearsTrackedTasks 5ms
โœ… CatalogViewModelStateMachineTests testForceRefresh_TransitionsToLoading 438ms
โœ… CatalogViewModelStateMachineTests testHandleAccountChange_servesCache_doesNotInvalidate 33ms
โœ… CatalogViewModelStateMachineTests testLoad_NilResultWhenOffline_TransitionsToOffline 4ms
โœ… CatalogViewModelStateMachineTests testLoad_OnlineFailure_StaysError_NotOffline 29ms
โœ… CatalogViewModelStateMachineTests testLoad_WhenOffline_TransitionsToOffline 76ms
โœ… CatalogViewModelStateMachineTests testLoad_WithError_TransitionsToError 167ms
โœ… CatalogViewModelStateMachineTests testLoad_WithNilResult_TransitionsToError 143ms
โœ… CatalogViewModelStateMachineTests testLoad_WithNilURL_DoesNotCallRepository 3ms
โœ… CatalogViewModelStateMachineTests testReconnect_WhileOffline_AutoReloadsCatalog 787ms
โœ… CatalogViewModelStateMachineTests testRefresh_pullToRefresh_invalidatesOnce 15ms
โœ… CatalogViewModelStateMachineTests testReload_cancelsPriorPrefetchTasks 635ms
โœ… CatalogViewModelStateMachineTests testSearchRepository_ReturnsMock 33ms
โœ… CatalogViewModelStateMachineTests testSwitchBackAndForth_ABA_servesCacheNotThreeFetches 49ms
โœ… CatalogViewModelStateMachineTests testViewModel_InitialState_IsLoading 1ms
โœ… ChaosFaultInjectionTests test_scenario1_midDownloadNetworkKill_failsRecoverably 4ms
โœ… ChaosFaultInjectionTests test_scenario2_diskFullDuringExtraction_throwsAndLeavesNoFullFile 5ms
โœ… ChaosFaultInjectionTests test_scenario3_lowMemoryDuringDRMFetch_remainsRecoverable 19ms
โœ… ChaosFaultInjectionTests test_scenario4_processKillDuringRegistryWrite_atomicityHolds 6ms
โœ… ChaosFaultInjectionTests test_scenario5_tokenExpiryMidAnnotationSync_invokesReauthAndRetries 3ms
โœ… ChapterChangeDetectorTests testDidChange_differentKeySameTitle_fires 1ms
โœ… ChapterChangeDetectorTests testDidChange_differentKey_fires 2ms
โœ… ChapterChangeDetectorTests testDidChange_noPriorChapter_fires <1ms
โœ… ChapterChangeDetectorTests testDidChange_sameKeyDifferentTitle_doesNotFire <1ms
โœ… ChapterChangeDetectorTests testDidChange_sameKeySameTitle_doesNotFire <1ms
โœ… ChapterTOCNormalizerTests testInflationThreshold_isExactly1Point5 2ms
โœ… ChapterTOCNormalizerTests testIsOversubdivided_atExactThreshold_returnsFalse <1ms
โœ… ChapterTOCNormalizerTests testIsOversubdivided_belowThreshold_returnsFalse <1ms
โœ… ChapterTOCNormalizerTests testIsOversubdivided_oneAboveThreshold_returnsTrue <1ms
โœ… ChapterTOCNormalizerTests testIsOversubdivided_realWorldCase_returnsTrue 76ms
โœ… ChapterTOCNormalizerTests testIsOversubdivided_slightInflation_returnsFalse 49ms
โœ… ChapterTOCNormalizerTests testIsOversubdivided_zeroExpectedChapterCount_returnsFalse <1ms
โœ… CirculationAnalyticsTests testEventPathComponents 55ms
โœ… CirculationAnalyticsTests testNetworkQueueStatusCodesExist 1ms
โœ… CirculationAnalyticsTests testPostEventConstructsCorrectURL <1ms
โœ… CirculationAnalyticsTests testPostEventWithNilAnalyticsURL 2ms
โœ… ColdStartResumeIntegrationTests testColdStart_CorruptedRegistryFile_BootsToEmptyState 123ms
โœ… ColdStartResumeIntegrationTests testColdStart_EmptyRecordsArray_RendersEmptyMyBooks 124ms
โœ… ColdStartResumeIntegrationTests testColdStart_FreshTokenNotMarkedNearExpiry 65ms
โœ… ColdStartResumeIntegrationTests testColdStart_HalfBorrowedBook_RecordPreservedForServerReconciliation 134ms
โœ… ColdStartResumeIntegrationTests testColdStart_InflightDownloadWithExistingFile_PromotedToSuccessful 131ms
โœ… ColdStartResumeIntegrationTests testColdStart_InflightDownloadWithMissingFile_MarkedFailed 129ms
โœ… ColdStartResumeIntegrationTests testColdStart_NoRegistryFile_BootsToEmptyState 131ms
โœ… ColdStartResumeIntegrationTests testColdStart_RegistryFileMissingRecordsKey_BootsToEmptyState 123ms
โœ… ColdStartResumeIntegrationTests testColdStart_StaleTokenDetectedAsNearExpiry 14ms
โœ… ColdStartResumeIntegrationTests testColdStart_TokenPastExpiry_ReportsExpired 14ms
โœ… ColorExtensionTests testIsDark_Black_ReturnsTrue 6ms
โœ… ColorExtensionTests testIsDark_DarkGray_ReturnsTrue 2ms
โœ… ColorExtensionTests testIsDark_LightGray_ReturnsFalse 2ms
โœ… ColorExtensionTests testIsDark_PureRed_ReturnsFalse <1ms
โœ… ColorExtensionTests testIsDark_White_ReturnsFalse <1ms
โœ… ConcurrentBookStateTests testConcurrent_differentContentTypes_supportedSimultaneously 4ms
โœ… ConcurrentBookStateTests testConcurrent_drmTypes_supportedSimultaneously 4ms
โœ… ConcurrentBookStateTests testConcurrent_multipleDownloads_independentStates 4ms
โœ… ConcurrentDownloadStateTests testMultipleBooks_canBeRegisteredSimultaneously 7ms
โœ… ConcurrentDownloadStateTests testMultipleBooks_canHaveDifferentStates 4ms
โœ… ConcurrentDownloadStateTests testMultipleBooks_stateChangesAreIndependent 6ms
โœ… ConcurrentTokenRefreshTests testRefreshTokenAndResume_noCredentials_failsImmediately 4ms
โœ… ConcurrentTokenRefreshTests testTokenRequest_canExecuteViaStub 20ms
โœ… ContinueRowSectionTests testContinueRowSection_hidesBothRows_whenViewModelIsEmpty 12ms
โœ… ContinueRowSectionTests testContinueRowSection_listeningRowPrecedesReadingRow 10ms
โœ… ContinueRowSectionTests testContinueRowSection_showsListeningRow_whenPresent 35ms
โœ… ContinueRowSectionTests testContinueRowSection_showsReadingRow_whenPresent 6ms
โœ… ContinueRowSectionTests testContinueRowSection_tappingListeningRow_invokesOnResumeListening 3ms
โœ… ContinueRowSectionTests testContinueRowSection_tappingReadingRow_invokesOnResumeReading 2ms
โœ… ContinuousPlaybackTrackingTests testBiblioBoardScenario_61MinutesWithTrackChanges 706ms
โœ… ContinuousPlaybackTrackingTests testRapidTrackChanges_noTimeLoss 635ms
โœ… ContinuousPlaybackTrackingTests testTrackTransition_savesTimeBeforeNextTrackStarts 119ms
โœ… CookiePersistenceTests test_CookieAccessor_IsConsultedByRequestPath 31ms
โœ… CookiePersistenceTests test_CookiesReinstalled_OnEveryRequest_AfterSharedStorageWipe 139ms
โœ… CookiePersistenceTests test_CookiesSurvive_ExecutorRecreation_AndAreInstalledIntoSharedStorage 71ms
โœ… CookiePersistenceTests test_EmptyCookiesArray_OnSamlAccount_IsNoOp 397ms
โœ… CookiePersistenceTests test_InstalledCookie_IsVisibleAtTheSamlURL 478ms
โœ… CookiePersistenceTests test_MultipleCookies_AllInstalled_AfterColdStart 164ms
โœ… CookiePersistenceTests test_NonSamlAuth_DoesNotInstall_CookiesIntoSharedStorage 731ms
โœ… CookiePersistenceTests test_RemoveAll_ClearsCookies_NoReinstallOnNextRequest 432ms
โœ… CookiePersistenceTests test_UpdatedCookieValue_IsVisibleOnNextRequest 212ms
โœ… CookiePersistenceTests test_setCookies_StoresOnAccountAndIsReadable 42ms
โœ… CrawlStateTests testCrawlState_DecodesLegacyPayload_WithoutAppVersion 2ms
โœ… CrawlStateTests testCrawlState_DecodesWithMissingOptionals 2ms
โœ… CrawlStateTests testCrawlState_EncodesAndDecodes 9ms
โœ… CrawlStateTests testCrawlState_LoadFromMissingFile_Fails 5ms
โœ… CrawlStateTests testCrawlState_PersistsToDisk 3ms
โœ… CrawlStateTests testNeedsFullCrawl_WhenAllPresent_AndFreshAndSameVersion_ReturnsFalse 3ms
โœ… CrawlStateTests testNeedsFullCrawl_WhenAppVersionChanged_ReturnsTrue 82ms
โœ… CrawlStateTests testNeedsFullCrawl_WhenAppVersionMatches_AndAllFresh_ReturnsFalse 736ms
โœ… CrawlStateTests testNeedsFullCrawl_WhenAppVersionRecordedNil_AndCurrentSet_ReturnsTrue 3ms
โœ… CrawlStateTests testNeedsFullCrawl_WhenBothNil_ReturnsTrue 40ms
โœ… CrawlStateTests testNeedsFullCrawl_WhenIncrementalSucceededButFullCrawlNeverHappened_ReturnsTrue 4ms
โœ… CrawlStateTests testNeedsFullCrawl_WhenLastFullCrawlExactly7Days_ReturnsTrue <1ms
โœ… CrawlStateTests testNeedsFullCrawl_WhenLastFullCrawlOlderThan7Days_ReturnsTrue 914ms
โœ… CrawlStateTests testNeedsFullCrawl_WhenLastFullCrawlWithin7Days_ReturnsFalse <1ms
โœ… CrawlStateTests testNeedsFullCrawl_WhenNoFacetURL_ReturnsTrue 2ms
โœ… CrawlStateTests testNeedsFullCrawl_WhenNoLastCrawlDate_ReturnsTrue 589ms
โœ… CrawlableFeedAnalysisTests testIsFullCrawlComplete_WhenHasNextLink_ReturnsFalse <1ms
โœ… CrawlableFeedAnalysisTests testIsFullCrawlComplete_WhenNoNextLink_ReturnsTrue 40ms
โœ… CrawlableFeedAnalysisTests testIsFullCrawlComplete_returnsTrueForNilOrEmptyLinks 2ms
โœ… CrawlableFeedAnalysisTests testIsOrderModifiedActive_WhenFacetHasRelSelf_ReturnsTrue 4ms
โœ… CrawlableFeedAnalysisTests testIsOrderModifiedActive_WhenOtherFacetActive_ReturnsFalse 55ms
โœ… CrawlableFeedAnalysisTests testIsOrderModifiedActive_returnsFalseForNilOrEmptyFacets 4ms
โœ… CrawlableFeedAnalysisTests testOrderModifiedFacetURL_WhenNoSortFacetGroup_ReturnsNil 3ms
โœ… CrawlableFeedAnalysisTests testOrderModifiedFacetURL_WhenNotActive_StillReturnsURL 3ms
โœ… CrawlableFeedAnalysisTests testOrderModifiedFacetURL_WhenPresent_ReturnsURL 364ms
โœ… CrawlableFeedAnalysisTests testOrderModifiedFacetURL_WhenSortGroupHasNoModifiedLink_ReturnsNil 2ms
โœ… CrawlableFeedAnalysisTests testOrderModifiedFacetURL_returnsNilForNilOrEmptyFacets <1ms
โœ… CrawlableFeedAnalysisTests testPublicationsNewerThan_FiltersCorrectly 1ms
โœ… CrawlableFeedAnalysisTests testShouldStopIncremental_WhenAllPublicationsNewer_ReturnsFalse <1ms
โœ… CrawlableFeedAnalysisTests testShouldStopIncremental_WhenEmptyPublications_ReturnsFalse <1ms
โœ… CrawlableFeedAnalysisTests testShouldStopIncremental_WhenPublicationExactlyAtLastCrawl_ReturnsTrue 112ms
โœ… CrawlableFeedAnalysisTests testShouldStopIncremental_WhenPublicationHasNoUpdatedDate_ReturnsFalse <1ms
โœ… CrawlableFeedAnalysisTests testShouldStopIncremental_WhenPublicationOlderThanLastCrawl_ReturnsTrue 6ms
โœ… CrawlerFallbackTests testCrawlFirstPage_NetworkDown_ReturnsFailure 730ms
โœ… CrawlerFallbackTests testCrawlFirstPage_PreservesPaginationLinks_InParsedPage 13ms
โœ… CrawlerFallbackTests testCrawlFirstPage_Success_ReturnsPartialData 36ms
โœ… CrawlerFallbackTests testCrawlRemainingPages_OneParallelPageFails_ReturnsFailure 24ms
โœ… CrawlerFallbackTests testCrawlRemainingPages_WhenSecondPageFails_ReturnsFailure 203ms
โœ… CrawlerFallbackTests testCrawl_EmptyFeed_ReturnsSuccessWithNoLibraries 4.60s
โœ… CrawlerFallbackTests testCrawl_WhenCrawlStateCorrupted_TreatsAsFirstLaunch 9ms
โœ… CrawlerFallbackTests testCrawl_WhenCrawlableReturnsError_ReturnsFailure 532ms
โœ… CrawlerFallbackTests testCrawl_WhenCrawlableReturnsMalformedJSON_ReturnsFailure 1.43s
โœ… CrawlerFallbackTests testCrawl_WhenCrawlableSucceeds_ReturnsCrawledData 176ms
โœ… CrawlerFallbackTests testCrawl_WhenResponseMissingCatalogs_ReturnsFailure 914ms
โœ… CrawlerFallbackTests testIncrementalCrawlFails_NextAttemptDoesFullCrawl 45ms
โœ… CredentialEdgeCaseTests testBarcodeAndPin_EmptyStrings_ProduceMalformedBasicAuthHeader 1ms
โœ… CredentialEdgeCaseTests testCredentials_BarcodeAndPin_RoundTripsThroughCodable 3ms
โœ… CredentialEdgeCaseTests testCredentials_TokenWithNilBarcodeAndPin_SurvivesCodableRoundTrip 2ms
โœ… CredentialEdgeCaseTests testTokenCredential_EmptyBarcode_IsDistinctFromNil <1ms
โœ… CredentialEdgeCaseTests testTokenCredential_EmptyPin_IsDistinctFromNil <1ms
โœ… CredentialEdgeCaseTests testTokenCredential_NilBarcode_ReturnsNilUsername <1ms
โœ… CredentialPrivacyTests testErrorLogger_metadataKeysNeverIncludeCredentialFields <1ms
โœ… CredentialPrivacyTests testException_messageDoesNotEmbedCredentials 4ms
โœ… CredentialPrivacyTests testLCPPassphraseError_doesNotEmbedPassphrase <1ms
โœ… CredentialPrivacyTests testSignInFailureLog_doesNotContainBarcodeOrPIN <1ms
โœ… CredentialPromptCoordinatorTests testRequestCredentials_adobeExpired_presentsAdobeAlertInsteadOfSignIn 43ms
โœ… CredentialPromptCoordinatorTests testRequestCredentials_alreadyInFlight_skipsDuplicateModal 5ms
โœ… CredentialPromptCoordinatorTests testRequestCredentials_signInCancelled_registersCompletionAndDoesNotRetry 4ms
โœ… CredentialPromptCoordinatorTests testRequestCredentials_signInSuccess_retriesDownloadViaDelegate 5ms
โŠ˜ CredentialSnapshotInvalidationTests testAccountSwitch_invalidatesNewlyCurrentAccountCredentialCache 41ms
โŠ˜ CredentialSnapshotInvalidationTests testCredentialSnapshot_peerRemoveAll_isHiddenUntilInvalidationEvent 7ms
โŠ˜ CredentialSnapshotInvalidationTests testCredentialSnapshot_withinNoInvalidationEvent_hitsCacheAndDoesNotRereadKeychain 24ms
โŠ˜ CredentialSnapshotInvalidationTests testCurrentUserAccountSnapshot_reflectsSignInThenSignOut_soReauthDecisionInputIsNeverStale 6ms
โŠ˜ CredentialSnapshotInvalidationTests testSignOut_ThroughAccountDetailViewModel_GoesSignedInToSignedOut_neverStaleSignedIn 6ms
โœ… CrossDeviceBookmarkSyncTests testBookmarkSpec_DifferentDevices_ProduceDifferentPayloads <1ms
โœ… CrossDeviceBookmarkSyncTests testBookmarkSpec_IncludesDeviceID <1ms
โœ… CrossDeviceBookmarkSyncTests testBookmarkWithNilDevice_TreatedAsSameDevice 233ms
โœ… CrossDeviceBookmarkSyncTests testBookmark_HasCorrectMotivation 2ms
โœ… CrossDeviceBookmarkSyncTests testDifferentDevice_DifferentPosition_ShouldSync 4ms
โœ… CrossDeviceBookmarkSyncTests testDifferentDevice_IdenticalPosition_ShouldNotSync 3ms
โœ… CrossDeviceBookmarkSyncTests testNoLocalPosition_DifferentDevice_ShouldSync 1ms
โœ… CrossDeviceBookmarkSyncTests testNoLocalPosition_SameDevice_ShouldNotSync 3ms
โœ… CrossDeviceBookmarkSyncTests testNoServerPosition_ShouldNotSync 14ms
โœ… CrossDeviceBookmarkSyncTests testParseServerBookmarks_MultipleDevices 2ms
โœ… CrossDeviceBookmarkSyncTests testReadingProgress_HasCorrectMotivation 30ms
โœ… CrossDeviceBookmarkSyncTests testSameDevice_DifferentPosition_ShouldNotSync 2ms
โœ… CrossDeviceSyncE2ETests test_annotationConflict_serverWins 44ms
โœ… CrossDeviceSyncE2ETests test_audiobookPositionOnDeviceA_readableOnDeviceB 37ms
โœ… CrossDeviceSyncE2ETests test_bookmarkAddedOnDeviceA_visibleOnDeviceB 41ms
โœ… CrossDeviceSyncE2ETests test_bookmarkDeletedOnDeviceA_goneOnDeviceB 54ms
โœ… CrossDeviceSyncE2ETests test_positionWrittenOnDeviceA_readableOnDeviceB 34ms
โœ… CrossDomain401Tests test200FromDifferentDomain_shouldNotIndicateAuthRefreshNeeded 32ms
โœ… CrossDomain401Tests test401FromDifferentDomain_shouldNotIndicateAuthRefreshNeeded <1ms
โœ… CrossDomain401Tests test401FromDifferentSubdomain_shouldIndicateAuthRefreshNeeded <1ms
โœ… CrossDomain401Tests test401FromSameDomain_shouldIndicateAuthRefreshNeeded <1ms
โœ… CrossDomain401Tests test401FromSameSubdomain_shouldIndicateAuthRefreshNeeded <1ms
โœ… CrossDomain401Tests test401WithNilOriginalURL_shouldIndicateAuthRefreshNeeded <1ms
โœ… CrossDomain401Tests test403FromDifferentDomain_shouldNotIndicateAuthRefreshNeeded 2ms
โœ… CrossDomain401Tests testProblemDocFromDifferentDomain_shouldNotIndicateAuthRefreshNeeded 2ms
โœ… CrossFormatMappingTests testChapterBeyondMappingRange 1ms
โœ… CrossFormatMappingTests testCodableRoundTrip 14ms
โœ… CrossFormatMappingTests testCustomChapterMapping 2ms
โœ… CrossFormatMappingTests testFirstChapterMapping 2ms
โœ… CrossFormatMappingTests testLastChapterMapping 13ms
โœ… CrossFormatMappingTests testMappingWithMissingChapterIndex <1ms
โœ… CrossFormatMappingTests testMappingWithZeroChapters 1ms
โœ… CrossFormatMappingTests testMappingWrongFormat <1ms
โœ… CrossFormatMappingTests testOneToOneAudiobookToEpub 14ms
โœ… CrossFormatMappingTests testOneToOneEpubToAudiobook 47ms
โœ… CrossFormatMappingTests testOneToOneMappingCreation 2ms
โœ… CrossFormatMappingTests testProportionalAudiobookToEpub <1ms
โœ… CrossFormatMappingTests testProportionalEpubToAudiobook 4ms
โœ… CrossFormatMappingTests testProportionalMappingCreation 2ms
โœ… DPLAErrorTests testCertificateUrl_isValid <1ms
โœ… DPLAErrorTests testDrmKeyError_readableError 17ms
โœ… DPLAErrorTests testRequestError_readableError <1ms
โŠ˜ DRMAdversarialTests testAdobe_didIgnoreFulfillment_noLongerShowsSignInModal 15ms
โŠ˜ DRMAdversarialTests testAdobe_epubWithoutValidLicense_openFails 5ms
โŠ˜ DRMAdversarialTests testAdobe_fulfillmentPath_callsEnsureDeviceActivated 20ms
โœ… DRMAdversarialTests testLCP_publicationWithoutPassphrase_returnsAuthRequired 44ms
โœ… DRMFulfilledPublicationTests testDRMFulfilledPublication_localURLIsCorrect <1ms
โœ… DRMFulfilledPublicationTests testDRMFulfilledPublication_storesLocalURL <1ms
โœ… DRMFulfilledPublicationTests testDRMFulfilledPublication_storesSuggestedFilename <1ms
โœ… DRMFulfilledPublicationTests testDRMFulfilledPublication_withEmptyFilename <1ms
โœ… DRMFulfilledPublicationTests testDRMFulfilledPublication_withLongFilename 2ms
โœ… DRMFulfilledPublicationTests testDRMFulfilledPublication_withSpecialCharacters <1ms
โœ… DataBase64Tests testBase64UrlSafe_ReplacesPlus_WithDash <1ms
โœ… DataBase64Tests testBase64UrlSafe_ReplacesSlash_WithUnderscore 4ms
โœ… DataBase64Tests testBase64UrlSafe_emptyAndAscii_canonicalAndNoNewlines <1ms
โœ… DataReceptionComparisonTests testGET_receivesBearerTokenJSON_andCanBeDetected 10ms
โœ… DataReceptionComparisonTests testGET_receivesNonEmptyBody_forValidJSON 16ms
โœ… DateExtensionTests testAddingDays_increasesDate <1ms
โœ… DateExtensionTests testDateComparison_differentDay 729ms
โœ… DateExtensionTests testDateComparison_sameDay 4ms
โœ… DateExtensionTests testISO8601_roundTrip 5ms
โœ… DateExtensionTests testRfc339String_includesTimezone 1ms
โœ… DateExtensionTests testRfc339String_producesValidFormat 2ms
โœ… DateExtensionTests testSubtractingDays_decreasesDate 5ms
โœ… DateExtensionTests testTimeIntervalSinceNow_negative 108ms
โœ… DateExtensionTests testTimeIntervalSinceNow_positive 729ms
โœ… DateFormattingTests testCustomFormat <1ms
โœ… DateFormattingTests testLongDateFormat <1ms
โœ… DateFormattingTests testShortDateFormat 22ms
โœ… DateFormattingTests testTimeFormat 2ms
โœ… Date_NYPLAdditionsTests testISO8601FullDateParsing 3ms
โœ… Date_NYPLAdditionsTests testInvalidRFC3339Date 17ms
โœ… Date_NYPLAdditionsTests testParsesRFC3339DateCorrectly 28ms
โœ… Date_NYPLAdditionsTests testParsesRFC3339DateWithFractionalSecondsCorrectly 31ms
โœ… Date_NYPLAdditionsTests testRFC1123 4ms
โœ… Date_NYPLAdditionsTests testRFC1123Performance 2.66s
โœ… Date_NYPLAdditionsTests testRFC3339RoundTrip 58ms
โœ… DebugSettingsForceSkeletonsTests testForceSkeletons_readsExactKey_notADecoy 10ms
โœ… DebugSettingsForceSkeletonsTests testForceSkeletons_whenOverrideExplicitlyFalse_isFalse 3ms
โœ… DebugSettingsForceSkeletonsTests testForceSkeletons_whenOverrideKeySet_isHonoredPerBuild 4ms
โœ… DebugSettingsForceSkeletonsTests testForceSkeletons_whenOverrideKeyUnset_isFalse 2ms
โœ… DebugSettingsGapTests testDebugSettings_isBorrowErrorSimulationEnabled_reflectsSimulatedBorrowError 12ms
โœ… DebugSettingsGapTests testDebugSettings_isTestHoldsEnabled_reflectsTestHoldsConfiguration 4ms
โœ… DebugSettingsGapTests testDebugSettings_resetAll_clearsBadgeLogging 5ms
โœ… DebugSettingsGapTests testDebugSettings_resetAll_clearsState 5ms
โœ… DebugSettingsTests testBadgeLogging_defaultFalse 11ms
โœ… DebugSettingsTests testBadgeLogging_enabledStateIsResetByResetAll 6ms
โœ… DebugSettingsTests testCreateSimulatedBorrowError_detailIsBannerPrefixed 17ms
โœ… DebugSettingsTests testCreateSimulatedBorrowError_keepsDebugDomainAndStatus 33ms
โœ… DebugSettingsTests testCreateSimulatedBorrowError_nilWhenDisabled 3ms
โœ… DebugSettingsTests testCreateSimulatedBorrowError_preservesOriginalDetailBelowBanner 2ms
โœ… DebugSettingsTests testCreateSimulatedBorrowError_returnsErrorWhenEnabled 19ms
โœ… DebugSettingsTests testCreateSimulatedBorrowError_titleIsMarked 12ms
โœ… DebugSettingsTests testCreateTestHoldBooks_allReady 218ms
โœ… DebugSettingsTests testCreateTestHoldBooks_mixedHolds 40ms
โœ… DebugSettingsTests testCreateTestHoldBooks_nilWhenDisabled 7ms
โœ… DebugSettingsTests testCreateTestHoldBooks_oneReady 6ms
โœ… DebugSettingsTests testCreateTestHoldBooks_oneReserved 32ms
โœ… DebugSettingsTests testDefaultSimulatedBorrowError <1ms
โœ… DebugSettingsTests testIsBorrowErrorSimulationEnabled 6ms
โœ… DebugSettingsTests testIsTestHoldsEnabled 4ms
โœ… DebugSettingsTests testResetAll 6ms
โœ… DebugSettingsTests testSimulatedBorrowError_allCasesHaveDisplayNames 1ms
โœ… DebugSettingsTests testSimulatedBorrowError_canBeSet 7ms
โœ… DebugSettingsTests testSimulatedBorrowError_credentialsSuspended 2ms
โœ… DebugSettingsTests testSimulatedBorrowError_generic 4ms
โœ… DebugSettingsTests testSimulatedBorrowError_holdLimit <1ms
โœ… DebugSettingsTests testSimulatedBorrowError_loanLimit 1ms
โœ… DebugSettingsTests testSimulatedBorrowError_none_nilProblemDoc <1ms
โœ… DebugSettingsTests testTestHoldsConfig_allCasesHaveDisplayNames 7ms
โœ… DebugSettingsTests testTestHoldsConfig_allReady_badgeCount 1ms
โœ… DebugSettingsTests testTestHoldsConfig_default 1.19s
โœ… DebugSettingsTests testTestHoldsConfig_mixedHolds_badgeCount <1ms
โœ… DebugSettingsTests testTestHoldsConfig_none_badgeCount 1ms
โœ… DebugSettingsTests testTestHoldsConfig_oneReady_badgeCount 2ms
โœ… DebugSettingsTests testTestHoldsConfig_oneReserved_badgeCount 1ms
โœ… DefaultCatalogAPITests testCatalogAPI_IntegrationWithRepository_HandlesErrors 23ms
โœ… DefaultCatalogAPITests testCatalogAPI_IntegrationWithRepository_WorksCorrectly 44ms
โœ… DefaultCatalogAPITests testExtractSearchEntryPoints_ActiveEntry_GetsSearchDescriptorURL 1ms
โœ… DefaultCatalogAPITests testExtractSearchEntryPoints_FacetWithEmptyTitle_IsExcluded <1ms
โœ… DefaultCatalogAPITests testExtractSearchEntryPoints_FeedWithNoFacets_ReturnsEmpty 12ms
โœ… DefaultCatalogAPITests testExtractSearchEntryPoints_FirstEntryActive_MarkedCorrectly <1ms
โœ… DefaultCatalogAPITests testExtractSearchEntryPoints_GroupsFeedURLs_AreCorrect 2ms
โœ… DefaultCatalogAPITests testExtractSearchEntryPoints_InactiveEntries_HaveNilSearchDescriptorURL 2ms
โœ… DefaultCatalogAPITests testExtractSearchEntryPoints_NoSearchLink_AllDescriptorURLsNil 1ms
โœ… DefaultCatalogAPITests testExtractSearchEntryPoints_NonEntryPointFacets_AreExcluded 1ms
โœ… DefaultCatalogAPITests testExtractSearchEntryPoints_SecondEntryActive_MarkedCorrectly 5ms
โœ… DefaultCatalogAPITests testExtractSearchEntryPoints_StableIDs_MatchGroupsFeedURL 3ms
โœ… DefaultCatalogAPITests testExtractSearchEntryPoints_ThreeEntryPoints_ReturnsAllThree 1ms
โœ… DefaultCatalogAPITests testFetchFeed_AfterReset_CallCountResetsToZero 6ms
โœ… DefaultCatalogAPITests testFetchFeed_DefaultResponse_UsedWhenNoStubSet 1ms
โœ… DefaultCatalogAPITests testFetchFeed_DifferentURLs_ReturnDifferentStubs 4ms
โœ… DefaultCatalogAPITests testFetchFeed_EmptyFeed_ReturnsEmptyEntries 10ms
โœ… DefaultCatalogAPITests testFetchFeed_EmptyResponseData_ThrowsParsingError 1ms
โœ… DefaultCatalogAPITests testFetchFeed_FailAfterMultipleCalls_SimulatesIntermittentFailure 2ms
โœ… DefaultCatalogAPITests testFetchFeed_GlobalError_AffectsAllRequests 1ms
โœ… DefaultCatalogAPITests testFetchFeed_InvalidXML_ThrowsParsingError 8ms
โœ… DefaultCatalogAPITests testFetchFeed_MultipleCalls_TracksAllRequests 2ms
โœ… DefaultCatalogAPITests testFetchFeed_NetworkError_ThrowsError 3ms
โœ… DefaultCatalogAPITests testFetchFeed_ServerError500_ThrowsError 2ms
โœ… DefaultCatalogAPITests testFetchFeed_SpecialCharactersInFeedTitle_ParsesCorrectly 2ms
โœ… DefaultCatalogAPITests testFetchFeed_Timeout_ThrowsError 1ms
โœ… DefaultCatalogAPITests testFetchFeed_TracksRequestDetails 12ms
โœ… DefaultCatalogAPITests testFetchFeed_URLWithQueryParameters_PreservesParameters 3ms
โœ… DefaultCatalogAPITests testFetchFeed_UnauthorizedError_ThrowsError 3ms
โœ… DefaultCatalogAPITests testFetchFeed_UsesGETMethod 4ms
โœ… DefaultCatalogAPITests testFetchFeed_ValidOPDSResponse_ReturnsParsedFeed 2ms
โœ… DefaultRecentlyReadingServiceTests testRecentlyOpenedAudiobook_excludesEbooks_evenWhenEbookOpenedMoreRecently 137ms
โœ… DefaultRecentlyReadingServiceTests testRecentlyOpenedAudiobook_returnsAudiobookWithLatestOpenTimestamp 618ms
โœ… DefaultRecentlyReadingServiceTests testRecentlyOpenedAudiobook_returnsNil_whenNoAudiobookHasRecordedOpen 65ms
โœ… DefaultRecentlyReadingServiceTests testRecentlyOpenedAudiobook_returnsNil_whenNoTrackerInjected 4ms
โœ… DefaultRecentlyReadingServiceTests testRecentlyReading_breaksTimestampTies_byBookIdAscending 1.90s
โœ… DefaultRecentlyReadingServiceTests testRecentlyReading_emptyRegistryReturnsEmpty <1ms
โœ… DefaultRecentlyReadingServiceTests testRecentlyReading_excludesAudiobooks 6ms
โœ… DefaultRecentlyReadingServiceTests testRecentlyReading_excludesBooksWithoutSavedLocation 2ms
โœ… DefaultRecentlyReadingServiceTests testRecentlyReading_excludesSamples 231ms
โœ… DefaultRecentlyReadingServiceTests testRecentlyReading_fallsBackDeterministically_whenJSONLacksTimestamp 5ms
โœ… DefaultRecentlyReadingServiceTests testRecentlyReading_includesOpenedEbookWithoutSavedLocation_viaTracker 1.28s
โœ… DefaultRecentlyReadingServiceTests testRecentlyReading_ordersByLastReadTimestampDescending 175ms
โœ… DefaultRecentlyReadingServiceTests testRecentlyReading_parsesLastReadTimestampFromLocationJSON 2ms
โœ… DeriveInitialStateTests testDeriveInitialState_ForBookWithoutAcquisition_ReturnsUnsupported 1ms
โœ… DeriveInitialStateTests testDeriveInitialState_ForReadyBook_ReturnsHolding 2ms
โœ… DeriveInitialStateTests testDeriveInitialState_ForReservedBook_ReturnsHolding 2ms
โœ… DeriveInitialStateTests testDeriveInitialState_ForStandardBook_ReturnsDownloadNeeded 2ms
โœ… DeveloperSettingsEngineeringTierTests testEngineeringTools_noReceiptURL_isDeveloperBuild_shown 5ms
โœ… DeveloperSettingsEngineeringTierTests testEngineeringTools_realAppStoreReceipt_hidden <1ms
โœ… DeveloperSettingsEngineeringTierTests testEngineeringTools_receiptNameButMissingFile_isDevSim_shown <1ms
โœ… DeveloperSettingsEngineeringTierTests testEngineeringTools_sandboxReceipt_isTestFlight_shown 3ms
โŠ˜ DeveloperSettingsViewModelOverrideTests testAppRatingForceEligibleToggle_writesThroughToLocalOverrideKey 2ms
โŠ˜ DeveloperSettingsViewModelOverrideTests testInAppPlaybackNavToggle_writesThroughToLocalOverrideKey 33ms
โŠ˜ DeveloperSettingsViewModelOverrideTests testTriageBotToggle_writesThroughToLocalOverrideKey 21ms
โœ… DeviceLogCollectorGapTests testDeviceLogCollector_formatsTimestampInExpectedShape 8ms
โœ… DeviceLogCollectorGapTests testDeviceLogCollector_rendersMultipleLevelsInOneCollection 4ms
โœ… DeviceLogCollectorTests testCollectLogs_defaultDayRangeIsSeven 4ms
โœ… DeviceLogCollectorTests testCollectLogs_emptySubsystemAndCategory_renderDashes 2ms
โœ… DeviceLogCollectorTests testCollectLogs_headerReflectsDayRange 4ms
โœ… DeviceLogCollectorTests testCollectLogs_levelStrings_mapEachLevelDistinctly 4ms
โœ… DeviceLogCollectorTests testCollectLogs_logEntry_lineCarriesLevelSubsystemCategoryAndMessage 13ms
โœ… DeviceLogCollectorTests testCollectLogs_outputIsValidUTF8 3ms
โœ… DeviceLogCollectorTests testCollectLogs_reportsExactEntryCount 5ms
โœ… DeviceLogCollectorTests testCollectLogs_signpost_rendersSignpostTag 26ms
โœ… DeviceLogCollectorTests testCollectLogs_sourceThrows_reportsAccessError 14ms
โœ… DeviceLogCollectorTests testCollectLogs_truncatesAtByteBudget 84ms
โœ… DeviceLogCollectorTests testCollectLogs_truncatesWhenSourceHitsEntryCap 19ms
โœ… DeviceLogCollectorTests testCollectLogs_underEntryCap_doesNotTruncate 4ms
โœ… DeviceLogCollectorTests testCollectLogs_zeroEntries_reportsZeroCountNotError 40ms
โœ… DeviceOrientationTests testDeviceOrientation_isObservableObject 39ms
โœ… DeviceOrientationTests testInitialIsLandscape_basedOnScreenDimensions 11ms
โœ… DeviceOrientationTests testIsLandscape_isPublished <1ms
โœ… DeviceOrientationTests testStartAndStopTracking_multipleTimesDoesNotCrash 48ms
โœ… DeviceOrientationTests testStartTracking_doesNotCrash 39ms
โœ… DeviceOrientationTests testStopTracking_beforeStartTracking_doesNotCrash <1ms
โœ… DeviceOrientationTests testStopTracking_doesNotCrash 1ms
โœ… DeviceSpecificErrorMonitorTests testGetDeviceID_isConsistent 61ms
โœ… DeviceSpecificErrorMonitorTests testGetDeviceID_looksLikeUUIDAndFormatIsStableAcrossCalls 2ms
โœ… DeviceSpecificErrorMonitorTests testGetDeviceID_returnsNonEmptyString 258ms
โœ… DeviceSpecificErrorMonitorTests testGetDeviceInfo_containsExpectedKeys 1ms
โœ… DeviceSpecificErrorMonitorTests testGetDeviceInfo_valuesAreNonEmpty 7ms
โœ… DeviceSpecificErrorMonitorTests testInit_eachInstance_canQueryDeviceInfo 10ms
โœ… DeviceSpecificErrorMonitorTests testInit_returnsIndependentInstance <1ms
โœ… DeviceSpecificErrorMonitorTests testIsEnhancedLoggingEnabled_returnsBool <1ms
โœ… DeviceSpecificErrorMonitorTests testLogError_doesNotCrashAndPreservesMonitorState 1ms
โœ… DeviceSpecificErrorMonitorTests testLogError_withMetadata_doesNotCrash 1ms
โœ… DeviceSpecificErrorMonitorTests testLogNetworkFailure_doesNotCrash 12ms
โœ… DictionaryExtensionsTests testMapKeys_ChangesKeyType_StringToInt 5ms
โœ… DictionaryExtensionsTests testMapKeys_CollidingKeys_OverwritesValue 3ms
โœ… DictionaryExtensionsTests testMapKeys_EmptyDictionary_ReturnsEmpty 2ms
โœ… DictionaryExtensionsTests testMapKeys_TransformsKeys_PreservesValues 61ms
โœ… DictionaryExtensionsTests testMapKeys_UniqueTransform_PreservesCount 1.07s
โœ… DiskBudgetManagerTests testDefaultBudget_onLargeDevice_returnsRelaxedLargeDeviceQuota 2ms
โœ… DiskBudgetManagerTests testDefaultBudget_onSmallDevice_returnsRelaxedSmallDeviceQuota 2ms
โœ… DiskBudgetManagerTests testDirectoryUsageBytes_emptyDirectory_returnsZero 1ms
โœ… DiskBudgetManagerTests testDirectoryUsageBytes_missingDirectory_returnsZero 3ms
โœ… DiskBudgetManagerTests testDirectoryUsageBytes_sumsAllNonHiddenFiles 5ms
โœ… DiskBudgetManagerTests testListContentFilesSortedByLRU_missingDirectory_returnsEmpty 1ms
โœ… DiskBudgetManagerTests testListContentFilesSortedByLRU_returnsOldestFirst 7ms
โœ… DiskBudgetTests testContentDirectory_createdOnAccess 2.26s
โœ… DiskBudgetTests testDiskSpace_available_returnsPositiveValue 2ms
โœ… DownloadAlertPresenterTests testAlertForProblemDocument_errorOnly_includesErrorDescription 18ms
โœ… DownloadAlertPresenterTests testAlertForProblemDocument_genericProblem_keepsBookInRegistryAndAllowsRetry 9ms
โœ… DownloadAlertPresenterTests testAlertForProblemDocument_noActiveLoan_removesFromRegistryAndDisablesRetry 9ms
โœ… DownloadAlertPresenterTests testFailDownloadWithAlert_emptyMessage_alsoFallsBackToActionableText 11ms
โœ… DownloadAlertPresenterTests testFailDownloadWithAlert_nilMessage_doesNotShowDeveloperPlaceholder 11ms
โœ… DownloadAlertPresenterTests testFailDownloadWithAlert_nilMessage_includesActionableFallback 11ms
โœ… DownloadAlertPresenterTests testFailDownloadWithAlert_retryAction_invokesStartDownloadOnce 44ms
โœ… DownloadAlertPresenterTests testFailDownloadWithAlert_setsDownloadFailedAndAnnouncesAndPublishesError 7ms
โœ… DownloadAnnouncementServiceTests testAnnounceBorrowFailed_forwardsTitle 3ms
โœ… DownloadAnnouncementServiceTests testAnnounceBorrowStarted_forwardsTitle 2ms
โœ… DownloadAnnouncementServiceTests testAnnounceBorrowSucceeded_forwardsTitle 13ms
โœ… DownloadAnnouncementServiceTests testAnnounceDownloadCompleted_announcesAndResetsProgress 65ms
โœ… DownloadAnnouncementServiceTests testAnnounceDownloadFailed_announcesAndResetsProgress 3ms
โœ… DownloadAnnouncementServiceTests testAnnounceDownloadProgress_forwardsTitleIdentifierAndProgress 2ms
โœ… DownloadAnnouncementServiceTests testAnnounceDownloadStarted_forwardsTitleAndIdentifier 4ms
โœ… DownloadAnnouncementServiceTests testAnnounceReturnFailed_forwardsTitle 2ms
โœ… DownloadAnnouncementServiceTests testAnnounceReturnStarted_forwardsTitle 40ms
โœ… DownloadAnnouncementServiceTests testAnnounceReturnSucceeded_forwardsTitle 2ms
โœ… DownloadAnnouncementServiceTests testCompletedAndFailed_orderingIsAnnounceThenReset 4ms
โœ… DownloadAnnouncementServiceTests testIdentifierPropagation_distinctBooksAreNotAliased 7ms
โœ… DownloadAuthRetryHandlerAuthCoordinatorTests testCoordinator_401_OIDC_routesToCoordinator_setsDownloadNeeded_andRetriesOnSuccess 435ms
โœ… DownloadAuthRetryHandlerAuthCoordinatorTests testCoordinator_401_SAML_routesToCoordinator_setsSAMLStarted_andRetriesOnSuccess 424ms
โœ… DownloadAuthRetryHandlerAuthCoordinatorTests testCoordinator_401_SAML_userCancel_doesNotRetryButFlipsPerBookState 439ms
โœ… DownloadAuthRetryHandlerAuthCoordinatorTests testCoordinator_noActiveLoan_SAML_routesToCoordinator_setsSAMLStarted 437ms
โœ… DownloadAuthRetryHandlerAuthCoordinatorTests testForeignHost_401_SAML_doesNotMarkCredentialsStale_doesNotDispatchCoordinator 434ms
โœ… DownloadAuthRetryHandlerAuthCoordinatorTests testForeignHost_401_SAML_withNilProvider_fallsBackToLegacyDispatch 427ms
โœ… DownloadAuthRetryHandlerTaskLifecycleTests testCancelAllInFlightTasks_cancelsAndClearsAndPreventsRetry 112ms
โœ… DownloadAuthRetryHandlerTaskLifecycleTests testHandlerRelease_weakSelfCapture_preventsPostReleaseRegistryWrites 170ms
โœ… DownloadAuthRetryHandlerTaskLifecycleTests testInFlightTasks_areTrackedWhenLaunched_twoRetryPathsBothRetained 37ms
โœ… DownloadAuthRetryHandlerTaskLifecycleTests testInFlightTasks_autoRemoveAfterEachCompletion_setDoesNotGrowUnbounded 80ms
โœ… DownloadAuthRetryHandlerTests testAutoBorrowCompletion_whenBorrowFails_publishesAlertAndRemovesBook 169ms
โœ… DownloadAuthRetryHandlerTests testAutoBorrowCompletion_whenBorrowSucceedsAndDownloadAlreadyFinished_doesNotPublishAlert 172ms
โœ… DownloadAuthRetryHandlerTests testAutoBorrowCompletion_whenBorrowSucceedsAndDownloadStarts_doesNotPublishAlert 166ms
โœ… DownloadAuthRetryHandlerTests testHandle_401_accountHost_browserSAML_guardDoesNotFire_drivesSAMLRetry 165ms
โœ… DownloadAuthRetryHandlerTests testHandle_401_foreignHost_browserSAML_shortCircuitsReturnsFalse_noReauth 195ms
โœ… DownloadAuthRetryHandlerTests testHandle_401_withCredentials_browserOIDC_presentsReauthAndRetriesOnLoggedIn 175ms
โœ… DownloadAuthRetryHandlerTests testHandle_401_withCredentials_browserOIDC_userCancelsReauth_doesNotRetry 164ms
โœ… DownloadAuthRetryHandlerTests testHandle_401_withCredentials_browserSAML_setsStateToSAMLStartedAndRetries 160ms
โœ… DownloadAuthRetryHandlerTests testHandle_401_withCredentials_credentialPromptStrategy_fallsThroughReturnsFalse 3ms
โœ… DownloadAuthRetryHandlerTests testHandle_401_withCredentials_tokenRefresh_returnsFalseSoCallerCanAlert 11ms
โœ… DownloadAuthRetryHandlerTests testHandle_401_withoutCredentials_loginRequired_presentsSignInAndRetriesOnHasCredentials 161ms
โœ… DownloadAuthRetryHandlerTests testHandle_401_withoutCredentials_loginRequired_userCancelsSignIn_doesNotRetry 163ms
โœ… DownloadAuthRetryHandlerTests testHandle_403_foreignHost_noCredentials_guardDoesNotIntercept_signInStillFires 3ms
โœ… DownloadAuthRetryHandlerTests testHandle_noActiveLoan_basicAuth_triggersAutoBorrowWithAttemptDownloadTrue 4ms
โœ… DownloadAuthRetryHandlerTests testHandle_noActiveLoan_browserSAML_treatsAsSessionExpiryAndRetries 161ms
โœ… DownloadAuthRetryHandlerTests testHandle_nonAuthError_withoutCredentials_loginRequired_presentsSignInModal 31ms
โœ… DownloadAuthRetryHandlerTests testHandle_unrelatedFailure_anonymousAccount_returnsFalse 5ms
โœ… DownloadCancellationHandlerTests testCancel_adobeDRMRights_shortCircuitsToAdobeCancel 6ms
โœ… DownloadCancellationHandlerTests testCancel_noTaskInDownloadingState_setsDownloadNeededAndCleansUp 125ms
โœ… DownloadCancellationHandlerTests testCancel_noTaskInSAMLStartedState_treatedAsCancellable 23ms
โœ… DownloadCancellationHandlerTests testCancel_unknownIdentifierWithNonCancellableState_isNoOp 26ms
โœ… DownloadCancellationHandlerTests testCancel_withTask_setsDownloadNeededAndCancelsTask 30ms
โœ… DownloadCompleteMomentTests test_shouldPulseReadButton_doesNotRefireWhenAlreadySuccessful <1ms
โœ… DownloadCompleteMomentTests test_shouldPulseReadButton_firesOnEntryToDownloadSuccessful <1ms
โœ… DownloadCompleteMomentTests test_shouldPulseReadButton_ignoresOtherStates 1ms
โœ… DownloadCompleteMomentTests test_shouldResetDownloadProgress_doesNotResetOutsideEntry <1ms
โœ… DownloadCompleteMomentTests test_shouldResetDownloadProgress_doesNotResetWhileDownloading <1ms
โœ… DownloadCompleteMomentTests test_shouldResetDownloadProgress_resetsOnEntryToDownloading <1ms
โœ… DownloadCompletionParserTests testParse_OPDS2Publication_followUpFailed_returnsFailure 57ms
โœ… DownloadCompletionParserTests testParse_OPDS2Publication_followUpStarted_returnsFollowUpStarted 10ms
โœ… DownloadCompletionParserTests testParse_OPDSEntry_followUpFailed_returnsFailure 8ms
โœ… DownloadCompletionParserTests testParse_OPDSEntry_followUpStarted_returnsFollowUpStarted 79ms
โœ… DownloadCompletionParserTests testParse_knownRightsInCache_skipsDetection 6ms
โœ… DownloadCompletionParserTests testParse_problemDocument_returnsFailureWithParsedDoc 3ms
โœ… DownloadCompletionParserTests testParse_supportedMime_returnsProceed 3ms
โœ… DownloadCompletionParserTests testParse_unknownRights_detectsFromMimeAndUpdatesCache 26ms
โœ… DownloadCompletionParserTests testParse_unsupportedMime_returnsFailure 4ms
โœ… DownloadCoordinatorIntegrationTests testCoordinator_concurrentCompletions_maintainsConsistency 6ms
โœ… DownloadCoordinatorIntegrationTests testCoordinator_concurrentRegistrations_maintainsConsistency 3ms
โœ… DownloadCoordinatorIntegrationTests testCoordinator_downloadInfoCache_storesMultipleEntries 6ms
โœ… DownloadCoordinatorIntegrationTests testCoordinator_downloadInfoCache_updatesExistingEntry 5ms
โœ… DownloadCoordinatorIntegrationTests testCoordinator_mixedOperations_maintainsConsistency 172ms
โœ… DownloadCoordinatorIntegrationTests testCoordinator_partialDequeue_leavesRemainder 10ms
โœ… DownloadCoordinatorIntegrationTests testCoordinator_queueFIFO_maintainsOrder 19ms
โœ… DownloadCoordinatorIntegrationTests testCoordinator_throttling_returnsDelayAfterRecentStart <1ms
โœ… DownloadCoordinatorIntegrationTests testCoordinator_throttling_returnsZeroAfterDelay 3ms
โœ… DownloadCoordinatorIntegrationTests testCoordinator_zeroCapacityDequeue_returnsEmpty 12ms
โœ… DownloadCoordinatorTests testCoordinator_cacheDownloadInfo_storesAndRetrieves 2ms
โœ… DownloadCoordinatorTests testCoordinator_canStartDownload_respectsMaxConcurrent 19ms
โœ… DownloadCoordinatorTests testCoordinator_canStartDownload_withinLimit <1ms
โœ… DownloadCoordinatorTests testCoordinator_dequeuePending_returnsBooks 11ms
โœ… DownloadCoordinatorTests testCoordinator_enqueuePending_addsToQueue 2ms
โœ… DownloadCoordinatorTests testCoordinator_enqueuePending_preventsDuplicates 2ms
โœ… DownloadCoordinatorTests testCoordinator_redirectAttempts_tracksCorrectly <1ms
โœ… DownloadCoordinatorTests testCoordinator_registerCompletion_decrementsActiveCount 1ms
โœ… DownloadCoordinatorTests testCoordinator_registerStart_incrementsActiveCount 1ms
โœ… DownloadCoordinatorTests testCoordinator_removeCachedDownloadInfo_removesEntry 1ms
โœ… DownloadCoordinatorTests testCoordinator_reset_clearsAllState 3ms
โœ… DownloadDiskSpaceTests testAvailableDiskSpace_isPositive 10ms
โœ… DownloadDiskSpaceTests testDocumentsDirectory_exists <1ms
โœ… DownloadErrorInfoTests testConvenienceInit_setsFieldsCorrectly 3ms
โœ… DownloadErrorInfoTests testFullInit_withNilRetryAction 518ms
โœ… DownloadErrorInfoTests testFullInit_withRetryAction 312ms
โœ… DownloadErrorRecoveryPolicyTests testBorrowPolicy_doesNotRetryOnFatalErrors 10ms
โœ… DownloadErrorRecoveryPolicyTests testBorrowPolicy_recoversAfterNoActiveLoan 71ms
โœ… DownloadErrorRecoveryPolicyTests testBorrowPolicy_retriesOnAllTransientErrors <1ms
โœ… DownloadErrorRecoveryPolicyTests testDefaultPolicy_hasReasonableDefaults 1ms
โœ… DownloadErrorRecoveryPolicyTests testExecuteWithRetry_failsAfterMaxAttempts 23ms
โœ… DownloadErrorRecoveryPolicyTests testExecuteWithRetry_immediateSuccess_noRetries 8ms
โœ… DownloadErrorRecoveryPolicyTests testExecuteWithRetry_nonRetryableError_failsImmediately 32ms
โœ… DownloadErrorRecoveryPolicyTests testExecuteWithRetry_retriesOnTransientError 71ms
โœ… DownloadErrorRecoveryPolicyTests testExecuteWithRetry_successfulOperation_returnsResult 87ms
โœ… DownloadErrorRecoveryPolicyTests testExecuteWithRetry_worksWithDifferentTypes 48ms
โœ… DownloadErrorRecoveryPolicyTests testPolicyPresets_areOrderedByAggressiveness 1ms
โœ… DownloadErrorRecoveryTests testErrorRecovery_cancelledDownload_resetsToDownloadNeeded 5ms
โœ… DownloadErrorRecoveryTests testErrorRecovery_downloadFailed_allowsRetry 3ms
โœ… DownloadErrorRecoveryTests testErrorRecovery_multipleFailures_trackedSeparately 162ms
โœ… DownloadFreeSpaceExhaustionTests testDefaultDiskBudget_normalDeviceBranch 4ms
โœ… DownloadFreeSpaceExhaustionTests testDefaultDiskBudget_smallDeviceBranch 2ms
โœ… DownloadFreeSpaceExhaustionTests testDirectoryUsage_countsLCPFilesEvenIfThoseFilesArePreservedDuringEviction 11ms
โœ… DownloadFreeSpaceExhaustionTests testEviction_atExactBudget_doesNothing 5ms
โœ… DownloadFreeSpaceExhaustionTests testEviction_bytesToAddExceedsBudgetButDirectoryEmpty_isNoOp 1.56s
โœ… DownloadFreeSpaceExhaustionTests testEviction_evictsOnlyOldestWhenSufficient 94ms
โœ… DownloadFreeSpaceExhaustionTests testEviction_orphan_reclaimedButRegistryUntouched 34ms
โœ… DownloadFreeSpaceExhaustionTests testLRUSort_producesOldestFirst 835ms
โœ… DownloadFreeSpaceExhaustionTests testMoveFile_destinationParentReadOnly_failsCleanly 13ms
โœ… DownloadFreeSpaceExhaustionTests testMoveFile_disk_out_leavesNoPartialGarbageAtDestination 8ms
โœ… DownloadFreeSpaceExhaustionTests testReplaceBook_destinationParentReadOnly_failsCleanly 26ms
โœ… DownloadInfoTests testDownloadInfo_creation_setsInitialValues <1ms
โœ… DownloadInfoTests testDownloadInfo_progressUpdates_handlesEdgeCases <1ms
โœ… DownloadInfoTests testDownloadInfo_rightsManagementString_returnsCorrectString <1ms
โœ… DownloadInfoTests testDownloadInfo_withDownloadProgress_createsNewInstance 4ms
โœ… DownloadInfoTests testDownloadInfo_withRightsManagement_createsNewInstance 9ms
โœ… DownloadIntegrityTests testMoveFile_firstDownload_landsExactBytes 7ms
โœ… DownloadIntegrityTests testReplaceBook_byteForByteHashMatch 247ms
โœ… DownloadIntegrityTests testReplaceBook_manifestReFetch_overwritesOldManifest 8ms
โœ… DownloadIntegrityTests testReplaceBook_openAccessAudiobookManifest_writesAndMarksSuccessful 10ms
โœ… DownloadIntegrityTests testReplaceBook_sameSizeDifferentBytes_writesNewBytes 52ms
โœ… DownloadIntegrityTests testReplaceBook_validationFailureLeavesRegistryUnchanged 98ms
โœ… DownloadIntegrityTests testValidate_missingFile_fails 29ms
โœ… DownloadIntegrityTests testValidate_nonEmptyFile_passes 23ms
โœ… DownloadIntegrityTests testValidate_repeatedCallsAreIdempotent 4ms
โœ… DownloadIntegrityTests testValidate_zeroByteFile_fails 199ms
โœ… DownloadOnlyOnWiFiTests testAccessibilityIdentifier_exists 1ms
โœ… DownloadOnlyOnWiFiTests testDefaultValue_isFalse 2ms
โœ… DownloadOnlyOnWiFiTests testLocalizedStrings_areNotEmpty 2ms
โœ… DownloadOnlyOnWiFiTests testMock_canBeConfigured 69ms
โœ… DownloadOnlyOnWiFiTests testMock_defaultIsFalse 96ms
โœ… DownloadOnlyOnWiFiTests testMock_resetClearsSetting 8ms
โœ… DownloadOnlyOnWiFiTests testReachability_isOnWiFi_consistentWithDetailedStatus 2ms
โœ… DownloadOnlyOnWiFiTests testReachability_isOnWiFi_returnsBool 1ms
โœ… DownloadOnlyOnWiFiTests testSetting_persistsAcrossReads 8ms
โœ… DownloadOnlyOnWiFiTests testSetting_persistsToUserDefaultsAcrossToggleCycle 125ms
โœ… DownloadPersistenceStoreTests testBookDownloadsOverallProgress 39ms
โœ… DownloadPersistenceStoreTests testGetIncompleteDownloads 328ms
โœ… DownloadPersistenceStoreTests testMarkCompleted 3ms
โœ… DownloadPersistenceStoreTests testRegisterDownload 23ms
โœ… DownloadPersistenceStoreTests testUpdateProgress 581ms
โœ… DownloadProgressPublisherCoreTests testAnnounceBorrowFailed_doesNotCrash 15ms
โœ… DownloadProgressPublisherCoreTests testAnnounceBorrowStarted_doesNotCrash 3ms
โœ… DownloadProgressPublisherCoreTests testAnnounceBorrowSucceeded_doesNotCrash 59ms
โœ… DownloadProgressPublisherCoreTests testAnnounceDownloadCompleted_doesNotCrash 2ms
โœ… DownloadProgressPublisherCoreTests testAnnounceDownloadFailed_doesNotCrash 2ms
โœ… DownloadProgressPublisherCoreTests testAnnounceDownloadProgress_doesNotCrash 14ms
โœ… DownloadProgressPublisherCoreTests testAnnounceDownloadStarted_doesNotCrash 6ms
โœ… DownloadProgressPublisherCoreTests testAnnounceReturnFailed_doesNotCrash 8ms
โœ… DownloadProgressPublisherCoreTests testAnnounceReturnStarted_doesNotCrash 4ms
โœ… DownloadProgressPublisherCoreTests testAnnounceReturnSucceeded_doesNotCrash 2ms
โœ… DownloadProgressPublisherCoreTests testBroadcastUpdate_postsNotification 109ms
โœ… DownloadProgressPublisherCoreTests testBroadcastUpdate_throttles_rapidCalls 523ms
โœ… DownloadProgressPublisherCoreTests testBroadcastUpdate_usesNotificationSender 8ms
โœ… DownloadProgressPublisherCoreTests testConformsToDownloadProgressPublishing 3ms
โœ… DownloadProgressPublisherCoreTests testPublishAndAnnounceError_publishesOnErrorPublisher <1ms
โœ… DownloadProgressPublisherCoreTests testPublishAndAnnounceError_withRetryAction 6ms
โœ… DownloadProgressPublisherCoreTests testSendProgress_differentBooks_publishesSeparately 4ms
โœ… DownloadProgressPublisherCoreTests testSendProgress_multipleUpdates_allReceived 5ms
โœ… DownloadProgressPublisherCoreTests testSendProgress_publishesOnProgressPublisher 6ms
โœ… DownloadProgressPublisherTests testProgressPublisher_emitsMultipleUpdates 4ms
โœ… DownloadProgressPublisherTests testProgressPublisher_emitsProgressUpdates 2ms
โœ… DownloadQueueIntegrationTests testMaxConcurrentDownloads_limitsActiveDownloads 77ms
โœ… DownloadQueueIntegrationTests testQueuedBooks_preserveOrderAcrossMultipleDequeues 55ms
โœ… DownloadQueueIntegrationTests testQueuedBooks_startedWhenCapacityAvailable 11ms
โœ… DownloadQueueOrchestratorTests testEnqueuePending_appendsToCoordinatorPendingQueue 5ms
โœ… DownloadQueueOrchestratorTests testEnqueuePending_doesNotPostOnDefaultCenter_whenInjectedCenterDiffers 14ms
โœ… DownloadQueueOrchestratorTests testEnqueuePending_marksBookAsDownloadingInRegistry 4ms
โœ… DownloadQueueOrchestratorTests testEnqueuePending_postsDidChangeNotificationOnInjectedCenter 5ms
โœ… DownloadQueueOrchestratorTests testSchedulePendingStartsAsync_atCap_doesNotDequeueOrCallDelegate 9ms
โœ… DownloadQueueOrchestratorTests testSchedulePendingStartsAsync_emptyQueue_doesNotCallDelegate 3ms
โœ… DownloadQueueOrchestratorTests testSchedulePendingStartsAsync_passesNilRequestToDelegate 5ms
โœ… DownloadQueueOrchestratorTests testSchedulePendingStartsAsync_underCap_dequeuesUpToRemainingCapacityInFIFOOrder 9ms
โœ… DownloadQueueOrchestratorTests testSchedulePendingStartsIfPossible_drivesDelegateAsynchronously 31ms
โœ… DownloadRMSDKHandoffTests testRMSDKHandoff_featureDRMConnectorDisabled_skipsSuite 2ms
โœ… DownloadReconciliationLaunchOrderContractTests testLaunchReconciliation_callOrder_registryLoad_getAllTasks_reconcile_apply 27ms
โœ… DownloadReconciliationLaunchOrderContractTests testLaunchReconciliation_registryNotLoaded_gatesBeforeAnyTaskOrPersistenceRead 3ms
โœ… DownloadReconciliationTests testDeadTask_downloadFailed_isMarkedFailed <1ms
โœ… DownloadReconciliationTests testDeadTask_downloadNeeded_isRestarted 3ms
โœ… DownloadReconciliationTests testDeadTask_downloadSuccessful_isCleanedUp 2ms
โœ… DownloadReconciliationTests testDeadTask_downloading_isRestarted <1ms
โœ… DownloadReconciliationTests testDeadTask_holding_isCleanedUp 39ms
โœ… DownloadReconciliationTests testDeadTask_noRegistryEntry_isCleanedUp 2ms
โœ… DownloadReconciliationTests testDeadTask_returning_isCleanedUp <1ms
โœ… DownloadReconciliationTests testDeadTask_samlStarted_isRestarted 1ms
โœ… DownloadReconciliationTests testDeadTask_unregistered_isCleanedUp <1ms
โœ… DownloadReconciliationTests testDeadTask_unsupported_isCleanedUp <1ms
โœ… DownloadReconciliationTests testDeadTask_used_isCleanedUp 2ms
โœ… DownloadReconciliationTests testEmptyPersisted_yieldsNoDecisions 24ms
โœ… DownloadReconciliationTests testLiveTask_isAdopted_evenIfRegistrySaysFailed 71ms
โœ… DownloadReconciliationTests testLiveTask_isAdopted_evenWithNoRegistryEntry 2ms
โœ… DownloadReconciliationTests testLiveTask_isAdopted_notRestarted_downloadingState 1ms
โœ… DownloadReconciliationTests testMixedBatch_eachRecordDecidedIndependently_orderPreserved 5ms
โœ… DownloadReconciliationTests testTwoLiveRecords_bothAdopted_withOwnTaskIdentifiers <1ms
โœ… DownloadRedirectTests testBearerTokenJSON_shouldUseDistributorToken_notPalaceToken 1ms
โœ… DownloadRedirectTests testRedirectRequest_crossDomain_shouldNotContainAuthHeader 2ms
โœ… DownloadRedirectTests testRedirectRequest_sameDomain_shouldNotContainAuthHeader <1ms
โœ… DownloadRedirectTests testRedirectRequest_shouldNotContainAuthHeader_whenFollowingRedirect 2ms
โœ… DownloadRedirectTests testRedirect_httpsToHttp_shouldBeBlocked 1ms
โœ… DownloadRedirectTests testRedirect_httpsToHttps_shouldBeAllowed 88ms
โœ… DownloadRedirectTests testRedirect_maxRedirectAttempts_shouldBeEnforced 1ms
โœ… DownloadResumeAfterKillTests testCancel_at99PercentProgress_resetsStateAndClearsMaps 25ms
โœ… DownloadResumeAfterKillTests testMoveFile_overStalePartialAtDestination_removesAndReplaces 46ms
โœ… DownloadResumeAfterKillTests testReplaceBook_missingSourceAfterKill_failsCleanly 13ms
โœ… DownloadResumeAfterKillTests testReplaceBook_noDoubleWriteOrConcatenation 43ms
โœ… DownloadResumeAfterKillTests testReplaceBook_partialAtDestination_isReplacedByFreshFullPayload 11ms
โœ… DownloadResumeAfterKillTests testReplaceBook_truncatedResumePayload_failsValidationAndStateUnchanged 77ms
โœ… DownloadResumeAfterKillTests testValidateDownloadedFile_after99PercentCancelLeavesZeroBytes_returnsFalse 67ms
โœ… DownloadSlotManagementTests testHoldingState_bookRegistryTracksCorrectly 126ms
โœ… DownloadSlotManagementTests testStateTransition_completeDownloadFlow 366ms
โœ… DownloadSlotManagementTests testStateTransition_downloadingToFailed 77ms
โœ… DownloadSlotManagementTests testStateTransition_downloadingToHolding 44ms
โœ… DownloadSlotManagementTests testStateTransitions_holdingStateIsTracked 27ms
โœ… DownloadStartCoordinatorContractTests test_startDownload_downloadNeeded_callsProcessWithCredentials 46ms
โœ… DownloadStartCoordinatorContractTests test_startDownload_downloadSuccessful_isNonsensical_returns 7ms
โœ… DownloadStartCoordinatorContractTests test_startDownload_downloadingState_isShortCircuited 832ms
โœ… DownloadStartCoordinatorContractTests test_startDownload_holding_callsStartBorrow_withAttemptDownloadTrue 173ms
โœ… DownloadStartCoordinatorContractTests test_startDownload_unregistered_routesThroughProcessUnregistered 2.02s
โœ… DownloadStartCoordinatorTests testStartBorrow_resultsInHolding_releasesSlotAndSchedules 20ms
โœ… DownloadStartCoordinatorTests testStartBorrow_success_invokesCompletionAndDoesNotReleaseSlot 11ms
โœ… DownloadStartCoordinatorTests testStartBorrow_throws_releasesSlotAndSchedulesAndCallsCompletion 11ms
โœ… DownloadStartCoordinatorTests testStartDownloadAsync_alreadyDownloadingState_skips 31ms
โœ… DownloadStartCoordinatorTests testStartDownloadAsync_capExceeded_enqueuesPending 10ms
โœ… DownloadStartCoordinatorTests testStartDownloadAsync_credentialsAvailable_dispatches 10ms
โœ… DownloadStartCoordinatorTests testStartDownloadAsync_existingDownloadInProgress_skipsDuplicate 20ms
โœ… DownloadStartCoordinatorTests testStartDownloadAsync_terminalState_isNonsensicalNoOp 11ms
โœ… DownloadStartCoordinatorTests testStartDownloadAsync_unregisteredState_callsProcessUnregisteredFirst 20ms
โœ… DownloadStartDispatcherTests testProcessDownloadWithCredentials_epubBook_stillCallsStartBorrow 5ms
โœ… DownloadStartDispatcherTests testProcessDownloadWithCredentials_holding_routesToStartBorrow 6ms
โœ… DownloadStartDispatcherTests testProcessDownloadWithCredentials_nonBorrowStates_doNotCallStartBorrow 6ms
โœ… DownloadStartDispatcherTests testProcessDownloadWithCredentials_overdriveDistributorEpub_doesNotRouteToOverdriveHandler 1ms
โœ… DownloadStartDispatcherTests testProcessDownloadWithCredentials_streamingHTMLBook_returnsEarlyWithoutCallingStartBorrow 2ms
โœ… DownloadStartDispatcherTests testProcessDownloadWithCredentials_streamingHTMLBook_unregisteredState_alsoReturnsEarly 1ms
โœ… DownloadStartDispatcherTests testProcessDownloadWithCredentials_unregistered_routesToStartBorrow 2ms
โœ… DownloadStartDispatcherTests testProcessRegularDownload_downloadNeededAutoBorrow_completionFires_withDownloadingState 5ms
โœ… DownloadStartDispatcherTests testProcessRegularDownload_downloadNeededAutoBorrow_completionFires_withHoldingState 22ms
โœ… DownloadStartDispatcherTests testProcessRegularDownload_downloadNeededWithBorrowLink_triggersAutoBorrow 2ms
โœ… DownloadStartDispatcherTests testProcessRegularDownload_expiredBookWithBorrowLink_triggersReBorrow 6ms
โœ… DownloadStartDispatcherTests testProcessRegularDownload_initedRequestPassedThrough_overridesAcquisitionURL 2ms
โœ… DownloadStartDispatcherTests testProcessRegularDownload_nonSamlStateWithCookies_doesNotRouteToSAMLHandler 1ms
โœ… DownloadStartDispatcherTests testProcessRegularDownload_normalOpenAccess_callsAddDownloadTaskWithBearerRequest 5ms
โœ… DownloadStartDispatcherTests testProcessRegularDownload_samlStateWithoutCookies_fallsThroughToAddDownloadTask 3ms
โœ… DownloadStartDispatcherTests testProcessRegularDownload_samlState_routesThroughSAMLHandler 7ms
โœ… DownloadStartDispatcherTests testProcessRegularDownload_unexpiredBookWithBorrowLink_doesNotReBorrowViaExpiredBranch 2ms
โœ… DownloadStartDispatcherTests testProcessRegularDownload_wifiOnlyEnforced_failsAndDoesNotStartDownload 3ms
โœ… DownloadStartDispatcherTests testProcessRegularDownload_wifiOnlyToggleOff_offWifi_proceedsWithDownload 2ms
โœ… DownloadStartDispatcherTests testProcessRegularDownload_wifiOnlyToggleOn_onWifi_proceedsWithDownload 2ms
โœ… DownloadStartDispatcherTests testProcessUnregisteredState_hasBorrowLink_doesNotRegister 8ms
โœ… DownloadStartDispatcherTests testProcessUnregisteredState_loginNotRequired_noBorrowLink_registersAsDownloadNeeded 9ms
โœ… DownloadStartDispatcherTests testProcessUnregisteredState_loginRequiredNoOpenAccess_returnsUnregistered 1ms
โœ… DownloadStartDispatcherTests testProcessUnregisteredState_openAccessBook_registersAndReturnsDownloadNeeded 1ms
โœ… DownloadStartDispatcherTests testProcessUnregisteredState_openAccessWithLoginRequired_stillRegistersAsDownloadNeeded 1ms
โœ… DownloadStartDispatcherTests testProcessUnregisteredState_streamingHTMLOpenAccessBook_transitionsToDownloadNeeded 1ms
โœ… DownloadStateMachineIntegrationTests testBorrowResponseState_borrowFromLimited_reservedResponse_returnsRaceLossError <1ms
โœ… DownloadStateMachineIntegrationTests testBorrowResponseState_borrowFromReady_unavailableResponse_returnsRaceLossError 2ms
โœ… DownloadStateMachineIntegrationTests testBorrowResponseState_borrowFromUnlimited_unavailableResponse_returnsRaceLossError 2ms
โœ… DownloadStateMachineIntegrationTests testBorrowResponseState_placeHold_reservedResponse_noError 2ms
โœ… DownloadStateMachineIntegrationTests testBorrowResponseState_placeHold_unavailableResponse_noError <1ms
โœ… DownloadStateMachineIntegrationTests testBorrowResponseState_postLimited_returnsDownloadNeededWithNoError 2ms
โœ… DownloadStateMachineIntegrationTests testBorrowResponseState_postReady_returnsDownloadNeededWithNoError <1ms
โœ… DownloadStateMachineIntegrationTests testBorrowResponseState_postUnlimited_returnsDownloadNeededWithNoError <1ms
โœ… DownloadStateMachineIntegrationTests testState_completeFailedDownloadWithRetryFlow 2ms
โœ… DownloadStateMachineIntegrationTests testState_completeSuccessfulDownloadFlow 2ms
โœ… DownloadStateMachineIntegrationTests testState_downloadFailedToDownloading_retryTransition 2ms
โœ… DownloadStateMachineIntegrationTests testState_downloadNeededToDownloading_validTransition 4ms
โœ… DownloadStateMachineIntegrationTests testState_downloadingToDownloadFailed_validTransition 3ms
โœ… DownloadStateMachineIntegrationTests testState_downloadingToDownloadSuccessful_validTransition 3ms
โœ… DownloadStateMachineIntegrationTests testState_unregisteredToDownloadNeeded_validTransition 4ms
โœ… DownloadStateMachineTests testState_downloadFailed_canRetry 2ms
โœ… DownloadStateMachineTests testState_downloadNeeded_canTransitionToDownloadSuccessful 2ms
โœ… DownloadStateMachineTests testState_downloadNeeded_canTransitionToDownloading 2ms
โœ… DownloadStateMachineTests testState_downloading_canTransitionToFailed 14ms
โœ… DownloadStateMachineTests testState_downloading_canTransitionToSuccess 2ms
โœ… DownloadStateManagerTests testBookIdentifierToDownloadTask_storesAndRetrieves 5ms
โœ… DownloadStateManagerTests testCleanupDownload_removesAllTracking 3ms
โœ… DownloadStateManagerTests testCleanupDownload_removesOldTaskIdEntry 3ms
โœ… DownloadStateManagerTests testCleanupDownload_withoutTaskId_stillCleansInfo 2ms
โœ… DownloadStateManagerTests testConcurrentAccess_doesNotCrash 23ms
โœ… DownloadStateManagerTests testDownloadInfoAsync_cachesInCoordinator 1ms
โœ… DownloadStateManagerTests testDownloadInfoAsync_existingEntry_returnsInfo 1ms
โœ… DownloadStateManagerTests testDownloadInfoAsync_missingEntry_returnsNil <1ms
โœ… DownloadStateManagerTests testDownloadInfo_sync_returnsNilForMissing <1ms
โœ… DownloadStateManagerTests testDownloadProgress_noInfo_returnsZero 3ms
โœ… DownloadStateManagerTests testInit_defaultMaxConcurrentDownloads <1ms
โœ… DownloadStateManagerTests testInit_emptyCollections 1ms
โœ… DownloadStateManagerTests testResetAll_clearsEverything 4ms
โœ… DownloadStateManagerTests testTaskIdentifierToBook_recycleSameId_doesNotLeakOldBook 4ms
โœ… DownloadStateManagerTests testTaskIdentifierToBook_setBeforeRemove_intentionalOverwrite 4ms
โœ… DownloadStateManagerTests testTaskIdentifierToBook_storesAndRetrieves 2ms
โœ… DownloadTaskLifecycleServiceTests testHandleTaskCompletionError_cancelledError_doesNotAlert 6ms
โœ… DownloadTaskLifecycleServiceTests testHandleTaskCompletionError_realError_logsFailureAndAlerts 8ms
โœ… DownloadTaskLifecycleServiceTests testHandleTaskCompletionError_successPath_registersCompletionAndSchedules 3ms
โœ… DownloadTaskLifecycleServiceTests testHandleTaskCompletionError_unknownTask_isNoOp 5ms
โœ… DownloadTaskLifecycleServiceTests testRegisterStartedTask_announcesDownloadStartedAndNotifiesCenter 12ms
โœ… DownloadTaskLifecycleServiceTests testRegisterStartedTask_marksBookAsDownloadingInRegistry 33ms
โœ… DownloadTaskLifecycleServiceTests testRegisterStartedTask_resumesTheTask 10ms
โœ… DownloadTaskLifecycleServiceTests testRegisterStartedTask_storesDownloadInfoKeyedByBookIdentifier 14ms
โœ… DownloadTaskLifecycleServiceTests testRegisterStartedTask_storesTaskIdentifierToBookMapping 7ms
โœ… DownloadTaskPersistenceTests testRecord_encodeDecode_roundTripsAllFields 1ms
โœ… DownloadTaskPersistenceTests testRecord_nilExpectedBytes_roundTrips 3ms
โœ… DownloadTaskPersistenceTests testStateManager_cleanupDownload_alsoDropsPersistedRecord 20ms
โœ… DownloadTaskPersistenceTests testStateManager_persistStartedTask_thenList 4ms
โœ… DownloadTaskPersistenceTests testStateManager_removePersistedRecord 3ms
โœ… DownloadTaskPersistenceTests testStateManager_resetAll_clearsPersistence 20ms
โœ… DownloadTaskPersistenceTests testStateManager_transferRetryCounter_incrementsAndResets 31ms
โœ… DownloadTaskPersistenceTests testStore_corruptFile_returnsEmptyNotCrash 2ms
โœ… DownloadTaskPersistenceTests testStore_missingFile_returnsEmptyNotCrash <1ms
โœ… DownloadTaskPersistenceTests testStore_recordSameBookTwice_upsertsNotDuplicates 2ms
โœ… DownloadTaskPersistenceTests testStore_recordThenAll_returnsPersistedAcrossFreshInstances 2ms
โœ… DownloadTaskPersistenceTests testStore_removeAbsent_isNoOp 35ms
โœ… DownloadTaskPersistenceTests testStore_removeAll_empties 5ms
โœ… DownloadTaskPersistenceTests testStore_remove_dropsOnlyThatBook 3ms
โœ… DownloadThrottlingServiceTests testLimitActiveDownloads_alwaysCallsScheduleAfterPolicyApplied 19ms
โœ… DownloadThrottlingServiceTests testLimit_atCap_doesNothingButCallsSchedule 9ms
โœ… DownloadThrottlingServiceTests testLimit_overCap_audiobookTaskNotSuspended 12ms
โœ… DownloadThrottlingServiceTests testLimit_overCap_suspendsExcessNonAudiobookTasks 13ms
โœ… DownloadThrottlingServiceTests testLimit_underCap_resumesSuspendedTasks 8ms
โœ… DownloadThrottlingServiceTests testPauseAllDownloads_preservesAudiobookTasks 12ms
โœ… DownloadThrottlingServiceTests testPauseAllDownloads_suspendsAllNonAudiobookTasks 11ms
โœ… DownloadThrottlingServiceTests testResumeIntelligentDownloads_reAppliesCurrentCap 84ms
โœ… DownloadThrottlingServiceTests testSetupNetworkMonitoring_calledTwice_replacesPriorObserver 10ms
โœ… DownloadThrottlingServiceTests testSetupNetworkMonitoring_observesAppDidBecomeActiveAndReAppliesCap 8ms
โœ… DownloadTransferRetryTests testCancelledError_isNotRetried 3ms
โœ… DownloadTransferRetryTests testIsRegistryLoadedForReconcile_trueOnlyAfterLoad 9ms
โœ… DownloadTransferRetryTests testNoMappedBook_isNotRetried 2ms
โœ… DownloadTransferRetryTests testNonTransientError_isNotRetried 7ms
โœ… DownloadTransferRetryTests testTransientError_atCap_stopsRetryingAndResetsCounter 19ms
โœ… DownloadTransferRetryTests testTransientError_underCap_retriesAndIncrementsCounter 2.01s
โœ… DownloadWatchdogTests testDefaultConfiguration 17ms
โœ… DownloadWatchdogTests testStartAndStop 4ms
โœ… DownloadWatchdogTests testWatchdogConfiguration <1ms
โœ… EPUBKeyCommandsPP4289Tests testReaderKeyCommands_everyBindingClaimsPriorityOverSystem <1ms
โœ… EPUBKeyCommandsPP4289Tests testReaderKeyCommands_includesCmdComma_routedToSettings 5ms
โœ… EPUBKeyCommandsPP4289Tests testReaderKeyCommands_includesCmdW_routedToCloseReader <1ms
โœ… EPUBKeyCommandsPP4289Tests testReaderKeyCommands_preservesArrowLeftRightSpaceShiftSpaceEscape 2ms
โœ… EPUBModuleTests testEPUBModule_canBeInitialized <1ms
โœ… EPUBModuleTests testEPUBModule_conformsToReaderFormatModule 15ms
โœ… EPUBModuleTests testReaderError_epubNotValid_exists 6ms
โœ… EPUBModuleTests testReaderError_epubNotValid_isError <1ms
โœ… EPUBPositionTests testBookLocation_CreationFromDictionary 29ms
โœ… EPUBPositionTests testBookLocation_CreationWithValidData 2ms
โœ… EPUBPositionTests testBookLocation_DictionaryRoundTrip <1ms
โœ… EPUBPositionTests testBookLocation_FailsWithMissingLocationString 1ms
โœ… EPUBPositionTests testBookLocation_FailsWithMissingRenderer <1ms
โœ… EPUBPositionTests testLocationSimilarity_DifferentProgressions 69ms
โœ… EPUBPositionTests testLocationSimilarity_IdenticalLocations 9ms
โœ… EPUBPositionTests testLocatorRoundTrip_preservesCssSelectorPositionProgression_throughJSONValue 5ms
โœ… EPUBPositionTests testLocatorRoundTrip_withoutCssSelector_succeedsAndPreservesPosition 9ms
โœ… EPUBPositionTests testThrottlingInterval_Value <1ms
โœ… EPUBSearchViewModelTests testClearSearch_ResetsState <1ms
โœ… EPUBSearchViewModelTests testFetchNextBatch_WhenNotIdle_DoesNothing <1ms
โœ… EPUBSearchViewModelTests testFetchNextBatch_WithMoreResults_AppendsResults 18ms
โœ… EPUBSearchViewModelTests testInit_HasCorrectDefaults <1ms
โœ… EPUBSearchViewModelTests testSearch_CancelsInFlight_OnNewQuery 1ms
โœ… EPUBSearchViewModelTests testSearch_FiltersDuplicateResults 14ms
โœ… EPUBSearchViewModelTests testSearch_GroupsResultsByTitle 13ms
โœ… EPUBSearchViewModelTests testSearch_PublicationNotSearchable_SetsFailureState 1ms
โœ… EPUBSearchViewModelTests testSearch_SetsIsSearching 2ms
โœ… EPUBSearchViewModelTests testSearch_WithEmptyQuery_DoesNotSearch 1ms
โœ… EPUBSearchViewModelTests testSearch_WithError_SetsErrorMessage 4ms
โœ… EPUBSearchViewModelTests testSearch_WithIteratorError_SetsErrorState 1ms
โœ… EPUBSearchViewModelTests testSearch_WithNoResults_SetsEmptyState <1ms
โœ… EPUBSearchViewModelTests testSearch_WithResults_UpdatesResults 1ms
โœ… EPUBSearchViewModelTests testSearch_WithValidQuery_PerformsSearch 7ms
โœ… EPUBSearchViewModelTests testSelectResult_NavigatesToLocation <1ms
โœ… EPUBSearchViewModelTests testSelectResult_WithNilDelegate_DoesNotCrash <1ms
โœ… EPUBSearchViewModelTests testState_IsLoadingState_ReturnsCorrectValues <1ms
โœ… EPUBToolbarToggleTests testDoubleToggle_restoresOriginalState <1ms
โœ… EPUBToolbarToggleTests testDualPath_edgeTap_doesNotToggleToolbar <1ms
โœ… EPUBToolbarToggleTests testFixedDualPath_centerTap_togglesToolbarExactlyOnce 1ms
โœ… EPUBToolbarToggleTests testFixedDualPath_repeatedCenterTaps_alternateToolbarState 2ms
โœ… EPUBToolbarToggleTests testKeyboardNavigable_doubleToggle_restoresState 1ms
โœ… EPUBToolbarToggleTests testKeyboardNavigable_toggleToolbar_changesState 2ms
โœ… EPUBToolbarToggleTests testSingleToggle_changesToolbarVisibility <1ms
โœ… EPUBToolbarToggleTests testTapRegion_classifiesViewportInToThreeZones 2ms
โœ… EPUBToolbarToggleTests testTapRegion_threshold_isInclusiveOnEdgeAndExclusiveAtCenter <1ms
โœ… EPUBToolbarToggleTests testTapRegion_zeroWidthViewport_defaultsToCenter <1ms
โœ… EPUBToolbarToggleTests testUnfixedDualPath_centerTap_doubleTogglesToolbar 1ms
โœ… EmailAddressTests testEmail_withLeadingWhitespace_isTrimmed 24ms
โœ… EmailAddressTests testEmail_withTrailingWhitespace_isTrimmed 1ms
โœ… EmailAddressTests testEquality_differentRawValue_haveDifferentRawValue 88ms
โœ… EmailAddressTests testEquality_sameRawValue_haveSameRawValue 34ms
โœ… EmailAddressTests testInvalidEmail_emptyString 2ms
โœ… EmailAddressTests testInvalidEmail_justText 5ms
โœ… EmailAddressTests testInvalidEmail_multipleAtSigns 1ms
โœ… EmailAddressTests testInvalidEmail_noAtSign 1ms
โœ… EmailAddressTests testInvalidEmail_noDomain 3ms
โœ… EmailAddressTests testInvalidEmail_noLocalPart 1ms
โœ… EmailAddressTests testRawValue_matchesInput 8ms
โœ… EmailAddressTests testValidEmail_simpleAddress 2ms
โœ… EmailAddressTests testValidEmail_withDots 1ms
โœ… EmailAddressTests testValidEmail_withNumbers 2ms
โœ… EmailAddressTests testValidEmail_withPlus 1ms
โœ… EmailAddressTests testValidEmail_withSubdomain 3ms
โœ… EpubSampleFactoryTests testCreateSample_withBookWithoutSample_returnsError 5ms
โœ… EpubSampleFactoryTests testSamplePlayerError_fileSaveFailed_withUnderlyingError <1ms
โœ… EpubSampleFactoryTests testSamplePlayerError_sampleDownloadFailed_withUnderlyingError <1ms
โœ… EpubSampleFactoryTests testSamplePlayerError_threeDistinctCasesWithOptionalPayloads 2ms
โœ… EpubSampleFactoryTests testSampleURLWrappers_polymorphismAllowsCallSiteRouting <1ms
โœ… ErrorActivityTrackerTests testCategoryRawValues 5ms
โœ… ErrorActivityTrackerTests testClear_removesAllEntries 12ms
โœ… ErrorActivityTrackerTests testDisplayString_containsTimestampCategoryAndMessage 6ms
โœ… ErrorActivityTrackerTests testLog_allCategories_areStoredCorrectly 6ms
โœ… ErrorActivityTrackerTests testLog_capturesFileAndLine 4ms
โœ… ErrorActivityTrackerTests testLog_exceedingMaxEntries_trimmsOldest 21ms
โœ… ErrorActivityTrackerTests testLog_multipleEntries_preservesOrder 6ms
โœ… ErrorActivityTrackerTests testLog_singleEntry_appearsInSnapshot 15ms
โœ… ErrorActivityTrackerTests testLog_timestampsAreMonotonicallyIncreasing 18ms
โœ… ErrorActivityTrackerTests testRecentActivities_defaultParameter_returns5Minutes 4ms
โœ… ErrorActivityTrackerTests testRecentActivities_filtersOldEntries 29ms
โœ… ErrorActivityTrackerTests testShortSource_containsFileAndLine 11ms
โœ… ErrorDetailTests testBookInfo_withNilIdentifier_isNil 4ms
โœ… ErrorDetailTests testCapture_populatesBasicFields 35ms
โœ… ErrorDetailTests testCapture_populatesDeviceContext 24ms
โœ… ErrorDetailTests testCapture_withBookInfo_populatesBookContext 160ms
โœ… ErrorDetailTests testCapture_withError_storesUnderlyingError 19ms
โœ… ErrorDetailTests testCapture_withoutBookInfo_bookInfoIsNil 14ms
โœ… ErrorDetailTests testFormattedReport_containsActivityTrailSection 6ms
โœ… ErrorDetailTests testFormattedReport_containsDeviceSection 14ms
โœ… ErrorDetailTests testFormattedReport_containsErrorSection 6ms
โœ… ErrorDetailTests testFormattedReport_containsHeader 12ms
โœ… ErrorDetailTests testFormattedReport_withBookInfo_containsBookSection 9ms
โœ… ErrorDetailTests testFormattedReport_withError_containsErrorDetails 14ms
โœ… ErrorDetailViewControllerGapTests testErrorDetailVC_rendersDeviceContextLines 23ms
โœ… ErrorDetailViewControllerGapTests testErrorDetailVC_rendersFieldsCorrectly 12ms
โœ… ErrorDetailViewControllerGapTests testErrorDetailVC_rendersSectionsCorrectly 76ms
โœ… ErrorDetailViewControllerTests testErrorDetailViewController_Init_setsTitleAndPopulatesTextView 9ms
โœ… ErrorDetailViewControllerTests testErrorDetailViewController_NavigationItems_AreConfigured 8ms
โœ… ErrorDetailViewControllerTests testErrorDetailViewController_RenderContent_ContainsDeviceFields 22ms
โœ… ErrorDetailViewControllerTests testErrorDetailViewController_RenderContent_ContainsErrorTitle 4ms
โœ… ErrorDetailViewControllerTests testErrorDetailViewController_RenderContent_ContainsSection 4ms
โœ… ErrorDetailViewControllerTests testErrorDetailViewController_RenderContent_EmptyTrailShowsMessage 4ms
โœ… ErrorDetailViewControllerTests testErrorDetailViewController_ViewDidLoad_HasTextView 3ms
โœ… ErrorDetailViewControllerTests testErrorDetail_FormattedReport_ContainsTimestamp <1ms
โœ… ErrorDetailViewControllerTests testErrorDetail_FormattedReport_DeviceContextFields <1ms
โœ… ErrorDetailViewControllerTests testErrorDetail_FormattedReport_EmptyActivityTrail 1ms
โœ… ErrorDetailViewControllerTests testErrorDetail_FormattedReport_WithBookInfo_ContainsBookSection <1ms
โœ… ErrorDetailViewControllerTests testErrorDetail_FormattedReport_WithUnderlyingError_ContainsDomain <1ms
โœ… ErrorDetailViewControllerTests testErrorDetail_FormattedReport_includesAllSectionsAndPassesThroughTitleAndMessage 3ms
โœ… ErrorDetailViewControllerTests testErrorDetail_FormattedReport_omitsBookSectionWhenNoBookInfoButRendersRestOfReport 2ms
โœ… ErrorLogExporterTests testErrorLogData_deviceLogsField_acceptsEmptyData 5ms
โœ… ErrorLogExporterTests testErrorLogData_deviceLogsField_acceptsLargeData <1ms
โœ… ErrorLogExporterTests testErrorLogData_initializesWithAllFields 47ms
โœ… ErrorLogExporterTests testErrorLogExporter_sharedInstance_isNotNil 19ms
โœ… ErrorLogExporterTests testPP3651_collectLogsForPreview_containsPatronIDField 83ms
โœ… ExecutorNetworkHermeticityTests testSharedExecutor_GETToNonStubHost_isBlocked_notRealNetwork 21ms
โœ… ExpiredLoanStringsTests testExpiredLoanMessageWithDate_containsFormatSpecifier <1ms
โœ… ExpiredLoanStringsTests testExpiredLoanMessageWithDate_formatsDateCorrectly 1ms
โœ… ExpiredLoanStringsTests testExpiredLoanMessage_isNonEmpty 101ms
โœ… ExpiredLoanStringsTests testExpiredLoanMessage_mentionsRemoval <1ms
โœ… ExpiredLoanStringsTests testExpiredLoanTitle_isNonEmpty 1ms
โœ… FacetEnumTests testFacet_LocalizedStrings_AreDistinct <1ms
โœ… FacetEnumTests testFacet_LocalizedStrings_AreNotEmpty <1ms
โœ… FacetEnumTests testFacet_LocalizedStrings_MatchStringsFile 35ms
โœ… FacetToolbarAccessibilityTests testFilterButtonLabel_differsBasedOnFilterState 2ms
โœ… FacetToolbarAccessibilityTests testFilterButtonLabel_noFiltersApplied <1ms
โœ… FacetToolbarAccessibilityTests testFilterButtonLabel_withFiltersApplied 8ms
โœ… FacetToolbarAccessibilityTests testSortButtonLabel_hasConsistentFormat 202ms
โœ… FacetToolbarAccessibilityTests testSortButtonLabel_includesSortOption <1ms
โœ… FacetViewModelLogoDelegateTests testAccountScreenURL_WithValidHomePageURL 269ms
โœ… FacetViewModelLogoDelegateTests testActiveSort_DefaultsToFirstFacet_AuthorFirst 359ms
โœ… FacetViewModelLogoDelegateTests testActiveSort_DefaultsToFirstFacet_TitleFirst 357ms
โœ… FacetViewModelLogoDelegateTests testLogoDidUpdate_SetsLogo 290ms
โœ… FacetViewModelTests testActiveSortPublished 2ms
โœ… FacetViewModelTests testChangingSortMultipleTimes 2ms
โœ… FacetViewModelTests testCurrentAccountURLWithNilAccount 2ms
โœ… FacetViewModelTests testEmptyGroupName 7ms
โœ… FacetViewModelTests testFacetLocalizedStrings <1ms
โœ… FacetViewModelTests testFacetRawValues <1ms
โœ… FacetViewModelTests testFacetsArrayPublished 2ms
โœ… FacetViewModelTests testGroupNamePublished 3ms
โœ… FacetViewModelTests testGroupNameWithSpecialCharacters 2ms
โœ… FacetViewModelTests testInitWithAuthorAndTitleFacets 2ms
โœ… FacetViewModelTests testInitWithSingleFacet 3ms
โœ… FacetViewModelTests testInitWithTitleFirst 28ms
โœ… FacetViewModelTests testLogoInitiallyNilWithoutAccount 2ms
โœ… FacetViewModelTests testMultipleSubscribersToActiveSort 2ms
โœ… FacetViewModelTests testSettingSameSortValue 2ms
โœ… FacetViewModelTests testShowAccountScreenInitiallyFalse 26ms
โœ… FacetViewModelTests testShowAccountScreenToggle 2ms
โœ… FacetViewModelTests testUpdatingFacetsDoesNotChangeActiveSort 3ms
โœ… FetchManifestWithBearerTokenLCPSafetyTests testFetchManifestWithBearerToken_receivingLCPLicense_returnsJSON 19ms
โœ… FetchManifestWithBearerTokenTests testEmptyResponseBody_returnsNil 289ms
โœ… FetchManifestWithBearerTokenTests testHTMLResponse_returnsNil 27ms
โœ… FetchManifestWithBearerTokenTests testHTTP401_returnsNil 3ms
โœ… FetchManifestWithBearerTokenTests testHTTP500_returnsNil 4ms
โœ… FetchManifestWithBearerTokenTests testInvalidJSON_returnsNil 4ms
โœ… FetchManifestWithBearerTokenTests testJSONArray_returnsNil 102ms
โœ… FetchManifestWithBearerTokenTests testSuccess_requestsFromCorrectURL 5ms
โœ… FetchManifestWithBearerTokenTests testSuccess_returnsManifestJSON 10ms
โœ… FetchManifestWithBearerTokenTests testSuccess_sendsCorrectBearerTokenHeader 11ms
โœ… FetchOpenAccessManifestLCPSafetyTests testBearerTokenResponseVsLCPLicense_areDistinct 8ms
โœ… FetchOpenAccessManifestLCPSafetyTests testLCPLicenseResponse_notDetectedAsBearerToken_inFetchFlow 7ms
โœ… FetchOpenAccessManifestLCPSafetyTests testLCPLicenseResponse_wouldBeReturnedAsManifest_withoutRouting 3ms
โœ… FetchOpenAccessManifestLCPSafetyTests testManifestVsLCPLicense_structuralDifferences 3ms
โœ… FileURLGenerationTests testFileUrl_contentDirectoryExists 4ms
โœ… FileURLGenerationTests testFileUrl_deterministicForSameIdentifier 19ms
โœ… FileURLGenerationTests testFileUrl_epubBook_hasEpubExtension 61ms
โœ… FindawayChapterStatusGuardTests testFindawayObservationPattern_RetainsObserverForDuration 2ms
โœ… FindawaySavedVsPlayedTests testDuneOversubdivided_savedBookmarkKeyEqualsPlayedTrack 24ms
โœ… FloatTPPAdditionsTests testApproxEqual_isSymmetric <1ms
โœ… FloatTPPAdditionsTests testApproxEqual_returnsFalseWhenRightHandSideIsNil 3ms
โœ… FloatTPPAdditionsTests testApproxEqual_returnsTrueOnlyForValuesWithinEpsilon 3ms
โœ… FloatTPPAdditionsTests testRoundTo_formatsAsPercentageWithSpecifiedDecimalPlaces 7ms
โœ… FloatTPPAdditionsTests testRoundTo_preservesTrailingZerosFromFormatSpecifier 2ms
โœ… FocusIndicationTests testAccessibilityElements_areOrderedLogically 4ms
โœ… FocusIndicationTests testCatalogCell_accessibilityLabelBehavior 8ms
โœ… FocusIndicationTests testFocusColor_hasSufficientContrastInDarkMode 213ms
โœ… FocusIndicationTests testFocusColor_hasSufficientContrastInLightMode <1ms
โœ… FocusIndicationTests testFocusableButton_hasFocusEffect 5ms
โœ… FocusIndicationTests testReaderToolbar_buttonsInLogicalOrder 42ms
โœ… FocusIndicationTests testTPPRoundedButton_isAccessible 145ms
โœ… FontManagerTests testAllFontFamiliesHaveCSSValue <1ms
โœ… FontManagerTests testAllFontFamiliesHaveCategory <1ms
โœ… FontManagerTests testAllFontFamiliesHaveDisplayName <1ms
โœ… FontManagerTests testAllFontFamiliesHavePreviewText <1ms
โœ… FontManagerTests testAvailableFamiliesNotEmpty <1ms
โœ… FontManagerTests testFamilyAvailabilityForSystemFonts 2ms
โœ… FontManagerTests testFontFamilyCategorization <1ms
โœ… FontManagerTests testFontFamilyIsCodable 3ms
โœ… FontManagerTests testFontsInCategory 10ms
โœ… FontManagerTests testNonExistentFontIsNotAvailable 1ms
โœ… FontManagerTests testOpenDyslexicCSSContainsFontName <1ms
โœ… FontManagerTests testRegisterCustomFontsDoesNotCrash 36ms
โœ… FontManagerTests testRegisterNonexistentFontReturnsFalse <1ms
โœ… FontManagerTests testSharedInstanceExists 3ms
โœ… FontManagerTests testSwiftUIFontCreation 1ms
โœ… FontManagerTests testSystemFontsAreAvailable 24ms
โœ… FontManagerTests testUIFontCreation 6ms
โœ… ForceResetTests testConsume_clearsTheUserDefaultsKey 14ms
โœ… ForceResetTests testConsume_secondCallAfterSet_returnsFalse 4ms
โœ… ForceResetTests testConsume_supportsMultipleSetThenConsumeCycles 7ms
โœ… ForceResetTests testConsume_whenFlagNeverSet_returnsFalse 8ms
โœ… ForceResetTests testConsume_whenFlagSet_returnsTrueOnce 7ms
โœ… ForceResetTests testRegressionForBug_resetAccountForcesNextOIDCSessionEphemeral_perHelpSpot17716 3ms
โœ… GeneralCacheClearOnUpdateTests testGeneralCache_clearOnUpdate_firstLaunch_purgesAndSeedsFlag 2ms
โœ… GeneralCacheClearOnUpdateTests testGeneralCache_clearOnUpdate_sameVersion_doesNotPurge 3ms
โœ… GeneralCacheClearOnUpdateTests testGeneralCache_clearOnUpdate_versionGateStaysSync_purgeOffMain 7ms
โœ… GeneralCacheTests testCachePolicy_cacheFirst_callsFetcher_onCacheMiss 3ms
โœ… GeneralCacheTests testCachePolicy_cacheFirst_returnsCachedValue_whenPresent 7ms
โœ… GeneralCacheTests testCachePolicy_cacheFirst_usesCache_whenFetcherFails 4ms
โœ… GeneralCacheTests testCachePolicy_noCache_alwaysFetches 2ms
โœ… GeneralCacheTests testCache_withCodableValues 7ms
โœ… GeneralCacheTests testCache_withIntKeys 2ms
โœ… GeneralCacheTests testClearAllCaches_preservesBundleIDDirectory 98ms
โœ… GeneralCacheTests testClearMemory_removesMemoryEntries <1ms
โœ… GeneralCacheTests testClear_removesAllEntries 1ms
โœ… GeneralCacheTests testDiskCache_persistsValue 4ms
โœ… GeneralCacheTests testFileURL_returnsURL <1ms
โœ… GeneralCacheTests testGet_unknownKey_returnsNil 1ms
โœ… GeneralCacheTests testMemoryAndDisk_persistsValue 3ms
โœ… GeneralCacheTests testNoneMode_doesNotStore 20ms
โœ… GeneralCacheTests testRemove_deletesEntry 2ms
โœ… GeneralCacheTests testRemove_nonexistentKey_doesNotCrash 1ms
โœ… GeneralCacheTests testSet_afterExternalDirectoryDeletion_recreatesAndSucceeds 110ms
โœ… GeneralCacheTests testSet_andGet_returnsValue <1ms
โœ… GeneralCacheTests testSet_overwrite_updatesValue 16ms
โœ… GeneralCacheTests testSet_withExpiration_isAvailableBeforeExpiry <1ms
โœ… GroupEnumTests testGroup_UsedAsSection_FacetViewModelGroupNameMatches 2ms
โœ… HTMLTextViewTests testAngleBracketsWithSpaces 10ms
โœ… HTMLTextViewTests testBOMCausesIssuesWithoutSanitization 35ms
โœ… HTMLTextViewTests testBOMCharacter 22ms
โœ… HTMLTextViewTests testBOMCharacterIsRemoved 17ms
โœ… HTMLTextViewTests testControlCharacters 14ms
โœ… HTMLTextViewTests testControlCharactersAreRemoved 14ms
โœ… HTMLTextViewTests testControlCharactersCauseIssuesWithoutSanitization 34ms
โœ… HTMLTextViewTests testDataURL 41ms
โœ… HTMLTextViewTests testDeeplyNestedTags 21ms
โœ… HTMLTextViewTests testDefensiveMeasuresPreventCrashes 260ms
โœ… HTMLTextViewTests testEmptyParagraph 16ms
โœ… HTMLTextViewTests testEmptyString <1ms
โœ… HTMLTextViewTests testExistingDoctypeNotDoubleWrapped 17ms
โœ… HTMLTextViewTests testExistingHTMLTagNotDoubleWrapped 14ms
โœ… HTMLTextViewTests testFallbackStripsHTMLTags 17ms
โœ… HTMLTextViewTests testFastPathLongContent 3ms
โœ… HTMLTextViewTests testFastPathLongContentWithHTML 5ms
โœ… HTMLTextViewTests testFastPathNoHTMLTags <1ms
โœ… HTMLTextViewTests testFormElements 43ms
โœ… HTMLTextViewTests testHTML5Elements 266ms
โœ… HTMLTextViewTests testHTMLDocumentWrapping 12ms
โœ… HTMLTextViewTests testHTMLEntities 14ms
โœ… HTMLTextViewTests testHTMLTagsAreNotDisplayedAsText 359ms
โœ… HTMLTextViewTests testHTMLWithMultipleTags 393ms
โœ… HTMLTextViewTests testInvalidUTF8Sequence 21ms
โœ… HTMLTextViewTests testLeadingWhitespaceIsTrimmed 23ms
โœ… HTMLTextViewTests testMalformedBrokenAttributes 16ms
โœ… HTMLTextViewTests testMalformedEmptyTags 13ms
โœ… HTMLTextViewTests testMalformedNestedTags 12ms
โœ… HTMLTextViewTests testMalformedOnlyClosingTag 8ms
โœ… HTMLTextViewTests testMalformedOnlyOpeningTag 22ms
โœ… HTMLTextViewTests testMalformedRandomAngleBrackets 20ms
โœ… HTMLTextViewTests testMalformedTable 273ms
โœ… HTMLTextViewTests testMalformedUnclosedTags 22ms
โœ… HTMLTextViewTests testMathMLContent 37ms
โœ… HTMLTextViewTests testMixedContentRapidCalls 1.33s
โœ… HTMLTextViewTests testMultipleDoctypes 19ms
โœ… HTMLTextViewTests testMultipleEmptyParagraphs 268ms
โœ… HTMLTextViewTests testNullCharacterInHTML 12ms
โœ… HTMLTextViewTests testNumericEntities 14ms
โœ… HTMLTextViewTests testOPDSSummaryPatterns 65ms
โœ… HTMLTextViewTests testOnlyAngleBracket 539ms
โœ… HTMLTextViewTests testOnlyClosingAngleBracket <1ms
โœ… HTMLTextViewTests testOnlyWhitespaceBeforeTag 17ms
โœ… HTMLTextViewTests testPlainTextWithoutHTML <1ms
โœ… HTMLTextViewTests testProcessingInstruction 12ms
โœ… HTMLTextViewTests testRapidBookDetailViewSimulation 6.17s
โœ… HTMLTextViewTests testRapidSequentialCalls 2.17s
โœ… HTMLTextViewTests testRefugeeGraphicNovelSummaryPattern 124ms
โœ… HTMLTextViewTests testSVGContent 36ms
โœ… HTMLTextViewTests testSafeVsUnsafeParsingComparison 268ms
โœ… HTMLTextViewTests testScriptTag 19ms
โœ… HTMLTextViewTests testSimpleHTMLParagraph 12ms
โœ… HTMLTextViewTests testStartsWithCDATA 10ms
โœ… HTMLTextViewTests testStartsWithClosingTag 19ms
โœ… HTMLTextViewTests testStartsWithComment 10ms
โœ… HTMLTextViewTests testStartsWithDoctype 265ms
โœ… HTMLTextViewTests testStartsWithEndOfDocument 20ms
โœ… HTMLTextViewTests testStartsWithXMLDeclaration 14ms
โœ… HTMLTextViewTests testStyleTag 21ms
โœ… HTMLTextViewTests testSummaryWithLineBreaks 16ms
โœ… HTMLTextViewTests testSummaryWithLinks 25ms
โœ… HTMLTextViewTests testTableHTML 30ms
โœ… HTMLTextViewTests testTypicalBookDescriptionHTML 13ms
โœ… HTMLTextViewTests testTypicalBookSummary 17ms
โœ… HTMLTextViewTests testUnclosedScriptTag 267ms
โœ… HTMLTextViewTests testUnexpectedSummaryStarts 90ms
โœ… HTMLTextViewTests testUnicodeContent 29ms
โœ… HTMLTextViewTests testVeryLongAttribute 14ms
โœ… HTMLTextViewTests testWhitespaceOnly <1ms
โœ… HoldNotificationClassificationTests testIsHoldRelated_returnsTrueForHoldOrReservationKeywords_falseOtherwise <1ms
โœ… HoldNotificationClassificationTests testIsHoldRelated_withTypeHold_returnsTrue 3ms
โœ… HoldsBadgeCountTests testBadgeCount_allReserved_returnsZero 3ms
โœ… HoldsBadgeCountTests testBadgeCount_mixedHolds_countsOnlyReady 4ms
โœ… HoldsBadgeCountTests testBadgeCount_multipleReady_countsAll 3ms
โœ… HoldsBadgeCountTests testBadgeCount_noBooks_returnsZero 2ms
โœ… HoldsBadgeCountTests testBadgeCount_oneReadyBook_returnsOne 3ms
โœ… HoldsBadgeCountTests testBadgeCount_oneReservedBook_returnsZero 36ms
โœ… HoldsBadgeCountTests testBadgeCount_regularBook_notCounted 83ms
โœ… HoldsBadgeCountTests testReadyBookHasReadyAvailability 2ms
โœ… HoldsBadgeCountTests testReservedBookHasReservedAvailability 2ms
โœ… HoldsBookViewModelTests testBookPropertyReturnsCorrectBook 8ms
โœ… HoldsBookViewModelTests testHoldReady_DistinguishesFromReserved 22ms
โœ… HoldsBookViewModelTests testHoldReady_IdentifiesReadyHolds 2ms
โœ… HoldsBookViewModelTests testIdMatchesBookIdentifier 62ms
โœ… HoldsBookViewModelTests testIsReservedForHoldBook 2ms
โœ… HoldsBookViewModelTests testIsReservedForNonReservedBook 9ms
โœ… HoldsBookViewModelTests testIsReservedForReadyBook 2ms
โœ… HoldsBookViewModelTests testIsReserved_WithLimitedAvailability_ReturnsFalse 2ms
โœ… HoldsReducerTests testDismissSyncError_clearsTheErrorMessage <1ms
โœ… HoldsReducerTests testRegistryChanged_partitionsBooksByReservedStatus 9ms
โœ… HoldsReducerTests testRegistryChanged_withActiveSearch_leavesVisibleBooksAlone 6ms
โœ… HoldsReducerTests testSearchQueryChanged_nonEmpty_returnsFilterEffectThatYieldsFilterCompleted 244ms
โœ… HoldsReducerTests testSearchQueryChanged_toEmpty_restoresAllHeldBooks 3ms
โœ… HoldsReducerTests testSyncBegan_setsLoadingTrueAndClearsPreviousError 1ms
โœ… HoldsReducerTests testSyncEnded_setsLoadingFalse 2ms
โœ… HoldsReducerTests testSyncFailed_whenAnonymous_suppressesErrorBanner <1ms
โœ… HoldsReducerTests testSyncFailed_whenAuthenticatedWithNoCacheAndNoMessage_fallsBackToGenericText 3ms
โœ… HoldsReducerTests testSyncFailed_whenAuthenticatedWithNoCache_surfacesServerDetailMessage <1ms
โœ… HoldsReducerTests testSyncFailed_whenCachedDataVisible_suppressesErrorBanner 15ms
โœ… HoldsSyncFailureTests testDismissSyncError_ClearsError 8ms
โœ… HoldsSyncFailureTests testSyncBegan_ClearsPreviousSyncError 10ms
โœ… HoldsSyncFailureTests testSyncFailure_AnonymousLibrary_SuppressesErrorBanner_EvenWhenHasCredentialsRacesTrue 4ms
โœ… HoldsSyncFailureTests testSyncFailure_AnonymousUser_SuppressesErrorBanner 3ms
โœ… HoldsSyncFailureTests testSyncFailure_AuthenticatedUser_ShowsErrorBanner 5ms
โœ… HoldsSyncFailureTests testSyncFailure_LibraryNeedsAuth_AndHasCredentials_ShowsBanner 9ms
โœ… HoldsSyncFailureTests testSyncFailure_SetsSyncError 15ms
โœ… HoldsSyncFailureTests testSyncFailure_StaleDataPersists_ErrorSuppressedWhenCachedDataExists 9ms
โœ… HoldsSyncFailureTests testSyncFailure_StopsLoading 19ms
โœ… HoldsSyncFailureTests testSyncFailure_WithProblemDocument_ShowsServerMessage 5ms
โœ… HoldsSyncFailureTests testSyncFailure_WithTitleOnly_UsesTitle 4ms
โœ… HoldsSyncFailureTests testSyncFailure_WithoutProblemDocument_ShowsGenericMessage 5ms
โœ… HoldsViewModelTests testFilterBooksWithEmptyQueryReturnsAll 12ms
โœ… HoldsViewModelTests testFilterBooksWithQuery 15ms
โœ… HoldsViewModelTests testFilterBooks_CaseInsensitive 9ms
โœ… HoldsViewModelTests testFilterBooks_WithAuthorMatch_ReturnsMatchingBooks 50ms
โœ… HoldsViewModelTests testFilterBooks_WithTitleMatch_ReturnsMatchingBooks 9ms
โœ… HoldsViewModelTests testInitialState_EmptyBookLists 5ms
โœ… HoldsViewModelTests testInitialState_HasCorrectDefaults 3ms
โœ… HoldsViewModelTests testIsLoading_PublishesChanges 9ms
โœ… HoldsViewModelTests testLoadHolds_WithEmptyResult_SetsEmptyState 49ms
โœ… HoldsViewModelTests testLoadHolds_WithSuccess_UpdatesHolds 23ms
โœ… HoldsViewModelTests testOpenSearchDescriptionHumanReadableDescription 15ms
โœ… HoldsViewModelTests testOpenSearchDescription_IncludesAllBooks 5ms
โœ… HoldsViewModelTests testRegistryDidChange_ReloadsData 311ms
โœ… HoldsViewModelTests testReloadData_CallsMethod 6ms
โœ… HoldsViewModelTests testReloadData_HandlesMultipleBooks 14ms
โœ… HoldsViewModelTests testReloadData_SeparatesReservedAndReadyBooks 36ms
โœ… HoldsViewModelTests testSearchQueryUpdate 17ms
โœ… HoldsViewModelTests testSelectNewLibraryToggle 4ms
โœ… HoldsViewModelTests testShowLibraryAccountViewToggle 2ms
โœ… HoldsViewModelTests testShowSearchSheetToggle 51ms
โœ… HoldsViewModelTests testSyncBeganSetsLoadingTrue 9ms
โœ… HoldsViewModelTests testSyncEndedSetsLoadingFalse 314ms
โœ… HoldsViewModelTests testVisibleBooks_PublishesChanges 311ms
โœ… HostFailureTrackerTests testHostFailureTracker_reachabilityChange_resetsCircuit 1ms
โœ… HostFailureTrackerTests testHostFailureTracker_singleFailure_belowThreshold_notTripped 5ms
โœ… ImageCacheContinuationTests testGetAsync_whenOperationsCancelledWhileQueued_everyCallResumes 16ms
โœ… ImageCacheTypeTests testImageCacheType_defaultSetUses7DayTTL 259ms
โœ… ImageCoverKeyUnificationTests testCoverKey_cellAndPrefetch_coalesceForSmallDisplay <1ms
โœ… ImageCoverKeyUnificationTests testCoverSourceURL_smallDisplayWithNoThumbnail_fallsBackToFullSize <1ms
โœ… ImageLoaderTests testClearAll_clearsUnderlyingImageCache 4ms
โœ… ImageLoaderTests testCompletionBridge_book_deallocatedBeforeCompletion_noCrash 12ms
โœ… ImageLoaderTests testCompletionBridge_cover_invokesOnMainThread 25ms
โœ… ImageLoaderTests testCompletionBridge_thumbnail_invokesOnMainThread 8ms
โœ… ImageLoaderTests testCoverImage_cacheHit_returnsCachedImageWithoutTouchingFallback 6ms
โœ… ImageLoaderTests testCoverImage_displayPoints_cacheHit_skipsNetwork 11ms
โœ… ImageLoaderTests testCoverImage_displayPoints_nonFinite_fallsBackToUnsizedCover_withoutTrapping 9ms
โœ… ImageLoaderTests testDownsampleImage_returnsImageWithinMaxDimension 65ms
โœ… ImageLoaderTests testFinitePositiveDimension_keepsFinitePositive_rejectsEverythingElse 3ms
โœ… ImageLoaderTests testGetSet_delegateToUnderlyingCache 34ms
โœ… ImageLoaderTests testRegistryCoverImage_displayPoints_nonFinite_fallsBackToUnsizedCover_withoutTrapping 230ms
โœ… ImageLoaderTests testRemove_delegateToUnderlyingCache 4ms
โœ… ImageLoaderTests testSet_defaultExpiry_isSevenDays 2ms
โœ… ImageLoaderTests testThumbnailImage_falsBackToTenPrintPlaceholder_whenThumbnailURLIsNil 14ms
โœ… InflightFeedFetchesTimeoutTests testRun_afterTimeout_freesEntry_allowingFreshFetch 5.05s
โœ… InflightFeedFetchesTimeoutTests testRun_concurrentSameURL_sharesSingleInvocation 228ms
โœ… InflightFeedFetchesTimeoutTests testRun_fastWork_returnsWithoutTimeout 35ms
โœ… InflightFeedFetchesTimeoutTests testRun_wedgedWork_timesOutWithURLTimedOut 5.06s
โœ… IntExtensionsTests testOrdinal_FourAndAbove_ReturnsTh 25ms
โœ… IntExtensionsTests testOrdinal_TwentyFirstPattern_ReturnsCorrectSuffix 2ms
โœ… IntExtensionsTests testOrdinal_Zero_ReturnsZeroth 1ms
โœ… IntExtensionsTests testOrdinal_followsEnglishOrdinalRules_includingTeenExceptions 39ms
โœ… IsReaderActiveTrackingModifierTests testIsReaderActiveTrackingModifier_isConstructibleWithPresenter 5ms
โœ… IsReaderActiveTrackingModifierTests testTracksReaderActiveExtension_appliesModifierToView 13ms
โœ… IsReaderActiveTrackingModifierTests testTracksReaderActive_setsFalseOnDisappear 3ms
โœ… IsReaderActiveTrackingModifierTests testTracksReaderActive_setsTrueOnAppear 5ms
โœ… KeyboardNavigationFKATests testFKA_escapeKey_isStillConsumed 3ms
โœ… KeyboardNavigationFKATests testFKA_leftArrow_isNotConsumed 5ms
โœ… KeyboardNavigationFKATests testFKA_pageDown_isStillConsumed 3ms
โœ… KeyboardNavigationFKATests testFKA_pageUp_isStillConsumed 6ms
โœ… KeyboardNavigationFKATests testFKA_rightArrow_isNotConsumed 3ms
โœ… KeyboardNavigationFKATests testFKA_spaceKey_isStillConsumed 5ms
โœ… KeyboardNavigationFKATests testHandleCommand_goBackward_navigatesLeft 3ms
โœ… KeyboardNavigationFKATests testHandleCommand_goForward_navigatesRight 2ms
โœ… KeyboardNavigationFKATests testHandleCommand_toggleUI_togglesToolbar 6ms
โœ… KeyboardNavigationFKATests testHandleKeyEvent_whenNavigableIsNil_returnsFalse 3ms
โœ… KeyboardNavigationFKATests testNoFKA_rightArrow_isConsumed 3ms
โœ… KeyboardNavigationHandlerTests testArrowKeyRelease_doesNotTurnPage 6ms
โœ… KeyboardNavigationHandlerTests testArrowKey_withCommandModifier_doesNotTurnPage 3ms
โœ… KeyboardNavigationHandlerTests testArrowKey_withShiftModifier_doesNotTurnPage 6ms
โœ… KeyboardNavigationHandlerTests testEscapeKeyRelease_doesNotToggleToolbar 2ms
โœ… KeyboardNavigationHandlerTests testEscapeKey_whenToolbarHidden_togglesToolbar 5ms
โœ… KeyboardNavigationHandlerTests testEscapeKey_whenToolbarVisible_togglesToolbar 206ms
โœ… KeyboardNavigationHandlerTests testEscapeKey_withModifier_doesNotToggleToolbar 6ms
โœ… KeyboardNavigationHandlerTests testLeftArrow_whenToolbarHidden_goesToPreviousPage 2ms
โœ… KeyboardNavigationHandlerTests testLeftArrow_whenToolbarVisible_doesNotChangePage 15ms
โœ… KeyboardNavigationHandlerTests testPageDown_whenToolbarHidden_advancesPage 16ms
โœ… KeyboardNavigationHandlerTests testPageUp_whenToolbarHidden_goesBackward 3ms
โœ… KeyboardNavigationHandlerTests testRightArrow_whenToolbarHidden_advancesToNextPage 51ms
โœ… KeyboardNavigationHandlerTests testRightArrow_whenToolbarVisible_doesNotChangePage 65ms
โœ… KeyboardNavigationHandlerTests testSpaceKey_whenToolbarHidden_advancesPage 3ms
โœ… KeyboardNavigationHandlerTests testSpaceKey_whenToolbarVisible_doesNotAdvancePage 3ms
โœ… KeyboardNavigationHandlerTests testUnhandledKey_isNotConsumed 4ms
โœ… KeyboardVoiceOverTests testEscapeKey_respectsVoiceOverToolbarBehavior 5ms
โœ… KeyboardVoiceOverTests testKeyboardHandler_doesNotBlockAccessibilityNotifications 6ms
โœ… KeyboardVoiceOverTests testKeyboardNavigation_worksRegardlessOfVoiceOverState 15ms
โœ… KeyboardVoiceOverTests testReaderViewController_voiceOverObserverExists 9ms
โœ… KeyboardVoiceOverTests testTouchNavigation_notAffectedByKeyboardSupport 5ms
โœ… LCPAcquisitionPredicateTests testHasLCPAcquisition_audiobookContentType_required 2ms
โœ… LCPAcquisitionPredicateTests testHasLCPAcquisition_nestedLCPInIndirectChain_returnsTrue 2ms
โœ… LCPAcquisitionPredicateTests testHasLCPAcquisition_noLCPAnywhere_returnsFalse <1ms
โœ… LCPAcquisitionPredicateTests testHasLCPAcquisition_topLevelLCPMime_returnsTrue 2ms
โœ… LCPAdapterTests testCanHandle_marketplaceJSONFeedFixture_returnsTrue 1ms
โœ… LCPAdapterTests testCanHandle_openAccessAudiobook_returnsFalse <1ms
โœ… LCPAdapterTests testCanHandle_xmlFeedLCPFixture_returnsTrue 2ms
โœ… LCPAdapterTests testResolveManifest_lcpInstantiationFailure_failsWithLcpInstantiationFailed 3ms
โœ… LCPAdapterTests testResolveManifest_licenseFileExists_usesLicenseFile 28ms
โœ… LCPAdapterTests testResolveManifest_localLCPAFile_usesLocalFile 32ms
โœ… LCPAdapterTests testResolveManifest_neitherLocalNorLicense_redownloadsLicense 11ms
โœ… LCPAdapterTests testResolveManifest_redownloadFailure_failsWithLicenseDownloadFailed 1ms
โœ… LCPAudiobookURLSchemeTests testHTTPURLConversion_toReadiumLCPScheme 29ms
โœ… LCPAudiobookURLSchemeTests testReadiumLCPScheme_isCorrect 24ms
โœ… LCPAudiobookURLSchemeTests testReadiumLCPURL_preservesPath <1ms
โœ… LCPAudiobookURLSchemeTests testReadiumLCPURL_preservesQueryParameters <1ms
โœ… LCPAudiobooksTests testCachedContentDictionary_initiallyReturnsNil <1ms
โœ… LCPAudiobooksTests testCanOpenBook_withEpub_returnsFalse 51ms
โœ… LCPAudiobooksTests testCanOpenBook_withLCPAudiobook_returnsTrue 4ms
โœ… LCPAudiobooksTests testCanOpenBook_withNonLCPAudiobook_returnsFalse 5ms
โœ… LCPAudiobooksTests testCanOpenBook_withPDF_returnsFalse 9ms
โœ… LCPAudiobooksTests testCancelPrefetch_doesNotCrash 1ms
โœ… LCPAudiobooksTests testCancelPrefetch_withoutStart_doesNotCrash 8ms
โœ… LCPAudiobooksTests testContentDictionary_afterRelease_failsFast 21ms
โœ… LCPAudiobooksTests testDecrypt_afterRelease_failsFast 167ms
โœ… LCPAudiobooksTests testGetPublication_initiallyReturnsNil <1ms
โœ… LCPAudiobooksTests testInit_withLcplLicenseURL_setsLicenseUrl <1ms
โœ… LCPAudiobooksTests testInit_withNilURL_returnsNil 2ms
โœ… LCPAudiobooksTests testInit_withSeparateLicenseURL_acceptsBothURLs 2ms
โœ… LCPAudiobooksTests testInit_withValidFileURL_createsInstance 2ms
โœ… LCPAudiobooksTests testInit_withValidHTTPURL_createsInstance 1ms
โœ… LCPAudiobooksTests testReleaseResources_canBeCalledMultipleTimes 1ms
โœ… LCPAudiobooksTests testReleaseResources_cancelsPrefetch 1ms
โœ… LCPAudiobooksTests testReleaseResources_clearsPublication 1ms
โœ… LCPAudiobooksTests testStartPrefetch_afterRelease_isNoOp 5ms
โœ… LCPAudiobooksTests testStartPrefetch_doesNotCrash 39ms
โœ… LCPAudiobooksTests testSupportsStreaming_returnsTrue <1ms
โœ… LCPBotanCRLGuardTests testCreateContext_WithGarbageJSONLicense_ThrowsRatherThanReturningNilSilently 21ms
โœ… LCPBotanCRLGuardTests testDecryptExtension_WithEmptyData_ReturnsNil 25ms
โœ… LCPBotanCRLGuardTests testDecryptExtension_WithoutContext_ReturnsNil 53ms
โœ… LCPBotanCRLGuardTests testDecrypt_WithEmptyData_ReturnsNilWithoutCallingR2LCPClient 6ms
โœ… LCPBotanCRLGuardTests testDecrypt_WithNonDRMContext_ReturnsNilWithoutCallingR2LCPClient <1ms
โœ… LCPCharacterizationTests test_LCPLibraryService_canFulfill_acceptsLcplExtensionCaseInsensitively 1ms
โœ… LCPCharacterizationTests test_LCPLibraryService_canFulfill_rejectsEpubAndPdf 2ms
โœ… LCPCharacterizationTests test_LCPLibraryService_licenseExtensionConstant_isLcpl <1ms
โœ… LCPCharacterizationTests test_TPPLCPLicense_extractsPublicationLink_byRel 8ms
โœ… LCPCharacterizationTests test_TPPLCPLicense_parsesLinkOptionalFields_preservesNils 1ms
โœ… LCPCharacterizationTests test_TPPLCPLicense_parsesMinimalValidJSON_succeeds 95ms
โœ… LCPCharacterizationTests test_TPPLCPLicense_returnsNil_onCompletelyMalformedJSON 3ms
โœ… LCPCharacterizationTests test_TPPLCPLicense_returnsNil_onEmptyFile 1ms
โœ… LCPCharacterizationTests test_TPPLCPLicense_returnsNil_onMissingRequiredId 4ms
โœ… LCPCharacterizationTests test_TPPLCPLicense_returnsNil_whenFileDoesNotExist 1ms
โœ… LCPCharacterizationTests test_TPPLCPLicense_returnsNil_whenRelNotFound 4ms
โœ… LCPCharacterizationTests test_TPPLicensesServiceError_descriptionExposesMessage 1ms
โœ… LCPCharacterizationTests test_TPPLicensesService_acquirePublication_invalidLicense_callsCompletionWithLicenseError 5ms
โœ… LCPCharacterizationTests test_TPPLicensesService_acquirePublication_missingPublicationLink_failsWithDistinctMessage 4ms
โœ… LCPCharacterizationTests test_createContext_emptyPemCrl_isAcceptedByHeaderGuard 5ms
โœ… LCPCharacterizationTests test_createContext_jsonContentTypeRejected_atHeaderGuard 7ms
โœ… LCPCharacterizationTests test_createContext_prefixCappedAt40Chars_preventsLogSpam 2ms
โœ… LCPCharacterizationTests test_createContext_whitespacePadding_isTrimmedBeforeHeaderCheck 1ms
โœ… LCPCharacterizationTests test_decryptExtensionOverload_noPriorContext_returnsNil 2ms
โœ… LCPCharacterizationTests test_decrypt_emptyData_returnsNil_priorToReachingR2LCPClient 142ms
โœ… LCPCharacterizationTests test_decrypt_nonDRMContext_returnsNil_priorToForceCastingInsideR2LCPClient 82ms
โœ… LCPCharacterizationTests test_findOneValidPassphrase_emptyHashedPassphrasesArray_returnsNilWithoutCrashing 7ms
โœ… LCPCharacterizationTests test_findOneValidPassphrase_extremelyLongPassphrase_isHandledWithoutCrashing 3ms
โœ… LCPCharacterizationTests test_findOneValidPassphrase_garbageJSON_returnsNilWithoutCrashing 2ms
โœ… LCPCharacterizationTests test_findOneValidPassphrase_multipleGarbageInputs_returnsConsistentNil 3ms
โœ… LCPCharacterizationTests test_findOneValidPassphrase_passphraseContainingNUL_isHandledWithoutCrashing 1ms
โœ… LCPCharacterizationTests test_findOneValidPassphrase_passphraseContainingUTF8_isHandledWithoutCrashing 1ms
โœ… LCPCharacterizationTests test_pathInZip_returnsNilForUnknownContentType <1ms
โœ… LCPCharacterizationTests test_pathInZip_returnsNilWhenTypeIsMissing 1ms
โœ… LCPCharacterizationTests test_pathInZip_routesAudiobookLCPToRootPath <1ms
โœ… LCPCharacterizationTests test_pathInZip_routesEpubToMetaInfPath <1ms
โœ… LCPClientTests test_createContext_botanThrowsDecoding_isCaughtByObjCExceptionWrapper 11ms
โœ… LCPClientTests test_createContext_invalidPemCrl_throwsInvalidPemCrl 15ms
โœ… LCPClientTests test_createContext_validHeaderGarbageJSON_throwsRatherThanReturningNilSilently 8ms
โœ… LCPClientTests test_decryptExtension_withEmptyData_returnsNil <1ms
โœ… LCPClientTests test_decryptExtension_withoutContext_returnsNil <1ms
โœ… LCPClientTests test_decrypt_emptyData_returnsNil 1ms
โœ… LCPClientTests test_decrypt_nonDRMContext_returnsNilWithoutCallingR2LCPClient 2ms
โœ… LCPClientTests test_findOneValidPassphrase_garbageLicenseJSON_returnsNilWithoutCrashing 17ms
โœ… LCPFulfillmentHandlerTests testFulfill_audiobook_inUsedState_secondaryDownloadError_doesNotFlipToFailed 49ms
โœ… LCPFulfillmentHandlerTests testFulfill_audiobook_marksDownloadSuccessfulEvenBeforeCompletion 76ms
โœ… LCPFulfillmentHandlerTests testFulfill_audiobook_secondaryDownloadError_doesNotFlipStreamingReadyBook 96ms
โœ… LCPFulfillmentHandlerTests testFulfill_completionWithError_publishesFulfilmentErrorAlert 98ms
โœ… LCPFulfillmentHandlerTests testFulfill_completionWithoutLocalURL_publishesNoLocalURLAlert 16ms
โœ… LCPFulfillmentHandlerTests testFulfill_epub_secondaryDownloadError_stillSurfacesAlert 112ms
โœ… LCPFulfillmentHandlerTests testFulfill_invokesLCPServiceWithRenamedLicenseURL 12ms
โœ… LCPFulfillmentHandlerTests testFulfill_storesReturnedDownloadTaskInStateManager 40ms
โœ… LCPKeychainMigrationTests testRunIfNeeded_whenFlagAlreadySet_skipsMigration 4ms
โœ… LCPKeychainMigrationTests testRunIfNeeded_whenFlagUnset_runsMigrationAndSetsFlag 634ms
โœ… LCPKeychainMigrationTests testRunIfNeeded_whenMigrationThrows_leavesFlagUnsetAndRetriesNextTime 50ms
โœ… LCPLibraryServiceTests testCanFulfill_withAudiobookExtension_returnsFalse 4ms
โœ… LCPLibraryServiceTests testCanFulfill_withEpubExtension_returnsFalse 1ms
โœ… LCPLibraryServiceTests testCanFulfill_withLcpaExtension_returnsFalse <1ms
โœ… LCPLibraryServiceTests testCanFulfill_withLcplExtension_returnsTrue 1ms
โœ… LCPLibraryServiceTests testCanFulfill_withMixedCaseLcplExtension_returnsTrue <1ms
โœ… LCPLibraryServiceTests testCanFulfill_withNoExtension_returnsFalse <1ms
โœ… LCPLibraryServiceTests testCanFulfill_withPdfExtension_returnsFalse 2ms
โœ… LCPLibraryServiceTests testCanFulfill_withUppercaseLcplExtension_returnsTrue 55ms
โœ… LCPLibraryServiceTests testContentProtection_isAvailable 1ms
โœ… LCPLibraryServiceTests testContentProtection_multipleAccess_returnsValue 7ms
โœ… LCPLibraryServiceTests testDecrypt_withEmptyData_returnsNil 193ms
โœ… LCPLibraryServiceTests testDecrypt_withInvalidData_returnsNil 2ms
โœ… LCPLibraryServiceTests testDecrypt_withSmallData_returnsNil 1ms
โœ… LCPLibraryServiceTests testFulfillAsync_withEmptyPath_throwsError 40ms
โœ… LCPLibraryServiceTests testFulfillAsync_withInvalidURL_throwsError 29ms
โœ… LCPLibraryServiceTests testFulfill_reportsProgress 2ms
โœ… LCPLibraryServiceTests testFulfill_withNonExistentFile_callsCompletionWithError 30ms
โœ… LCPLibraryServiceTests testInit_createsInstance 2ms
โœ… LCPLibraryServiceTests testInit_multipleInstances_areIndependent <1ms
โœ… LCPLibraryServiceTests testLicenseExtension_isLcpl 9ms
โœ… LCPLicenseDocumentDetectionTests testLCPLicenseDocument_doesNotContainManifestKeys 6ms
โœ… LCPLicenseDocumentDetectionTests testLCPLicenseDocument_isNotDetectedAsBearerToken 2ms
โœ… LCPLicenseDocumentDetectionTests testLCPLicenseDocument_isValidJSON <1ms
โœ… LCPLicenseDocumentDetectionTests testLCPLicenseDocument_parsedAsManifest_lacksReadingOrder <1ms
โœ… LCPLicenseDocumentDetectionTests testLCPLicenseDocument_withMinimalFields_isNotBearerToken <1ms
โœ… LCPLicenseFilePathTests testLCPLicenseExtension_isLcpl <1ms
โœ… LCPLicenseFilePathTests testLCPLicensePath_derivedFromContentPath 4ms
โœ… LCPLicenseFilePathTests testLCPLicensePath_everyContentExtensionProducesLcplSibling 2ms
โœ… LCPOrphanedDownloadRegistryTests testBookState_downloadSuccessful_withExistingFile_staysDownloadSuccessful 109ms
โœ… LCPOrphanedDownloadRegistryTests testBookState_downloadSuccessful_withMissingFile_transitionsToDownloadNeeded 15ms
โœ… LCPOrphanedDownloadRegistryTests testLCPAudiobook_withBothFiles_remainsDownloadSuccessful 254ms
โœ… LCPOrphanedDownloadRegistryTests testLCPAudiobook_withOnlyLicense_shouldBeConsideredMissing 5ms
โœ… LCPPDFAcquisitionPredicateTests testHasLCPAcquisition_nestedLCPInIndirectChain_returnsTrue 5ms
โœ… LCPPDFAcquisitionPredicateTests testHasLCPAcquisition_noLCPAnywhere_returnsFalse 1.51s
โœ… LCPPDFAcquisitionPredicateTests testHasLCPAcquisition_pdfContentType_required 1ms
โœ… LCPPDFAcquisitionPredicateTests testHasLCPAcquisition_siblingLCPAcquisition_returnsTrue 3ms
โœ… LCPPDFAcquisitionPredicateTests testHasLCPAcquisition_topLevelLCPMime_returnsTrue 83ms
โœ… LCPPDFDiskExtractTests testCachedURL_noFileOnDisk_returnsNil 7ms
โœ… LCPPDFDiskExtractTests testCachedURL_partialWriteWithGoodHeader_stillRejected 26ms
โœ… LCPPDFDiskExtractTests testCachedURL_undersizedFile_returnsNilAndDeletesFile 9ms
โœ… LCPPDFDiskExtractTests testCachedURL_validPDFHeaderAndSize_returnsURL 89ms
โœ… LCPPDFDiskExtractTests testCachedURL_wrongMagicBytes_returnsNilAndDeletesFile 11ms
โœ… LCPPDFOpenProgressTests testBegin_clearsCountersFromPreviousOpen 2ms
โœ… LCPPDFOpenProgressTests testBegin_setsPhaseAndIdentifierAndZeroesCounters 2ms
โœ… LCPPDFOpenProgressTests testFinish_resetsToIdleAndClearsIdentifier 3ms
โœ… LCPPDFOpenProgressTests testPercentComplete_clampsAt99NotAt100 2ms
โœ… LCPPDFOpenProgressTests testPercentComplete_withByteTotal_returnsTrueRatio 4ms
โœ… LCPPDFOpenProgressTests testPercentComplete_withoutByteTotal_usesDecryptCurve 6ms
โœ… LCPPDFOpenProgressTests testPercentComplete_zeroProgress_isZero 3ms
โœ… LCPPDFOpenProgressTests testRecordDecrypt_autoTransitionsFromOpeningPublicationToDecrypting 2ms
โœ… LCPPDFOpenProgressTests testRecordDecrypt_fromCache_incrementsCachedHitsNotBlocks 40ms
โœ… LCPPDFOpenProgressTests testRecordDecrypt_incrementsBlocksAndBytes 3ms
โœ… LCPPDFOpenProgressTests testRecordDecrypt_whenIdle_doesNothing 5ms
โœ… LCPPDFOpenProgressTests testRecordExtractedBytes_incrementsBytesAndTransitionsPhase 2ms
โœ… LCPPDFOpenProgressTests testRoundTrip_beginWorkFinishBegin_endsAtCleanState 2ms
โœ… LCPPassphraseReadinessTests testReadiness_underDetailsFailed_returnsNil 7ms
โœ… LCPPassphraseReadinessTests testReadiness_underDetailsLoading_doesNotShortCircuitOnNilLoansUrl 51ms
โœ… LCPSessionIdentifierTests testSessionIdentifier_isDifferentForDifferentURLs 1ms
โœ… LCPSessionIdentifierTests testSessionIdentifier_isSameAcrossMultipleComputations 1ms
โœ… LCPSessionIdentifierTests testURLHashValue_isNotStableAcrossComputations 2ms
โœ… LegacySAMLProblemDocumentPropagationTests testSAMLPresenter_problemDocumentNil_firesDelegateWithGenericFallback 55ms
โœ… LegacySAMLProblemDocumentPropagationTests testSAMLPresenter_problemDocumentTitleOnly_surfacesWithFallbackMessage 59ms
โœ… LegacySAMLProblemDocumentPropagationTests testSAMLPresenter_problemDocumentWithTitleAndDetail_surfacesToUIDelegate 42ms
โœ… LegacySAMLProblemDocumentPropagationTests testSAMLPresenter_problemDocument_errorDomainIdentifiesSAMLPath 49ms
โœ… LegacySAMLProblemDocumentPropagationTests testSAMLPresenter_problemHandler_businessLogicReleased_doesNotCrash 49ms
โœ… LegacySAMLProblemDocumentPropagationTests testSignInBusinessLogic_pinAllowsAlphanumeric_isNumericNegation 58ms
โœ… LegacySAMLProblemDocumentPropagationTests testSignInBusinessLogic_usernameIsEmailKeyboard_matchesAuthKeyboard 25ms
โœ… LibrariesSectionViewModelTests test_deleteSecondary_callsTokenDeleter_andRemovesAccount_andPersists 10ms
โœ… LibrariesSectionViewModelTests test_deleteSecondary_noOpsOnCurrentAccount 13ms
โœ… LibrariesSectionViewModelTests test_isLoading_false_whenAnAccountResolves_evenIfCatalogNotLoaded <1ms
โœ… LibrariesSectionViewModelTests test_isLoading_false_whenEmptyButCatalogHasLoaded 166ms
โœ… LibrariesSectionViewModelTests test_isLoading_flipsFalse_onRefresh_afterAccountBecomesResolvable 91ms
โœ… LibrariesSectionViewModelTests test_isLoading_true_whenNoAccountsResolveAndCatalogNotLoaded 2ms
โœ… LibrariesSectionViewModelTests test_presentAddLibrary_flipsSheetBool 2ms
โœ… LibrariesSectionViewModelTests test_refresh_doesNotPersist_whenNoStaleUUIDs 2ms
โœ… LibrariesSectionViewModelTests test_refresh_filtersUUIDsNotInRegistry_andPersistsCleanedList 3ms
โœ… LibrariesSectionViewModelTests test_refresh_putsCurrentAccountFirstAndSortsOthersByName 137ms
โœ… LibrariesSectionViewModelTests test_refresh_withNoCurrentAccount_sortsAllAlphabetically 24ms
โœ… LibrariesSectionViewModelTests test_shouldShowSkeleton_onlyWhenEmptyAndNotLoaded 28ms
โœ… LibrariesSectionViewModelTests test_switchToAccount_callsEnvironment_andUpdatesCurrentUUID_andResortsAccounts 98ms
โœ… LibrariesSectionViewModelTests test_switchToAccount_firesCompletion_andClearsIsSwitching_whenEnvironmentReportsReady 81ms
โœ… LibrariesSectionViewModelTests test_switchToAccount_isNoOpForCurrentAccount 5ms
โœ… LibrariesSectionViewModelTests test_switchToAccount_newlyAddedAccount_insertsItFirst_andFiresCompletion 213ms
โœ… LibraryCatalogMergerTests testMerge_EmptyExistingWithNewPublications_AddsAll <1ms
โœ… LibraryCatalogMergerTests testMerge_FullCrawl_RemovesAbsentPublications <1ms
โœ… LibraryCatalogMergerTests testMerge_FullCrawl_ReplacesAllWithUpdates 2ms
โœ… LibraryCatalogMergerTests testMerge_NewPublication_AppendsToList <1ms
โœ… LibraryCatalogMergerTests testMerge_PreservesUnmodifiedPublications_InIncrementalMode <1ms
โœ… LibraryCatalogMergerTests testMerge_UpdatesExistingByID_ReplacesOldPublication <1ms
โœ… LibraryCatalogMergerTests testMerge_uuidsWithChangedLogos_includesAllTransitionsAndExcludesUnchangedURL <1ms
โœ… LibraryCatalogMergerTests testSerializeAsCatalogsFeed_PreservesPublicationIDs 11ms
โœ… LibraryCatalogMergerTests testSerializeAsCatalogsFeed_ProducesValidJSON <1ms
โœ… LibraryRegistryCrawlerTests testCrawl_HandlesNetworkFailure_ReturnsFailure 31ms
โœ… LibraryRegistryCrawlerTests testCrawl_PersistsCurrentAppVersion 47ms
โœ… LibraryRegistryCrawlerTests testCrawl_ReportsProgress 6ms
โœ… LibraryRegistryCrawlerTests testCrawl_SavesCrawlState_OnSuccess 11ms
โœ… LibraryRegistryCrawlerTests testCrawl_WhenAppVersionChanged_HitsCrawlableURL_NotFacetURL 837ms
โœ… LibraryRegistryCrawlerTests testCrawl_WhenFacetNotActive_StoresFacetURLForFutureUse 4ms
โœ… LibraryRegistryCrawlerTests testCrawl_WhenLastFullCrawlOlderThan7Days_HitsCrawlableURL 7ms
โœ… LibraryRegistryCrawlerTests testCrawl_WhenLastFullCrawlWithin7Days_UsesFacetURL 12ms
โœ… LibraryRegistryCrawlerTests testCrawl_WhenTaskCancelledDuringFetch_StopsPromptlyWithFailure_AndDoesNotPaginate 9ms
โœ… LibraryRegistryCrawlerTests testFirstLaunch_PerformsFullCrawl_PaginatesAllPages 9ms
โœ… LibraryRegistryCrawlerTests testFirstLaunch_PerformsFullCrawl_SinglePage 39ms
โœ… LibraryRegistryCrawlerTests testFullCrawl_WhenNoOrderModifiedFacet_FetchesAllPages 3ms
โœ… LibraryRegistryCrawlerTests testIncrementalCrawl_ReachingEndOfFeed_ReconcilesDeletions 7ms
โœ… LibraryRegistryCrawlerTests testIncrementalCrawl_StopsAtLastCrawlTimestamp 11ms
โœ… LibraryRegistryCrawlerTests testIncrementalCrawl_WhenNotReachingEndOfFeed_PreservesExistingEntries 194ms
โœ… LicensesServiceTests testAcquirePublication_WithInvalidLCPLFile_CompletesWithError 42ms
โœ… LicensesServiceTests testAcquirePublication_WithNonexistentFile_CompletesWithError 4ms
โœ… LicensesServiceTests testLicensesServiceError_licenseError_exposesMessageViaDescriptionVerbatim 17ms
โœ… LicensesServiceTests testPathInZip_mapsEveryContentTypeToTheCorrectPath 180ms
โŠ˜ LiveCrawlableParsingTest testCrawlableURL_FromBetaURL 2ms
โŠ˜ LiveCrawlableParsingTest testCrawlableURL_FromProdURL 45ms
โŠ˜ LiveCrawlableParsingTest testFullCrawl_LiveEndpoint 1ms
โŠ˜ LiveCrawlableParsingTest testParseLiveCrawlableFeed 26ms
โœ… LoanEvictionPolicyTests testExactlyAtExpiration_notPastYet_keeps <1ms
โœ… LoanEvictionPolicyTests testNoExpiration_offline_keeps <1ms
โœ… LoanEvictionPolicyTests testNoExpiration_online_keeps <1ms
โœ… LoanEvictionPolicyTests testNotExpired_offline_keeps 2ms
โœ… LoanEvictionPolicyTests testNotExpired_online_keeps <1ms
โœ… LoanEvictionPolicyTests testOfflineExpiredByCachedUntil_keepsFile <1ms
โœ… LoanEvictionPolicyTests testOfflineExpiredPastGrace_stillKeeps 1ms
โœ… LoanEvictionPolicyTests testOfflineExpiredWithinGrace_keepsFile 1ms
โœ… LoanEvictionPolicyTests testOnlineExactlyAtExpiration_withZeroGrace_evicts <1ms
โœ… LoanEvictionPolicyTests testOnlineExactlyAtGraceEdge_evicts <1ms
โœ… LoanEvictionPolicyTests testOnlineExpiredPastGrace_evicts 1ms
โœ… LoanEvictionPolicyTests testOnlineExpiredWithinGrace_confirmsWithServer 1ms
โœ… LoanEvictionPolicyTests testOnlineJustInsideGraceEdge_confirmsWithServer <1ms
โœ… LoanRenewalServiceTests testAccountHost401_marksCredentialsStale 31ms
โœ… LoanRenewalServiceTests testForeignHost401_doesNotMarkCredentialsStale 13ms
โœ… LoanRenewalServiceTests testNoRenewURL_returnsNoRenewURL 28ms
โœ… LoanRenewalServiceTests testOfflineTransport_returnsNetworkError 5ms
โœ… LoanRenewalServiceTests testProductionFactory_foreignHost401_classifiesOk 15ms
โœ… LoanRenewalServiceTests testRenewURL_extractsBorrowRelAcquisition <1ms
โœ… LoanRenewalServiceTests testRenewURL_noBorrowAcquisition_isNil 31ms
โœ… LoanRenewalServiceTests testServerError500_returnsFailed_doesNotMarkStale 6ms
โœ… LoanRenewalServiceTests testSuccess2xx_returnsSuccess_doesNotMarkStale 7ms
โœ… LocalBookContentServiceTests testDeleteForBook_accountOverride_passedThroughToBookFileManager 9ms
โœ… LocalBookContentServiceTests testDeleteForBook_epub_missingFile_logsButDoesNotThrow 21ms
โœ… LocalBookContentServiceTests testDeleteForBook_epub_removesFileWhenPresent 3ms
โœ… LocalBookContentServiceTests testDeleteForBook_pdf_removesContentFile 4ms
โœ… LocalBookContentServiceTests testDeleteForBook_unresolvableFileURL_doesNotCrashAndLogsWarning 22ms
โœ… LocalBookContentServiceTests testDeleteForIdentifier_lookUpsBookInRegistryAndDelegates 4ms
โœ… LocalBookContentServiceTests testDeleteForIdentifier_unknownIdentifier_logsAndDoesNothing 4ms
โœ… LocalFileAdapterTests testCanHandle_localFileExists_returnsTrue 5ms
โœ… LocalFileAdapterTests testCanHandle_noLocalFile_returnsFalse 4ms
โŠ˜ LocalFileAdapterTests testResolveManifest_bearerTokenFulfillURL_refreshesTokenBeforeReturn 3ms
โœ… LocalFileAdapterTests testResolveManifest_noBearerTokenFulfillURL_skipsRefresh 3ms
โœ… LocalFileAdapterTests testResolveManifest_unreadableFile_failsWithManifestParseFailed 4ms
โœ… LocalFileAdapterTests testResolveManifest_validJSON_succeeds 5ms
โœ… LogTests testDebug_doesNotCrash <1ms
โœ… LogTests testDebug_doesNotPersistToLogger 105ms
โœ… LogTests testError_doesNotCrash <1ms
โœ… LogTests testError_persistsToLogger 30ms
โœ… LogTests testFault_doesNotCrash <1ms
โœ… LogTests testFault_persistsToLogger 28ms
โœ… LogTests testInfo_doesNotCrash <1ms
โœ… LogTests testInfo_doesNotPersistToLogger 109ms
โœ… LogTests testLog_objcCompatibility_doesNotCrash <1ms
โœ… LogTests testLog_withFilePathTag_trimsProperly 36ms
โœ… LogTests testSubsystem_isCorrectValue <1ms
โœ… LogTests testSubsystem_isNotEmpty <1ms
โœ… LogTests testWarn_doesNotCrash <1ms
โœ… LoginKeyboardTests testInit_WithCaseSensitiveString_ReturnsNil <1ms
โœ… LoginKeyboardTests testInit_WithDefaultString_ReturnsStandard 4ms
โœ… LoginKeyboardTests testInit_WithEmailString_ReturnsEmail 2ms
โœ… LoginKeyboardTests testInit_WithEmptyString_ReturnsNil <1ms
โœ… LoginKeyboardTests testInit_WithInvalidString_ReturnsNil <1ms
โœ… LoginKeyboardTests testInit_WithNilString_ReturnsNil 9ms
โœ… LoginKeyboardTests testInit_WithNoInputString_ReturnsNone <1ms
โœ… LoginKeyboardTests testInit_WithNumberPadString_ReturnsNumeric <1ms
โœ… MainActorHelpersTests testBarrierExecutor_Modify_TransformsValue 5ms
โœ… MainActorHelpersTests testBarrierExecutor_ReadInitialValue 7ms
โœ… MainActorHelpersTests testBarrierExecutor_Write_UpdatesValue 6ms
โœ… MainActorHelpersTests testDebouncer_Cancel_PreventsExecution 129ms
โœ… MainActorHelpersTests testDebouncer_OnlExecutesLastCall 167ms
โœ… MainActorHelpersTests testOnceExecutor_ExecutesOnlyOnce 6ms
โœ… MainActorHelpersTests testOnceExecutor_Reset_AllowsReExecution 3ms
โœ… MainActorHelpersTests testRunParallelFireAndForget_EmptyArray_CompletesImmediately 3ms
โœ… MainActorHelpersTests testRunParallelFireAndForget_ExecutesAllTasks 11ms
โœ… MainActorHelpersTests testRunParallel_EmptyArray_ReturnsEmptyArray 5ms
โœ… MainActorHelpersTests testRunParallel_MultipleItems_ReturnsInOriginalOrder 59ms
โœ… MainActorHelpersTests testRunParallel_SingleItem_ReturnsSingleResult 2ms
โœ… MainActorHelpersTests testRunParallel_ThrowingTask_PropagatesError 12ms
โœ… MainActorHelpersTests testSerialExecutor_ExecutesInOrder 4ms
โœ… MainActorHelpersTests testSerialExecutor_WaitForAll_WaitsForCompletion 72ms
โœ… MainActorHelpersTests testTaskSleepSeconds_CompletesAfterDuration 62ms
โœ… MainActorHelpersTests testThrottler_AfterInterval_ExecutesAgain 113ms
โœ… MainActorHelpersTests testThrottler_FirstCall_ExecutesImmediately 8ms
โœ… MainActorHelpersTests testThrottler_RapidCalls_SkipsSubsequent 4ms
โœ… MainActorHelpersTests testWithAsyncCallback_ConvertsCallbackToAsync 3ms
โœ… MainActorHelpersTests testWithAsyncThrowingCallback_Failure_ThrowsError 11ms
โœ… MainActorHelpersTests testWithAsyncThrowingCallback_Success_ReturnsValue 6ms
โœ… MappedCatalogBridgeTests testToCatalogContent_EmptyFeed <1ms
โœ… MappedCatalogBridgeTests testToCatalogContent_GroupedFeed 40ms
โœ… MappedCatalogBridgeTests testToCatalogContent_UngroupedFeed 2ms
โœ… MappedCatalogModelTests testEdgeCase_EmptyTitle 2ms
โœ… MappedCatalogModelTests testEdgeCase_LongTitle <1ms
โœ… MappedCatalogModelTests testEdgeCase_ManyLanes <1ms
โœ… MappedCatalogModelTests testEdgeCase_ManyUngroupedBooks 312ms
โœ… MappedCatalogModelTests testInit_CompleteFeedWithAllComponents 2ms
โœ… MappedCatalogModelTests testInit_EmptyFeed 7ms
โœ… MappedCatalogModelTests testInit_GroupedFeedWithLanes 7ms
โœ… MappedCatalogModelTests testInit_StoresAllProperties 101ms
โœ… MappedCatalogModelTests testInit_UngroupedFeedWithBooks 11ms
โœ… MappedCatalogModelTests testInit_WithEntryPoints 64ms
โœ… MappedCatalogModelTests testInit_WithFacetGroups <1ms
โœ… MockBackendExpiredCredentialsTests testBorrow_Returns403 12ms
โœ… MockBackendExpiredCredentialsTests testCatalog_StillReturns200 3ms
โœ… MockBackendExpiredCredentialsTests testLoans_Returns403WithProblemDocument 38ms
โœ… MockBackendHoldsTests testHoldsScenario_LoansFeed_ServesReservedAndReadyEntries 124ms
โœ… MockBackendHoldsTests testHoldsScenario_ReadyEntry_HasReadyAvailability 63ms
โœ… MockBackendHoldsTests testHoldsScenario_ReservedEntry_ExposesQueuePosition 20ms
โœ… MockBackendIntegrationTests testBorrow_Returns201 19ms
โœ… MockBackendIntegrationTests testFetchAnnotations_ReturnsAnnotations 51ms
โœ… MockBackendIntegrationTests testFetchAuthDocument_ParsesCorrectly 6ms
โœ… MockBackendIntegrationTests testFetchCatalog_ReturnsParsedFeed 105ms
โœ… MockBackendLoanLimitTests testBorrow_Returns403WithLoanLimitProblem 7ms
โœ… MockBackendLoanLimitTests testCatalogBrowsing_StillWorks 23ms
โœ… MockBackendRouteMatchingTests testRouteMatching_CatchAll <1ms
โœ… MockBackendRouteMatchingTests testRouteMatching_ExactPath <1ms
โœ… MockBackendRouteMatchingTests testRouteMatching_MethodFilter <1ms
โœ… MockBackendRouteMatchingTests testScenarioLoading 26ms
โœ… MockBackendServerDownTests testAllEndpoints_Return502 19ms
โœ… MockIsolationLintTests testEveryFileWithCancellables_tearsThemDown 1.16s
โœ… MockIsolationLintTests testEveryFileWithNotificationObserver_removesIt 495ms
โœ… MockIsolationLintTests testEveryFileWithSharedSingleton_hasResetShared 585ms
โœ… MockIsolationLintTests testLintAcceptsInheritedTearDown 1.24s
โœ… MockIsolationLintTests testLintCatchesSyntheticViolator 15ms
โœ… MultiLibraryTokenIsolationTests test_CancelNonEssential_ClearsTheRegistry 40ms
โœ… MultiLibraryTokenIsolationTests test_CancelNonEssential_PreservesAudiobookTasks 1ms
โœ… MultiLibraryTokenIsolationTests test_GET_ForLibraryB_SendsBBearerOverWire 5ms
โœ… MultiLibraryTokenIsolationTests test_POST_ToLibraryB_CarriesBBearerAndBody 5ms
โœ… MultiLibraryTokenIsolationTests test_ProblemDocument_RecoverableVsUnrecoverableAuthError 3ms
โœ… MultiLibraryTokenIsolationTests test_Reachability_IsStableAcrossAdjacentReads 2ms
โœ… MultiLibraryTokenIsolationTests test_Refresh401WithProblemDocument_EmbedsDocumentInError 8ms
โœ… MultiLibraryTokenIsolationTests test_Refresh401_NoProblemDoc_HasNilProblemDocument 5ms
โœ… MultiLibraryTokenIsolationTests test_RefreshA_401_MarksOnlyAStale_NotB 16ms
โœ… MultiLibraryTokenIsolationTests test_RefreshForA_AfterSwitchToB_StillHitsAsTokenURL 5ms
โœ… MultiLibraryTokenIsolationTests test_RefreshForA_DoesNotMutateBToken 6ms
โœ… MultiLibraryTokenIsolationTests test_RequestForA_CarriesABearer 3ms
โœ… MultiLibraryTokenIsolationTests test_RequestForB_CarriesBBearer_NotA 3ms
โœ… MultiLibraryTokenIsolationTests test_SwitchCurrency_PreservesBothBearers 4ms
โœ… MyBooksDownloadCenterAccountIdThreadingTests testBearerAuthorized_explicitAccountId_appliesTokenForThatAccount 12ms
โœ… MyBooksDownloadCenterAccountIdThreadingTests testBearerAuthorized_explicitAccountId_doesNotTouchAppContainerProduction 2ms
โœ… MyBooksDownloadCenterAccountIdThreadingTests testBearerAuthorized_nilAccountId_delegatesToResolver 5ms
โœ… MyBooksDownloadCenterAccountIdThreadingTests testConcurrentDownloadsAcrossRapidAccountSwitches_allUseCorrectToken 122ms
โœ… MyBooksDownloadCenterAccountIdThreadingTests testStartDownload_capturesCurrentAccountIdOnce_doesNotReResolve 7ms
โœ… MyBooksDownloadCenterAccountIdThreadingTests testStartDownload_currentAccountIdChangesAfterCapture_originalIdUsedForRequests 6ms
โœ… MyBooksDownloadCenterAccountIdThreadingTests testStartDownload_currentAccountIdNilAtCapture_capturesSentinelUUID 14ms
โœ… MyBooksDownloadCenterAdeptGapTests testDownloadCenter_bookStateTransitions_downloadSuccess 33ms
โœ… MyBooksDownloadCenterAdeptGapTests testDownloadCenter_bookStateTransitions_forAdobeAdeptBooks 2ms
โœ… MyBooksDownloadCenterAdeptGapTests testDownloadCenter_downloadProgressPublisher_exists <1ms
โœ… MyBooksDownloadCenterConcurrencyTests testCanStartDownload_returnsTrueOnlyStrictlyBelowMaxConcurrent 8ms
โœ… MyBooksDownloadCenterConcurrencyTests testCancellation_OfActiveDownload_FreesSlotAndSchedulesPendingStarts 46ms
โœ… MyBooksDownloadCenterConcurrencyTests testCancellation_OfActiveDownload_PromotesNextQueuedBook 11ms
โœ… MyBooksDownloadCenterConcurrencyTests testColdStart_ofCoordinator_HasNoActiveOrQueuedDownloads 8ms
โœ… MyBooksDownloadCenterConcurrencyTests testCompletion_PromotesNextQueuedToActive 10ms
โœ… MyBooksDownloadCenterConcurrencyTests testConcurrentEnqueueFromManyTasks_IsActorSerialized 71ms
โœ… MyBooksDownloadCenterConcurrencyTests testConcurrentSetProcessing_fromMultipleDownloads_serializes 32ms
โœ… MyBooksDownloadCenterConcurrencyTests testDequeuePending_RemovesBooksInFIFOOrder 25ms
โœ… MyBooksDownloadCenterConcurrencyTests testDequeuePending_zeroCapacity_returnsEmptyAndPreservesQueue 6ms
โœ… MyBooksDownloadCenterConcurrencyTests testEnqueuePending_isDedupedByBookIdentifier 13ms
โœ… MyBooksDownloadCenterConcurrencyTests testFailure_FreesSlot_AndPromotesQueuedBook 11ms
โœ… MyBooksDownloadCenterConcurrencyTests testForegroundReapplyOfCap_AlwaysPumpsThePendingQueue 63ms
โœ… MyBooksDownloadCenterConcurrencyTests testQueueOrdering_FIFOSurvivesInterleavedEnqueueAndDequeue 15ms
โœ… MyBooksDownloadCenterConcurrencyTests testRedirectAttempts_perTaskIsolated_andClearable 6ms
โœ… MyBooksDownloadCenterConcurrencyTests testRegisterCompletion_RemovesOnlyTheNamedIdentifier 15ms
โœ… MyBooksDownloadCenterConcurrencyTests testRegisterCompletion_unknownIdentifier_isSafeNoOp 137ms
โœ… MyBooksDownloadCenterConcurrencyTests testReset_ClearsActive_Queue_Cache_AndRedirectAttempts 7ms
โœ… MyBooksDownloadCenterConcurrencyTests testSchedulePendingStartsAsync_HonorsRemainingCapacity_NotQueueSize 62ms
โœ… MyBooksDownloadCenterConcurrencyTests testSchedulePendingStartsAsync_atCap_preservesQueueAndSkipsDelegate 17ms
โœ… MyBooksDownloadCenterConcurrencyTests testSchedulePendingStartsAsync_emptyQueue_doesNotInvokeDelegate 4ms
โœ… MyBooksDownloadCenterConcurrencyTests testStartingNPlus1Downloads_LeavesExactlyNActiveAnd1Queued 20ms
โœ… MyBooksDownloadCenterConcurrencyTests testThreeRoundTrips_eachCompletion_promotesExactlyOneQueuedBook 12ms
โœ… MyBooksDownloadCenterEvictionTests testEviction_multipleBooksOverBudget_evictsLRUFirstAndFlipsAllAffected 66ms
โœ… MyBooksDownloadCenterEvictionTests testEviction_preservesLcpAudiobook_butEvictsEpubCompanion 237ms
โœ… MyBooksDownloadCenterEvictionTests testEviction_preservesLcpLicense 35ms
โœ… MyBooksDownloadCenterEvictionTests testEviction_whenAddingAnticipatedBytesPushesOverBudget_makesRoom 32ms
โœ… MyBooksDownloadCenterEvictionTests testEviction_whenOverBudget_deletesFileAndFlipsRegistryToDownloadNeeded 61ms
โœ… MyBooksDownloadCenterEvictionTests testEviction_whenUnderBudget_doesNothing 4ms
โœ… MyBooksDownloadCenterEvictionTests testEviction_withOrphanFile_deletesButSkipsRegistryMutation 7ms
โœ… MyBooksDownloadCenterOfflineTests testCleanupDownload_RemovesTaskIdentifierToBookEntry 16ms
โœ… MyBooksDownloadCenterOfflineTests testInit_WithReachabilityConnected_DoesNotFailExistingDownloads 18ms
โœ… MyBooksDownloadCenterOfflineTests testReachabilityDrop_DuringActiveDownload_FailsBookWithinDeterministicWindow 29ms
โœ… MyBooksDownloadCenterOfflineTests testReachabilityDrop_DuringMultipleActiveDownloads_FailsEach 39ms
โœ… MyBooksDownloadCenterOfflineTests testReachabilityDrop_StaleAndActive_FailsOnlyTheActiveDownload 21ms
โœ… MyBooksDownloadCenterOfflineTests testReachabilityDrop_WithNoActiveDownloads_IsNoOp 11ms
โœ… MyBooksDownloadCenterOfflineTests testReachabilityDrop_WithStaleTaskEntryForDownloadedBook_DoesNotFlipToFailed 54ms
โœ… MyBooksDownloadCenterOfflineTests testStartDownload_WhenOffline_FailsImmediatelyWithoutSpawningTask 145ms
โœ… MyBooksDownloadSessionInvalidationTests testDownloadTask_onInvalidatedSession_isSafelyCatchable 1ms
โœ… MyBooksDownloadSessionInvalidationTests testDownloadTask_onLiveSession_returnsTaskWithoutException 3ms
โœ… MyBooksDownloadSessionInvalidationTests testExceptionCatcher_returnsNSException_insteadOfPropagating 4ms
โœ… MyBooksSimplifiedBearerTokenTests testFulfillURL_canBeSetAfterInit <1ms
โœ… MyBooksSimplifiedBearerTokenTests testFulfillURL_canBeSetViaInit <1ms
โœ… MyBooksSimplifiedBearerTokenTests testFulfillURL_defaultsToNil 1ms
โœ… MyBooksSimplifiedBearerTokenTests testIsExpired_exactlyNow_returnsTrue 1ms
โœ… MyBooksSimplifiedBearerTokenTests testIsExpired_futureExpiration_returnsFalse <1ms
โœ… MyBooksSimplifiedBearerTokenTests testIsExpired_pastExpiration_returnsTrue <1ms
โœ… MyBooksSimplifiedBearerTokenTests testParsing_acceptsExpirationKey 2ms
โœ… MyBooksSimplifiedBearerTokenTests testParsing_invalidLocationURL_returnsNil 2ms
โœ… MyBooksSimplifiedBearerTokenTests testParsing_missingAccessToken_returnsNil 2ms
โœ… MyBooksSimplifiedBearerTokenTests testParsing_missingExpiration_returnsNil 2ms
โœ… MyBooksSimplifiedBearerTokenTests testParsing_missingLocation_returnsNil 2ms
โœ… MyBooksSimplifiedBearerTokenTests testParsing_negativeExpiration_usesDistantFuture <1ms
โœ… MyBooksSimplifiedBearerTokenTests testParsing_validDictionary_createsToken 8ms
โœ… MyBooksSimplifiedBearerTokenTests testParsing_zeroExpiration_usesDistantFuture 2ms
โœ… MyBooksSimplifiedBearerTokenTests testRefreshToken_invalidJSON_returnsNil 51ms
โœ… MyBooksSimplifiedBearerTokenTests testRefreshToken_serverError_returnsNil 105ms
โœ… MyBooksSimplifiedBearerTokenTests testRefreshToken_success_returnsNewToken 14ms
โœ… MyBooksViewModelBooksPublisherTests testBooksPublisher_EmitsInitialValue 6ms
โœ… MyBooksViewModelBooksPublisherTests testBooksPublisher_EmitsOnFilter 35ms
โœ… MyBooksViewModelBooksPublisherTests testBooksPublisher_EmitsRestoredCountAfterReset 14ms
โœ… MyBooksViewModelConcurrencyTests testFilterBooks_MultipleCalls_EachProducesCorrectResult 228ms
โœ… MyBooksViewModelConcurrencyTests testFilterBooks_RapidChanges_SettlesOnLastQuery 25ms
โœ… MyBooksViewModelConcurrencyTests testLoadData_AfterInit_IsNotLoadingAndHasBooks 17ms
โœ… MyBooksViewModelConcurrencyTests testReloadData_WhenRegistryIdle_BookListRemainsAccessible 68ms
โœ… MyBooksViewModelDownloadStateTests testRegistryState_DownloadFailed_BookRemainsVisible 3ms
โœ… MyBooksViewModelDownloadStateTests testRegistryState_DownloadSuccessful_BookRemainsInList 32ms
โœ… MyBooksViewModelDownloadStateTests testRegistryState_HoldingBook_NotInMyBooksIfNotInMyBooks 3ms
โœ… MyBooksViewModelEmptyArrayTests testFilterLogic_EmptyArray_ReturnsEmpty <1ms
โœ… MyBooksViewModelEmptyArrayTests testSortLogic_EmptyArray_ReturnsEmpty 1ms
โœ… MyBooksViewModelEmptyArrayTests testSortLogic_SingleBook_ReturnsSame 2ms
โœ… MyBooksViewModelEmptyStateTests testBooksAndInstructionsLabel_CoordinateAfterFilterReset 3ms
โœ… MyBooksViewModelEmptyStateTests testBooksPublisher_EmitsRegistryContents 10ms
โœ… MyBooksViewModelEmptyStateTests testShowInstructionsLabel_FalseWhenRegistryHasBooks 3ms
โœ… MyBooksViewModelEmptyStateTests testShowInstructionsLabel_TrueWhenRegistryEmpty 3ms
โœ… MyBooksViewModelExtendedTests testAlert_ClearsOnNilAssignment 2ms
โœ… MyBooksViewModelExtendedTests testFacetViewModel_InitializedWithCorrectConfig 2ms
โœ… MyBooksViewModelExtendedTests testFilterBooks_WithEmptyQuery_RestoresAllBooks 8ms
โœ… MyBooksViewModelExtendedTests testFilterBooks_WithQuery_NarrowsToMatchingBooks 8ms
โœ… MyBooksViewModelExtendedTests testInitialFacetSort_DefaultsToTitle 2ms
โœ… MyBooksViewModelExtendedTests testInitialState_HasCorrectDefaults 3ms
โœ… MyBooksViewModelExtendedTests testIsPadProperty_MatchesUIDevice 2ms
โœ… MyBooksViewModelExtendedTests testLoadAccount_WhenRegistryIsSyncing_ShowsSyncAlert 66ms
โœ… MyBooksViewModelExtendedTests testResetFilter_RestoresBooksAfterQuery 6ms
โœ… MyBooksViewModelExtendedTests testSelectNewLibrary_PublishesTransitionToSubscribers 2ms
โœ… MyBooksViewModelExtendedTests testSelectedBook_PublishesThroughCombine 11ms
โœ… MyBooksViewModelExtendedTests testShowLibraryAccountView_PublishesTransitionsToSubscribers 2ms
โœ… MyBooksViewModelExtendedTests testShowSearchSheet_PublishesTransitionsToSubscribers 2ms
โœ… MyBooksViewModelExtendedTests testSortByAuthor_ReordersBooks 9ms
โœ… MyBooksViewModelExtendedTests testSortByTitle_ReordersBooks 4ms
โœ… MyBooksViewModelFacetIntegrationTests testFacetSortChange_PropagatestoViewModel 512ms
โœ… MyBooksViewModelFacetIntegrationTests testFacetViewModel_ConfiguredCorrectly 405ms
โœ… MyBooksViewModelFacetIntegrationTests testFacet_LocalizedStrings_MatchExpected 46ms
โœ… MyBooksViewModelFacetIntegrationTests testInitialActiveSort_IsFirstFacet 486ms
โœ… MyBooksViewModelFacetPublisherTests testFacetSort_RoundTripPropagation 181ms
โœ… MyBooksViewModelFacetPublisherTests testFacetViewModel_PublishesActiveSortChanges 8ms
โœ… MyBooksViewModelFacetPublisherTests testLoadData_offline_doesNotDeleteExpiredLocalContent 13ms
โœ… MyBooksViewModelFacetPublisherTests testLoadData_onlinePastGrace_evictsExpiredContent 53ms
โœ… MyBooksViewModelFacetPublisherTests testMyBooksViewModel_SubscribesToFacetChanges 2ms
โœ… MyBooksViewModelFilterSortInteractionTests testFilter_MaintainsSortOrder_Logic 6ms
โœ… MyBooksViewModelFilterSortInteractionTests testSortAfterFilter_ProducesCorrectOrder 4ms
โœ… MyBooksViewModelFilterTests testFilterBooks_EmptyQuery_ResetsToAllBooks 11ms
โœ… MyBooksViewModelFilterTests testFilterBooks_WithQuery_MaintainsSearchQuerySeparately 24ms
โœ… MyBooksViewModelFilterTests testFilterLogic_AuthorMatch_CaseInsensitive 16ms
โœ… MyBooksViewModelFilterTests testFilterLogic_MatchesBothTitleAndAuthor_ReturnsAll 56ms
โœ… MyBooksViewModelFilterTests testFilterLogic_NilAuthors_DoesNotCrash 4ms
โœ… MyBooksViewModelFilterTests testFilterLogic_NoMatches_ReturnsEmpty 10ms
โœ… MyBooksViewModelFilterTests testFilterLogic_SpecialCharacters_HandledCorrectly 6ms
โœ… MyBooksViewModelFilterTests testFilterLogic_TitleMatch_CaseInsensitive 29ms
โœ… MyBooksViewModelFilterTests testResetFilter_RestoresAllBooks 13ms
โœ… MyBooksViewModelGuardConditionsTests testLoadData_CompletesWithIsLoadingFalse 3ms
โœ… MyBooksViewModelGuardConditionsTests testLoadData_SequentialFilterCalls_EachProducesCorrectResult 6ms
โœ… MyBooksViewModelLargeDatasetTests testFilterLogic_ManyBooks_FiltersCorrectly 170ms
โœ… MyBooksViewModelLargeDatasetTests testSortLogic_ManyBooks_Completes 157ms
โœ… MyBooksViewModelLoadAccountTests testLoadAccount_WhenNotSyncing_DoesNotShowSyncAlert 44ms
โœ… MyBooksViewModelLoadAccountTests testLoadAccount_WhenSyncing_ShowsAlert 160ms
โœ… MyBooksViewModelLoginStateTests testLoadData_EmptyRegistry_ShowsInstructionsLabel 2ms
โœ… MyBooksViewModelLoginStateTests testLoadData_MultipleBooks_ExposesAllViaPublishedProperty 185ms
โœ… MyBooksViewModelLoginStateTests testLoadData_PopulatedRegistry_HidesInstructionsLabel 39ms
โœ… MyBooksViewModelLoginStateTests testRegistryChangeNotification_TriggersReload_UpdatesBooks 306ms
โœ… MyBooksViewModelMultipleAuthorSortingTests testSortByAuthor_SameFirstName_SortsByFullName 5ms
โœ… MyBooksViewModelMultipleAuthorSortingTests testSortByTitle_ThePrefix_SortedAlphabetically 4ms
โœ… MyBooksViewModelMultipleAuthorSortingTests testSort_AlreadySorted_MaintainsOrder 5ms
โœ… MyBooksViewModelNotificationTests testRegistryChangeNotification_IsRegistered 6ms
โœ… MyBooksViewModelNotificationTests testStateChangeNotification_IsRegistered 3ms
โœ… MyBooksViewModelNotificationTests testSyncEndedNotification_CausesBookListToUpdate 340ms
โœ… MyBooksViewModelNotificationTests testSyncEndedNotification_IsRegistered 3ms
โœ… MyBooksViewModelOfflineFilteringTests testExpiredBookFiltering_Logic 3ms
โœ… MyBooksViewModelOfflineFilteringTests testOfflineState_FiltersExpiredBooks_Logic 3ms
โœ… MyBooksViewModelOfflineFilteringTests testOnlineState_ShowsAllBooks_Logic 3ms
โœ… MyBooksViewModelPublisherTests testAlertPublisher_EmitsWhenSet 520ms
โœ… MyBooksViewModelPublisherTests testAlertPublisher_InitiallyNil 483ms
โœ… MyBooksViewModelPublisherTests testFacetViewModelPublisher_TriggersSortUpdate 496ms
โœ… MyBooksViewModelPublisherTests testIsLoadingPublisher_EmitsChanges 401ms
โœ… MyBooksViewModelPublisherTests testSearchQueryPublisher_EmitsChanges 407ms
โœ… MyBooksViewModelPublisherTests testSelectedBookPublisher_EmitsChanges 503ms
โœ… MyBooksViewModelPublisherTests testShowInstructionsLabelPublisher_InitialState 429ms
โœ… MyBooksViewModelSearchEdgeCaseTests testFilterLogic_EmojiInContent_HandledCorrectly 48ms
โœ… MyBooksViewModelSearchEdgeCaseTests testFilterLogic_NumbersInQuery_Matches 6ms
โœ… MyBooksViewModelSearchEdgeCaseTests testFilterLogic_PartialWord_Matches 3ms
โœ… MyBooksViewModelSearchEdgeCaseTests testFilterLogic_UnicodeCharacters_Matches 5ms
โœ… MyBooksViewModelSearchEdgeCaseTests testFilterLogic_VeryLongQuery_NoMatch 2ms
โœ… MyBooksViewModelSearchEdgeCaseTests testFilterLogic_WhitespaceQuery_HandledCorrectly 2ms
โœ… MyBooksViewModelSearchQueryTests testSearchQuery_IndependentOfFilterBooks 6ms
โœ… MyBooksViewModelSearchQueryTests testSearchQuery_PublisherEmitsAllChanges 110ms
โœ… MyBooksViewModelSearchQueryTests testSearchQuery_SetAndRetrieve 214ms
โœ… MyBooksViewModelSortPersistenceTests testActiveFacetSort_StaysInSync 2ms
โœ… MyBooksViewModelSortPersistenceTests testSortOrder_MaintainedAfterFilter 10ms
โœ… MyBooksViewModelSortPersistenceTests testSortOrder_MaintainedAfterReset 18ms
โœ… MyBooksViewModelSortingIntegrationTests testAuthorSort_SortKeyFormat 5ms
โœ… MyBooksViewModelSortingIntegrationTests testSortByAuthor_MultipleBooks_CorrectOrder 4ms
โœ… MyBooksViewModelSortingIntegrationTests testSortByTitle_MultipleBooks_CorrectOrder 12ms
โœ… MyBooksViewModelSortingIntegrationTests testSort_SecondaryField_BreaksTies 45ms
โœ… MyBooksViewModelSortingIntegrationTests testTitleSort_SortKeyFormat 274ms
โœ… MyBooksViewModelSortingTests testSortChange_FromTitleToAuthor_UpdatesActiveFacetSort 100ms
โœ… MyBooksViewModelSortingTests testSortComparator_AuthorSort_ComparesCorrectly 107ms
โœ… MyBooksViewModelSortingTests testSortComparator_EmptyAuthor_TreatedAsEmptyString 3ms
โœ… MyBooksViewModelSortingTests testSortComparator_IdenticalKeys_MaintainsOrder 6ms
โœ… MyBooksViewModelSortingTests testSortComparator_NilAuthors_HandledCorrectly 5ms
โœ… MyBooksViewModelSortingTests testSortComparator_TitleSort_ComparesCorrectly 7ms
โœ… MyBooksViewModelStateTransitionTests testAlert_StateTransitions 3ms
โœ… MyBooksViewModelStateTransitionTests testIsLoading_TransitionsDuringLoad 4ms
โœ… MyBooksViewModelStateTransitionTests testShowInstructionsLabel_TransitionsOnRegistryChange 346ms
โœ… MyBooksViewModelUIBindingTests testSelectNewLibrary_PublisherEmitsOnChange 4ms
โœ… MyBooksViewModelUIBindingTests testShowLibraryAccountView_PublisherEmitsOnChange 2ms
โœ… MyBooksViewModelUIBindingTests testShowSearchSheet_PublisherEmitsOnChange 19ms
โœ… NSErrorAdditionsTests testLocalizedDescriptionWithRecovery_bothPresent_separatedByDoubleNewline <1ms
โœ… NSErrorAdditionsTests testLocalizedDescriptionWithRecovery_emptyRecoverySuggestion_returnsDescriptionOnly <1ms
โœ… NSErrorAdditionsTests testLocalizedDescriptionWithRecovery_multilineRecoverySuggestion 2ms
โœ… NSErrorAdditionsTests testLocalizedDescriptionWithRecovery_nilDescription_usesDefaultDescription 2ms
โœ… NSErrorAdditionsTests testLocalizedDescriptionWithRecovery_noRecoverySuggestion_returnsDescription <1ms
โœ… NSErrorAdditionsTests testLocalizedDescriptionWithRecovery_whitespaceOnlyRecoverySuggestion_returnsDescriptionOnly <1ms
โœ… NSErrorAdditionsTests testLocalizedDescriptionWithRecovery_withRecoverySuggestion_returnsBoth <1ms
โœ… NSNotificationTPPTests testNSNotificationConstants_matchSwift <1ms
โœ… NSNotificationTPPTests testNotificationKeys_exist 18ms
โœ… NSNotificationTPPTests testNotificationNames_exist <1ms
โœ… NavigationCoordinatorTests testNavigationCoordinator_Book_NotStored_ReturnsNil <1ms
โœ… NavigationCoordinatorTests testNavigationCoordinator_ClearAudioRoutes_ClearsPath <1ms
โœ… NavigationCoordinatorTests testNavigationCoordinator_ClearAudioRoutes_OnEmptyPath_DoesNotCrash <1ms
โœ… NavigationCoordinatorTests testNavigationCoordinator_InitialState_NoEPUBSamplePresented 31ms
โœ… NavigationCoordinatorTests testNavigationCoordinator_InitialState_PathIsEmpty <1ms
โœ… NavigationCoordinatorTests testNavigationCoordinator_MultiplePushes_AccumulateInPath <1ms
โœ… NavigationCoordinatorTests testNavigationCoordinator_PopToRootUnanimated_ClearsEntirePath <1ms
โœ… NavigationCoordinatorTests testNavigationCoordinator_PopToRoot_ClearsEntirePath 1ms
โœ… NavigationCoordinatorTests testNavigationCoordinator_PopToRoot_OnEmptyPath_DoesNotCrash 5ms
โœ… NavigationCoordinatorTests testNavigationCoordinator_Pop_DecreasesPathCount <1ms
โœ… NavigationCoordinatorTests testNavigationCoordinator_Pop_OnEmptyPath_DoesNotCrash <1ms
โœ… NavigationCoordinatorTests testNavigationCoordinator_PushAudioRoute_ClearsExistingRoutes <1ms
โœ… NavigationCoordinatorTests testNavigationCoordinator_PushAudioRoute_FromBookDetail_PreservesStack 4ms
โœ… NavigationCoordinatorTests testNavigationCoordinator_PushAudioRoute_OnEmptyPath_AddsRoute 7ms
โœ… NavigationCoordinatorTests testNavigationCoordinator_PushAudioRoute_PreventsDuplicateAudioRoutes <1ms
โœ… NavigationCoordinatorTests testNavigationCoordinator_Push_IncreasesPathCount <1ms
โœ… NavigationCoordinatorTests testNavigationCoordinator_StoreAudioModel_CanBeRetrieved <1ms
โœ… NavigationCoordinatorTests testNavigationCoordinator_StoreBook_CanBeRetrieved 2ms
โœ… NavigationFreezePreventionTests testNavigation_failurePath_clearsOnPlaybackFailed <1ms
โœ… NavigationFreezePreventionTests testNavigation_multipleBeginsThenFailure_stillClears <1ms
โœ… NavigationFreezePreventionTests testNavigation_normalFlow_clearsOnPlaybackBegan 3ms
โœ… NavigationFreezePreventionTests testNavigation_notNavigating_seekIsAllowed <1ms
โœ… NavigationFreezePreventionTests testNavigation_unloadPath_clearsOnPlaybackUnloaded <1ms
โœ… NetworkCacheClearRoutingTests testClearingURLCacheShared_leavesExecutorCacheIntact_executorClearCacheEmptiesIt 26ms
โœ… NetworkCacheClearRoutingTests testExecutorClearCache_clearsPrivateURLCache 1.47s
โœ… NetworkCacheClearRoutingTests testSignOutAndForceReset_routeCacheClearThroughExecutor_notURLCacheShared 24ms
โœ… NetworkExecutorCredentialGuardTests testExecuteTokenRefresh_BothEmpty_FailsViaTokenRequestGuard 1ms
โœ… NetworkExecutorCredentialGuardTests testExecuteTokenRefresh_EmptyUsername_FailsViaTokenRequestGuard 1ms
โœ… NetworkExecutorCredentialGuardTests testExecuteTokenRefresh_ServerReturns401_ReturnsFailure 2ms
โœ… NetworkExecutorCredentialGuardTests testExecuteTokenRefresh_ValidCredentials_ReturnsTokenResponse 10ms
โœ… NetworkExecutorCredentialGuardTests testExecuteTokenRefresh_WithAccountId_Succeeds 26ms
โœ… NetworkExecutorCredentialGuardTests testRefreshTokenAndResume_DefaultAccountId_BackwardCompatible 8ms
โœ… NetworkExecutorCredentialGuardTests testRefreshTokenAndResume_NilTask_NilAccountId_DoesNotCrash 5ms
โœ… NetworkExecutorCredentialGuardTests testRefreshTokenAndResume_NoCredentials_FailsGracefully 10ms
โœ… NetworkExecutorResponseRegressionTests testGET_handlesEmptyResponseBody 102ms
โœ… NetworkExecutorResponseRegressionTests testGET_handlesHTTPErrorGracefully 3ms
โœ… NetworkExecutorResponseRegressionTests testGET_receivesLCPLicenseJSON 34ms
โœ… NetworkExecutorResponseRegressionTests testGET_receivesLargeManifestJSON 4ms
โœ… NetworkExecutorTaskTypeTests testDownload_createsDownloadTask 10ms
โœ… NetworkExecutorTaskTypeTests testGET_createsDataTask_notDownloadTask 108ms
โœ… NetworkExecutorTaskTypeTests testGET_receivesResponseData 34ms
โœ… NetworkOfflineDetectionTests testNetworkReachability_hasSharedInstance 7ms
โœ… NetworkOfflineDetectionTests testURLError_nonOfflineErrorCodes 98ms
โœ… NetworkOfflineDetectionTests testURLError_offlineErrorCodes 5ms
โœ… NetworkQueueTests testAddRequestDoesNotCrash 14ms
โœ… NetworkQueueTests testAddRequestWithHeadersDoesNotCrash 4ms
โœ… NetworkQueueTests testHTTPMethodTypeRawValues 3ms
โœ… NetworkQueueTests testMaxRetriesInQueueIsFive 32ms
โœ… NetworkQueueTests testMigrateCanBeCalledMultipleTimes 4ms
โœ… NetworkQueueTests testMigrateDoesNotCrash 4ms
โœ… NetworkQueueTests testObjCSharedReturnsInstance 3ms
โœ… NetworkQueueTests testSharedInstanceIsSingleton 2ms
โœ… NetworkQueueTests testStatusCodesContainsExpectedNetworkErrors 2ms
โœ… NetworkQueueTests testStatusCodesContainsRoamingAndCallErrors 2ms
โœ… NetworkQueueTests testStatusCodesContainsSecureConnectionFailed 2ms
โœ… NetworkRequestQueueTests testConcurrentRequests_respectsLimit 10.08s
โœ… NetworkRequestQueueTests testRequestOrdering_maintainsOrder 25ms
โœ… NetworkRetryLogicTests testNoRetry_on400BadRequest 4ms
โœ… NetworkRetryLogicTests testNoRetry_on404NotFound 7ms
โœ… NetworkRetryLogicTests testRateLimiting_429Response 8ms
โœ… NetworkRetryLogicTests testRetry_on500Error_eventualSuccess 6ms
โœ… NetworkRetryLogicTests testRetry_on502BadGateway 3ms
โœ… NetworkRetryLogicTests testRetry_on503ServiceUnavailable 7ms
โœ… NetworkRetryLogicTests testRetry_on504GatewayTimeout 16ms
โœ… NetworkTimeoutTests testDefaultTimeout_isReasonable 5ms
โœ… NetworkTimeoutTests testTimeout_configuration <1ms
โœ… NotificationEventTypeContractTests testAllCMEventTypes_ParseToiOSEnum <1ms
โœ… NotificationEventTypeContractTests testHoldAvailable_IsHoldRelated 4ms
โœ… NotificationEventTypeContractTests testHoldRemoved_IsHoldRelated <1ms
โœ… NotificationEventTypeContractTests testLoanExpiry_IsNotHoldRelated <1ms
โœ… NotificationEventTypeContractTests testLoanRemoved_IsNotHoldRelated 13ms
โœ… NotificationEventTypeContractTests testUnknownEventType_returnsNilForAllUnrecognizedRawValues <1ms
โœ… NotificationEventTypeContractTests testiOSEnum_HasNoCasesUnknownToCM 28ms
โœ… NotificationPayloadContractTests testAllFixturePayloads_ParseThroughiOSEventTypeEnum 35ms
โœ… NotificationPayloadContractTests testAllPayloads_HaveAPSAlert 3ms
โœ… NotificationPayloadContractTests testAllPayloads_HaveEventTypeField <1ms
โœ… NotificationPayloadContractTests testAllPayloads_HaveIdentifierTypeField 1ms
โœ… NotificationPayloadContractTests testAllPayloads_HaveLoansEndpointField 6ms
โœ… NotificationPayloadContractTests testAllPayloads_haveIdentifierAndLibraryAsNonEmptyStrings 76ms
โœ… NotificationPayloadContractTests testEventTypes_MatchPayloadKeys 1ms
โœ… NotificationPayloadContractTests testHoldClassification_MatchesExpectedRouting 2ms
โœ… NotificationPayloadContractTests testLoanExpiry_HasDaysToExpiryField 9ms
โœ… NotificationPayloadContractTests testNonExpiryPayloads_DoNotHaveDaysToExpiry 3ms
โœ… NotificationServiceStateMachineTests testAuthStateChange_idempotentTransitions_doNotTriggerRetry 93ms
โœ… NotificationServiceStateMachineTests testAuthStateChange_loggedInToStale_doesNotTriggerRetry 48ms
โœ… NotificationServiceStateMachineTests testAuthStateChange_loggedOutToLoggedIn_triggersRetry 64ms
โœ… NotificationServiceStateMachineTests testAuthStateChange_staleToLoggedIn_triggersRetry 42ms
โœ… NotificationServiceStateMachineTests testHoldNotification_blocksUntilLoaded_thenNavigates 46ms
โœ… NotificationServiceStateMachineTests testHoldNotification_detailsFailed_completes 46ms
โœ… NotificationServiceStateMachineTests testHoldNotification_doesNotSupportReservations_completes 53ms
โœ… NotificationServiceStateMachineTests testHoldNotification_nilCurrentAccount_skipsNoAccount 54ms
โœ… NotificationServiceStateMachineTests testHoldNotification_supportsReservations_navigates 86ms
โœ… NotificationServiceTests testBackgroundFetchIsNeeded_isReferentiallyTransparent 1ms
โœ… NotificationServiceTests testCompareAvailabilityDoesNotCrashWithNoAvailability 5ms
โœ… NotificationServiceTests testCompareAvailabilityReservedToReady 106ms
โœ… NotificationServiceTests testHoldClassificationFallback_WhenEventTypeNotInEnum <1ms
โœ… NotificationServiceTests testHoldClassificationWithAPSAlertContainingAvailableKeyword 5ms
โœ… NotificationServiceTests testHoldClassificationWithAPSAlertContainingReadyKeyword 198ms
โœ… NotificationServiceTests testHoldClassificationWithNonHoldAPSAlert <1ms
โœ… NotificationServiceTests testHoldClassificationWithReservationInBody <1ms
โœ… NotificationServiceTests testHoldClassification_byEventType_routesAllKnownEnumCasesCorrectly 4ms
โœ… NotificationServiceTests testHoldClassification_unparseableInputDefaultsToHoldRelated <1ms
โœ… NotificationServiceTests testNotificationConstants_areStableAndDistinct 2ms
โœ… NotificationServiceTests testTokenDataCodableRoundTrip 47ms
โœ… NotificationServiceTests testTokenDataEncodesToValidJSON 70ms
โœ… NotificationServiceTests testTokenDataEncoding 2ms
โœ… NotificationServiceTests testTokenDataWithEmptyToken 112ms
โœ… NotificationServiceTests testTokenDataWithSpecialCharacters_roundTripsThroughJSON 2ms
โœ… NotificationServiceTokenTests testShouldRetryTokenRegistration_loggedInToLoggedIn_doesNotRetry 96ms
โœ… NotificationServiceTokenTests testShouldRetryTokenRegistration_loggedInToLoggedOut_doesNotRetry 1ms
โœ… NotificationServiceTokenTests testShouldRetryTokenRegistration_loggedInToStale_doesNotRetry <1ms
โœ… NotificationServiceTokenTests testShouldRetryTokenRegistration_loggedOutToLoggedIn_withFlagFalse_retries 2ms
โœ… NotificationServiceTokenTests testShouldRetryTokenRegistration_loggedOutToLoggedOut_doesNotRetry 102ms
โœ… NotificationServiceTokenTests testShouldRetryTokenRegistration_staleToLoggedIn_withFlagFalse_retries 15ms
โœ… NotificationServiceTokenTests testShouldRetryTokenRegistration_staleToLoggedIn_withFlagTrue_doesNotRetry 51ms
โœ… NotificationServiceTokenTests testShouldRetryTokenRegistration_staleToStale_doesNotRetry 2ms
โœ… NotificationServiceTokenTests testTokenData_data_isNotNil <1ms
โœ… NotificationServiceTokenTests testTokenData_emptyToken_stillEncodes <1ms
โœ… NotificationServiceTokenTests testTokenData_encodesCorrectJSON <1ms
โœ… NotificationServiceTokenTests testTokenData_longToken_encodesCorrectly 9ms
โœ… NotificationServiceTokenTests testTokenData_tokenType_isAlwaysFCMiOS <1ms
โœ… NotificationSyncThrottleTests testForceSync_bypassesThrottle_atExactThreshold 2ms
โœ… NotificationSyncThrottleTests testForceSync_bypassesThrottle_evenIfRecentlySynced <1ms
โœ… NotificationSyncThrottleTests testForceSync_proceedsRegardlessOfHistoryShape 78ms
โœ… NotificationSyncThrottleTests testHoldNotification_alwaysSyncs <1ms
โœ… NotificationSyncThrottleTests testThrottle_normalSync_blocksRecentAndAllowsAgedAndFirstSync <1ms
โœ… NotificationTokenDataTests testTokenData_codableRoundTrip 6ms
โœ… NotificationTokenDataTests testTokenData_dataNotNil 1ms
โœ… NotificationTokenDataTests testTokenData_encodesToJSON 2ms
โœ… NotificationTokenDataTests testTokenData_init <1ms
โœ… NotificationTokenRegistrationTests testRegressionForBug_SAML401LeavesFlagUnlatched_perHelpSpot17680 <1ms
โœ… NotificationTokenRegistrationTests testShouldMark_whenSaveSucceeds 6ms
โœ… NotificationTokenRegistrationTests testShouldMark_whenTokenAlreadyRegistered <1ms
โœ… NotificationTokenRegistrationTests testShouldNotMark_whenDeviceRegistrationLinkAbsent 2ms
โœ… NotificationTokenRegistrationTests testShouldNotMark_whenExistsCheckInconclusive <1ms
โœ… NotificationTokenRegistrationTests testShouldNotMark_whenFCMTokenUnavailable <1ms
โœ… NotificationTokenRegistrationTests testShouldNotMark_whenProfileDocumentMissing 3ms
โœ… NotificationTokenRegistrationTests testShouldNotMark_whenSaveFails <1ms
โœ… NotificationTokenRegistrationTests testShouldNotMark_whenSaveNeededButNotAttempted 15ms
โœ… NotificationTokenRegistrationTests testShouldNotMark_whenSaveSucceededButPrerequisiteMissing 14ms
โœ… NowPlayingCoordinatorBackgroundTests testApplyUpdate_inBackground_bypassesDebounce 5ms
โœ… NowPlayingCoordinatorBackgroundTests testApplyUpdate_inForeground_debouncesAsBefore 751ms
โœ… NowPlayingCoordinatorBackgroundTests testDryStreamGuard_doesNotLog_atExactlyThreshold 1ms
โœ… NowPlayingCoordinatorBackgroundTests testDryStreamGuard_doesNotLog_whenNotPlaying 518ms
โœ… NowPlayingCoordinatorBackgroundTests testDryStreamGuard_doesNotLog_whenStreamIsFresh <1ms
โœ… NowPlayingCoordinatorBackgroundTests testDryStreamGuard_logsErrorOnForegroundReturn_whenLastUpdateStale 17ms
โœ… NowPlayingCoordinatorTests testClearNowPlaying_removesAllInfo <1ms
โœ… NowPlayingCoordinatorTests testClearNowPlaying_setsStoppedState 301ms
โœ… NowPlayingCoordinatorTests testSetPlaybackState_paused_setsCorrectPlaybackState 16ms
โœ… NowPlayingCoordinatorTests testSetPlaybackState_paused_setsZeroRate 2ms
โœ… NowPlayingCoordinatorTests testSetPlaybackState_playing_setsCorrectPlaybackState 235ms
โœ… NowPlayingCoordinatorTests testSetPlaybackState_playing_setsNonZeroRate <1ms
โœ… NowPlayingCoordinatorTests testUpdateArtwork_nil_clearsArtwork 983ms
โœ… NowPlayingCoordinatorTests testUpdateArtwork_setsArtworkInInfo 4.24s
โœ… NowPlayingCoordinatorTests testUpdateNowPlaying_clampsElapsedToNotExceedDuration 3ms
โœ… NowPlayingCoordinatorTests testUpdateNowPlaying_clampsNegativeElapsedToZero <1ms
โœ… NowPlayingCoordinatorTests testUpdateNowPlaying_ensuresDurationIsAtLeastOne 2ms
โœ… NowPlayingCoordinatorTests testUpdateNowPlaying_preservesArtwork_acrossUpdates 55ms
โœ… NowPlayingCoordinatorTests testUpdateNowPlaying_rapidUpdates_lastOneWins 5ms
โœ… NowPlayingCoordinatorTests testUpdateNowPlaying_setsElapsedAndDuration 2ms
โœ… NowPlayingCoordinatorTests testUpdateNowPlaying_setsInfoCenter 1ms
โœ… NowPlayingCoordinatorTests testUpdateNowPlaying_setsMediaType_toAudioBook 163ms
โœ… NowPlayingCoordinatorTests testUpdateNowPlaying_setsPlaybackRate_whenPlaying 2ms
โœ… NowPlayingCoordinatorTests testUpdateNowPlaying_setsZeroPlaybackRate_whenPaused 116ms
โœ… NowPlayingCoordinatorTests testUpdatePlaybackRate_updatesDefaultRate <1ms
โœ… OAuthSAMLRedirectRegressionTests testRegression_handleRedirectURL_rejectsCustomSchemeURL 256ms
โœ… OAuthSAMLRedirectRegressionTests testRegression_oauthRedirect_stillUsesUniversalLinksPrefix 472ms
โœ… OAuthSAMLRedirectRegressionTests testRegression_oauthRedirect_withError_stillHandlesError 317ms
โœ… OAuthSAMLRedirectRegressionTests testRegression_samlRedirect_stillUsesUniversalLinksPrefix 253ms
โœ… OIDCAuthDocumentParsingTests testAuthDocument_containsOidcType 74ms
โœ… OIDCAuthDocumentParsingTests testAuthDocument_oidcAuthenticateLink_IsParsed 272ms
โœ… OIDCAuthDocumentParsingTests testAuthDocument_oidcDoesNotAffectOtherAuthTypes 154ms
โœ… OIDCAuthDocumentParsingTests testAuthDocument_unknownTypeStillFallsToNone 4ms
โœ… OIDCAuthTypeTests testAuthType_InitFromLegacyOidcString_ReturnsOidc <1ms
โœ… OIDCAuthTypeTests testAuthType_InitFromOidcString_ReturnsOidc <1ms
โœ… OIDCAuthTypeTests testAuthType_LegacyOidcURI_DecodesViaCodeable 17ms
โœ… OIDCAuthTypeTests testAuthType_OidcIsDistinct_FromOtherTypes <1ms
โœ… OIDCAuthTypeTests testAuthType_OidcRawValue_IsCorrect 2ms
โœ… OIDCAuthenticationPropertyTests testOidcAuthentication_catalogRequiresAuthentication_ReturnsFalse 240ms
โœ… OIDCAuthenticationPropertyTests testOidcAuthentication_hasAuthenticationUrl 116ms
โœ… OIDCAuthenticationPropertyTests testOidcAuthentication_isNotOtherTypes 83ms
โœ… OIDCAuthenticationPropertyTests testOidcAuthentication_isOidc_ReturnsTrue 484ms
โœ… OIDCAuthenticationPropertyTests testOidcAuthentication_methodDescription_IsOpenIDConnect 92ms
โœ… OIDCAuthenticationPropertyTests testOidcAuthentication_needsAgeCheck_ReturnsFalse 27ms
โœ… OIDCAuthenticationPropertyTests testOidcAuthentication_needsAuth_ReturnsTrue 234ms
โœ… OIDCAuthenticationPropertyTests testOidcAuthentication_otherUrlsAreNil 831ms
โœ… OIDCCallbackEdgeCaseTests testHandleOIDCCallback_doesNotAffectPriorOAuthState 103ms
โœ… OIDCCallbackEdgeCaseTests testHandleOIDCCallback_prefersQueryOverFragment 240ms
โœ… OIDCCallbackEdgeCaseTests testHandleOIDCCallback_withEmptyQueryString_doesNotSetToken 126ms
โœ… OIDCCallbackEdgeCaseTests testHandleOIDCCallback_withLongToken_setsFullToken 61ms
โœ… OIDCCallbackEdgeCaseTests testHandleOIDCCallback_withMalformedPatronJSON_doesNotSetToken 186ms
โœ… OIDCCallbackEdgeCaseTests testHandleOIDCCallback_withOnlyAccessToken_doesNotSetToken 112ms
โœ… OIDCCallbackEdgeCaseTests testHandleOIDCCallback_withOnlyPatronInfo_doesNotSetToken 282ms
โœ… OIDCCallbackEdgeCaseTests testHandleOIDCCallback_withPatronContainingMultipleFields_parsesAll 99ms
โœ… OIDCCallbackEdgeCaseTests testHandleOIDCCallback_withPlusEncodedPatron_decodesSpaces 41ms
โœ… OIDCCallbackHandlingTests testHandleOIDCCallback_withError_doesNotSetToken 103ms
โœ… OIDCCallbackHandlingTests testHandleOIDCCallback_withFragment_extractsTokenAndValidates 213ms
โœ… OIDCCallbackHandlingTests testHandleOIDCCallback_withNoPayload_doesNotSetToken 95ms
โœ… OIDCCallbackHandlingTests testHandleOIDCCallback_withQueryParams_extractsTokenAndValidates 33ms
โœ… OIDCCallbackHandlingTests testOIDCFlow_afterCallback_validatesAndCompletesSignIn 60ms
โœ… OIDCCallbackSchemeTests testOidcCallbackHost_matchesAndroidConvention 2ms
โœ… OIDCCallbackSchemeTests testOidcCallbackScheme_isNotHTTPS 52ms
โœ… OIDCCallbackSchemeTests testOidcCallbackScheme_matchesAndroidConvention <1ms
โœ… OIDCIsolationRegressionTests testRegression_basicAuthentication_noTokenURLs 133ms
โœ… OIDCIsolationRegressionTests testRegression_makeRequest_oauthAndOIDC_bothUseBearerToken 431ms
โœ… OIDCIsolationRegressionTests testRegression_oauthAuthentication_typeIsCorrect 137ms
โœ… OIDCIsolationRegressionTests testRegression_oidcAuthentication_noOtherAuthURLs 37ms
โœ… OIDCIsolationRegressionTests testRegression_samlAuthentication_typeIsCorrect 191ms
โœ… OIDCIsolationRegressionTests testRegression_updateUserAccount_oauthStillStoresToken 80ms
โœ… OIDCLoginRoutingTests testLogIn_withOIDC_callsWillSignIn 129ms
โœ… OIDCLoginRoutingTests testLogIn_withOIDC_capturesCredentials 46ms
โœ… OIDCLoginRoutingTests testLogIn_withOIDC_doesNotValidateCredentialsDirectly 57ms
โœ… OIDCMakeRequestTests testMakeRequest_forOIDCSignOut_usesUserProfileURL 29ms
โœ… OIDCMakeRequestTests testMakeRequest_forOIDC_addsBearerTokenHeader 47ms
โœ… OIDCMakeRequestTests testMakeRequest_forOIDC_withoutToken_stillCreatesRequest 40ms
โœ… OIDCNSCodingTests testOidcAuthentication_NSCodingRoundTrip_PreservesProperties 141ms
โœ… OIDCNetworkLayer401Tests testOIDC_authDefinition_hasNoTokenURL 27ms
โœ… OIDCNetworkLayer401Tests testOIDC_authDefinition_isNotOauth 46ms
โœ… OIDCNetworkLayer401Tests testOIDC_authDefinition_isNotToken 41ms
โœ… OIDCNetworkLayer401Tests testOIDC_cannotDoClientSideTokenRefresh 100ms
โœ… OIDCNetworkLayer401Tests testOIDC_isTreatedLikeSAML_forReauth 23ms
โœ… OIDCReauthOnExpiredTokenTests testOIDC_afterReauth_credentialsRestored 24ms
โœ… OIDCReauthOnExpiredTokenTests testOIDC_refreshAuthIfNeeded_doesNotNilSelectedAuth 24ms
โœ… OIDCReauthOnExpiredTokenTests testOIDC_refreshAuthIfNeeded_withoutExistingCredentials_requiresUI 35ms
โœ… OIDCReauthOnExpiredTokenTests testOIDC_staleCredentials_authDefinitionPreserved 22ms
โœ… OIDCReauthOnExpiredTokenTests testOIDC_staleCredentials_stillHasCredentials 23ms
โœ… OIDCRedirectURIConstructionTests testOidcCallbackScheme_containsNoDots 36ms
โœ… OIDCRedirectURIConstructionTests testOidcCallbackScheme_doesNotContainColonOrSlash 43ms
โœ… OIDCRedirectURIConstructionTests testOidcCallbackScheme_isLowercase 22ms
โœ… OIDCRedirectURIConstructionTests testOidcRedirectURI_doesNotUseHTTPS 28ms
โœ… OIDCRedirectURIConstructionTests testOidcRedirectURI_doesNotUseUniversalLinksURL 43ms
โœ… OIDCRedirectURIConstructionTests testOidcRedirectURI_isValidURL 70ms
โœ… OIDCRegressionTests testRegression_allAuthTypes_areCodable 26ms
โœ… OIDCRegressionTests testRegression_authTypeCodable_roundTripIncludesOidc 44ms
โœ… OIDCRegressionTests testRegression_basicAuth_makeRequest_noBearerToken 44ms
โœ… OIDCRegressionTests testRegression_basicAuth_needsAuth_StillTrue 31ms
โœ… OIDCRegressionTests testRegression_defaultAuth_stillPrefersNonOAuth 23ms
โœ… OIDCRegressionTests testRegression_existingAuthTypesUnchanged 22ms
โœ… OIDCRegressionTests testRegression_oauthAuth_makeRequest_stillAddsBearerToken 25ms
โœ… OIDCRegressionTests testRegression_samlAuth_makeRequest_stillAddsBearerToken 22ms
โœ… OIDCRegressionTests testRegression_samlUpdateUserAccount_stillStoresCookies 55ms
โœ… OIDCSelectedAuthenticationTests testRefreshAuthIfNeeded_withOIDC_resetsIgnoreSignedInState 24ms
โœ… OIDCSelectedAuthenticationTests testSelectedAuthentication_canBeSetToOIDC 26ms
โœ… OIDCSignOutRegressionTests testRegression_signOut_withOAuth_stillClearsToken 60ms
โœ… OIDCSignOutRegressionTests testRegression_signOut_withSAML_stillClearsCookies 133ms
โœ… OIDCSignOutRegressionTests testSignOut_resetsInFlightAuthState 90ms
โœ… OIDCSignOutRegressionTests testSignOut_withOIDC_clearsAuthToken 206ms
โœ… OIDCSignOutRegressionTests testSignOut_withOIDC_clearsPatronInfo 187ms
โœ… OIDCSignOutRegressionTests testSignOut_withOIDC_triggersExplicitLogoutFlowAndCompletesDeauthorization 101ms
โœ… OIDCTokenRefreshRegressionTests testRefreshAuth_withOIDC_doesNotNilOutSelectedAuth_unlikeSAML 86ms
โœ… OIDCTokenRefreshRegressionTests testRefreshAuth_withOIDC_usingExistingCredentials_doesNotResetSelectedAuth 27ms
โœ… OIDCTokenRefreshRegressionTests testRefreshAuth_withOIDC_withoutExistingCredentials_setsIgnoreSignedIn 27ms
โœ… OIDCTokenRefreshRegressionTests testRegression_refreshAuth_withBasic_ignoreSignedInNotSet 57ms
โœ… OIDCTokenRefreshRegressionTests testRegression_refreshAuth_withOAuth_stillSetsIgnoreSignedIn 86ms
โœ… OIDCTokenRefreshRegressionTests testRegression_refreshAuth_withSAML_codepathIncludesSAML 29ms
โœ… OIDCUpdateUserAccountTests testUpdateUserAccount_withOIDC_doesNotStoreCookies 64ms
โœ… OIDCUpdateUserAccountTests testUpdateUserAccount_withOIDC_marksLoggedIn 39ms
โœ… OIDCUpdateUserAccountTests testUpdateUserAccount_withOIDC_setsAuthDefinition 30ms
โœ… OIDCUpdateUserAccountTests testUpdateUserAccount_withOIDC_storesAuthToken 51ms
โœ… OIDCUpdateUserAccountTests testUpdateUserAccount_withOIDC_storesPatronInfo 103ms
โœ… OIDCViewModelRegressionTests testOIDCSignIn_doesNotRequireUsernameOrPIN 97ms
โœ… OIDCViewModelSignInTests testSignIn_withActiveCredentials_showsSignOutAlert 2ms
โœ… OIDCViewModelSignInTests testSignIn_withStaleOIDCCredentials_proceedsToLogin 6ms
โœ… OPDS1BorrowEntryContractTests testBorrowEntry_HasAvailabilityWithDates 3ms
โœ… OPDS1BorrowEntryContractTests testBorrowEntry_HasLCPAcquisition 1ms
โœ… OPDS1BorrowEntryContractTests testBorrowEntry_HasRevokeLink 2ms
โœ… OPDS1BorrowEntryContractTests testParseBorrowEntry_AsSingleEntryFeed 33ms
โœ… OPDS1CatalogGroupedContractTests testGroupedFeed_EntriesHaveGroupAttributes 2ms
โœ… OPDS1CatalogGroupedContractTests testGroupedFeed_HasMultipleGroups 3ms
โœ… OPDS1CatalogGroupedContractTests testGroupedFeed_ParsesAsGroupedType 2ms
โœ… OPDS1HoldEntriesContractTests testHoldsFeed_ReadyEntry_HasReadyAvailability 703ms
โœ… OPDS1HoldEntriesContractTests testHoldsFeed_ReservedEntry_HasHoldPosition 16ms
โœ… OPDS1HoldEntriesContractTests testHoldsFeed_ReservedEntry_HasRevokeLink 7ms
โœ… OPDS1HoldEntriesContractTests testParseHoldsFeed_ReturnsTwoEntries 152ms
โœ… OPDS1LoansFeedContractTests testLoansFeed_AudiobookEntry_HasAudiobookType 3ms
โœ… OPDS1LoansFeedContractTests testLoansFeed_EPUBEntry_HasAdobeDRMAcquisition 3ms
โœ… OPDS1LoansFeedContractTests testLoansFeed_EntryHasAnnotationLink 4ms
โœ… OPDS1LoansFeedContractTests testLoansFeed_EntryHasRevokeLink 3ms
โœ… OPDS1LoansFeedContractTests testLoansFeed_OpenAccessPDF_HasDirectAcquisition 6ms
โœ… OPDS1LoansFeedContractTests testParseLoansFeed_ReturnsThreeEntries 3ms
โœ… OPDS1ParsingTests testCatalog_acquisitionLinks_areBucketedSeparatelyFromLinks 13ms
โœ… OPDS1ParsingTests testCatalog_multipleAuthors_allPreservedInOrder 21ms
โœ… OPDS1ParsingTests testCatalog_openAccessAndBorrow_bothPreservedWithCorrectRelation 8ms
โœ… OPDS1ParsingTests testCatalog_paginationNextLink_captured 6ms
โœ… OPDS1ParsingTests testCatalog_parsesEntryIdentifiers 2ms
โœ… OPDS1ParsingTests testCatalog_parsesEntryTitlesInDocumentOrder 31ms
โœ… OPDS1ParsingTests testCatalog_parsesExpectedEntryCount 3ms
โœ… OPDS1ParsingTests testCatalog_parsesFeedIdentifier 2ms
โœ… OPDS1ParsingTests testCatalog_parsesFeedTitle 2ms
โœ… OPDS1ParsingTests testCatalog_parsesFeedUpdatedAsRFC3339Date 22ms
โœ… OPDS1ParsingTests testCatalog_searchLink_parsedWithType 36ms
โœ… OPDS1ParsingTests testCatalog_singleAuthor_preserved 31ms
โœ… OPDS1ParsingTests testEmptyData_returnsNilNotCrash <1ms
โœ… OPDS1ParsingTests testEmptyFeed_yieldsEmptyEntriesArrayNotNil 36ms
โœ… OPDS1ParsingTests testEntry_category_parsedWithTerm 159ms
โœ… OPDS1ParsingTests testEntry_imageThumbnail_keptAsLink 6ms
โœ… OPDS1ParsingTests testEntry_published_fallsBackToIssuedWhenPublishedAbsent 1ms
โœ… OPDS1ParsingTests testEntry_published_isParsedFromPublishedElement 1ms
โœ… OPDS1ParsingTests testEntry_published_prefersPublishedOverIssuedWhenBothPresent 2ms
โœ… OPDS1ParsingTests testEntry_publisher_extracted 5ms
โœ… OPDS1ParsingTests testEntry_summary_decoded 2ms
โœ… OPDS1ParsingTests testEntry_unicodeTitle_preservedExactly 1ms
โœ… OPDS1ParsingTests testEntry_veryLongTitle_preservedExactly 1ms
โœ… OPDS1ParsingTests testFacetedFeed_activeFacet_attributeRecognized 4ms
โœ… OPDS1ParsingTests testFacetedFeed_facetLinks_groupedCorrectly 22ms
โœ… OPDS1ParsingTests testFacetedFeed_otherFacetsNotMarkedActive 56ms
โœ… OPDS1ParsingTests testFeedType_acquisitionFeed_detectedUngrouped 27ms
โœ… OPDS1ParsingTests testFeedType_emptyFeed_returnsAcquisitionUngrouped 3ms
โœ… OPDS1ParsingTests testLink_invalidHrefScheme_capturedAsIs 5ms
โœ… OPDS1ParsingTests testLink_missingHref_returnsNil 4ms
โœ… OPDS1ParsingTests testLink_validHref_returnsLinkWithAttributes 2ms
โœ… OPDS1ParsingTests testMalformedEntries_skippedNotCrashed 6ms
โœ… OPDS1ParsingTests testMalformedXML_returnsNilNotCrash 1ms
โœ… OPDS1ParsingTests testNonOPDSXML_returnsNil 41ms
โœ… OPDS1RevokeResponseContractTests testRevokeResponse_HasBorrowLink_NotFulfillmentLink 63ms
โœ… OPDS1RevokeResponseContractTests testRevokeResponse_ParsesAsSingleEntry 1ms
โœ… OPDS2AuthenticationDocumentTests testAnnouncements_parsesIfPresent 26ms
โœ… OPDS2AuthenticationDocumentTests testAuthentication_noAuthRequired 46ms
โœ… OPDS2AuthenticationDocumentTests testAuthentication_parsesBarcodeFormat 44ms
โœ… OPDS2AuthenticationDocumentTests testAuthentication_parsesBasicAuth 24ms
โœ… OPDS2AuthenticationDocumentTests testAuthentication_parsesInputConfiguration 17ms
โœ… OPDS2AuthenticationDocumentTests testAuthentication_parsesLabels 64ms
โœ… OPDS2AuthenticationDocumentTests testAuthentication_parsesMaximumLength 5ms
โœ… OPDS2AuthenticationDocumentTests testAuthentication_parsesMultipleMethods 76ms
โœ… OPDS2AuthenticationDocumentTests testColorScheme_parsesIfPresent 19ms
โœ… OPDS2AuthenticationDocumentTests testFeatures_parsesDisabledFeatures 111ms
โœ… OPDS2AuthenticationDocumentTests testFeatures_parsesEnabledFeatures 22ms
โœ… OPDS2AuthenticationDocumentTests testFromData_withEmptyData_throwsError 7ms
โœ… OPDS2AuthenticationDocumentTests testFromData_withInvalidJSON_throwsError 3ms
โœ… OPDS2AuthenticationDocumentTests testFromData_withMissingRequiredFields_throwsError 307ms
โœ… OPDS2AuthenticationDocumentTests testFromData_withValidJSON_parsesDocument 65ms
โœ… OPDS2AuthenticationDocumentTests testLinks_firstRelMethod_findsPasswordReset 5ms
โœ… OPDS2AuthenticationDocumentTests testLinks_parsesCorrectly 1ms
โœ… OPDS2AuthenticationDocumentTests testServiceDescription_parsesIfPresent 89ms
โœ… OPDS2AvailabilityTests testIsAvailable_AvailableState_ReturnsTrue <1ms
โœ… OPDS2AvailabilityTests testIsReady_ReadyState_ReturnsTrue <1ms
โœ… OPDS2AvailabilityTests testIsReserved_ReservedState_ReturnsTrue 138ms
โœ… OPDS2AvailabilityTests testIsUnavailable_UnavailableState_ReturnsTrue 10ms
โœ… OPDS2BookBridgeTests testConvertAvailability_availableWithoutCopiesIsUnlimited <1ms
โœ… OPDS2BookBridgeTests testConvertAvailability_unknownStateDefaultsToUnlimited 11ms
โœ… OPDS2BookBridgeTests testFullPublicationToBook_fromDecodedJSON <1ms
โœ… OPDS2BookBridgeTests testFullPublicationToBook_mapsAuthors <1ms
โœ… OPDS2BookBridgeTests testFullPublicationToBook_mapsDescription <1ms
โœ… OPDS2BookBridgeTests testFullPublicationToBook_mapsMultipleAuthors <1ms
โœ… OPDS2BookBridgeTests testFullPublicationToBook_mapsNarrators 19ms
โœ… OPDS2BookBridgeTests testFullPublicationToBook_mapsPublishedDate <1ms
โœ… OPDS2BookBridgeTests testFullPublicationToBook_mapsPublisher 2ms
โœ… OPDS2BookBridgeTests testFullPublicationToBook_mapsSubjectsAsCategories <1ms
โœ… OPDS2BookBridgeTests testFullPublicationToBook_mapsSubtitle 1ms
โœ… OPDS2BookBridgeTests testMetadata_decodesAuthorFromSingleStringAndArray <1ms
โœ… OPDS2BookBridgeTests testRelationMapping_allStandardRelations <1ms
โœ… OPDS2BookBridgeTests testRelationMapping_nonAcquisitionRelReturnsNil <1ms
โœ… OPDS2BookBridgeTests testToBook_fallsBackToFirstImageWhenNoRelSpecified 2ms
โœ… OPDS2BookBridgeTests testToBook_filtersNonAcquisitionLinks <1ms
โœ… OPDS2BookBridgeTests testToBook_fromDecodedJSON 1ms
โœ… OPDS2BookBridgeTests testToBook_handlesInvalidHrefURL 10ms
โœ… OPDS2BookBridgeTests testToBook_handlesLinkWithNoType <1ms
โœ… OPDS2BookBridgeTests testToBook_keepsPublicationWhenAtLeastOneAcquisitionIsSupported <1ms
โœ… OPDS2BookBridgeTests testToBook_keepsPublicationWhenOnlyAcquisitionIsStreamingHTMLIndirect 1ms
โœ… OPDS2BookBridgeTests testToBook_mapsAlternateLink <1ms
โœ… OPDS2BookBridgeTests testToBook_mapsAuthorsFromArrayMetadata 1ms
โœ… OPDS2BookBridgeTests testToBook_mapsAvailableState 1ms
โœ… OPDS2BookBridgeTests testToBook_mapsBorrowLink <1ms
โœ… OPDS2BookBridgeTests testToBook_mapsBuyLink <1ms
โœ… OPDS2BookBridgeTests testToBook_mapsGenericAcquisitionLink <1ms
โœ… OPDS2BookBridgeTests testToBook_mapsImageURLFromImages <1ms
โœ… OPDS2BookBridgeTests testToBook_mapsIndirectAcquisition <1ms
โœ… OPDS2BookBridgeTests testToBook_mapsLCPIndirectAcquisition <1ms
โœ… OPDS2BookBridgeTests testToBook_mapsOpenAccessLink 1ms
โœ… OPDS2BookBridgeTests testToBook_mapsPreviewLink <1ms
โœ… OPDS2BookBridgeTests testToBook_mapsReadyState 1ms
โœ… OPDS2BookBridgeTests testToBook_mapsRelatedWorksLink 2ms
โœ… OPDS2BookBridgeTests testToBook_mapsReservedState <1ms
โœ… OPDS2BookBridgeTests testToBook_mapsRevokeLink 29ms
โœ… OPDS2BookBridgeTests testToBook_mapsSampleLink <1ms
โœ… OPDS2BookBridgeTests testToBook_mapsThumbnailURL <1ms
โœ… OPDS2BookBridgeTests testToBook_mapsUnavailableState <1ms
โœ… OPDS2BookBridgeTests testToBook_multipleAcquisitionLinks 2ms
โœ… OPDS2BookBridgeTests testToBook_noAvailabilityDefaultsToUnlimited 1ms
โœ… OPDS2BookBridgeTests testToBook_passesThroughIdentifierTitleUpdatedAndDescription 2ms
โœ… OPDS2BookBridgeTests testToBook_returnsNilWhenNoAcquisitionLinks <1ms
โœ… OPDS2BookBridgeTests testToBook_returnsNilWhenNoUsableAcquisitionPath 10ms
โœ… OPDS2BorrowResponseContractTests testBorrowResponse_HasAvailabilityWithDates 2ms
โœ… OPDS2BorrowResponseContractTests testBorrowResponse_HasFulfillmentAndRevokeLinks <1ms
โœ… OPDS2BorrowResponseContractTests testBorrowResponse_ParsesPublicationMetadata 1ms
โœ… OPDS2CatalogWiringTests testCatalogFeed_opds2Init_createsShellOpdsFeed 2ms
โœ… OPDS2CatalogWiringTests testCatalogFeed_opds2Init_mapsEntries 2ms
โœ… OPDS2CatalogWiringTests testCatalogFeed_opds2Init_setsTitle 5ms
โœ… OPDS2CatalogWiringTests testEndToEnd_jsonToLanes 29ms
โœ… OPDS2CatalogWiringTests testExtractOPDS2Facets_fallsBackToNumberOfItemsHintWhenNoURLMatch <1ms
โœ… OPDS2CatalogWiringTests testExtractOPDS2Facets_marksFacetActiveWhenHrefMatchesCurrentURL <1ms
โœ… OPDS2CatalogWiringTests testExtractOPDS2Facets_urlMatchIgnoresQueryOrder 9ms
โœ… OPDS2CatalogWiringTests testMapFeed_opds2Facets_extracted 3ms
โœ… OPDS2CatalogWiringTests testMapFeed_opds2Grouped_lanesHaveMoreURLs 2ms
โœ… OPDS2CatalogWiringTests testMapFeed_opds2Grouped_lanesTitlesMatch 59ms
โœ… OPDS2CatalogWiringTests testMapFeed_opds2Grouped_producesLanes 28ms
โœ… OPDS2CatalogWiringTests testMapFeed_opds2MultiTitleLane_isNotLoading_unchanged 3ms
โœ… OPDS2CatalogWiringTests testMapFeed_opds2Navigation_producesEmptyLanesAndBooks 2ms
โœ… OPDS2CatalogWiringTests testMapFeed_opds2Publication_producesUngroupedBooks 42ms
โœ… OPDS2CatalogWiringTests testMapFeed_opds2SingleTitleLane_isNotLoading_soCoverRenders 2ms
โœ… OPDS2CatalogWiringTests testMapFeed_opds2TwoTitleLane_isNotLoading 17ms
โœ… OPDS2CatalogWiringTests testMapFeed_opds2ZeroTitleGroup_producesNoLane 2ms
โœ… OPDS2CatalogWiringTests testMapFeed_opds2_bookMetadataPreserved 7ms
โœ… OPDS2CatalogWiringTests testParser_detectsOPDS1XML 1ms
โœ… OPDS2CatalogWiringTests testParser_detectsOPDS2JSON 1ms
โœ… OPDS2CatalogWiringTests testParser_invalidJSONThrows 106ms
โœ… OPDS2CatalogsFeedTests testAccountSetAuthenticationDocument 38ms
โœ… OPDS2CatalogsFeedTests testInitAccountsWithPublication 25ms
โœ… OPDS2CatalogsFeedTests testLoadCatalogsFeed 29ms
โœ… OPDS2ContributorTests testDecode_ObjectValue_ParsesAllFields <1ms
โœ… OPDS2ContributorTests testDecode_StringValue_ParsesAsName 1ms
โœ… OPDS2EmptyFeedContractTests testEmptyFeed_ParsesWithZeroItems 8ms
โœ… OPDS2FeedContractTests testParseAudiobook_IncludesCompleteMetadataAndLinks 1ms
โœ… OPDS2FeedContractTests testParseFacets_ExtractsFormatEntryPoints 15ms
โœ… OPDS2FeedContractTests testParseFeed_FromBackendFixture_SucceedsWithExpectedStructure 4ms
โœ… OPDS2FeedContractTests testParsePublications_ExtractsBookMetadata 19ms
โœ… OPDS2FeedParsingTests testDateParsing_withISO8601_parsesCorrectly 23ms
โœ… OPDS2FeedParsingTests testDateParsing_withMilliseconds_parsesCorrectly 10ms
โœ… OPDS2FeedParsingTests testDateParsing_withoutMilliseconds_parsesCorrectly 1ms
โœ… OPDS2FeedParsingTests testFromData_withEmptyCatalogs_parsesSuccessfully 1ms
โœ… OPDS2FeedParsingTests testFromData_withEmptyData_throwsError <1ms
โœ… OPDS2FeedParsingTests testFromData_withInvalidJSON_throwsError 1ms
โœ… OPDS2FeedParsingTests testFromData_withMissingCatalogs_throwsError 1ms
โœ… OPDS2FeedParsingTests testFromData_withValidJSON_parsesFeed 39ms
โœ… OPDS2FeedParsingTests testLinks_parsesCorrectly 141ms
โœ… OPDS2FeedParsingTests testMetadata_parsesAdobeVendorId 37ms
โœ… OPDS2FeedParsingTests testMetadata_parsesTitle 39ms
โœ… OPDS2FeedTests testDetectOPDS2FromContentType <1ms
โœ… OPDS2FeedTests testDetectOPDS2FromData <1ms
โœ… OPDS2FeedTests testFeedEquatable <1ms
โœ… OPDS2FeedTests testMixedFractionalAndNonFractionalDates_acrossPublications_bothParse 2ms
โœ… OPDS2FeedTests testParseDateWithFractionalSeconds 1ms
โœ… OPDS2FeedTests testParseDateWithoutFractionalSeconds 23ms
โœ… OPDS2FeedTests testParseFeedWithFacets <1ms
โœ… OPDS2FeedTests testParseFeedWithGroups 17ms
โœ… OPDS2FeedTests testParseFeedWithNavigation 3ms
โœ… OPDS2FeedTests testParseFeedWithPagination <1ms
โœ… OPDS2FeedTests testParseFeedWithPublications 1ms
โœ… OPDS2FeedTests testParseLinkWithIndirectAcquisition 3ms
โœ… OPDS2FeedTests testParseLinkWithProperties 27ms
โœ… OPDS2FeedTests testParseMinimalFeed <1ms
โœ… OPDS2FullMetadataTests testDecode_AllOptionalFields_ParsesCorrectly 2ms
โœ… OPDS2FullMetadataTests testDecode_AtIdKey_ParsesIdentifier 1ms
โœ… OPDS2FullMetadataTests testDecode_MissingId_GeneratesUUID <1ms
โœ… OPDS2FullMetadataTests testEncodeDecode_RoundTrip_PreservesData 7ms
โœ… OPDS2FullPublicationTests testAcquisitionLinks_FiltersCorrectly 46ms
โœ… OPDS2FullPublicationTests testBorrowLink_Found_ReturnsLink <1ms
โœ… OPDS2FullPublicationTests testCoverURL_CoverRel_ReturnsCorrectURL <1ms
โœ… OPDS2FullPublicationTests testCoverURL_LargeWidth_FallsBackToLargeImage 2ms
โœ… OPDS2FullPublicationTests testImageURL_NoRelImage_ReturnsFirst 3ms
โœ… OPDS2FullPublicationTests testIsAudiobook_AudiobookType_ReturnsTrue 1ms
โœ… OPDS2FullPublicationTests testIsEPUB_EpubType_ReturnsTrue <1ms
โœ… OPDS2FullPublicationTests testIsPDF_PdfType_ReturnsTrue 1ms
โœ… OPDS2FullPublicationTests testOpenAccessLink_Found_ReturnsLink 4ms
โœ… OPDS2FullPublicationTests testSampleLink_PreviewRel_ReturnsLink <1ms
โœ… OPDS2FullPublicationTests testSampleLink_SampleRel_ReturnsLink 2ms
โœ… OPDS2FullPublicationTests testThumbnailURL_SmallWidth_FallsBackToSmallImage 101ms
โœ… OPDS2FullPublicationTests testThumbnailURL_ThumbnailRel_ReturnsCorrectURL 57ms
โœ… OPDS2IntegrationTests testAllPublicationsConvertSuccessfully 5ms
โœ… OPDS2IntegrationTests testBorrowableBookConversion 13ms
โœ… OPDS2IntegrationTests testFeedFacets 7ms
โœ… OPDS2IntegrationTests testFeedIsGrouped 5ms
โœ… OPDS2IntegrationTests testFeedLinks 4ms
โœ… OPDS2IntegrationTests testFeedMetadata 5ms
โœ… OPDS2IntegrationTests testFormatDetection_JSON 4ms
โœ… OPDS2IntegrationTests testFormatDetection_XML 4ms
โœ… OPDS2IntegrationTests testFormatDetection_contentType 4ms
โœ… OPDS2IntegrationTests testFullPublicationFromJSON 11ms
โœ… OPDS2IntegrationTests testGroupCount 9ms
โœ… OPDS2IntegrationTests testNewAndNotableGroup 8ms
โœ… OPDS2IntegrationTests testOpenAccessBookConversion 6ms
โœ… OPDS2IntegrationTests testPopularAudiobooksGroup 4ms
โœ… OPDS2IntegrationTests testReadyBookConversion 5ms
โœ… OPDS2IntegrationTests testReservedBookWithLCPConversion 4ms
โœ… OPDS2IntegrationTests testStaffPicksGroup 4ms
โœ… OPDS2IntegrationTests testUnavailableAudiobookConversion 57ms
โœ… OPDS2LinkArrayTests testAllRel_MatchingLinks_ReturnsFiltered 71ms
โœ… OPDS2LinkArrayTests testAllRel_NoMatchingLinks_ReturnsEmpty 2ms
โœ… OPDS2LinkArrayTests testFirstRel_EmptyArray_ReturnsNil 1ms
โœ… OPDS2LinkArrayTests testFirstRel_MatchingLink_ReturnsFirst 1ms
โœ… OPDS2LinkArrayTests testFirstRel_NoMatch_ReturnsNil 4ms
โœ… OPDS2LinkComputedPropertyTests testHrefURL_InvalidURL_ReturnsNil 434ms
โœ… OPDS2LinkComputedPropertyTests testHrefURL_ValidURL_ReturnsURL 10ms
โœ… OPDS2LinkComputedPropertyTests testId_ReturnsHref 2ms
โœ… OPDS2LinkComputedPropertyTests testIsAcquisition_BorrowRel_ReturnsTrue 123ms
โœ… OPDS2LinkComputedPropertyTests testIsAcquisition_NilRel_ReturnsFalse 2ms
โœ… OPDS2LinkComputedPropertyTests testIsAcquisition_OpenAccessRel_ReturnsTrue 1ms
โœ… OPDS2LinkComputedPropertyTests testIsAcquisition_SelfRel_ReturnsFalse 2.39s
โœ… OPDS2LinkComputedPropertyTests testIsBorrow_CorrectRel_ReturnsTrue 2ms
โœ… OPDS2LinkComputedPropertyTests testIsBorrow_OpenAccessRel_ReturnsFalse 2ms
โœ… OPDS2LinkComputedPropertyTests testIsImage_CoverRel_ReturnsTrue 558ms
โœ… OPDS2LinkComputedPropertyTests testIsImage_ImageType_ReturnsTrue 1.93s
โœ… OPDS2LinkComputedPropertyTests testIsImage_NonImageType_ReturnsFalse 3ms
โœ… OPDS2LinkComputedPropertyTests testIsImage_ThumbnailRel_ReturnsTrue 1.36s
โœ… OPDS2LinkComputedPropertyTests testIsOpenAccess_BorrowRel_ReturnsFalse 2ms
โœ… OPDS2LinkComputedPropertyTests testIsOpenAccess_CorrectRel_ReturnsTrue 1ms
โœ… OPDS2LinkComputedPropertyTests testIsSample_BorrowRel_ReturnsFalse 2ms
โœ… OPDS2LinkComputedPropertyTests testIsSample_PreviewRel_ReturnsTrue 2ms
โœ… OPDS2LinkComputedPropertyTests testIsSample_SampleRel_ReturnsTrue 3ms
โœ… OPDS2LinkComputedPropertyTests testLink_CodableRoundTrip_MinimalFields 2ms
โœ… OPDS2LinkComputedPropertyTests testLink_CodableRoundTrip_PreservesAllFields 27ms
โœ… OPDS2LinkRelTests testPasswordReset_hasCorrectRawValue <1ms
โœ… OPDS2LinkTests testLink_firstRelMethod_findsMatchingLink 22ms
โœ… OPDS2LinkTests testLink_hasHref 29ms
โœ… OPDS2ParsingTests testAuthDocument_basicAuthMechanism 12ms
โœ… OPDS2ParsingTests testAuthDocument_decodesTitleAndId <1ms
โœ… OPDS2ParsingTests testAuthDocument_featuresAndAnnouncements 2ms
โœ… OPDS2ParsingTests testAuthDocument_passwordResetLink_present 5ms
โœ… OPDS2ParsingTests testBookBridge_relationMapping_isExhaustiveForKnownRels 17ms
โœ… OPDS2ParsingTests testBookBridge_revokeAndIssues_excludedFromAcquisitions 2ms
โœ… OPDS2ParsingTests testBookBridge_unknownRel_returnsNil 36ms
โœ… OPDS2ParsingTests testCatalog_borrowLink_propertiesPreserved 5ms
โœ… OPDS2ParsingTests testCatalog_decodesWithExpectedPublicationCount 4ms
โœ… OPDS2ParsingTests testCatalog_isPublicationFeedFlag 1ms
โœ… OPDS2ParsingTests testCatalog_metadataTitleAndIdentifier 1ms
โœ… OPDS2ParsingTests testCatalog_multipleAuthors_preservedInOrder 2ms
โœ… OPDS2ParsingTests testCatalog_nextPageURL_capturedForPagination 5ms
โœ… OPDS2ParsingTests testCatalog_openAccessLink_isFlaggedOpenAccess 30ms
โœ… OPDS2ParsingTests testCatalog_publicationTitlesInOrder 2ms
โœ… OPDS2ParsingTests testCatalog_publication_imageURLs_separated 5ms
โœ… OPDS2ParsingTests testCatalog_searchURL_captured 4ms
โœ… OPDS2ParsingTests testCatalog_selfURL_captured 3ms
โœ… OPDS2ParsingTests testCatalogsFeed_parsesExistingFixture 4ms
โœ… OPDS2ParsingTests testCatalogsFeed_parsesSyntheticCatalogsArray 4ms
โœ… OPDS2ParsingTests testFeed_emptyData_throwsNotCrashes 13ms
โœ… OPDS2ParsingTests testFeed_emptyPublicationsArray_isEmptyNotNil <1ms
โœ… OPDS2ParsingTests testFeed_malformedJSON_throwsNotCrashes <1ms
โœ… OPDS2ParsingTests testFeed_publicationWithUnicodeTitle_preserved 2ms
โœ… OPDS2ParsingTests testFeed_publicationWithVeryLongTitle_preserved 124ms
โœ… OPDS2ParsingTests testGroupedFeed_decodesAllGroups 7ms
โœ… OPDS2ParsingTests testGroupedFeed_groupMoreURL_resolvesFromSelfOrSubsection 1ms
โœ… OPDS2ParsingTests testGroupedFeed_groupTitlesInOrder 1ms
โœ… OPDS2ParsingTests testGroupedFeed_navigationLanePreserved 1ms
โœ… OPDS2ParsingTests testGroupedFeed_publicationsPerGroup 1ms
โœ… OPDS2ParsingTests testProblemDocument_decodesAllRFC7807Fields 5ms
โœ… OPDS2ParsingTests testProblemDocument_malformedJSON_throwsNotCrashes 38ms
โœ… OPDS2ParsingTests testPublication_imageURLs_areExtractedFromImagesArray 2ms
โœ… OPDS2ParsingTests testPublication_isSampleClassifier_acceptsBothPreviewAndSampleRel 2ms
โœ… OPDS2ParsingTests testPublication_multipleAcquisitionLinks_allRetained 63ms
โœ… OPDS2ParsingTests testPublication_toBook_skipsWhenNoAcquisitionLinks 4ms
โœ… OPDS2ParsingTests testPublication_toBook_skipsWhenNoSupportedAcquisitionPath 21ms
โœ… OPDS2ParsingTests testPublication_toBook_succeedsForSupportedEpubOpenAccess 7ms
โœ… OPDS2PublicationExtendedTests testContributorDecodesFromObject <1ms
โœ… OPDS2PublicationExtendedTests testContributorDecodesFromString <1ms
โœ… OPDS2PublicationExtendedTests testConvertAcquisitionFromBorrowLink <1ms
โœ… OPDS2PublicationExtendedTests testConvertAcquisitionFromNonAcquisitionLink <1ms
โœ… OPDS2PublicationExtendedTests testConvertAcquisitionSynthesizesIndirectForBearerToken <1ms
โœ… OPDS2PublicationExtendedTests testConvertAcquisitionSynthesizesIndirectForLCP <1ms
โœ… OPDS2PublicationExtendedTests testConvertAcquisitionWithExplicitIndirectAcquisitions <1ms
โœ… OPDS2PublicationExtendedTests testConvertAvailabilityAvailableWithCopies 2ms
โœ… OPDS2PublicationExtendedTests testConvertAvailabilityAvailableWithoutCopies <1ms
โœ… OPDS2PublicationExtendedTests testConvertAvailabilityNil <1ms
โœ… OPDS2PublicationExtendedTests testConvertAvailabilityReady 1ms
โœ… OPDS2PublicationExtendedTests testConvertAvailabilityReserved 14ms
โœ… OPDS2PublicationExtendedTests testConvertAvailabilityReservedWithZeroPosition 1ms
โœ… OPDS2PublicationExtendedTests testConvertAvailabilityUnavailable 7ms
โœ… OPDS2PublicationExtendedTests testConvertAvailabilityUnknownState <1ms
โœ… OPDS2PublicationExtendedTests testConvertIndirectAcquisitionsFlat 3ms
โœ… OPDS2PublicationExtendedTests testConvertIndirectAcquisitionsNested <1ms
โœ… OPDS2PublicationExtendedTests testConvertIndirectAcquisitions_nilOrEmptyInputYieldsEmptyResult 2ms
โœ… OPDS2PublicationExtendedTests testExtractImageURLsFallsBackToFirstImage 2ms
โœ… OPDS2PublicationExtendedTests testExtractImageURLsNil <1ms
โœ… OPDS2PublicationExtendedTests testExtractImageURLsWithExplicitRels 18ms
โœ… OPDS2PublicationExtendedTests testExtractSpecialLinks <1ms
โœ… OPDS2PublicationExtendedTests testExtractSpecialLinksEmpty <1ms
โœ… OPDS2PublicationExtendedTests testFullMetadataCodableRoundTrip 11ms
โœ… OPDS2PublicationExtendedTests testFullMetadataDecodesWithAlternateIdKey <1ms
โœ… OPDS2PublicationExtendedTests testFullMetadataDecodesWithMissingIdentifier <1ms
โœ… OPDS2PublicationExtendedTests testFullPublicationAcquisitionLinks 5ms
โœ… OPDS2PublicationExtendedTests testFullPublicationContentType 1ms
โœ… OPDS2PublicationExtendedTests testFullPublicationDurationFormatting 2ms
โœ… OPDS2PublicationExtendedTests testFullPublicationDurationFormattingSubHour 2ms
โœ… OPDS2PublicationExtendedTests testFullPublicationId_delegatesToMetadataIdentifierAcrossInstances <1ms
โœ… OPDS2PublicationExtendedTests testFullPublicationImageURLs <1ms
โœ… OPDS2PublicationExtendedTests testFullPublicationToBookReturnsNilWithNoAcquisitions <1ms
โœ… OPDS2PublicationExtendedTests testFullPublication_seriesNameAndURL_extractedFromBelongsTo 2ms
โœ… OPDS2PublicationExtendedTests testFullPublication_seriesNameOnly_whenLinksAbsent 1ms
โœ… OPDS2PublicationExtendedTests testFullPublication_seriesNil_whenBelongsToAbsent <1ms
โœ… OPDS2PublicationExtendedTests testFullPublication_seriesNil_whenBelongsToSeriesEmpty <1ms
โœ… OPDS2PublicationExtendedTests testOPDS2FullPublication_toBook_streamingMediaOnlyAcquisition_doesNotDrop <1ms
โœ… OPDS2PublicationExtendedTests testOPDS2Publication_toBook_streamingMediaOnlyAcquisition_doesNotDrop 1ms
โœ… OPDS2PublicationExtendedTests testOPDS2Publication_toBook_trulyUnsupportedFormat_stillDropped 5ms
โœ… OPDS2PublicationExtendedTests testRelationFromBorrow 32ms
โœ… OPDS2PublicationExtendedTests testRelationFromBuy <1ms
โœ… OPDS2PublicationExtendedTests testRelationFromGenericAcquisition 2ms
โœ… OPDS2PublicationExtendedTests testRelationFromIssuesRelIsNil <1ms
โœ… OPDS2PublicationExtendedTests testRelationFromNonAcquisitionRel 1ms
โœ… OPDS2PublicationExtendedTests testRelationFromOpenAccess 21ms
โœ… OPDS2PublicationExtendedTests testRelationFromPreview <1ms
โœ… OPDS2PublicationExtendedTests testRelationFromRevokeRelIsNil <1ms
โœ… OPDS2PublicationExtendedTests testRelationFromSample <1ms
โœ… OPDS2PublicationExtendedTests testRelationFromSubscribe <1ms
โœ… OPDS2PublicationExtendedTests testRelationFromUnknownAcquisitionSubtype 2ms
โœ… OPDS2PublicationExtendedTests testSubjectDecodesFromObject <1ms
โœ… OPDS2PublicationExtendedTests testSubjectDecodesFromString 1ms
โœ… OPDS2PublicationImageTests testCoverURL_CoverRel_ReturnsURL <1ms
โœ… OPDS2PublicationImageTests testImageURL_NoImages_ReturnsNil 9ms
โœ… OPDS2PublicationImageTests testImageURL_NonPNGImage_ReturnsNil 74ms
โœ… OPDS2PublicationImageTests testImageURL_PNGImage_ReturnsURL 1ms
โœ… OPDS2PublicationImageTests testThumbnailURL_NoThumbnailRel_ReturnsNil 2ms
โœ… OPDS2PublicationImageTests testThumbnailURL_ThumbnailRel_ReturnsURL 2ms
โœ… OPDS2PublicationNarratorTests testToBook_WithMultipleNarrators_JoinsWithSemicolons <1ms
โœ… OPDS2PublicationNarratorTests testToBook_WithNarratorInJSON_ExposesNarratorOnBook 137ms
โœ… OPDS2PublicationNarratorTests testToBook_WithoutNarrator_BookHasNilNarrators 20ms
โœ… OPDS2PublicationTests testPublication_hasRequiredFields 42ms
โœ… OPDS2PublicationTests testPublication_metadataHasTitle 25ms
โœ… OPDS2SamlIDPTests testDisplayName_WithEnglishName_ReturnsEnglishValue 71ms
โœ… OPDS2SamlIDPTests testDisplayName_WithNoEnglishName_ReturnsNil <1ms
โœ… OPDS2SamlIDPTests testIdpDescription_WithEnglishDescription_ReturnsValue 2ms
โœ… OPDS2SamlIDPTests testIdpDescription_WithNoDescriptions_ReturnsNil 26ms
โœ… OPDS2SamlIDPTests testInit_WithInvalidHref_ReturnsNil <1ms
โœ… OPDS2SamlIDPTests testInit_WithValidLink_MapsURLCorrectly <1ms
โœ… OPDS2SearchResultsContractTests testSearchResults_ContainsThreePublications 1ms
โœ… OPDS2SearchResultsContractTests testSearchResults_HasNextPageLink 27ms
โœ… OPDS2SearchResultsContractTests testSearchResults_ParsesWithPagination 1ms
โœ… OPDS2SubjectTests testDecode_ObjectValue_ParsesAllFields 3ms
โœ… OPDS2SubjectTests testDecode_StringValue_ParsesAsName 2ms
โœ… OPDS2SupportingTypesTests testBelongsTo_SeriesWithPosition 12ms
โœ… OPDS2SupportingTypesTests testFacetLink_IsActive_WithNumberOfItems_ReturnsTrue 8ms
โœ… OPDS2SupportingTypesTests testFacetLink_IsActive_WithoutProperties_ReturnsFalse 2ms
โœ… OPDS2SupportingTypesTests testIndirectAcquisition_NestedChild 9ms
โœ… OPDS2SupportingTypesTests testPrice_CodableRoundTrip 6ms
โœ… OPDSAcquisitionPathExpandedTests test_acquisitionFromSingleEntry_hasDictionaryRepresentation 3ms
โœ… OPDSAcquisitionPathExpandedTests test_acquisitionRelationString_distinctStringsForOpenAccessAndBorrow 2ms
โœ… OPDSAcquisitionPathExpandedTests test_entryFromSingleEntryXML_hasAuthors 3ms
โœ… OPDSAcquisitionPathExpandedTests test_entryFromSingleEntryXML_hasCorrectTitle 1ms
โœ… OPDSAcquisitionPathExpandedTests test_entryFromSingleEntryXML_hasIdentifier 14ms
โœ… OPDSAcquisitionPathExpandedTests test_entryInitWithInvalidXML_returnsNil <1ms
โœ… OPDSAcquisitionPathExpandedTests test_feedFromMainXML_hasEntries 46ms
โœ… OPDSAcquisitionPathExpandedTests test_feedFromMainXML_hasIdentifier 19ms
โœ… OPDSAcquisitionPathExpandedTests test_feedFromMainXML_hasLinks 19ms
โœ… OPDSAcquisitionPathExpandedTests test_feedFromMainXML_hasTitle 27ms
โœ… OPDSAcquisitionPathExpandedTests test_feedFromMainXML_hasUpdatedDate 18ms
โœ… OPDSAcquisitionPathExpandedTests test_initWithNilXML_returnsNilOnFeedAndLink 1ms
โœ… OPDSAcquisitionPathExpandedTests test_linkFromSingleEntryXML_hasHref 1ms
โœ… OPDSAcquisitionPathExpandedTests test_linksFromSingleEntryXML_haveCorrectCount 1ms
โœ… OPDSAcquisitionPathExpandedTests test_supportedTypes_andAudiobookTypes_areNonEmptyAndDistinguishable <1ms
โœ… OPDSFeedCacheTests testCacheEntryIsExpired 8ms
โœ… OPDSFeedCacheTests testCacheEntryIsStale 23ms
โœ… OPDSFeedCacheTests testClear 7ms
โœ… OPDSFeedCacheTests testConditionalHeaders 8ms
โœ… OPDSFeedCacheTests testConditionalHeadersEmptyWhenNoCachedEntry 12ms
โœ… OPDSFeedCacheTests testExpiredEntriesNotReturned 28ms
โœ… OPDSFeedCacheTests testGetNonExistent 4ms
โœ… OPDSFeedCacheTests testGetWithRevalidationFetchesWhenNoCache 10ms
โœ… OPDSFeedCacheTests testGetWithRevalidationReturnsFreshData 18ms
โœ… OPDSFeedCacheTests testLRUEviction 20ms
โœ… OPDSFeedCacheTests testLRUUpdatesOnAccess 8ms
โœ… OPDSFeedCacheTests testRemove 18ms
โœ… OPDSFeedCacheTests testSetAndGet 10ms
โœ… OPDSFeedCacheTests testStats 6ms
โœ… OPDSFeedMigrationTests testErrorMessageFallback_noDetail_usesLocalizedDescription 2ms
โœ… OPDSFeedMigrationTests testErrorMessageFallback_problemDocDetail <1ms
โœ… OPDSFeedMigrationTests testHalfSheetProvider_showAlert_exists <1ms
โœ… OPDSFeedMigrationTests testReturnBook_authErrors_notTolerated 1ms
โœ… OPDSFeedMigrationTests testReturnBook_nonOPDSRevokeResponse_treatedAsSuccess <1ms
โœ… OPDSFeedMigrationTests testReturnBook_otherParsingErrors_notTolerated 2ms
โœ… OPDSFeedMigrationTests testSignInModalPresenter_needsAuthCheck_anonymousReturnsFalse <1ms
โœ… OPDSFeedMigrationTests testSignInModalPresenter_needsAuthCheck_basicReturnsTrue <1ms
โœ… OPDSFeedMigrationTests testSignInModalPresenter_needsAuthCheck_oidcReturnsTrue <1ms
โœ… OPDSFeedMigrationTests testSyntheticErrorDict_containsHTTPStatus <1ms
โœ… OPDSFeedMigrationTests testSyntheticErrorDict_parsesAsProblemDocument 11ms
โœ… OPDSFeedParsingTests testParseInvalidOPDSFeed 1ms
โœ… OPDSFeedParsingTests testParseValidOPDSFeed 36ms
โœ… OPDSFeedServiceStateMachineTests testFetchLoansFeed_blocksUntilLoaded_thenFetches 101ms
โœ… OPDSFeedServiceStateMachineTests testFetchLoansFeed_failedDetailsLoad_throws 53ms
โœ… OPDSFeedServiceStateMachineTests testFetchLoansFeed_failedDetailsLoad_throwsAccountLoadError_notPalaceError 37ms
โœ… OPDSFeedServiceTests testCancelAllRequests_isNoOpAndIdempotent_whenNothingInFlight 11ms
โœ… OPDSFeedServiceTests testCancelRequest_isNoOpAndIdempotent_whenNoInflightRequestForUrl 1ms
โœ… OPDSFormatTests testDetectIsCaseInsensitive <1ms
โœ… OPDSFormatTests testDetectOPDS1FromAtomXMLContentType <1ms
โœ… OPDSFormatTests testDetectOPDS1FromGenericXMLContentType 6ms
โœ… OPDSFormatTests testDetectOPDS1FromXMLData <1ms
โœ… OPDSFormatTests testDetectOPDS2FromGenericJSONContentType <1ms
โœ… OPDSFormatTests testDetectOPDS2FromJSONArrayData 1ms
โœ… OPDSFormatTests testDetectOPDS2FromJSONContentType 1ms
โœ… OPDSFormatTests testDetectOPDS2FromJSONData 6ms
โœ… OPDSFormatTests testDetectUnknownFromEmptyData <1ms
โœ… OPDSFormatTests testDetectUnknownFromNilContentType 8ms
โœ… OPDSFormatTests testDetectUnknownFromUnrelatedContentType 38ms
โœ… OPDSFormatTests testOPDS1RawValue <1ms
โœ… OPDSFormatTests testOPDS2RawValue <1ms
โœ… OPDSParserCoreTests testParseEmptyDataThrows <1ms
โœ… OPDSParserCoreTests testParseInvalidXMLThrows <1ms
โœ… OPDSParserCoreTests testParseValidOPDS1Feed <1ms
โœ… OPDSParserCoreTests testParserErrorDescriptions <1ms
โœ… OPDSParserTests testParseFeed_throwsForInvalidData <1ms
โœ… OPDSParserTests testParseFeed_throwsForNonXML 19ms
โœ… OPDSParserTests testParserError_invalidFeed 7ms
โœ… OPDSParserTests testParserError_invalidXML 3ms
โœ… OPDSParsingTests testAcquisitionLinks 2ms
โœ… OPDSParsingTests testAnalyticsURLGeneration 39ms
โœ… OPDSParsingTests testAuthorWithMissingName 1ms
โœ… OPDSParsingTests testCategoryWithMissingTerm 1ms
โœ… OPDSParsingTests testEmptyXMLData <1ms
โœ… OPDSParsingTests testEntryExtractionFromFeed 4ms
โœ… OPDSParsingTests testEntryWithCategories 1ms
โœ… OPDSParsingTests testEntryWithContributors 2ms
โœ… OPDSParsingTests testEntryWithDuration 79ms
โœ… OPDSParsingTests testEntryWithMissingId <1ms
โœ… OPDSParsingTests testEntryWithMissingTitle 2ms
โœ… OPDSParsingTests testEntryWithMissingUpdated 19ms
โœ… OPDSParsingTests testEntryWithMultipleAuthors <1ms
โœ… OPDSParsingTests testEntryWithNamespacedContributorRoles_ParsesNarrator 9ms
โœ… OPDSParsingTests testEntryWithPublisherAndDistribution 1ms
โœ… OPDSParsingTests testEntryWithUnnamespacedContributorRole_StillParses 32ms
โœ… OPDSParsingTests testEntry_AudienceAndLanguageNilWhenAbsent 1ms
โœ… OPDSParsingTests testEntry_AudienceCategoryIsNotInRegularCategoryList 29ms
โœ… OPDSParsingTests testEntry_ParsesAudienceFromSchemaOrgCategory 1ms
โœ… OPDSParsingTests testEntry_ParsesLanguageWithDctermsNamespace <1ms
โœ… OPDSParsingTests testEntry_ParsesLanguageWithoutNamespaceDeclaration <1ms
โœ… OPDSParsingTests testFeedIgnoresMalformedEntries 1ms
โœ… OPDSParsingTests testFeedIgnoresMalformedLinks 33ms
โœ… OPDSParsingTests testFeedInitializationFromCompleteFeed 1ms
โœ… OPDSParsingTests testFeedInitializationFromMinimalXML 106ms
โœ… OPDSParsingTests testFeedInitializationFromSingleEntry 1ms
โœ… OPDSParsingTests testFeedParsingPerformance 2.54s
โœ… OPDSParsingTests testFeedTypeAcquisitionGrouped 2ms
โœ… OPDSParsingTests testFeedTypeAcquisitionUngrouped 1ms
โœ… OPDSParsingTests testFeedTypeAcquisitionUngroupedWithEmptyFeed 53ms
โœ… OPDSParsingTests testFeedTypeNavigation 1ms
โœ… OPDSParsingTests testFeedWithInvalidDate 1ms
โœ… OPDSParsingTests testFeedWithLicensorAndPatron 1ms
โœ… OPDSParsingTests testFeedWithMissingId <1ms
โœ… OPDSParsingTests testFeedWithMissingTitle 5ms
โœ… OPDSParsingTests testFeedWithMissingUpdated 21ms
โœ… OPDSParsingTests testGroupAttributes 2ms
โœ… OPDSParsingTests testHTMLEntityDecoding <1ms
โœ… OPDSParsingTests testImageLinks 1ms
โœ… OPDSParsingTests testLinkInitialization 9ms
โœ… OPDSParsingTests testLinkRelationAlternate 2ms
โœ… OPDSParsingTests testLinkRelationAnnotations 1ms
โœ… OPDSParsingTests testLinkRelationRelatedWorks 2ms
โœ… OPDSParsingTests testLinkRelationTimeTracking 3ms
โœ… OPDSParsingTests testLinkWithMissingHref 1ms
โœ… OPDSParsingTests testLinkWithOptionalAttributesNil <1ms
โœ… OPDSParsingTests testMalformedXML <1ms
โœ… OPDSParsingTests testNilXMLFeed <1ms
โœ… OPDSParsingTests testNonMarketplaceHTMLPreviewIsAccepted 1ms
โœ… OPDSParsingTests testPalaceMarketplaceHTMLPreviewIsAccepted 43ms
โœ… OPDSParsingTests testPreviewLinkParsing <1ms
โœ… OPDSParsingTests testPreviewLinkUsesFirstAvailable <1ms
โœ… OPDSParsingTests testRFC3339DateParsing 1ms
โœ… OPDSParsingTests testSeriesLink 1ms
โœ… OPDSParsingTests testSeriesLinkParsedFromEntry 9ms
โœ… OPDSParsingTests testTPPBookFromEntry_populatesSeriesNameAndURLFromSeriesLink 2ms
โœ… OPDSParsingTests testTPPBookFromEntry_seriesNameAndURLNilWhenNoSeriesElement <1ms
โœ… OfflineActionTests testActionState_CodableRoundTrip 6ms
โœ… OfflineActionTests testActionType_CodableRoundTrip 7ms
โœ… OfflineActionTests testBorrowAction_Creation 2ms
โœ… OfflineActionTests testCanRetry_CompletedState_False 24ms
โœ… OfflineActionTests testCanRetry_FailedExceedingMaxRetries_False 2ms
โœ… OfflineActionTests testCanRetry_FailedWithRetriesExhausted_False 15ms
โœ… OfflineActionTests testCanRetry_FailedWithRetriesRemaining_True <1ms
โœ… OfflineActionTests testCanRetry_PendingState_False 16ms
โœ… OfflineActionTests testCanRetry_ProcessingState_False <1ms
โœ… OfflineActionTests testCanRetry_ZeroMaxRetries_AlwaysFalse <1ms
โœ… OfflineActionTests testCancelHoldAction_Creation <1ms
โœ… OfflineActionTests testCodableRoundTrip_AllActionTypes <1ms
โœ… OfflineActionTests testCodableRoundTrip_FailedAction 22ms
โœ… OfflineActionTests testCodableRoundTrip_PendingAction 2ms
โœ… OfflineActionTests testCustomMaxRetries 25ms
โœ… OfflineActionTests testDisplayDescription_Borrow <1ms
โœ… OfflineActionTests testDisplayDescription_CancelHold <1ms
โœ… OfflineActionTests testDisplayDescription_Hold <1ms
โœ… OfflineActionTests testDisplayDescription_Return <1ms
โœ… OfflineActionTests testEquality_DifferentID_NotEqual <1ms
โœ… OfflineActionTests testEquality_SameID_Equal <1ms
โœ… OfflineActionTests testHoldAction_Creation <1ms
โœ… OfflineActionTests testNextRetryDelay_FirstRetry <1ms
โœ… OfflineActionTests testNextRetryDelay_FourthRetry <1ms
โœ… OfflineActionTests testNextRetryDelay_GrowsExponentially 11ms
โœ… OfflineActionTests testNextRetryDelay_SecondRetry <1ms
โœ… OfflineActionTests testNextRetryDelay_ThirdRetry <1ms
โœ… OfflineActionTests testRetryCount_IncrementWorks <1ms
โœ… OfflineActionTests testReturnAction_Creation <1ms
โœ… OfflineQueueCoordinatorTests testDedupe_completedKeyExpiresAfterTTL 1ms
โœ… OfflineQueueCoordinatorTests testDifferentBooks_areNotDeduped <1ms
โœ… OfflineQueueCoordinatorTests testDispatch_routesEachTypeToItsHandler 12ms
โœ… OfflineQueueCoordinatorTests testDuplicateReturn_isDeduped 3ms
โœ… OfflineQueueCoordinatorTests testFailedBorrow_isNotMarkedDone_staysQueued 170ms
โœ… OfflineQueueCoordinatorTests testFailedReturn_isRetryable_notPermanentlyDeduped <1ms
โœ… OfflineQueueCoordinatorTests testIsActiveLoanState_confirmsOnlyBorrowedStates <1ms
โœ… OfflineQueueCoordinatorTests testIsHeldState_confirmsOnlyHolding <1ms
โœ… OfflineQueueCoordinatorTests testIsReturnConfirmed_requiresUnregisteredOrAbsent 27ms
โœ… OfflineQueueCoordinatorTests testRegisterExecutor_installsWorkingExecutor 8ms
โœ… OfflineQueueCoordinatorTests testSameBookDifferentType_areNotDeduped 1ms
โœ… OfflineQueueServiceExtendedTests testCancel_NonexistentAction_NoOp 15ms
โœ… OfflineQueueServiceExtendedTests testCancel_SpecificPendingAction 10ms
โœ… OfflineQueueServiceExtendedTests testClearFailed_RemovesOnlyFailedActions 524ms
โœ… OfflineQueueServiceExtendedTests testIsProcessing_InitiallyFalse 6ms
โœ… OfflineQueueServiceExtendedTests testMaxRetriesReached_ActionMarkedAsFailed 3.07s
โœ… OfflineQueueServiceExtendedTests testPersistence_ProcessingState_ResetToPending 21ms
โœ… OfflineQueueServiceExtendedTests testPersistence_SaveAndReload 19ms
โœ… OfflineQueueServiceExtendedTests testProcessQueue_FIFO_Order 521ms
โœ… OfflineQueueServiceExtendedTests testQueueStatus_EmptyQueue 12ms
โœ… OfflineQueueServiceExtendedTests testQueueStatus_Summary_AllStates 6ms
โœ… OfflineQueueServiceExtendedTests testQueueStatus_TotalActive 1ms
โœ… OfflineQueueServiceExtendedTests testQueueStatus_WithPendingActions 9ms
โœ… OfflineQueueServiceExtendedTests testRetry_MovesFailedToPending 1.09s
โœ… OfflineQueueServiceTests testActionPublisherEmits 125ms
โœ… OfflineQueueServiceTests testCancelPendingAction 3ms
โœ… OfflineQueueServiceTests testClearFailed 217ms
โœ… OfflineQueueServiceTests testEnqueueAction 6ms
โœ… OfflineQueueServiceTests testEnqueueMultipleActions 890ms
โœ… OfflineQueueServiceTests testExponentialBackoff 182ms
โœ… OfflineQueueServiceTests testMaxRetriesExceeded 1.01s
โœ… OfflineQueueServiceTests testNetworkAvailableTriggersProcessing 251ms
โœ… OfflineQueueServiceTests testOfflineActionCanRetry 12ms
โœ… OfflineQueueServiceTests testOfflineActionDisplayDescription 26ms
โœ… OfflineQueueServiceTests testOfflineQueueStatusSummary 2ms
โœ… OfflineQueueServiceTests testProcessQueueFIFOOrder 234ms
โœ… OfflineQueueServiceTests testProcessQueueSuccess 318ms
โœ… OfflineQueueServiceTests testProcessingStateResetOnRestart 3ms
โœ… OfflineQueueServiceTests testQueuePersistsAcrossInstances 14ms
โœ… OfflineQueueServiceTests testRetryFailedAction 5.04s
โœ… OfflineQueueServiceTests testStatusPublisherEmits 26ms
โœ… OpenAccessAdapterTests testCanHandle_anyOPDSBook_returnsTrueAsFallback 2ms
โœ… OpenAccessAdapterTests testEmptyManifest_stillThrows 2ms
โœ… OpenAccessAdapterTests testOverdriveDescriptorManifest_decodesAndTypesAsOverdrive 7ms
โœ… OpenAccessAdapterTests testOverdriveFormatWithoutContentLinks_stillThrows 17ms
โœ… OpenAccessAdapterTests testResolveManifest_bearerSecondLegReturnsNil_failsWithManifestFetchFailed 89ms
โœ… OpenAccessAdapterTests testResolveManifest_bearerWrapperButNoFetcher_returnsBodyVerbatim 6ms
โœ… OpenAccessAdapterTests testResolveManifest_bearerWrapperWithFetcher_followsSecondLegToRealManifest 28ms
โœ… OpenAccessAdapterTests testResolveManifest_emptyData_failsWithManifestFetchFailed 5ms
โœ… OpenAccessAdapterTests testResolveManifest_htmlResponse_failsWithManifestFetchFailed 7ms
โœ… OpenAccessAdapterTests testResolveManifest_invalidJSON_failsWithManifestParseFailed 13ms
โœ… OpenAccessAdapterTests testResolveManifest_networkError_failsWithManifestFetchFailed 9ms
โœ… OpenAccessAdapterTests testResolveManifest_plainManifestWithFetcher_returnsDirectlyWithoutSecondLeg 6ms
โœ… OpenAccessAdapterTests testResolveManifest_successPath_completesWithJSON 25ms
โœ… OverdriveDeferredFulfillmentTests testDeferFires_whenDownloadFailedWithBorrowAcquisition 16ms
โœ… OverdriveDeferredFulfillmentTests testDeferFires_whenDownloadNeededWithBorrowAcquisition <1ms
โœ… OverdriveDeferredFulfillmentTests testDeferSkipped_whenDefaultAcquisitionIsGeneric <1ms
โœ… OverdriveDeferredFulfillmentTests testDeferSkipped_whenDefaultAcquisitionIsOpenAccess 222ms
โœ… OverdriveDeferredFulfillmentTests testDeferSkipped_whenStateIsHolding <1ms
โœ… OverdriveDeferredFulfillmentTests testDeferSkipped_whenStateIsUnregistered 2ms
โœ… OverdriveDownloadHandlerTests testDeferOverdriveFulfillment_publishesLoanAlreadyExistsBorrowError 47ms
โœ… OverdriveDownloadHandlerTests testHandleOverdriveResponse_completionWithError_failsDownloadAndSkipsManifestBuild 7ms
โœ… OverdriveDownloadHandlerTests testHandleOverdriveResponse_manifestFactoryReturnsNil_failsDownload 12ms
โœ… OverdriveDownloadHandlerTests testHandleOverdriveResponse_missingLocationHeader_failsDownload 20ms
โœ… OverdriveDownloadHandlerTests testHandleOverdriveResponse_uppercaseHeaderKeys_arelowercaseNormalized 2ms
โœ… OverdriveDownloadHandlerTests testHandleOverdriveResponse_validHeaders_buildsManifestRequestAndAddsDownloadTask 8ms
โœ… OverdriveDownloadHandlerTests testProcessOverdriveDownload_whenWifiEnforced_failsWithWifiAndDoesNotCallAPI 2ms
โœ… OverdriveDownloadHandlerTests testProcessOverdriveDownload_withAuthToken_issuesTokenFulfillRequest 3ms
โœ… OverdriveDownloadHandlerTests testProcessOverdriveDownload_withBarcodePin_issuesBasicFulfillRequest 40ms
โœ… OverdriveFulfillmentTests testHttpStatusCode_extractsFromUserInfo_underlyingChain_andNil 1ms
โœ… OverdriveFulfillmentTests testIsResourceUnavailable_flattenedScalars_wrongDomain_returnsFalse 1ms
โœ… OverdriveFulfillmentTests testIsResourceUnavailable_matchesMinus1008_rejectsOffline_timeout_andNil 3ms
โœ… OverdriveFulfillmentTests testIsResourceUnavailable_throughBuildPlaybackFailureRecord_stillTriggers 28ms
โœ… OverdriveFulfillmentTests testOverdriveRefulfillOutcome_landed_terminalFailure_and_keepPolling 1ms
โœ… OverdriveFulfillmentTests testOverdriveRefulfill_401_returnsFalse_authNotExpiry 1ms
โœ… OverdriveFulfillmentTests testOverdriveRefulfill_403_returnsFalse_ambiguousEntitlement <1ms
โœ… OverdriveFulfillmentTests testOverdriveRefulfill_410ButAlreadyAttempted_returnsFalse_bounded 2ms
โœ… OverdriveFulfillmentTests testOverdriveRefulfill_410ButNotOverdrive_returnsFalse 7ms
โœ… OverdriveFulfillmentTests testOverdriveRefulfill_410InUnderlyingError_returnsTrue 2ms
โœ… OverdriveFulfillmentTests testOverdriveRefulfill_410OnOverdriveBook_returnsTrue 79ms
โœ… OverdriveFulfillmentTests testOverdriveRefulfill_noHttpStatus_returnsFalse_conservative 2ms
โœ… OverdriveFulfillmentTests testOverdriveRefulfill_notConnected1009_returnsFalse_offlineIsNotExpiry 3ms
โœ… OverdriveFulfillmentTests testOverdriveRefulfill_resourceUnavailable1008_alreadyAttempted_returnsFalse_bounded 59ms
โœ… OverdriveFulfillmentTests testOverdriveRefulfill_resourceUnavailable1008_flattenedScalars_returnsTrue 1ms
โœ… OverdriveFulfillmentTests testOverdriveRefulfill_resourceUnavailable1008_nestedUnderlying_returnsTrue 1ms
โœ… OverdriveFulfillmentTests testOverdriveRefulfill_resourceUnavailable1008_notOverdrive_returnsFalse 2ms
โœ… OverdriveFulfillmentTests testOverdriveRefulfill_resourceUnavailable1008_topLevel_returnsTrue 1ms
โœ… OverdriveFulfillmentTests testOverdriveRefulfill_timedOut1001_returnsFalse_transientNotExpiry 54ms
โŠ˜ OverdriveFulfillmentTests testRefulfill_freshManifestURL_isConsumedIntoBuiltAudiobook 38ms
โœ… OverdriveFulfillmentTests test_overdriveAudiobook_deferredFulfillment_isUsedWhenStateMatches 32ms
โœ… OverdriveFulfillmentTests test_overdriveOPDSEntry_postBorrow_recognizesBorrowURLAsStale 68ms
โœ… OverdriveFulfillmentTests test_overdriveScope_addsCorrectHeaders 9ms
โœ… OverdriveFulfillmentTests test_overdriveTokenAbsent_fallsBackToBasicAuth 4ms
โœ… OverdriveFulfillmentTests test_overdriveTokenRefresh_beforeOpen 3ms
โœ… PDFExtensionsTests testBookmarkSelector_RoundTrips_AsTPPPDFPageBookmark 12ms
โœ… PDFExtensionsTests testBookmarkSelector_ValidPage_ContainsLocatorPageType 13ms
โœ… PDFExtensionsTests testLocationString_PageZero_ReturnsValidJSON 2ms
โœ… PDFExtensionsTests testLocationString_RoundTrips_WithDecoder 8ms
โœ… PDFExtensionsTests testLocationString_ValidPage_ReturnsJSONString 6ms
โœ… PDFExtensionsTests testPageNumber_EmptyLocationString_ReturnsNil 4ms
โœ… PDFExtensionsTests testPageNumber_InvalidLocationString_ReturnsNil <1ms
โœ… PDFExtensionsTests testPageNumber_LargePageNumber_ReturnsCorrectly 54ms
โœ… PDFExtensionsTests testPageNumber_NonPDFLocationString_ReturnsNil 2ms
โœ… PDFExtensionsTests testPageNumber_PageZero_ReturnsZero 4ms
โœ… PDFExtensionsTests testPageNumber_ValidLocationString_ReturnsPageNumber 2ms
โœ… PDFExtensionsTests testPdfImageRenderingQueue_CreatesNewInstanceEachTime 11ms
โœ… PDFExtensionsTests testPdfImageRenderingQueue_HasCorrectLabel 1ms
โœ… PDFExtensionsTests testPdfPreviewSize_IsLargerThanThumbnail <1ms
โœ… PDFExtensionsTests testPdfPreviewSize_IsSquare <1ms
โœ… PDFExtensionsTests testPdfPreviewSize_ReturnsExpectedDimensions 1ms
โœ… PDFExtensionsTests testPdfThumbnailRenderingQueue_CreatesNewInstanceEachTime 498ms
โœ… PDFExtensionsTests testPdfThumbnailRenderingQueue_HasCorrectLabel <1ms
โœ… PDFExtensionsTests testPdfThumbnailSize_IsSquare 2ms
โœ… PDFExtensionsTests testPdfThumbnailSize_ReturnsExpectedDimensions 1ms
โœ… PDFKitThumbnailProviderTests testCachedThumbnail_isNil_beforeAnyRender 83ms
โœ… PDFKitThumbnailProviderTests testPageCount_reflectsDocument 4ms
โœ… PDFKitThumbnailProviderTests testThumbnail_lastValidPage_renders 10ms
โœ… PDFKitThumbnailProviderTests testThumbnail_outOfBounds_returnsNilAndDoesNotCache 6ms
โœ… PDFKitThumbnailProviderTests testThumbnail_rendersAndCaches 11ms
โœ… PDFReaderTests testLCPPDFBook_ContentType 5ms
โœ… PDFReaderTests testPDFBook_ContentType 4ms
โœ… PDFReaderTests testPDFPageBookmark_ConformsToBookmark 53ms
โœ… PDFReaderTests testPDFPageBookmark_Decoding <1ms
โœ… PDFReaderTests testPDFPageBookmark_Encoding <1ms
โœ… PDFReaderTests testPDFPageBookmark_Initialization <1ms
โœ… PDFReaderTests testPDFPageBookmark_WithAnnotationID 1ms
โœ… PDFReaderTests testPDFPage_Decoding 6ms
โœ… PDFReaderTests testPDFPage_Encoding 199ms
โœ… PDFReaderTests testPDFPage_Initialization 7ms
โœ… PDFReaderTests testPDFPage_RoundTrip 1ms
โœ… PDFReaderTests testReaderMode_Values 47ms
โœ… PDFSearchEmptyStateTests testShowsNoResults_committedQueryWithMatches_hidesEmptyState <1ms
โœ… PDFSearchEmptyStateTests testShowsNoResults_committedQueryWithZeroMatches_showsEmptyState <1ms
โœ… PDFSearchEmptyStateTests testShowsNoResults_shortQuery_neverShowsEmptyState 12ms
โœ… PDFSearchEmptyStateTests testShowsNoResults_thresholdBoundary_isThreeChars <1ms
โœ… PP3596RegressionTests testPP3596_multiplePlaybackStartedCalls_shouldNotOvercount 4ms
โœ… PP3596RegressionTests testPP3596_onlyActualPlaybackIsTracked 19ms
โœ… PP3596RegressionTests testPP3596_playbackStartedWithoutPlayback_shouldNotAccumulateTime 35ms
โœ… Palace PalaceTests <1ms
โœ… Palace TenPrintCoverTests <1ms
โœ… PalaceCheckPropertyTests test_BackoffDelay_isNonNegativeAndMonotone 1ms
โœ… PalaceCheckPropertyTests test_BookButtonMapper_map_isTotal_forAllStates 1ms
โœ… PalaceCheckPropertyTests test_OPDS2Publication_jsonRoundTrip 3ms
โœ… PalaceCheckPropertyTests test_TPPBookState_disallowedTransitionsAreRejected <1ms
โœ… PalaceCheckPropertyTests test_TPPBookState_selfTransitionsAlwaysAllowed 12ms
โœ… PalaceCheckPropertyTests test_TPPBookState_unregisteredToDownloadingAllowed 5ms
โœ… PalaceCheckPropertyTests test_TPPBookState_validSequencesRespectTable 5ms
โœ… PalaceCheckPropertyTests test_TPPBook_dictionaryRoundTrip 55ms
โœ… PalaceErrorCategoryTests testAuthenticationError_allCases_haveDescriptions 1ms
โœ… PalaceErrorCategoryTests testBookReaderError_allCases_haveDescriptions 1ms
โœ… PalaceErrorCategoryTests testDownloadError_allCases_haveDescriptions 25ms
โœ… PalaceErrorCategoryTests testErrorCode_authErrors_startAt6000 <1ms
โœ… PalaceErrorCategoryTests testErrorCode_downloadErrors_startAt3000 <1ms
โœ… PalaceErrorCategoryTests testErrorCode_drmErrors_startAt5000 17ms
โœ… PalaceErrorCategoryTests testErrorCode_networkErrors_startAt1000 <1ms
โœ… PalaceErrorCategoryTests testErrorCode_uniquePerCase <1ms
โœ… PalaceErrorCategoryTests testFromNSError_unknownDomain_mapsToNetworkUnknown <1ms
โœ… PalaceErrorCategoryTests testFromNSError_urlErrorCancelled_mapsToCancelled <1ms
โœ… PalaceErrorCategoryTests testFromNSError_urlErrorNotConnected_mapsToNoConnection <1ms
โœ… PalaceErrorCategoryTests testFromNSError_urlErrorTimedOut_mapsToTimeout <1ms
โœ… PalaceErrorCategoryTests testLocalizedError_conformance <1ms
โœ… PalaceErrorCategoryTests testNetworkError_allCases_haveDescriptions <1ms
โœ… PalaceErrorCategoryTests testOpdsFeedInvalid_errorDescriptionIsUserFacing 4ms
โœ… PalaceErrorCategoryTests testOpdsFeedInvalid_localizedKey_hasPlaceholderEnglishValue 23ms
โœ… PalaceErrorCategoryTests testOpdsFeedInvalid_recoverySuggestionPresent <1ms
โœ… PalaceErrorCategoryTests testRecoverySuggestion_downloadInsufficientSpace 3ms
โœ… PalaceErrorCategoryTests testRecoverySuggestion_networkErrors_provideGuidance <1ms
โœ… PalaceErrorCategoryTests testStorageError_allCases_haveDescriptions <1ms
โœ… PalaceErrorExtendedTests testAudiobookError_allCases_haveDescriptions <1ms
โœ… PalaceErrorExtendedTests testAudiobookError_allCases_haveRecoverySuggestions <1ms
โœ… PalaceErrorExtendedTests testBookRegistryError_allCases_haveDescriptions 6ms
โœ… PalaceErrorExtendedTests testBookRegistryError_allCases_haveRecoverySuggestions 6ms
โœ… PalaceErrorExtendedTests testCancellation_yieldsNoRecoverySuggestionAcrossNetworkAndDownload <1ms
โœ… PalaceErrorExtendedTests testDRMError_allCases_haveDescriptions <1ms
โœ… PalaceErrorExtendedTests testDRMError_allCases_haveRecoverySuggestions <1ms
โœ… PalaceErrorExtendedTests testErrorCode_categoryOffsetsAreUniqueAndStable <1ms
โœ… PalaceErrorExtendedTests testErrorCode_offsetByRawValue 3ms
โœ… PalaceErrorExtendedTests testFromError_palaceErrorPassedDirectly_returnsItself <1ms
โœ… PalaceErrorExtendedTests testFromNSError_palaceDomain_code0_mapsToNetworkUnknown <1ms
โœ… PalaceErrorExtendedTests testFromNSError_palaceDomain_code3_mapsToParsingOpdsFeedInvalid <1ms
โœ… PalaceErrorExtendedTests testFromNSError_palaceDomain_code5_mapsToAuthInvalidCredentials 1ms
โœ… PalaceErrorExtendedTests testFromNSError_palaceDomain_code8_mapsToAudiobookPlaybackError <1ms
โœ… PalaceErrorExtendedTests testFromNSError_palaceDomain_unknownCode_mapsToNetworkUnknown <1ms
โœ… PalaceErrorExtendedTests testFromNSError_urlErrorBadURL_mapsToInvalidURL <1ms
โœ… PalaceErrorExtendedTests testFromNSError_urlErrorCannotConnectToHost_mapsToServerError <1ms
โœ… PalaceErrorExtendedTests testFromNSError_urlErrorCannotFindHost_mapsToServerError 1ms
โœ… PalaceErrorExtendedTests testFromNSError_urlErrorUnsupportedURL_mapsToInvalidURL <1ms
โœ… PalaceErrorExtendedTests testPalaceError_localizedErrorSurface_delegatesToInnerError <1ms
โœ… PalaceErrorExtendedTests testParsingError_allCases_haveDescriptions <1ms
โœ… PalaceErrorExtendedTests testParsingError_contentNotSupported_hasSpecificRecovery 30ms
โœ… PalaceErrorExtendedTests testParsingError_otherCases_haveGenericRecovery 3ms
โœ… PalaceErrorTests testPalaceError_authentication_accountNotFound 2ms
โœ… PalaceErrorTests testPalaceError_authentication_invalidCredentials 14ms
โœ… PalaceErrorTests testPalaceError_authentication_tokenExpired 3ms
โœ… PalaceErrorTests testPalaceError_bookRegistry_alreadyBorrowed 17ms
โœ… PalaceErrorTests testPalaceError_bookRegistry_bookNotFound 152ms
โœ… PalaceErrorTests testPalaceError_download_cannotFulfill 9ms
โœ… PalaceErrorTests testPalaceError_network_forbidden 56ms
โœ… PalaceErrorTests testPalaceError_network_notFound <1ms
โœ… PalaceErrorTests testPalaceError_network_rateLimited 3ms
โœ… PalaceErrorTests testPalaceError_network_serverError 9ms
โœ… PalaceErrorTests testPalaceError_parsing_opdsFeedInvalid 4ms
โœ… PalaceHapticTests testPalaceHapticModifier_readsInjectedServicePreference 8ms
โœ… PalaceHapticTests testResolvedFeedback_enabled_playsFeedback <1ms
โœ… PalaceHapticTests testResolvedFeedback_preferenceDisabled_suppressed <1ms
โœ… PalaceHapticTests testResolvedFeedback_reduceMotion_suppressed <1ms
โœ… PalaceMotionTests testRadiusTokens_haveExpectedValuesAndOrdering 3ms
โœ… PalaceMotionTests testResolved_nilAnimation_staysNil <1ms
โœ… PalaceMotionTests testResolved_reduceMotionOff_returnsAnimation 31ms
โœ… PalaceMotionTests testResolved_reduceMotionOn_returnsNil <1ms
โœ… PalaceMotionTests testShimmerOffset_centeredAtMidPhase <1ms
โœ… PalaceMotionTests testShimmerOffset_clearsBothEdges <1ms
โœ… PalaceMotionTests testShimmerOffset_movesWithPhase 5ms
โœ… PalaceMotionTests testShouldAnimateContinuously_eitherConditionStops <1ms
โœ… PalaceMotionTests testShouldAnimateContinuously_fullPowerMotionOn_returnsTrue <1ms
โœ… PalaceMotionTests testShouldAnimateContinuously_lowPower_returnsFalse 2ms
โœ… PalaceMotionTests testShouldAnimateContinuously_reduceMotion_returnsFalse <1ms
โœ… PalacePDFViewTests testAllowsCopy_defaultsToTrue 12ms
โœ… PalacePDFViewTests testCanPerformAccessibilityAction_whenAllowsCopyIsFalse_defersToSuper 6ms
โœ… PalacePDFViewTests testCanPerformCopy_whenAllowsCopyIsFalse_returnsFalse 3ms
โœ… PalacePDFViewTests testCanPerformCopy_whenAllowsCopyIsTrue_doesNotShortCircuit 4ms
โœ… PalacePDFViewTests testCanPerformCut_whenAllowsCopyIsFalse_returnsFalse 3ms
โœ… PalacePDFViewTests testCanPerformDefine_whenAllowsCopyIsFalse_returnsFalse 25ms
โœ… PalacePDFViewTests testCanPerformLookup_whenAllowsCopyIsFalse_returnsFalse 61ms
โœ… PalacePDFViewTests testCanPerformNonEditingAction_whenAllowsCopyIsFalse_defersToSuper 6ms
โœ… PalacePDFViewTests testCanPerformPaste_whenAllowsCopyIsFalse_returnsFalse 23ms
โœ… PalacePDFViewTests testCanPerformSelectAll_whenAllowsCopyIsFalse_returnsFalse 6ms
โœ… PalacePDFViewTests testCanPerformShare_whenAllowsCopyIsFalse_returnsFalse 7ms
โœ… PalacePDFViewTests testCanPerformTranslate_whenAllowsCopyIsFalse_returnsFalse 8ms
โœ… PalacePressableButtonStyleTests testOpacity_pressed_dims 6ms
โœ… PalacePressableButtonStyleTests testOpacity_released_isOpaque 2ms
โœ… PalacePressableButtonStyleTests testPalacePressableConvenience_resolvesToStyle <1ms
โœ… PalacePressableButtonStyleTests testScale_pressedWithMotion_shrinks <1ms
โœ… PalacePressableButtonStyleTests testScale_pressedWithReduceMotion_noShrink <1ms
โœ… PalacePressableButtonStyleTests testScale_released_isFullSize 2ms
โœ… PalaceTestSetupObservationTests testBootstrap_isIdempotent_returnsSameObserver 2ms
โœ… PalaceTestSetupObservationTests testCanary_AppContainerResetForTesting_yieldsCleanGraph 272ms
โœ… PalaceTestSetupObservationTests testTestCaseDidFinish_callsRegistryResettersInRegistrationOrder 7ms
โœ… PalaceTestSetupObservationTests testTestCaseDidFinish_observerCountIncreases_recordsDelta 3ms
โœ… PalaceWiringTestCaseTests testMakeFreshAccountsManager_appliesTestOptOut 384ms
โœ… PalaceWiringTestCaseTests testSetUp_runsAllResetters 4ms
โœ… PalaceWiringTestCaseTests testTearDown_cancelsBackgroundWorkOnRegisteredManagers 4ms
โœ… PalaceWiringTestCaseTests testTearDown_drainsCancellables 4ms
โœ… ParserFuzzTests testFuzz_AnnotationsResponse_NoCrashes 2.97s
โœ… ParserFuzzTests testFuzz_LCPLicense_NoCrashes 15ms
โœ… ParserFuzzTests testFuzz_OPDS1XML_NoCrashes 98ms
โœ… ParserFuzzTests testFuzz_OPDS2JSON_NoCrashes 10.44s
โœ… PatronProfileContractTests testParsePatronProfile_ExtractsDRMInfo <1ms
โœ… PatronProfileContractTests testParsePatronProfile_ExtractsSettings 1ms
โœ… PatronProfileContractTests testParsePatronProfile_HasAnnotationAndDeviceLinks 3ms
โœ… PatronProfileContractTests testParsePatronProfile_HasExpirationDate 1ms
โœ… PerformanceMonitorTests testClearAll 5ms
โœ… PerformanceMonitorTests testEmptyReport 56ms
โœ… PerformanceMonitorTests testEndTimingSameTokenTwice 9ms
โœ… PerformanceMonitorTests testEndTimingWithInvalidToken 70ms
โœ… PerformanceMonitorTests testGenerateReport 25ms
โœ… PerformanceMonitorTests testMaxMetricsPerCategoryEnforced 18ms
โœ… PerformanceMonitorTests testMetricPublisherEmits 57ms
โœ… PerformanceMonitorTests testMetricsGroupedByCategory 4ms
โœ… PerformanceMonitorTests testPercentileCalculations 19ms
โœ… PerformanceMonitorTests testRecordDurationDirectly 14ms
โœ… PerformanceMonitorTests testRecordMetricDirectly 18ms
โœ… PerformanceMonitorTests testReportByName 18ms
โœ… PerformanceMonitorTests testReportSummaryFormat 15ms
โœ… PerformanceMonitorTests testStartAndEndTiming 72ms
โœ… PerformanceReportTests testEmptyMetrics_ReturnsZeros <1ms
โœ… PerformanceReportTests testLargeDataset_PercentileAccuracy 47ms
โœ… PerformanceReportTests testMinMaxMean 42ms
โœ… PerformanceReportTests testMinMaxMean_UnsortedInput 3ms
โœ… PerformanceReportTests testPercentile_P50_EvenCount 2ms
โœ… PerformanceReportTests testPercentile_P50_OddCount <1ms
โœ… PerformanceReportTests testPercentile_P95 <1ms
โœ… PerformanceReportTests testPercentile_P99 1ms
โœ… PerformanceReportTests testReport_EmptyMonitor_ZeroMeasurements 37ms
โœ… PerformanceReportTests testReport_StatisticsByCategory 2ms
โœ… PerformanceReportTests testReport_StatisticsByName 10ms
โœ… PerformanceReportTests testReport_SummaryContainsMeasurementCount 2ms
โœ… PerformanceReportTests testReport_TotalMeasurements 5ms
โœ… PerformanceReportTests testSingleMetric_AllPercentilesEqual 1ms
โœ… PersistentLoggerTests testClearLogs_removesAllRotatedFiles 552ms
โœ… PersistentLoggerTests testInit_withCustomLogsRoot_writesToProvidedDirectory 6ms
โœ… PersistentLoggerTests testLog_andRetrieve_containsLoggedMessage 6ms
โœ… PersistentLoggerTests testLog_containsTimestamp 6ms
โœ… PersistentLoggerTests testLog_errorLevel_isRecorded 4ms
โœ… PersistentLoggerTests testLog_faultLevel_isRecorded 4ms
โœ… PersistentLoggerTests testLog_multipleEntries_allAppear 17ms
โœ… PersistentLoggerTests testLog_rotatesAtMaxFileSize 502ms
โœ… PersistentLoggerTests testRetrieveAllLogs_includesActiveFileHeaderExactlyOnce 9ms
โœ… PlaybackBootstrapperAudioSessionTests testPlaybackBootstrapper_ensureInitialized_isIdempotent_doesNotRedispatch 11ms
โœ… PlaybackBootstrapperAudioSessionTests testPlaybackBootstrapper_launch_defersAudioSession_keepsRemoteCommands 11ms
โœ… PlaybackBootstrapperTests testAudiobookSessionManager_InitialState_IsIdle 1ms
โœ… PlaybackBootstrapperTests testAudiobookSessionState_ErrorIsNotActive 5ms
โœ… PlaybackBootstrapperTests testAudiobookSessionState_IdleIsNotActive 2ms
โœ… PlaybackBootstrapperTests testAudiobookSessionState_LoadingIsActive 2ms
โœ… PlaybackBootstrapperTests testAudiobookSessionState_PausedIsActive 33ms
โœ… PlaybackBootstrapperTests testAudiobookSessionState_PlayingIsActive 4ms
โœ… PlaybackBootstrapperTests testPlaybackBootstrapper_ConfiguresRemoteCommandCenter 4ms
โœ… PlaybackBootstrapperTests testPlaybackBootstrapper_SkipIntervals_AreConfigured 3ms
โœ… PlaybackFailureRecordTests testRecord_LocalizedDescriptionPrefixed 6ms
โœ… PlaybackFailureRecordTests testRecord_NilBookId_FallsBackToUnknown <1ms
โœ… PlaybackFailureRecordTests testRecord_NilError_RecordsBookIdAndDefaultCode <1ms
โœ… PlaybackFailureRecordTests testRecord_OnlyAllowedSubKeysPropagate_BlocksAccidentalLeakage <1ms
โœ… PlaybackFailureRecordTests testRecord_OpenAccess403_PreservesHttpStatusAndUrl <1ms
โœ… PlaybackOpenPolicyTests testDecideForLoad_nilDecryptor_keepsGate 65ms
โœ… PlaybackOpenPolicyTests testDecideForLoad_nonNilDecryptor_bypassesGate 3ms
โœ… PlaybackOpenPolicyTests testDecide_lcpAudiobook_bypassesReadinessGate 3ms
โœ… PlaybackOpenPolicyTests testDecide_nonLCPAudiobook_keepsReadinessGate <1ms
โœ… PlaybackOpenPolicyTests testDecide_predicates_areIndependent 1ms
โœ… PlaybackOpenPolicyTests testDecide_reBorrowOfSameBook_doesNotPersistFinalPosition 184ms
โœ… PlaybackOpenPolicyTests testDecide_switchToDifferentBook_persistsFinalPosition 2ms
โœ… PlaybackRateTests testAccessibleDescription_FastestIsNowTripleTime_Not2x 8ms
โœ… PlaybackRateTests testConvert_IntermediateCases_ReturnCorrectMultipliers <1ms
โœ… PlaybackRateTests testConvert_PresetCases_ReturnCorrectMultipliers <1ms
โœ… PlaybackRateTests testFormatMultiplier_OneDecimalPlace_ShowsOneDecimalPlace <1ms
โœ… PlaybackRateTests testFormatMultiplier_TwoDecimalPlaces_ShowsTwoDecimalPlaces <1ms
โœ… PlaybackRateTests testFormatMultiplier_WholeNumber_ShowsOneDecimalPlace 1ms
โœ… PlaybackRateTests testFormatMultiplier_allStepsProduceLabelEndingWithMultiplySign 2ms
โœ… PlaybackRateTests testNearest_ExactIntermediateValues_ReturnExactCase <1ms
โœ… PlaybackRateTests testNearest_ExactPresetValues_ReturnExactCase 6ms
โœ… PlaybackRateTests testNearest_ValueBetweenSteps_SnapsToNearest <1ms
โœ… PlaybackRateTests testNearest_clampsOutOfRangeValuesToBounds <1ms
โœ… PlaybackRateTests testPresets_DoesNotContainOtherIntermediateCases 11ms
โœ… PlaybackRateTests testPresets_DropOld0p75And1p2Chips_ButCasesStillReachable <1ms
โœ… PlaybackRateTests testPresets_MultipliersAreEven0p5StepsFrom0p5To3p0 <1ms
โœ… PlaybackRateTests testPresets_SlowChipIs0p5_AndTwoChipsExceed2x 1ms
โœ… PlaybackRateTests testPresets_isExactly_0p5_1p0_1p5_2p0_2p5_3p0_inAscendingOrder 5ms
โœ… PlaybackRateTests testRawValueRoundTrip_BoundaryAndAbove2xCases <1ms
โœ… PlaybackRateTests testSteps_isMonotonicLadderFromHalfToTripleIn0Point05Increments <1ms
โœ… PlaybackTrackingRegressionTests testMultiplePlaybackStartedCalls_doesNotOvercount 20ms
โœ… PlaybackTrackingRegressionTests testMultipleStopStartCycles_preservesAllTime 27ms
โœ… PlaybackTrackingRegressionTests testPlaybackStopped_savesAccumulatedTime 83ms
โœ… PlaybackTrackingRegressionTests testRapidStartStopCycles_countsCorrectly 128ms
โœ… PlaybackTrackingRegressionTests testSleepTimerPause_savesAllAccumulatedTime 115ms
โœ… PoolResponsivenessProbeTests testAssertRuntimeResponsiveAsync_realProbeOnCleanPool_isResponsive 14ms
โœ… PoolResponsivenessProbeTests testAssertRuntimeResponsive_healthyStub_recordsNoFailure 608ms
โœ… PoolResponsivenessProbeTests testAssertRuntimeResponsive_realProbeOnCleanPool_isResponsive 2ms
โ“ PoolResponsivenessProbeTests testAssertRuntimeResponsive_saturatedStub_recordsAttributedFailure 1.98s
โœ… PoolResponsivenessProbeTests testEnforcesPoolResponsiveness_isOffByDefault 1ms
โœ… PositionPersistenceLogicTests testCriticalSave_onTermination_mustBypassSuppression <1ms
โœ… PositionPersistenceLogicTests testNewPersistLocation_bypassesSuppression <1ms
โœ… PositionPersistenceLogicTests testNoSuppression_allowsSave 2ms
โœ… PositionPersistenceLogicTests testOldBehavior_suppressionBlocksSave 1ms
โœ… PositionPersistenceLogicTests testSuppressionExpired_allowsSave 3ms
โœ… PositionPersistenceLogicTests testSuppressionWindow_threeSeconds_blocksAndThenAllows 2ms
โœ… PositionPersistenceTests testBookRegistry_setLocation_updatesPosition 2ms
โœ… PositionPersistenceTests testBookRegistry_storesLocation 2ms
โœ… PositionSyncServiceTests testClearAll 205ms
โœ… PositionSyncServiceTests testClearPositionsForBook 11ms
โœ… PositionSyncServiceTests testLatestPositionAnyFormat 17ms
โœ… PositionSyncServiceTests testNoSyncOfferForUnknownBook 9ms
โœ… PositionSyncServiceTests testNoSyncOfferWhenCurrentFormatIsMoreRecent 21ms
โœ… PositionSyncServiceTests testPersistenceAcrossInstances 17ms
โœ… PositionSyncServiceTests testPositionRecordedEventPublished 12ms
โœ… PositionSyncServiceTests testRecordAudiobookPosition 7ms
โœ… PositionSyncServiceTests testRecordEpubPosition 33ms
โœ… PositionSyncServiceTests testRecordPdfPosition 12ms
โœ… PositionSyncServiceTests testSetAndRetrieveMapping 14ms
โœ… PositionSyncServiceTests testSyncAvailableEventPublished 24ms
โœ… PositionSyncServiceTests testSyncOfferWhenOtherFormatIsMoreRecent 15ms
โœ… PositionSyncTests testSyncIsPossibleAndPermitted_checksSyncState 1ms
โœ… PositionSyncTests testTPPBookLocation_creation 213ms
โœ… PositionSyncTests testTPPBookLocation_equality <1ms
โœ… PositionSyncTests testTPPBookLocation_withEmptyString_createsLocation <1ms
โœ… PositionSyncTests testTPPBookmarkR3Location_storesResourceIndex <1ms
โœ… PositionWriterContractTests test_backgroundTask_postCompletes_aroundNetworkPost 12ms
โœ… PositionWriterContractTests test_cancel_clearsState_thenSaveAgainPostsImmediately 19ms
โœ… PositionWriterContractTests test_load_callsFetch 8ms
โœ… PositionWriterContractTests test_save_firstSnapshot_postsImmediately 86ms
โœ… PositionWriterContractTests test_save_secondWithinThrottle_queuesAndReturnsNil 9ms
โœ… PositionWriterContractTests test_save_throttleElapsed_postsQueued 14ms
โœ… PostUpdateMigrationTests testMigrate_doesNotCrash 10ms
โœ… PostUpdateMigrationTests testMigrate_updatesStoredVersion 3ms
โœ… PostUpdateMigrationTests testPostUpdateDetection_differentBuild_isDetected 5ms
โœ… PostUpdateMigrationTests testPostUpdateDetection_firstLaunch_isNotUpdate 10ms
โœ… PostUpdateMigrationTests testPostUpdateDetection_sameBuild_isNotDetected 4ms
โœ… ProblemDocumentContractTests testAllProblemDocuments_Parse 1ms
โœ… ProblemDocumentContractTests testAllProblemTypes_HaveDistinctTypeURIs <1ms
โœ… ProblemDocumentContractTests testInvalidCredentials_HasExpectedShape <1ms
โœ… ProblemDocumentContractTests testLoanLimitReached_HasExpectedShape 3ms
โœ… ProblemDocumentLoanExpiryTests testDetailLoanTermLimitReached_detectedInRealServerDetail 26ms
โœ… ProblemDocumentLoanExpiryTests testDetailLoanTermLimitReached_hasExpectedValue <1ms
โœ… ProblemDocumentLoanExpiryTests testDetailLoanTermLimitReached_notDetectedInUnrelatedDetail <1ms
โœ… ProblemDocumentLoanExpiryTests testLoanTermLimitReached_detectedFromErrorDictionary <1ms
โœ… ProblemDocumentLoanExpiryTests testNoActiveLoan_doesNotMatchTermLimitCheck <1ms
โœ… ProblemDocumentTests testBorrowError_credentialsSuspended_extractsDetails <1ms
โœ… ProblemDocumentTests testBorrowError_loanLimitReached_extractsDetails 2ms
โœ… ProblemDocumentTests testNSError_problemDocument_extractsCorrectly 593ms
โœ… ProblemDocumentTests testNSError_withoutProblemDocument_hasNilProperties 1ms
โœ… ProblemDocumentTests testProblemDocumentTypes_areCorrect 3ms
โœ… ProblemDocumentTests testProblemDocument_fromData_parsesCorrectly 592ms
โœ… ProblemDocumentTests testProblemDocument_fromDictionary_parsesCorrectly 1ms
โœ… ProblemDocumentTests testProblemDocument_fromResponseError_extractsFromNSError 4ms
โœ… ProblemDocumentTests testProblemDocument_fromResponseError_fallsBackToData 2ms
โœ… ProblemDocumentTests testProblemDocument_fromResponseError_returnsNilWhenNoDocument 5ms
โœ… ProblemDocumentTests testProblemDocument_stringValue_combinesTitleAndDetail <1ms
โœ… ProblemDocumentTests testProblemDocument_stringValue_handlesMissingTitle 511ms
โœ… ProblemReportEmailTests testGenerateBody_containsDeviceIdiom 2ms
โœ… ProblemReportEmailTests testGenerateBody_includesEnvironmentFieldsInExpectedStructure 2ms
โœ… ProblemReportEmailTests testGenerateBody_withBook_containsBookInfo 7ms
โœ… ProblemReportEmailTests testGenerateBody_withoutBook_doesNotContainBookInfo 2ms
โœ… ProblemReportEmailTests testPP3651_generateBody_doesNotLeakOtherLibrarysPatronIDWhenNilPassed 3ms
โœ… ProblemReportEmailTests testPP3651_generateBody_includesPatronIDOnlyWhenProvided 4ms
โœ… ProblemReportEmailTests testPP3651_generateBody_patronID_appearsAfterSeparator <1ms
โœ… ProblemReportEmailTests testPP3651_generateBody_withBookAndPatronID_containsBothBookAndPatronInfo 2ms
โœ… RatingCardMotionGateTests testCardTransition_tracksScaleGate_bothDirections 1ms
โœ… RatingCardMotionGateTests testStepAnimation_reduceMotionOff_usesEmphasizedSpring <1ms
โœ… RatingCardMotionGateTests testStepAnimation_reduceMotionOn_isNil 1ms
โœ… RatingCardMotionGateTests testUsesScaleTransition_reduceMotionOff_scales <1ms
โœ… RatingCardMotionGateTests testUsesScaleTransition_reduceMotionOn_dropsScale <1ms
โœ… RatingEligibilityPolicyTests testEvaluate_afterCrashingSession_isNotEligible 2ms
โœ… RatingEligibilityPolicyTests testEvaluate_allCriteriaMet_isEligible 57ms
โœ… RatingEligibilityPolicyTests testEvaluate_booksExactlyAtMinimum_isEligible 2ms
โœ… RatingEligibilityPolicyTests testEvaluate_clockMovedBackwardsPastLastPrompt_isNotEligible 1ms
โœ… RatingEligibilityPolicyTests testEvaluate_displayCountAboveCap_isNotEligible 14ms
โœ… RatingEligibilityPolicyTests testEvaluate_displayCountAtCap_isNotEligible 12ms
โœ… RatingEligibilityPolicyTests testEvaluate_displayCountBelowCap_isEligible 54ms
โœ… RatingEligibilityPolicyTests testEvaluate_exactlyAtCooldownBoundary_isEligible 2ms
โœ… RatingEligibilityPolicyTests testEvaluate_neverPrompted_ignoresCooldown <1ms
โœ… RatingEligibilityPolicyTests testEvaluate_noBooksCompleted_isNotEligible 175ms
โœ… RatingEligibilityPolicyTests testEvaluate_onFirstSession_isNotEligible <1ms
โœ… RatingEligibilityPolicyTests testEvaluate_respectsRemoteThresholds 1ms
โœ… RatingEligibilityPolicyTests testEvaluate_sessionsBelowMinimum_isNotEligible 2ms
โœ… RatingEligibilityPolicyTests testEvaluate_sessionsExactlyAtMinimum_isEligible 2ms
โœ… RatingEligibilityPolicyTests testEvaluate_wellPastCooldown_isEligible <1ms
โœ… RatingEligibilityPolicyTests testEvaluate_whenOptedOut_isNotEligible <1ms
โœ… RatingEligibilityPolicyTests testEvaluate_withinCooldown_isNotEligible 2ms
โœ… RatingEngagementTrackerTests testCurrentState_freshInstall_hasZeroCountsAndIsFirstSession 9ms
โœ… RatingEngagementTrackerTests testRecordBookCompleted_incrementsCount 4ms
โœ… RatingEngagementTrackerTests testRecordDismissal_incrementsDismissalCount 3ms
โœ… RatingEngagementTrackerTests testRecordOptOut_setsOptedOut 4ms
โœ… RatingEngagementTrackerTests testRecordPromptShown_stampsDateAndIncrementsDisplayCount 72ms
โœ… RatingEngagementTrackerTests testRecordSession_calledTwice_accumulatesAndIsNoLongerFirstSession 33ms
โœ… RatingEngagementTrackerTests testRecordSession_incrementsSessionCountAndStoresCrashSignal 6ms
โœ… RatingEngagementTrackerTests testRecordSession_updatesCrashSignalEachSession 17ms
โœ… RatingEngagementTrackerTests testState_survivesAppUpdate_viaPersistentDefaults 5ms
โœ… RatingFeedbackPresenterTests testDefaultInit_wiresComposerToPalaceSupportAddress <1ms
โœ… RatingFeedbackPresenterTests testPresentFeedback_composesToSupportFromTopViewController <1ms
โœ… RatingFeedbackPresenterTests testPresentFeedback_withNoTopViewController_isSafeNoOp <1ms
โœ… RatingPromptPresenterTests testConfirmFeedback_onSentimentStep_isNoOp 5ms
โœ… RatingPromptPresenterTests testConfirmFeedback_presentsFeedbackNotAppStore 5ms
โœ… RatingPromptPresenterTests testDeclineFeedback_dismissesWithoutPresenting 5ms
โœ… RatingPromptPresenterTests testDismiss_onFeedbackFollowup_behavesAsDecline 6ms
โœ… RatingPromptPresenterTests testDismiss_onSentiment_behavesAsAskLater 4ms
โœ… RatingPromptPresenterTests testHandleTrigger_whenAlreadyShowing_doesNotReshowOrRestamp 8ms
โœ… RatingPromptPresenterTests testHandleTrigger_whenEligible_showsSentimentAndStampsDisplay 6ms
โœ… RatingPromptPresenterTests testHandleTrigger_whenIneligible_showsNothing 46ms
โœ… RatingPromptPresenterTests testNoteBookCompleted_recordsCompletionThenSchedulesGate 23ms
โœ… RatingPromptPresenterTests testNoteBookCompleted_whenIneligible_recordsButShowsNoGate 18ms
โœ… RatingPromptPresenterTests testNoteBorrowSucceeded_schedulesGateWithoutRecordingCompletion 14ms
โœ… RatingPromptPresenterTests testRespondAskLater_dismissesWithoutActionOrDismissalCount 6ms
โœ… RatingPromptPresenterTests testRespondNegative_recordsDismissalAndShowsFeedbackFollowup 7ms
โœ… RatingPromptPresenterTests testRespondPositive_requestsReviewAndDismisses 5ms
โœ… RatingPromptPresenterTests testRespondPositive_whenNothingShown_isNoOp 1ms
โœ… ReachabilityTests testDetailedStatus_expensiveAndConstrained_appendBothFlags <1ms
โœ… ReachabilityTests testDetailedStatus_expensiveOnly_appendsExpensiveNotConstrained <1ms
โœ… ReachabilityTests testDetailedStatus_requiresConnection_reportsPending 3ms
โœ… ReachabilityTests testDetailedStatus_satisfiedCellular_reportsConnectedViaCellular <1ms
โœ… ReachabilityTests testDetailedStatus_satisfiedEthernet_reportsConnectedViaEthernet <1ms
โœ… ReachabilityTests testDetailedStatus_satisfiedUnknownInterface_reportsUnknownType <1ms
โœ… ReachabilityTests testDetailedStatus_satisfiedWiFi_reportsConnectedViaWiFi 2ms
โœ… ReachabilityTests testDetailedStatus_unsatisfied_reportsNoConnection 3ms
โœ… ReachabilityTests testDetailedStatus_wifiTakesPrecedenceOverCellular <1ms
โœ… ReachabilityTests testGetDetailedConnectivityStatus_returnsNonEmptyFields <1ms
โœ… Reader2BookmarkContractTests test_bookmarkDelete_removesFromRegistry_thenAnnotationsDelete 77ms
โœ… Reader2BookmarkContractTests test_bookmarkSave_locatorFactoryRejects_doesNotEnqueueAnnotation 6ms
โœ… Reader2BookmarkContractTests test_bookmarkSave_writesToRegistry_thenAnnotations 13ms
โœ… Reader2PositionAdapterContractTests test_epubPoster_storeReadPosition_serializesLocator_callsWriterSave 115ms
โŠ˜ Reader2PositionAdapterContractTests test_epubSynchronizer_sync_remoteDifferentDevice_loadsThenReturns 12ms
โœ… Reader2PositionAdapterContractTests test_epubSynchronizer_sync_sameDevice_returnsNil 10ms
โœ… Reader2PositionAdapterContractTests test_pdf_setCurrentPage_callsRegistryThenWriter 113ms
โœ… Reader2PositionResumeContractTests test_positionSave_writesRegistryThenSyncQueue 123ms
โœ… Reader2PositionResumeContractTests test_readerResume_loadsRegistryThenSynchronizer 129ms
โœ… Reader2PositionResumeContractTests test_readerResume_synchronizerSamePayload_noopShortCircuits 27ms
โœ… ReaderAccessibilityTests testBookmarkToggleLabels_areDistinctAndDescriptive 54ms
โœ… ReaderAccessibilityTests testBookmarksTabLabel_isDescriptive <1ms
โœ… ReaderAccessibilityTests testChapterNavigationLabels_areDistinct 1ms
โœ… ReaderAccessibilityTests testCloseSampleLabel_isDescriptive <1ms
โœ… ReaderAccessibilityTests testPDFPickerSegmentLabels_areDistinct 2ms
โœ… ReaderAccessibilityTests testPagePreviewsLabel_isDescriptive 2ms
โœ… ReaderAccessibilityTests testTableOfContentsLabel_isDescriptive 6ms
โœ… ReaderChromeToggleFadeTests test_overlayLabelsHidden_flipsWithBarState <1ms
โœ… ReaderChromeToggleFadeTests test_overlayLabelsHidden_truthTable 1ms
โœ… ReaderChromeToggleFadeTests test_shouldAnimateBookmarkBounce_respectsReduceMotion <1ms
โœ… ReaderEditingActionsTests testResolve_appendsCustomActions_forNonDRMBook 1ms
โœ… ReaderEditingActionsTests testResolve_returnsDefaultActions_forNonDRMBook <1ms
โœ… ReaderEditingActionsTests testResolve_returnsEmpty_forDRMBook 6ms
โœ… ReaderEditingActionsTests testResolve_returnsEmpty_forDRMBook_evenWithCustomActions 11ms
โœ… ReaderEditingActionsTests testResolve_treatsSampleOfDRMBook_asNonDRM 2ms
โœ… ReaderErrorTests testEpubNotValid_conformsToLocalizedError <1ms
โœ… ReaderErrorTests testEpubNotValid_hasErrorDescription 4ms
โœ… ReaderErrorTests testErrors_haveDifferentDescriptions <1ms
โœ… ReaderErrorTests testFormatNotSupported_conformsToLocalizedError <1ms
โœ… ReaderErrorTests testFormatNotSupported_hasErrorDescription 19ms
โœ… ReaderNavBarVoiceOverTests testUpdateNavigationBar_keepsNavBarVisibleWhenVoiceOverIsRunning 2ms
โœ… ReaderNavBarVoiceOverTests testViewDidAppear_reAppliesNavBarVisibilityWhenVoiceOverIsRunning 63ms
โœ… ReaderServicePDFRouteTests testPDFOpenRoute_nestedMarketplaceLCPPDF_routesLCP <1ms
โœ… ReaderServicePDFRouteTests testPDFOpenRoute_plainPDF_routesPlain 1ms
โœ… ReaderServicePDFRouteTests testPDFOpenRoute_topLevelLCPPDF_routesLCP 1ms
โœ… ReaderServiceSyncTests testLastReadPositionSynchronizer_canBeCreated 3ms
โœ… ReaderServiceSyncTests testLastReadPositionSynchronizer_syncDoesNotCrash_withDeviceID 5ms
โœ… ReaderServiceSyncTests testLastReadPositionSynchronizer_syncReturns_whenNoServerPosition 37ms
โœ… ReaderThemeTests testAllCases_containsExactly5Themes 1ms
โœ… ReaderThemeTests testAllCases_containsExpectedThemes <1ms
โœ… ReaderThemeTests testAllThemes_haveCSSHexBackgrounds 15ms
โœ… ReaderThemeTests testAllThemes_haveCSSHexTextColors 172ms
โœ… ReaderThemeTests testAllThemes_haveValidBackgroundColors 8ms
โœ… ReaderThemeTests testAllThemes_haveValidTextColors <1ms
โœ… ReaderThemeTests testCSSHex_matchesExpectedFormat 5ms
โœ… ReaderThemeTests testCodable_preservesAllProperties 4ms
โœ… ReaderThemeTests testCodable_roundTrip <1ms
โœ… ReaderThemeTests testDarkTheme_darkBackground 1ms
โœ… ReaderThemeTests testDarkTheme_hasDarkBackground 1ms
โœ… ReaderThemeTests testDarkTheme_hasLightText 4ms
โœ… ReaderThemeTests testEachThemeID_isUnique <1ms
โœ… ReaderThemeTests testEquatable_differentThemesAreNotEqual 15ms
โœ… ReaderThemeTests testEquatable_sameThemesAreEqual <1ms
โœ… ReaderThemeTests testLightTheme_hasDarkText 3ms
โœ… ReaderThemeTests testLightTheme_hasLightBackground 2ms
โœ… ReaderThemeTests testLightTheme_whiteBackground 69ms
โœ… ReaderThemeTests testNightTheme_hasDarkBackground <1ms
โœ… ReaderThemeTests testNightTheme_hasLightText <1ms
โœ… ReaderThemeTests testNightTheme_nearBlackBackground <1ms
โœ… ReaderThemeTests testSepiaTheme_hasDarkText <1ms
โœ… ReaderThemeTests testSepiaTheme_hasLightBackground 30ms
โœ… ReaderThemeTests testSolarizedTheme_hasLightBackground <1ms
โœ… ReadingPositionTests testAudiobookPosition_CodableRoundTrip 1ms
โœ… ReadingPositionTests testAudiobookPosition_NegativeTimeOffset_ClampedToZero <1ms
โœ… ReadingPositionTests testAudiobookPosition_SetsFormatAndFields 44ms
โœ… ReadingPositionTests testAudiobookPosition_ZeroTimeOffset <1ms
โœ… ReadingPositionTests testDeviceID_IsPopulated 101ms
โœ… ReadingPositionTests testDisplayDescription_Audiobook 4ms
โœ… ReadingPositionTests testDisplayDescription_Epub <1ms
โœ… ReadingPositionTests testDisplayDescription_Pdf <1ms
โœ… ReadingPositionTests testEpubPosition_CodableRoundTrip 63ms
โœ… ReadingPositionTests testEpubPosition_ProgressBoundary0 <1ms
โœ… ReadingPositionTests testEpubPosition_ProgressBoundary1 1ms
โœ… ReadingPositionTests testEpubPosition_ProgressClampedAbove1 43ms
โœ… ReadingPositionTests testEpubPosition_ProgressClampedBelow0 <1ms
โœ… ReadingPositionTests testEpubPosition_SetsFormatAndFields <1ms
โœ… ReadingPositionTests testEquality_DifferentChapter_NotEqual <1ms
โœ… ReadingPositionTests testEquality_DifferentFormat_NotEqual <1ms
โœ… ReadingPositionTests testEquality_SamePosition <1ms
โœ… ReadingPositionTests testPdfPosition_CodableRoundTrip 6ms
โœ… ReadingPositionTests testPdfPosition_NegativePageNumber_ClampedTo1 17ms
โœ… ReadingPositionTests testPdfPosition_PageNumberClampedToMinimum1 <1ms
โœ… ReadingPositionTests testPdfPosition_SetsFormatAndFields <1ms
โœ… ReadingPositionTests testReadingFormat_CodableRoundTrip <1ms
โœ… ReadingSessionTrackerTests testActiveBookID_NilInitially <1ms
โœ… ReadingSessionTrackerTests testEndSession_FiltersBriefSessions 4ms
โœ… ReadingSessionTrackerTests testEndSession_StopsTracking <1ms
โœ… ReadingSessionTrackerTests testEndSession_WithoutStartSession_DoesNotCrash 2ms
โœ… ReadingSessionTrackerTests testEndSession_WithoutStartSession_DoesNotRecordSession 16ms
โœ… ReadingSessionTrackerTests testIsTracking_FalseInitially 1ms
โœ… ReadingSessionTrackerTests testMultipleCycles_WorkCorrectly 3ms
โœ… ReadingSessionTrackerTests testPageCount_ResetsBetweenSessions 6ms
โœ… ReadingSessionTrackerTests testRecordBookFinished_RecordsCompletion 55ms
โœ… ReadingSessionTrackerTests testRecordBookFinished_TriggersBadgeRefresh 54ms
โœ… ReadingSessionTrackerTests testRecordPageTurn_IncrementsPageCount <1ms
โœ… ReadingSessionTrackerTests testStartSession_BeginsTracking <1ms
โœ… ReadingSessionTrackerTests testStartSession_EndsExistingSession <1ms
โœ… ReadingStatsServiceTests testAggregateStats 7ms
โœ… ReadingStatsServiceTests testAggregateStatsTimePeriodFilter 3ms
โœ… ReadingStatsServiceTests testChartDataEmpty 4ms
โœ… ReadingStatsServiceTests testChartDataWeek 22ms
โœ… ReadingStatsServiceTests testDuplicateCompletionIgnored 15ms
โœ… ReadingStatsServiceTests testRecordBookCompletion 11ms
โœ… ReadingStatsServiceTests testRecordMultipleSessions 7ms
โœ… ReadingStatsServiceTests testRecordSession 6ms
โœ… ReadingStatsServiceTests testRecordSessionIgnoresZeroDuration 3ms
โœ… ReadingStatsServiceTests testStreakRecalculation 32ms
โœ… ReadingStatsServiceTests testStreakResetsAfterGap 6ms
โœ… ReadingStatsServiceTests testStreakUpdatesOnSession 7ms
โœ… ReadingStatsStoreTests testClearAll 4ms
โœ… ReadingStatsStoreTests testLoadSessionsEmpty 2ms
โœ… ReadingStatsStoreTests testLoadStreakDefault 2ms
โœ… ReadingStatsStoreTests testMigrationSetsVersion 2ms
โœ… ReadingStatsStoreTests testMultipleSessions 29ms
โœ… ReadingStatsStoreTests testSaveAndLoadCompletions 8ms
โœ… ReadingStatsStoreTests testSaveAndLoadEarnedBadges 14ms
โœ… ReadingStatsStoreTests testSaveAndLoadSessions 14ms
โœ… ReadingStatsStoreTests testSaveAndLoadStreak 22ms
โœ… RedirectHandlingIntegrationTests testRedirect_attemptsCleared_afterCompletion 7ms
โœ… RedirectHandlingIntegrationTests testRedirect_httpsToHttp_blockedForSecurity 21ms
โœ… RedirectHandlingIntegrationTests testRedirect_httpsToHttps_allowed 1.40s
โœ… RedirectHandlingIntegrationTests testRedirect_maxAttempts_enforced 6ms
โœ… RedirectPolicyTests testDecide_AboveMax_StillReturnsNil 6ms
โœ… RedirectPolicyTests testDecide_AtMaxAttempts_ReturnsNilAndDoesNotIncrement 9ms
โœ… RedirectPolicyTests testDecide_CounterIsPerTask 55ms
โœ… RedirectPolicyTests testDecide_CustomMaxAttempts_Honored 5ms
โœ… RedirectPolicyTests testDecide_HTTPSToHTTPS_Allowed 107ms
โœ… RedirectPolicyTests testDecide_HTTPSToHTTP_ReturnsNilButHasIncremented 5ms
โœ… RedirectPolicyTests testDecide_HTTPToAnything_NotADowngrade 19ms
โœ… RedirectPolicyTests testDecide_NilOriginalScheme_NotTreatedAsDowngrade 26ms
โœ… RedirectPolicyTests testDecide_OneBelowMax_AllowsAndIncrements 17ms
โœ… RegistryFileRecoveryTests testBackupURL_appendsBakExtension 1ms
โœ… RegistryFileRecoveryTests testClassify_jsonArrayAtRoot_isCorrupt 3ms
โœ… RegistryFileRecoveryTests testClassify_jsonObjectMissingRecordsArray_isCorrupt 3ms
โœ… RegistryFileRecoveryTests testClassify_nilData_isEmpty 1ms
โœ… RegistryFileRecoveryTests testClassify_unparseableJSON_isCorrupt 1ms
โœ… RegistryFileRecoveryTests testClassify_wellFormedEmptyRecordsArray_isValidEmpty_notCorrupt 2ms
โœ… RegistryFileRecoveryTests testClassify_wellFormedWithRecords_isValidWithRecordCount 3ms
โœ… RegistryFileRecoveryTests testClassify_zeroLengthData_isEmpty 3ms
โœ… RegistryFileRecoveryTests testCorruptFile_isQuarantined_notOverwrittenEmpty 6ms
โœ… RegistryFileRecoveryTests testNeedsMigration_falseForCorruptData 11ms
โœ… RegistryFileRecoveryTests testNeedsMigration_falseForVersionedFile 1ms
โœ… RegistryFileRecoveryTests testNeedsMigration_trueForUnversionedValidFile 3ms
โœ… RegistryFileRecoveryTests testQuarantineURL_encodesTimestamp 43ms
โœ… RegistryFileRecoveryTests testQuarantine_absentFile_returnsNil 3ms
โœ… RegistryFileRecoveryTests testRecoverFromBackup_corruptBackup_returnsNil 3ms
โœ… RegistryFileRecoveryTests testRecoverFromBackup_emptyRecordsBackup_returnsNil 111ms
โœ… RegistryFileRecoveryTests testRecoverFromBackup_noBackup_returnsNil 89ms
โœ… RegistryFileRecoveryTests testSchemaVersion_readsPersistedVersion 1ms
โœ… RegistryFileRecoveryTests testSchemaVersion_unversionedFile_isNil 2ms
โœ… RegistryFileRecoveryTests testWriteBackup_leavesNoTempFile 26ms
โœ… RegistryFileRecoveryTests testWriteBackup_thenRecover_returnsRecords 4ms
โœ… RemoteFeatureFlagsGapTests testRemoteFeatureFlags_convenienceProperties_dontCrash 10ms
โœ… RemoteFeatureFlagsGapTests testRemoteFeatureFlags_fetchIfNeeded_completesWithoutCrashing 17ms
โœ… RemoteFeatureFlagsGapTests testRemoteFeatureFlags_isFeatureEnabled_returnsBoolean <1ms
โœ… RemoteFeatureFlagsGapTests testRemoteFeatureFlags_shared_isAccessible 4ms
โœ… RemoteFeatureFlagsSideLoadingTests testIsSideLoadingEnabled_noOverride_defersToRemoteConfig 2ms
โœ… RemoteFeatureFlagsSideLoadingTests testIsSideLoadingEnabled_overrideRoundTrip_true_false_true 111ms
โœ… RemoteFeatureFlagsSideLoadingTests testIsSideLoadingEnabled_whenLocalOverrideFalse_returnsFalse_overridingDebugDefault 17ms
โœ… RemoteFeatureFlagsSideLoadingTests testIsSideLoadingEnabled_whenLocalOverrideTrue_returnsTrue 3ms
โœ… RemoteFeatureFlagsSideLoadingTests testSideLoadingFeatureFlag_mapsToRemoteConfigKey 1ms
โœ… RemoteFeatureFlagsTests testContinuationCards_featureFlagDefault_isOff 2ms
โœ… RemoteFeatureFlagsTests testContinuationCards_localOverrideFalse_forcesOff 7ms
โœ… RemoteFeatureFlagsTests testContinuationCards_localOverrideTrue_forcesOn 129ms
โœ… RemoteFeatureFlagsTests testContinuationCards_noOverride_defaultsOff 5ms
โœ… RemoteFeatureFlagsTests testFeatureFlag_allCases_haveNonEmptyRawValues 2ms
โœ… RemoteFeatureFlagsTests testFeatureFlag_defaultValues_areDefined <1ms
โœ… RemoteFeatureFlagsTests testFetchIfNeeded_doesNotCrash 1.14s
โœ… RemoteFeatureFlagsTests testFlags_continuationAndInAppNav_areIndependent 15ms
โœ… RemoteFeatureFlagsTests testGetDeviceInfo_containsVersionInfo 237ms
โœ… RemoteFeatureFlagsTests testGetDeviceInfo_returnsNonEmptyDict 433ms
โœ… RemoteFeatureFlagsTests testInAppPlaybackNav_featureFlagDefault_isOff 2ms
โœ… RemoteFeatureFlagsTests testInAppPlaybackNav_localOverrideFalse_forcesOff 10ms
โœ… RemoteFeatureFlagsTests testInAppPlaybackNav_localOverrideTrue_forcesOn 87ms
โœ… RemoteFeatureFlagsTests testInAppPlaybackNav_noOverride_defaultsOff 4ms
โœ… RemoteFeatureFlagsTests testIsCarPlayEnabledCached_returnsBool 246ms
โœ… RemoteFeatureFlagsTests testIsFeatureEnabled_withoutFirebase_returnsDefault <1ms
โœ… RemoteFeatureFlagsTests testShared_isNotNil 10ms
โœ… RemoteFeatureFlagsTests testShared_returnsSameInstance 55ms
โœ… RemoteFeatureFlagsTests testWithTimeout_boundsAHangingOperation 384ms
โœ… RemoteFeatureFlagsTests testWithTimeout_boundsANonCancellableHangingOperation 218ms
โœ… RemoteFeatureFlagsTests testWithTimeout_returnsResultOfFastOperation 3ms
โœ… ResourcePropertiesLengthTests testLength_isNilWhenUnset <1ms
โœ… ResourcePropertiesLengthTests testLength_roundTripsLargeValueWithoutTruncation 1ms
โœ… ResourcePropertiesLengthTests testLength_zeroRoundTrips 9ms
โœ… RetryClassificationTests testAudiobookErrors_notRetryable <1ms
โœ… RetryClassificationTests testAudiobookErrors_retryable <1ms
โœ… RetryClassificationTests testAuthErrors_notRetryable <1ms
โœ… RetryClassificationTests testAuthErrors_retryable <1ms
โœ… RetryClassificationTests testBookRegistryErrors_notRetryable <1ms
โœ… RetryClassificationTests testBookRegistryErrors_retryable <1ms
โœ… RetryClassificationTests testDRMErrors_notRetryable <1ms
โœ… RetryClassificationTests testDownloadErrors_notRetryable <1ms
โœ… RetryClassificationTests testDownloadErrors_retryable <1ms
โœ… RetryClassificationTests testNSURLError_notRetryable 2ms
โœ… RetryClassificationTests testNSURLError_retryable 7ms
โœ… RetryClassificationTests testNetworkErrors_notRetryable <1ms
โœ… RetryClassificationTests testNetworkErrors_retryable <1ms
โœ… RetryClassificationTests testParsingErrors_notRetryable <1ms
โœ… RetryClassificationTests testParsingErrors_retryable 17ms
โœ… RetryClassificationTests testStorageErrors_notRetryable 1ms
โœ… RetryClassificationTests testUnknownError_notRetryable <1ms
โœ… ReturnFlowTests testRetryTracker_limitsRetries <1ms
โœ… RightsManagementDetectionTests testMimeType_adobeAdept_detectsAdobeRights 2ms
โœ… RightsManagementDetectionTests testMimeType_bearerToken_detectsBearerTokenRights 3ms
โœ… RightsManagementDetectionTests testMimeType_epubZip_detectsNoRights <1ms
โœ… RightsManagementDetectionTests testMimeType_lcpLicense_detectsLCPRights 2ms
โœ… RightsManagementDetectionTests testMimeType_unknown_detectsUnknown <1ms
โœ… RightsManagementDispatcherTests testDispatch_adobePDF_returnsFailureWithIgnoreError 9ms
โœ… RightsManagementDispatcherTests testDispatch_bearerToken_invalidJSON_failsWithAlert 13ms
โœ… RightsManagementDispatcherTests testDispatch_bearerToken_missingFile_failsWithAlert 552ms
โœ… RightsManagementDispatcherTests testDispatch_bearerToken_validJSON_registersNewTaskInState 195ms
โœ… RightsManagementDispatcherTests testDispatch_lcp_callsLcpFulfillmentAndDoesNotFlagFailure 14ms
โœ… RightsManagementDispatcherTests testDispatch_none_moveFileFails_flagsFailure 31ms
โœ… RightsManagementDispatcherTests testDispatch_none_moveFileSuccess_doesNotFlagFailure 12ms
โœ… RightsManagementDispatcherTests testDispatch_overdrive_replaceBookFails_flagsFailure 7ms
โœ… RightsManagementDispatcherTests testDispatch_overdrive_replaceBookSuccess_doesNotFlagFailure 32ms
โœ… RightsManagementDispatcherTests testDispatch_unknown_logsAndFlagsFailure 110ms
โœ… RuntimeQuiescenceGateTests testAuditLiveState_withFlagRestored_isQuiescent 15ms
โœ… RuntimeQuiescenceGateTests testCaptureDeferFlag_reflectsLiveFlagValue 24ms
โœ… RuntimeQuiescenceGateTests testCooperativePoolProbe_cleanPool_completesFast 2ms
โœ… RuntimeQuiescenceGateTests testCooperativePoolProbe_saturatedPool_doesNotComplete_redFirst 1.12s
โœ… RuntimeQuiescenceGateTests testDeferFlagViolations_flagLeftFalse_producesExactlyOneViolation 2ms
โœ… RuntimeQuiescenceGateTests testDeferFlagViolations_flagLeftTrue_producesNoViolations <1ms
โœ… RuntimeQuiescenceGateTests testDeferFlagViolations_message_isActionable <1ms
โœ… RuntimeQuiescenceGateTests testObserverLeakViolations_bothDirections <1ms
โœ… RuntimeQuiescenceGateTests testObserverLeakViolations_message_isActionable 2ms
โœ… RuntimeQuiescenceGateTests testPoolResponsivenessViolations_bothDirections 11ms
โŠ˜ RuntimeQuiescenceGateTests testSampleObserverCount_reflectsLiveObserverAdd_orSkips 12ms
โœ… RuntimeQuiescenceLintTests testDetector_flagsDirectXCTestCaseSubclassThatSetsFalse 20ms
โœ… RuntimeQuiescenceLintTests testDetector_ignoresCommentsAndStringLiterals <1ms
โœ… RuntimeQuiescenceLintTests testDetector_passesFileThatNeverSetsFalse <1ms
โœ… RuntimeQuiescenceLintTests testDetector_passesQuiescenceBaseSubclassThatSetsFalse 2ms
โœ… RuntimeQuiescenceLintTests testNoDeferFlagFalseSetterExtendsXCTestCaseDirectly 883ms
โœ… SAMLCookieSyncTests testCookieSyncToSharedStorage 5ms
โœ… SAMLCookieSyncTests testCookieSync_emptyCookies_doesNotCrash 2ms
โœ… SAMLCookieSyncTests testCookieSync_multipleCookies 90ms
โœ… SAMLCookieSyncTests testCookieSync_replacesExistingCookie 7ms
โœ… SAMLCookieSyncTests testRequestCreation_includesCookieHeader 254ms
โœ… SAMLLogoutCallbackDetectionTests testCallbackSchemeError_DetectedAsSuccess <1ms
โœ… SAMLLogoutCallbackDetectionTests testCallbackSchemeError_PartialStatus_AlsoDetected <1ms
โœ… SAMLLogoutCallbackDetectionTests testOIDCCallbackScheme_NotSAMLDetected 3ms
โœ… SAMLLogoutCallbackDetectionTests testUnrelatedError_NotDetected 651ms
โœ… SAMLLogoutLinkParsingTests testRegression_OIDCLogoutHref_StillPopulated 34ms
โœ… SAMLLogoutLinkParsingTests testSAMLAuth_ParsesLogoutHrefIsTemplated_True 4ms
โœ… SAMLLogoutLinkParsingTests testSAMLAuth_ParsesLogoutHref_FromAuthDocument 2ms
โœ… SAMLLogoutLinkParsingTests testSAMLAuth_WithoutLogoutLink_LeavesHrefNil 1ms
โœ… SAMLLogoutLinkParsingTests testSAMLLogoutHref_IsNil_ForBasicAuth <1ms
โœ… SAMLLogoutURLTests testSAMLLogoutURL_CallbackSchemeIsPalaceSAML 2ms
โœ… SAMLLogoutURLTests testSAMLLogoutURL_ExpandsTemplateWithRedirectURI 2ms
โœ… SAMLLogoutURLTests testSAMLLogoutURL_InvalidTemplate_ReturnsNil 3ms
โœ… SAMLLogoutURLTests testSAMLLogoutURL_NonTemplated_UsedAsIs 190ms
โœ… SAMLPlusBiblioBoardExpirationTests testShouldTriggerSAMLReauth_AuthRequiredError_SAML_Credentials_Book_ReturnsTrue 34ms
โœ… SAMLPlusBiblioBoardExpirationTests testShouldTriggerSAMLReauth_BasicAuth_ReturnsFalse 51ms
โœ… SAMLPlusBiblioBoardExpirationTests testShouldTriggerSAMLReauth_NilCurrentBook_ReturnsFalse 29ms
โœ… SAMLPlusBiblioBoardExpirationTests testShouldTriggerSAMLReauth_NilError_ReturnsFalse 41ms
โœ… SAMLPlusBiblioBoardExpirationTests testShouldTriggerSAMLReauth_NoCredentials_ReturnsFalse 50ms
โœ… SAMLPlusBiblioBoardExpirationTests testShouldTriggerSAMLReauth_OAuthAccount_ReturnsFalse 36ms
โœ… SAMLPlusBiblioBoardExpirationTests testShouldTriggerSAMLReauth_WrongErrorCode_ReturnsFalse 26ms
โœ… SAMLPlusBiblioBoardExpirationTests testShouldTriggerSAMLReauth_WrongErrorDomain_ReturnsFalse 30ms
โœ… SEMigrationsTests testMigrate2_oldCacheFiles_areRemoved 21ms
โœ… SEMigrationsTests testMigrate3_1_0_backupExclusion_isDispatchedForOldVersion 12ms
โœ… SEMigrationsTests testMigrate3_1_0_backupExclusion_isSkippedForCurrentVersion 10ms
โœ… SEMigrationsTests testRunMigrations_doesNotCrashAndDoesNotMutateAppVersionWhenNoMigrationsApply 31ms
โœ… SEMigrationsTests testRunMigrations_multipleCallsAreSafe 3ms
โœ… SEMigrationsTests testRunMigrations_nilOrEmptyVersion_handlesGracefullyWithoutCrashing 68ms
โœ… SafeDictionaryTests testAllPairs_returnsAllKeyValuePairs 12ms
โœ… SafeDictionaryTests testCompactMapValues_removesNils 7ms
โœ… SafeDictionaryTests testContains_existingKey_returnsTrue 6ms
โœ… SafeDictionaryTests testCount_reflectsEntries 8ms
โœ… SafeDictionaryTests testFilter_selectsMatchingEntries 4ms
โœ… SafeDictionaryTests testGetMetrics_returnsMetricsDictionary 12ms
โœ… SafeDictionaryTests testGet_missingKey_returnsNil 9ms
โœ… SafeDictionaryTests testInit_withInitialValues 6ms
โœ… SafeDictionaryTests testIsEmpty_noEntries_returnsTrue 38ms
โœ… SafeDictionaryTests testKeys_returnsAllKeys 7ms
โœ… SafeDictionaryTests testMapValues_transformsValues 8ms
โœ… SafeDictionaryTests testModify_createsNewValue 7ms
โœ… SafeDictionaryTests testModify_updatesExistingValue 13ms
โœ… SafeDictionaryTests testRemoveAll_clearsEverything 15ms
โœ… SafeDictionaryTests testRemoveMultiple_removesSpecifiedKeys 6ms
โœ… SafeDictionaryTests testRemove_deletesEntry 7ms
โœ… SafeDictionaryTests testRemove_missingKey_returnsNil 20ms
โœ… SafeDictionaryTests testSet_andGet_returnsValue 85ms
โœ… SafeDictionaryTests testSet_overwrite_updatesValue 8ms
โœ… SafeDictionaryTests testUpdateMultiple_addsAllEntries 4ms
โœ… SafeDictionaryTests testValues_returnsAllValues 4ms
โœ… SamplePlayerErrorTests testFileSaveFailed_WithUnderlyingError 356ms
โœ… SamplePlayerErrorTests testFileSaveFailed_WithoutUnderlyingError <1ms
โœ… SamplePlayerErrorTests testNoSampleAvailable_IsError 106ms
โœ… SamplePlayerErrorTests testSampleDownloadFailed_WithUnderlyingError 33ms
โœ… SamplePlayerErrorTests testSampleDownloadFailed_WithoutUnderlyingError 2ms
โœ… SampleTypeTests testNeedsDownload_EpubZip_ReturnsTrue <1ms
โœ… SampleTypeTests testNeedsDownload_OpenAccessAudiobook_ReturnsFalse 213ms
โœ… SampleTypeTests testNeedsDownload_OverdriveAudiobookMpeg_ReturnsTrue <1ms
โœ… SampleTypeTests testNeedsDownload_OverdriveAudiobookWaveFile_ReturnsTrue 51ms
โœ… SampleTypeTests testNeedsDownload_OverdriveWeb_ReturnsFalse 21ms
โœ… SampleTypeTests testRawValue_ContentTypeEpubZip <1ms
โœ… SampleTypeTests testRawValue_OpenAccessAudiobook 2ms
โœ… SampleTypeTests testRawValue_OverdriveWeb 2ms
โœ… SceneDelegateTests testSceneDelegate_HasMainSceneConnected_IsConsistent <1ms
โœ… ScopedResetTests testHostMatches_emptyHostSet_neverMatches 3ms
โœ… ScopedResetTests testHostMatches_exactHost_matches <1ms
โœ… ScopedResetTests testHostMatches_leadingDotCookieDomain_matches 2ms
โœ… ScopedResetTests testHostMatches_parentDomainCookieCoveringHost_matches 1ms
โœ… ScopedResetTests testHostMatches_rawSuffixWithoutDotBoundary_doesNotMatch 164ms
โœ… ScopedResetTests testHostMatches_siblingHostOnSharedBaseDomain_doesNotMatch 1ms
โœ… ScopedResetTests testHostMatches_unrelatedDomain_doesNotMatch <1ms
โœ… ScopedResetTests testPerformScopedReset_resetsActiveLibraryOnly_andSkipsDRMDeauthorize 109ms
โœ… ScopedResetTests testWebHostsToClear_nilAccount_isEmpty 3ms
โœ… SearchAccessibilityTests testClearSearchLabel_isDescriptive <1ms
โœ… SearchAccessibilityTests testClearSearchLabel_isLocalized <1ms
โœ… SearchAccessibilityTests testGoBackLabel_isDescriptive 1ms
โœ… SearchAccessibilityTests testPostSearchGate_emptyQuery_isFalse <1ms
โœ… SearchAccessibilityTests testPostSearchGate_voiceOverOff_isFalse <1ms
โœ… SearchAccessibilityTests testPostSearchGate_voiceOverOn_finishedRealQuery_isTrue 4ms
โœ… SearchAccessibilityTests testPostSearchGate_whileLoading_isFalse 8ms
โœ… SearchAccessibilityTests testPostSearchGate_whitespaceQuery_isFalse 1ms
โœ… SearchAccessibilityTests testSearchBooksLabel_exists 2ms
โœ… SearchAccessibilityTests testSearchCatalogLabel_differsFromSearchInBook <1ms
โœ… SearchAccessibilityTests testSearchInBookLabel_isDescriptive <1ms
โœ… SearchFlowIntegrationTests testSearchCancellation_StopsPendingRequest 391ms
โœ… SearchFlowIntegrationTests testSearchDebouncing_PreventsExcessiveRequests 3ms
โœ… SearchFlowIntegrationTests testSearchQuery_DispatchesToCatalogRepository <1ms
โœ… SearchFlowIntegrationTests testSearchResults_ContainExpectedBookData <1ms
โœ… SearchFlowIntegrationTests testSearchWithEmptyQuery_ReturnsNilResult <1ms
โœ… SearchFlowIntegrationTests testSearchWithNetworkError_PropagatesError 141ms
โœ… SearchFlowIntegrationTests testSearchWithServerError_PropagatesServerError 5ms
โœ… SearchFlowIntegrationTests testSequentialSearches_TrackAllQueries 3ms
โœ… SettingsViewModelComputedPropertyTests testAccountCount_ReflectsSettingsAccountsList 3ms
โœ… SettingsViewModelComputedPropertyTests testDuplicateWrite_DoesNotTriggerSettingsUpdate 15ms
โœ… SettingsViewModelComputedPropertyTests testIsUsingCustomFeed_AfterClear_ReturnsFalse 5ms
โœ… SettingsViewModelComputedPropertyTests testIsUsingCustomRegistry_AfterClear_ReturnsFalse 7ms
โœ… SettingsViewModelComputedPropertyTests testShowDeveloperSettings_CanBeToggled 16ms
โœ… SettingsViewModelComputedPropertyTests testShowDeveloperSettings_DefaultsFalse 372ms
โœ… SettingsViewModelEdgeCaseTests testSettingsViewModel_InitWithPartialSettings_HandlesGracefully 7ms
โœ… SettingsViewModelEdgeCaseTests testSettingsViewModel_MultipleRapidChanges_MaintainsConsistency 10ms
โœ… SettingsViewModelEdgeCaseTests testSettingsViewModel_ResetThenModify_WorksCorrectly 10ms
โœ… SettingsViewModelEdgeCaseTests testSettingsViewModel_SetCustomFeedURL_LocalhostHTTP_ReturnsTrue 4ms
โœ… SettingsViewModelEdgeCaseTests testSettingsViewModel_SetCustomFeedURL_URLWithFragment_ReturnsTrue 6ms
โœ… SettingsViewModelEdgeCaseTests testSettingsViewModel_SetCustomFeedURL_URLWithPort_ReturnsTrue 3ms
โœ… SettingsViewModelEdgeCaseTests testSettingsViewModel_SetCustomFeedURL_URLWithQueryParams_ReturnsTrue 5ms
โœ… SettingsViewModelGapTests testSettingsViewModel_refreshAccountsList_updatesProperty 2ms
โœ… SettingsViewModelSyncTests testResetToDefaults_ClearsAllSettings 5ms
โœ… SettingsViewModelSyncTests testResetToDefaults_UpdatesSettingsProvider 3ms
โœ… SettingsViewModelSyncTests testSetCustomFeedURL_WithEmptyString_ClearsURL 7ms
โœ… SettingsViewModelSyncTests testSetCustomFeedURL_WithInvalidURL_ReturnsFalse 5ms
โœ… SettingsViewModelSyncTests testSetCustomFeedURL_WithNil_ClearsURL 7ms
โœ… SettingsViewModelSyncTests testSetCustomFeedURL_WithNonHttpScheme_ReturnsFalse 4ms
โœ… SettingsViewModelSyncTests testSetCustomFeedURL_WithValidHttpURL_ReturnsTrue 4ms
โœ… SettingsViewModelSyncTests testSetCustomFeedURL_WithValidHttpsURL_ReturnsTrue 13ms
โœ… SettingsViewModelSyncTests testSetCustomRegistryServer_WithEmptyString_ReturnsTrueAndClears 122ms
โœ… SettingsViewModelSyncTests testSetCustomRegistryServer_WithNil_ClearsServer 7ms
โœ… SettingsViewModelSyncTests testSetCustomRegistryServer_WithValidURL_ReturnsTrue 21ms
โœ… SettingsViewModelSyncTests testSettingsViewModel_BidirectionalSync_SettingsToViewModelViaRefresh 8ms
โœ… SettingsViewModelSyncTests testSettingsViewModel_BidirectionalSync_ViewModelToSettings 14ms
โœ… SettingsViewModelSyncTests testSettingsViewModel_ExternalSettingsChange_RequiresRefresh 6ms
โœ… SettingsViewModelTests testSettingsViewModel_AcceptEULA_SetsTrue 109ms
โœ… SettingsViewModelTests testSettingsViewModel_ClearCustomFeedURL_ClearsURL 7ms
โœ… SettingsViewModelTests testSettingsViewModel_ClearCustomRegistryServer_ClearsServer 8ms
โœ… SettingsViewModelTests testSettingsViewModel_CustomMainFeedURL_PublishesChanges 18ms
โœ… SettingsViewModelTests testSettingsViewModel_FormattedAppVersion_ReturnsFormattedString 17ms
โœ… SettingsViewModelTests testSettingsViewModel_Init_DefaultsAreCorrect 12ms
โœ… SettingsViewModelTests testSettingsViewModel_Init_ReadsSettingsFromProvider 207ms
โœ… SettingsViewModelTests testSettingsViewModel_IsUsingCustomFeed_FalseWhenURLNil 10ms
โœ… SettingsViewModelTests testSettingsViewModel_IsUsingCustomFeed_TrueWhenURLSet 52ms
โœ… SettingsViewModelTests testSettingsViewModel_IsUsingCustomRegistry_FalseWhenServerEmpty 18ms
โœ… SettingsViewModelTests testSettingsViewModel_IsUsingCustomRegistry_FalseWhenServerNil 5ms
โœ… SettingsViewModelTests testSettingsViewModel_IsUsingCustomRegistry_TrueWhenServerSet 10ms
โœ… SettingsViewModelTests testSettingsViewModel_MarkAgeCheckPresented_SetsTrue 11ms
โœ… SettingsViewModelTests testSettingsViewModel_RefreshSettings_ReloadsFromProvider 8ms
โœ… SettingsViewModelTests testSettingsViewModel_ResetToDefaults_ResetsAllSettings 6ms
โœ… SettingsViewModelTests testSettingsViewModel_SetCustomFeedURL_EmptyString_ClearsURL 5ms
โœ… SettingsViewModelTests testSettingsViewModel_SetCustomFeedURL_InvalidScheme_ReturnsFalse 15ms
โœ… SettingsViewModelTests testSettingsViewModel_SetCustomFeedURL_InvalidURL_ReturnsFalse 13ms
โœ… SettingsViewModelTests testSettingsViewModel_SetCustomFeedURL_Nil_ClearsURL 10ms
โœ… SettingsViewModelTests testSettingsViewModel_SetCustomFeedURL_ValidHTTPS_ReturnsTrue 9ms
โœ… SettingsViewModelTests testSettingsViewModel_SetCustomFeedURL_ValidHTTP_ReturnsTrue 15ms
โœ… SettingsViewModelTests testSettingsViewModel_SetCustomRegistryServer_EmptyString_ClearsServer 223ms
โœ… SettingsViewModelTests testSettingsViewModel_SetCustomRegistryServer_InvalidURL_ReturnsFalse 80ms
โœ… SettingsViewModelTests testSettingsViewModel_SetCustomRegistryServer_ValidURL_ReturnsTrue 112ms
โœ… SettingsViewModelTests testSettingsViewModel_SetEnterLCPPassphraseManually_UpdatesSettings 9ms
โœ… SettingsViewModelTests testSettingsViewModel_SetSameValue_DoesNotWriteToSettings 14ms
โœ… SettingsViewModelTests testSettingsViewModel_SetUseBetaLibraries_UpdatesSettings 15ms
โœ… SettingsViewModelTests testSettingsViewModel_SetUserHasAcceptedEULA_UpdatesSettings 10ms
โœ… SettingsViewModelTests testSettingsViewModel_SetUserPresentedAgeCheck_UpdatesSettings 6ms
โœ… SettingsViewModelTests testSettingsViewModel_ToggleBetaLibraries_TogglesValue 8ms
โœ… SettingsViewModelTests testSettingsViewModel_ToggleLCPManualPassphrase_TogglesValue 6ms
โœ… SettingsViewModelTests testSettingsViewModel_UpdateAppVersion_UpdatesSettings 73ms
โœ… SettingsViewModelTests testSettingsViewModel_UseBetaLibraries_PublishesChanges 48ms
โœ… SideloadImportContractTests testImportPipeline_recordsOrderedDependencyCalls 15ms
โœ… SideloadedBookManagerTests testCaption_importedBook_isFilename_unknownBook_fallsBackToTitle 21ms
โœ… SideloadedBookManagerTests testImport_audiobookManifest_mintsAudiobookContentType 210ms
โœ… SideloadedBookManagerTests testImport_copiesFileToFixedAccountPath_notCurrentAccount 65ms
โœ… SideloadedBookManagerTests testImport_copyFailure_throws_andMutatesNeitherRegistry 27ms
โœ… SideloadedBookManagerTests testImport_destinationUnavailable_throwsDestinationUnavailable_andMutatesNeitherRegistry 61ms
โœ… SideloadedBookManagerTests testImport_epubFile_mintsEpubOpenAccessBook_andRegistersDownloadSuccessful 86ms
โœ… SideloadedBookManagerTests testImport_manifestPersistFails_throwsPersistenceFailed_andDoesNotRegisterInMainRegistry 128ms
โœ… SideloadedBookManagerTests testImport_pdfFile_mintsPdfContentType 29ms
โœ… SideloadedBookManagerTests testImport_sameContentTwice_doesNotDuplicate 27ms
โœ… SideloadedBookManagerTests testImport_unreadableSourceFile_throwsUnreadableFile_andMutatesNeitherRegistry 13ms
โœ… SideloadedBookManagerTests testImport_unsupportedType_throws_andMutatesNeitherRegistry 46ms
โœ… SideloadedBookManagerTests testOriginalFilename_afterImport_returnsImportedFilename 17ms
โœ… SideloadedBookManagerTests testOriginalFilename_unknownIdentifier_returnsNil 9ms
โœ… SideloadedBookManagerTests testRehydrateAtLaunch_reRegistersPersistedBooks_intoMainRegistry_asDownloadSuccessful 37ms
โœ… SideloadedBookManagerTests testRehydrateAtLaunch_runTwice_isIdempotent_doesNotReAddPresentBook 17ms
โœ… SideloadedBookManagerTests testRemove_bookPresentOnlyInSideloadedRegistry_deletesFileViaFallbackLookup 57ms
โœ… SideloadedBookManagerTests testRemove_deletesFile_andClearsBothRegistries 22ms
โœ… SideloadedBookRegistryTests test_addDuplicateIdentifier_doesNotDoubleInsert_andUpdatesInPlace 2ms
โœ… SideloadedBookRegistryTests test_add_persistsAcrossReload_preservingIdentifiersTitlesAndFilenames 3ms
โœ… SideloadedBookRegistryTests test_add_whenManifestWriteFails_throws_andRollsBackInMemory 12ms
โœ… SideloadedBookRegistryTests test_corruptManifest_loadsAsEmpty_withoutCrashing 2ms
โœ… SideloadedBookRegistryTests test_emptyManifestFile_loadsAsEmpty 1ms
โœ… SideloadedBookRegistryTests test_manifestWithGarbageRecord_skipsUnreadableEntry_keepsValidOnes 2ms
โœ… SideloadedBookRegistryTests test_missingManifest_loadsAsEmpty 1ms
โœ… SideloadedBookRegistryTests test_remove_dropsBookFromIdentifiersAndPersists 3ms
โœ… SideloadedBookRegistryTests test_remove_unknownIdentifier_isNoOp 2ms
โœ… SideloadedBookRegistryTests test_rename_changesPersistedTitle_survivesReload 3ms
โœ… SideloadedBookRegistryTests test_rename_doesNotMutateSharedBookInstance_replacesWithCopy 2ms
โœ… SideloadedBookRegistryTests test_rename_unknownIdentifier_isNoOp 18ms
โœ… SideloadedBookRegistryTests test_update_replacesBookButPreservesOriginalFilename 4ms
โœ… SideloadedBookRegistryTests test_update_unknownIdentifier_doesNotInsert 1ms
โœ… SideloadedLaneBridgeTests testPrependingEmpty_emptyBase_shapeUnchanged 14ms
โœ… SideloadedLaneBridgeTests testPrependingEmpty_groupedBase_shapeUnchanged 5ms
โœ… SideloadedLaneBridgeTests testPrependingEmpty_ungroupedBase_shapeUnchanged 59ms
โœ… SideloadedLaneBridgeTests testPrepending_emptyBase_groupedWithOnlySideloadedLane 4ms
โœ… SideloadedLaneBridgeTests testPrepending_groupedBase_sideloadedLaneIsFirst_baseLanesRetained 4ms
โœ… SideloadedLaneBridgeTests testPrepending_ungroupedBase_forcesGrouped_keepsOriginalBooks 3ms
โœ… SideloadedLaneViewModelTests testApplyFacet_cacheHit_stillShowsSideloadedLane 289ms
โœ… SideloadedLaneViewModelTests testLoadFailure_connected_emptyProvider_exposesErrorOnly_noLane 2ms
โœ… SideloadedLaneViewModelTests testLoadFailure_connected_nonEmptyProvider_exposesErrorAndSideloadedLane 17ms
โœ… SideloadedLaneViewModelTests testLoadFailure_offline_emptyProvider_exposesOfflineOnly_noLane 172ms
โœ… SideloadedLaneViewModelTests testLoadFailure_offline_nonEmptyProvider_exposesOfflineAndSideloadedLane 19ms
โœ… SideloadedLaneViewModelTests testLoad_providerEmpty_noSideloadedLane 8ms
โœ… SideloadedLaneViewModelTests testLoad_providerNonEmpty_prependsSideloadedLaneAtTop 133ms
โœ… SignInFormPresentationTests test_shouldShowInlineFormError_requiresAlertAndMessage 20ms
โœ… SignInFormPresentationTests test_titleOpacity_hidesTitleWhileLoading <1ms
โœ… SignInFormPresentationTests test_titleOpacity_showsTitleWhenIdle 1ms
โœ… SignInModalLifecycleTests testPresenter_currentAccountIDNil_firesCompletionWithoutPublishingState 41ms
โœ… SignInModalLifecycleTests testPresenter_currentAccountNeedsNoAuth_shortCircuitsWithoutPublishingState 2ms
โœ… SignInModalLifecycleTests testPresenter_dismissAfterPresent_resetsPresentationState 3ms
โœ… SignInModalLifecycleTests testPresenter_dismissedToIdle_secondPresentAfterFirstCompletes_publishesAgain 2ms
โœ… SignInModalLifecycleTests testPresenter_idleToPresenting_publishesForCurrentAccountOnFirstPresent 91ms
โœ… SignInModalLifecycleTests testPresenter_presentForCurrentAccount_publishesState_invokesDriver_clearsState_firesCompletion 30ms
โœ… SignInModalLifecycleTests testPresenter_presentingToDismissed_clearsPresentationStateOnDriverCompletion 2ms
โœ… SignInModalLifecycleTests testPresenter_singleFlight_secondPresentationBeforeFirstDismisses_isNoOp 11ms
โœ… SignInModalLifecycleTests testReauth_TPPReauthenticator_authenticateIfNeeded_drivesSpyPresenterViaAppContainerSeam 7ms
โœ… SignInModalPredicateTests testShouldAutoDismiss_whenCredentialsStale_returnsFalse <1ms
โœ… SignInModalPredicateTests testShouldAutoDismiss_whenLoggedIn_returnsTrue 1ms
โœ… SignInModalPredicateTests testShouldAutoDismiss_whenLoggedOut_returnsFalse 42ms
โœ… SignInModalSAMLOIDCTests testBorrowReauthGuard_allBookStates <1ms
โœ… SignInModalSAMLOIDCTests testBorrowReauthGuard_downloadNeededBook_blocksReauth <1ms
โœ… SignInModalSAMLOIDCTests testBorrowReauthGuard_unregisteredBook_allowsReauth 9ms
โœ… SignInModalSAMLOIDCTests testNeedsAuth_allAuthTypes 3ms
โœ… SignInModalSAMLOIDCTests testNeedsAuth_consistencyBetweenTwoImplementations <1ms
โœ… SignInModalSAMLOIDCTests testSignInModalGuard_needsAuth_classifiesAuthTypesCorrectly <1ms
โœ… SignInOAuthErrorPropagationTests testHandleRedirectURL_accessTokenButNoPatronInfo_routesToMissingPayloadBranch 40ms
โœ… SignInOAuthErrorPropagationTests testHandleRedirectURL_accessTokenWithEqualsPadding_parsesCorrectly 60ms
โœ… SignInOAuthErrorPropagationTests testHandleRedirectURL_authDataParseFail_synthesizesNonNilErrorWithTitleAndMessage 31ms
โœ… SignInOAuthErrorPropagationTests testHandleRedirectURL_missingPayload_synthesizesNonNilErrorWithTitleAndMessage 55ms
โœ… SignInOAuthErrorPropagationTests testHandleRedirectURL_notificationWithoutURL_synthesizesNonNilError 69ms
โœ… SignInOAuthErrorPropagationTests testHandleRedirectURL_serverErrorWithoutDetail_fallsBackToGenericMessage 37ms
โœ… SignInOAuthErrorPropagationTests testHandleRedirectURL_serverReturnsErrorInPayload_synthesizesErrorWithParsedTitleAndDetail 48ms
โœ… SignInOAuthErrorPropagationTests testHandleRedirectURL_successPath_completionFiresWithNilError 47ms
โœ… SignInToReadFlowIntegrationTests testAuthToken_AttachedToSubsequentRequest 223ms
โœ… SignInToReadFlowIntegrationTests testCatalogLoad_503ThenRetrySucceeds 335ms
โœ… SignInToReadFlowIntegrationTests testHappyPath_SignIn_Borrow_Download_ReaderOpens_AllStepsHappen 139ms
โœ… SignInToReadFlowIntegrationTests testNetworkDrop_DuringSignIn_SurfacesAsConnectivityError 298ms
โœ… SignInToReadFlowIntegrationTests testSignInFails_RegistryRemainsEmpty_AuthStateNotSignedIn 149ms
โœ… SignInWebSheetIntegrationTests test_initialLoad_injectsCookiesBeforeLoadingRequest 1m 46s
โœ… SignInWebSheetIntegrationTests test_loadingOverlay_startsTrueAndBecomesFalseOnNavigationFinish 10.82s
โœ… SignInWebSheetIntegrationTests test_navigatingToUniversalLinksURL_firesLoginCompletionWithCookies 3.84s
โœ… SignInWebSheetViewModelTests test_autoPresentIfNeeded_canBeTrue 3ms
โœ… SignInWebSheetViewModelTests test_autoPresentIfNeeded_defaultsToFalse <1ms
โœ… SignInWebSheetViewModelTests test_bookFoundThenCancel_doesNotFireCancel <1ms
โœ… SignInWebSheetViewModelTests test_cancelThenLoginCompletion_doesNotFireLogin <1ms
โœ… SignInWebSheetViewModelTests test_cookieInjection_emptyCookies_loadsRequestImmediately 8ms
โœ… SignInWebSheetViewModelTests test_cookieInjection_loadHandlerOnlyFiresAfterAllCookiesInjected 3ms
โœ… SignInWebSheetViewModelTests test_cookieInjection_orderPreserved 2ms
โœ… SignInWebSheetViewModelTests test_decideAction_loginCompletionURL_isStillRecordedAsPreviousRequest <1ms
โœ… SignInWebSheetViewModelTests test_decideAction_navigationToOtherURL_returnsAllow <1ms
โœ… SignInWebSheetViewModelTests test_decideAction_navigationToUniversalLinksHostButDifferentPath_doesNotMatch 6ms
โœ… SignInWebSheetViewModelTests test_decideAction_navigationToUniversalLinksURL_returnsCompleteLogin 22ms
โœ… SignInWebSheetViewModelTests test_decideAction_recordsPreviousRequestForLaterBookFound 1ms
โœ… SignInWebSheetViewModelTests test_decideResponse_htmlMime_returnsAllow <1ms
โœ… SignInWebSheetViewModelTests test_decideResponse_nilMime_returnsAllow 4ms
โœ… SignInWebSheetViewModelTests test_decideResponse_problemJsonMime_returnsProblemFound <1ms
โœ… SignInWebSheetViewModelTests test_decideResponse_supportedBookMime_returnsBookFound <1ms
โœ… SignInWebSheetViewModelTests test_decideResponse_unsupportedTypeNotInBookList_returnsAllow 1ms
โœ… SignInWebSheetViewModelTests test_didFinishNavigation_setsLoadingFalse <1ms
โœ… SignInWebSheetViewModelTests test_didStartProvisionalNavigation_resetsLoadingTrue <1ms
โœ… SignInWebSheetViewModelTests test_isLoading_trueByDefault 2ms
โœ… SignInWebSheetViewModelTests test_loginCompletionThenCancel_doesNotFireCancel <1ms
โœ… SignInWebSheetViewModelTests test_problemThenCancel_doesNotFireCancel 45ms
โœ… SignInWebSheetViewModelTests test_recordBookFound_invokesHandlerOnceWithPreviousRequestAndCookies 2ms
โœ… SignInWebSheetViewModelTests test_recordBookFound_secondCallIgnored <1ms
โœ… SignInWebSheetViewModelTests test_recordCancel_invokesHandlerOnce <1ms
โœ… SignInWebSheetViewModelTests test_recordLoginCompletion_invokesHandlerOnceWithURLAndCookies <1ms
โœ… SignInWebSheetViewModelTests test_recordLoginCompletion_secondCallIgnored <1ms
โœ… SignInWebSheetViewModelTests test_recordProblem_invokesHandlerOnce 2ms
โœ… SignInWebSheetViewModelTests test_wasBookFound_falseAfterOnlyLoginCompletion <1ms
โœ… SignInWebSheetViewModelTests test_wasBookFound_falseInitially <1ms
โœ… SignInWebSheetViewModelTests test_wasBookFound_trueAfterRecordBookFound 11ms
โœ… SignOutCacheClearingTests testClearCache_doesNotCrash_andExecutorStaysReusable 9ms
โœ… SignOutCacheClearingTests testNetworkExecutorAndSharedCache_areSeparate 913ms
โœ… SignOutCacheClearingTests testURLCacheShared_clearIsIdempotentAndPreservesCapacity 17ms
โœ… SingletonResetRegistryTests testInvokeAll_reentrantRegisterDuringResetter_isDroppedWithWarning 2ms
โœ… SingletonResetRegistryTests testInvokeAll_resetterClosureCapturingNilWeakRef_doesNotCrash <1ms
โœ… SingletonResetRegistryTests testRegister_multipleThreadsConcurrently_yieldsConsistentSnapshot 32ms
โœ… SingletonResetRegistryTests testRegister_reRegisterSameName_overwritesInPlacePreservingOrder 2ms
โœ… SingletonResetRegistryTests testRegister_thenInvokeAll_callsResettersInRegistrationOrder 1ms
โœ… SkeletonTests testBandWidth_floorsForTinyContent 2ms
โœ… SkeletonTests testBandWidth_isFractionOfWideContent 19ms
โœ… SkeletonTests testBaseColor_differsBetweenSchemes 19ms
โœ… SkeletonTests testEntryPointsSkeleton_footprintIsNonDegenerate <1ms
โœ… SkeletonTests testEntryPointsSkeleton_reservesRealSelectorFootprint <1ms
โœ… SkeletonTests testHighlightColor_differsBetweenSchemes 1ms
โœ… SkeletonTests testLineWidth_lastLineIsShorter 2ms
โœ… SkeletonTests testLineWidth_middleLineIsFullWidth 1ms
โœ… SkeletonTests testLineWidth_singleLineIsFullWidth 3ms
โœ… SkeletonTests testPhase_loopsWithPeriodEqualToDuration <1ms
โœ… SkeletonTests testPhase_movesWithTime <1ms
โœ… SkeletonTests testPhase_rampsFromMinusOneTowardPlusOne 2ms
โœ… SkeletonTests testPhase_zeroDurationIsSafe <1ms
โœ… SkeletonTests testShouldAnimateSweep_activeAndMotionAllowed_returnsTrue <1ms
โœ… SkeletonTests testShouldAnimateSweep_inactive_returnsFalse 2ms
โœ… SkeletonTests testShouldAnimateSweep_lowPowerOn_returnsFalse 1ms
โœ… SkeletonTests testShouldAnimateSweep_reduceMotionOn_returnsFalse <1ms
โœ… SkeletonTests testSweepTranslation_centeredAtMidPhase 6ms
โœ… SkeletonTests testSweepTranslation_fullyClearsContentAtExtremes <1ms
โœ… SkeletonTests testSweepTranslation_movesWithPhase 2ms
โœ… SkeletonTests testSweepTranslation_symmetricAboutCenter <1ms
โœ… SkeletonTests testSweepTranslation_tiltMakesTallerContentTravelFarther 705ms
โœ… StatsViewModelTests testInitialState 6ms
โœ… StatsViewModelTests testLoadPopulatesChartData 61ms
โœ… StatsViewModelTests testLoadPopulatesStats 20ms
โœ… StatsViewModelTests testLoadPopulatesStreak 9ms
โœ… StatsViewModelTests testLongestStreakText 8ms
โœ… StatsViewModelTests testRecentBadgesAfterCompletion 11ms
โœ… StatsViewModelTests testRecentBadgesLimitedToFive 13ms
โœ… StatsViewModelTests testStreakDisplayTextActive 10ms
โœ… StatsViewModelTests testStreakDisplayTextNoStreak 42ms
โœ… StatsViewModelTests testTimePeriodChangeUpdatesData 223ms
โœ… StatusAnnouncementTests testPP3673_allAnnouncementTypes_areProgrammaticallyDeterminable 2ms
โœ… StatusAnnouncementTests testPP3673_borrowFailed_announces 4ms
โœ… StatusAnnouncementTests testPP3673_borrowLifecycle_producesSequentialAnnouncements 85ms
โœ… StatusAnnouncementTests testPP3673_borrowStarted_announces 2ms
โœ… StatusAnnouncementTests testPP3673_borrowSucceeded_announcesWithoutFocusShift <1ms
โœ… StatusAnnouncementTests testPP3673_differentMessages_allAnnounced 19ms
โœ… StatusAnnouncementTests testPP3673_downloadCompleted_announces 2ms
โœ… StatusAnnouncementTests testPP3673_downloadFailed_announces 1ms
โœ… StatusAnnouncementTests testPP3673_downloadStarted_announces 1ms
โœ… StatusAnnouncementTests testPP3673_errorAnnouncement_doesNotMoveFocus 156ms
โœ… StatusAnnouncementTests testPP3673_errorMessage_announcedViaVoiceOver 30ms
โœ… StatusAnnouncementTests testPP3673_quickSuccession_sameMessage_collapsed 5ms
โœ… StatusAnnouncementTests testPP3673_searchAnnouncement_usesAnnouncementNotification 1ms
โœ… StatusAnnouncementTests testPP3673_searchFailed_announces 31ms
โœ… StatusAnnouncementTests testPP3673_searchNoResults_announcesNoResults 1ms
โœ… StatusAnnouncementTests testPP3673_searchRerun_announcesNewStatus 1ms
โœ… StatusAnnouncementTests testPP3673_searchStrings_areLocalized 229ms
โœ… StatusAnnouncementTests testPP3673_searchWithResults_announcesResultsForQuery 819ms
โœ… StatusAnnouncementTests testPP3673_statusStrings_areUnderstandable 2ms
โœ… StatusAnnouncementTests testPP3673_statusWithTitleAndMessage_isClear 2ms
โœ… StatusAnnouncementTests testPP3673_updatedStatus_replacesOld 6ms
โœ… StatusAnnouncementTests testPP3673_voiceOverDisabled_noAnnouncements <1ms
โœ… StopPositionSaveTests testStop_bypassesSaveSuppression <1ms
โœ… StopPositionSaveTests testStop_savesEvenDuringActiveSuppression 2ms
โœ… StoreTests testEnvironment_substitution_changesEffectOutput 13ms
โœ… StoreTests testReducer_canBeExercisedWithoutAStore <1ms
โœ… StoreTests testSendAwait_runsEffectChainToCompletionBeforeReturning 6ms
โœ… StoreTests testSend_effect_feedsFollowupActionThroughReducer 67ms
โœ… StoreTests testSend_synchronousReducer_updatesStateBeforeReturning 22ms
โœ… StreamingReaderPresentationContractTests testStreamingReaderPresentation_handleActionReadStreaming_callSequence 4ms
โœ… StreamingReaderProgressStoreTests testStreamingReaderProgressStore_read_malformedJSON_returnsNil 33ms
โœ… StreamingReaderProgressStoreTests testStreamingReaderProgressStore_read_returnsNilForDifferentBookID 8ms
โœ… StreamingReaderProgressStoreTests testStreamingReaderProgressStore_read_unknownBookID_returnsNil 5ms
โœ… StreamingReaderProgressStoreTests testStreamingReaderProgressStore_save_doesNotOverwriteOtherBooks 5ms
โœ… StreamingReaderProgressStoreTests testStreamingReaderProgressStore_save_usesPalaceStreamingReaderPrefix 5ms
โœ… StreamingReaderProgressStoreTests testStreamingReaderProgressStore_writeThenRead_nilFragmentRoundTrips 9ms
โœ… StreamingReaderProgressStoreTests testStreamingReaderProgressStore_writeThenRead_returnsExactScrollOffset 8ms
โœ… StreamingReaderViewControllerScrollRestoreTests testStreamingReaderViewController_didFinish_whenActualWithinTolerance_doesNotRetry 98ms
โœ… StreamingReaderViewControllerScrollRestoreTests testStreamingReaderViewController_didFinish_whenJSReportsActualMatchesTarget_doesNotRetry 16ms
โœ… StreamingReaderViewControllerScrollRestoreTests testStreamingReaderViewController_didFinish_whenJSReportsActualMismatch_retriesUpToMax 14ms
โœ… StreamingReaderViewControllerScrollRestoreTests testStreamingReaderViewController_didFinish_whenJSResultMalformed_retriesUpToMax 16ms
โœ… StreamingReaderViewControllerScrollRestoreTests testStreamingReaderViewController_didFinish_withNoSavedScroll_doesNotInvokeScrollTo 11ms
โœ… StreamingReaderViewControllerScrollRestoreTests testStreamingReaderViewController_didFinish_withSavedScrollZero_doesNotInvokeScrollTo 88ms
โœ… StreamingReaderViewControllerScrollRestoreTests testStreamingReaderViewController_didFinish_withSavedScroll_invokesScrollToInJS 37ms
โœ… StreamingReaderViewControllerScrollRestoreTests testStreamingReaderViewController_parseActualY_returnsNilOnNonDictionary 308ms
โœ… StreamingReaderViewControllerScrollRestoreTests testStreamingReaderViewController_parseActualY_returnsNilWhenActualMissing 7ms
โœ… StreamingReaderViewControllerScrollRestoreTests testStreamingReaderViewController_parseActualY_returnsValueFromDouble <1ms
โœ… StreamingReaderViewControllerScrollRestoreTests testStreamingReaderViewController_parseActualY_returnsValueFromInt <1ms
โœ… StreamingReaderViewControllerScrollRestoreTests testStreamingReaderViewController_parseActualY_returnsValueFromNSNumber 36ms
โœ… StreamingReaderViewModelTests testStreamingReaderViewModel_didDismiss_persistsScrollOffsetToStore 2ms
โœ… StreamingReaderViewModelTests testStreamingReaderViewModel_didDismiss_withoutPriorNavigation_doesNotSave 2ms
โœ… StreamingReaderViewModelTests testStreamingReaderViewModel_didNavigationFinish_thenDismiss_persistsLatestOffset 3ms
โœ… StreamingReaderViewModelTests testStreamingReaderViewModel_init_whenOffline_emitsOfflineState 2ms
โœ… StreamingReaderViewModelTests testStreamingReaderViewModel_init_withMalformedSavedProgress_doesNotCrashAndStaysReady 55ms
โœ… StreamingReaderViewModelTests testStreamingReaderViewModel_init_withSavedProgress_emitsReadyStateWithRestoredOffset 2ms
โœ… StreamingReaderViewModelTests testStreamingReaderViewModel_init_withoutSavedProgress_emitsReadyStateWithNilOffset 6ms
โœ… StreamingReaderViewModelTests testStreamingReaderViewModel_loadingThenReadyThenDismissed_persistsLastOffsetRoundtrip 2ms
โœ… StreamingReaderViewModelTests testStreamingReaderViewModel_reload_whenReachabilityRestored_emitsReadyState 10ms
โœ… StringExtensionTests testMd5hex_differsByInput <1ms
โœ… StringExtensionTests testMd5hex_emptyString <1ms
โœ… StringExtensionTests testMd5hex_length <1ms
โœ… StringExtensionTests testMd5hex_returnsConsistentHash 14ms
โœ… StringExtensionTests testParseJSONString_arrayJSON 15ms
โœ… StringExtensionTests testParseJSONString_emptyString <1ms
โœ… StringExtensionTests testParseJSONString_invalidJSON 2ms
โœ… StringExtensionTests testParseJSONString_validJSON 2ms
โœ… StringExtensionsTests testIsDate_delayBoundary_isStrictGreaterThan 1ms
โœ… StringExtensionsTests testIsDate_invalidOrEmptyStrings_returnFalse 8ms
โœ… StringExtensionsTests testIsDate_temporalDirection_acrossSecondsDaysAndYears 2ms
โœ… StringHTMLEntitiesTests testDecode_CommonHTMLEntities_DecodesCorrectly <1ms
โœ… StringHTMLEntitiesTests testDecode_NumericDecimal_DecodesCorrectly 21ms
โœ… StringHTMLEntitiesTests testDecode_NumericHex_DecodesCorrectly <1ms
โœ… StringHTMLEntitiesTests testDecode_XMLPredefinedEntities_DecodesCorrectly <1ms
โœ… StringHTMLEntitiesTests testDecode_malformedInputPreservedVerbatim 1ms
โœ… StringHTMLEntitiesTests testDecode_passThroughAndMixedContentEdgeCases 8ms
โœ… StringHTMLEntitiesTests testNSStringBridge_decodesEntitiesAndMixedContent 5ms
โœ… StringNYPLAdditionsTests testStringContains_caseInsensitive <1ms
โœ… StringNYPLAdditionsTests testStringIsEmpty_withWhitespace <1ms
โœ… StringNYPLAdditionsTests testStringPrefix_matching <1ms
โœ… StringNYPLAdditionsTests testStringSuffix_matching 41ms
โœ… String_NYPLAdditionsTests testFileSystemSafeBase64_encodeAndDecodeRoundTripWithoutUnsafeChars 47ms
โœ… String_NYPLAdditionsTests testMD5 <1ms
โœ… String_NYPLAdditionsTests testSHA256 1ms
โœ… String_NYPLAdditionsTests testURLEncodingQueryParam <1ms
โœ… SupportSectionDecisionTests testDecide_botDisabled_withAccountEmail_usesAccountEmail 65ms
โœ… SupportSectionDecisionTests testDecide_botDisabled_withEmptyEmail_usesGeneralFallback 87ms
โœ… SupportSectionDecisionTests testDecide_botDisabled_withoutAccountEmail_usesGeneralFallback 18ms
โœ… SupportSectionDecisionTests testDecide_botEnabled_choosesTriageBot_regardlessOfEmail <1ms
โœ… SupportSectionDecisionTests testEmailAddress_isNilForTriageBot_andResolvedForLegacy 10ms
โœ… SyncConflictResolutionTests testConflictResolution_localNewer_usesLocal <1ms
โœ… SyncConflictResolutionTests testConflictResolution_sameTimestamp_usesHigherProgress <1ms
โœ… SyncConflictResolutionTests testConflictResolution_serverNewer_usesServer <1ms
โœ… SyncDeletionGuardTests testVersionComparison_emptyIsLessThan 2ms
โœ… SyncDeletionGuardTests testVersionComparison_equal_returnsFalse 27ms
โœ… SyncDeletionGuardTests testVersionComparison_sameMajor 2ms
โœ… SyncDeletionGuardTests testVersionComparison_shorterIsLess 6ms
โœ… SyncDeletionGuardTests testVersionComparison_shorterIsNotLess_ifZero <1ms
โœ… SyncDeletionRatioTests testCompleteFeed_noDeletions <1ms
โœ… SyncDeletionRatioTests testEmptyFeedWithLocalBooks_shouldSkipDeletion 4ms
โœ… SyncDeletionRatioTests testEmptyFeedWithNoLocalBooks_shouldNotSkip <1ms
โœ… SyncDeletionRatioTests testNormalSync_singleBookRemoved_noWarning <1ms
โœ… SyncDeletionRatioTests testPartialFeed_shouldWarnButNotSkip <1ms
โœ… SyncDeletionRatioTests testSmallLibrary_noProtection <1ms
โœ… SyncPermissionTests testAccountDetails_nilDetails_makesSyncPropertiesFalse 34ms
โœ… SyncPermissionTests testAccountDetails_syncProperties_matchExpectations 25ms
โœ… SyncPermissionTests testSyncIsPossibleAndPermitted_doesNotCrash 2ms
โœ… SyncPermissionTests testSyncIsPossible_withCredentials_dependsOnCurrentAccountDetails <1ms
โœ… SyncPermissionTests testSyncIsPossible_withoutCredentials_returnsFalse 41ms
โœ… TPPAccountAuthStateEnumTests testCodable_encodesAndDecodesCorrectly 2ms
โœ… TPPAccountAuthStateEnumTests testDescription_returnsCorrectStrings 9ms
โœ… TPPAccountAuthStateEnumTests testHasAdobeActivation_trueForLoggedInAndStale 7ms
โœ… TPPAccountAuthStateEnumTests testHasStoredCredentials_falseOnlyForLoggedOut <1ms
โœ… TPPAccountAuthStateEnumTests testNeedsReauthentication_trueForLoggedOutAndStale <1ms
โœ… TPPAccountListDataSourceTests testLoadData_MixedCaseLibraryNames_SortsCaseInsensitively 17ms
โœ… TPPAccountListDataSourceTests testLoadData_WithFilter_FiltersCaseInsensitively 2ms
โœ… TPPAccountListDataSourceTests testLoadData_WithNationalAccounts_SeparatesAndSortsCaseInsensitively 9ms
โœ… TPPAdobeActivationSkipTests testShouldSkipAdobeActivation_falseWhenLoggedIn 22ms
โœ… TPPAdobeActivationSkipTests testShouldSkipAdobeActivation_falseWhenLoggedOut 22ms
โœ… TPPAdobeActivationSkipTests testShouldSkipAdobeActivation_falseWhenStaleButAdobeNotAuthorized 24ms
โœ… TPPAdobeActivationSkipTests testShouldSkipAdobeActivation_falseWhenStaleButNoAdobeCredentials 32ms
โœ… TPPAdobeActivationSkipTests testShouldSkipAdobeActivation_trueWhenStaleAndAdobeAuthorized 92ms
โœ… TPPAdobeActivationSkipTests testUpdateUserAccount_marksLoggedIn 23ms
โœ… TPPAgeCheckCompletionTests test_didComplete_birthYear14YearsAgo_marksAboveAgeLimit 47ms
โœ… TPPAgeCheckCompletionTests test_didComplete_birthYear5YearsAgo_marksBelowAgeLimit 42ms
โœ… TPPAgeCheckCompletionTests test_didComplete_birthYearExactly13YearsAgo_marksBelowAgeLimit 28ms
โœ… TPPAgeCheckCompletionTests test_didComplete_setsUserPresentedAgeCheckTrue 54ms
โœ… TPPAgeCheckCompletionTests test_didFail_doesNotSetUserPresentedAgeCheck 28ms
โœ… TPPAgeCheckIsValidTests test_birthYearList_spansMinToCurrentInclusive 18ms
โœ… TPPAgeCheckIsValidTests test_isValid_aboveCurrentYear_isRejected <1ms
โœ… TPPAgeCheckIsValidTests test_isValid_belowMinYear_isRejected <1ms
โœ… TPPAgeCheckIsValidTests test_isValid_currentYear_isAdmitted 1ms
โœ… TPPAgeCheckIsValidTests test_isValid_minYear_isAdmitted 85ms
โœ… TPPAgeCheckStateMachineTests testAgeCheck_blocksUntilLoaded_thenVerifies 286ms
โœ… TPPAgeCheckStateMachineTests testAgeCheck_evictedDetails_completionFalse 30ms
โœ… TPPAgeCheckStateMachineTests testAgeCheck_failedDetailsLoad_completionFalse 27ms
โœ… TPPAgeCheckStateMachineTests testAgeCheck_nilCurrentAccount_completionFalse 217ms
โœ… TPPAgeCheckTests testAge0 77ms
โœ… TPPAgeCheckTests testAge100 100ms
โœ… TPPAgeCheckTests testAge12 38ms
โœ… TPPAgeCheckTests testAge13 218ms
โœ… TPPAgeCheckTests testAge14 40ms
โœ… TPPAgeCheckTests testAgeCheckFailed 1.04s
โœ… TPPAgeCheckVerifyDecisionTests test_verify_needsAuthTrue_admitsUserWithoutPrompt 56ms
โœ… TPPAgeCheckVerifyDecisionTests test_verify_nilCompletion_doesNotCrash 40ms
โœ… TPPAgeCheckVerifyDecisionTests test_verify_nilCurrentAccount_blocksDefensively 2ms
โœ… TPPAgeCheckVerifyDecisionTests test_verify_userAboveAgeLimitTrue_admitsImmediately 68ms
โœ… TPPAgeCheckVerifyDecisionTests test_verify_userPresentedAgeCheckAndBelowLimit_blocksWithoutReprompt 23ms
โœ… TPPAlertUtilsTests testAlertTitleMessageError_withMessage_prefersMessageOverError 2ms
โœ… TPPAlertUtilsTests testAlertTitleMessageError_withNilMessage_fallsBackToError 26ms
โœ… TPPAlertUtilsTests testAlertWithDetails_hasOKAction 2ms
โœ… TPPAlertUtilsTests testAlertWithDetails_hasTwoActions 7ms
โœ… TPPAlertUtilsTests testAlertWithDetails_hasViewDetailsAction 2ms
โœ… TPPAlertUtilsTests testAlertWithDetails_plainMessageWithProblemDoc_includesDetail 347ms
โœ… TPPAlertUtilsTests testAlertWithDetails_retryAction_invokesClosure 4ms
โœ… TPPAlertUtilsTests testAlertWithDetails_withError_buildsAlert 78ms
โœ… TPPAlertUtilsTests testAlertWithDetails_withProblemDocument_doesNotDuplicateDetail 28ms
โœ… TPPAlertUtilsTests testAlertWithDetails_withRetryAction_hasRetryAndCancelNoOK 56ms
โœ… TPPAlertUtilsTests testAlertWithDetails_withoutRetry_okActionIsDefaultStyle 3ms
โœ… TPPAlertUtilsTests testAlert_cancelStyle_okActionIsCancel 3ms
โœ… TPPAlertUtilsTests testAlert_customStyle_usesProvidedStyle 78ms
โœ… TPPAlertUtilsTests testAlert_defaultStyle_okActionIsDefaultStyle 131ms
โœ… TPPAlertUtilsTests testAlert_destructiveStyle_okActionIsDestructive 2ms
โœ… TPPAlertUtilsTests testAlert_emptyMessage_returnsEmptyMessage 1ms
โœ… TPPAlertUtilsTests testAlert_emptyTitle_substitutesAlertDefault 781ms
โœ… TPPAlertUtilsTests testAlert_hasOKAction 196ms
โœ… TPPAlertUtilsTests testAlert_nilMessage_substitutesEmpty 3ms
โœ… TPPAlertUtilsTests testAlert_nilTitle_substitutesDefault 2ms
โœ… TPPAlertUtilsTests testAlert_titleAndMessage_createsAlert 3ms
โœ… TPPAlertUtilsTests testAlert_veryLongMessage_preservesContent 2ms
โœ… TPPAlertUtilsTests testAlert_withError_createsAlert 203ms
โœ… TPPAlertUtilsTests testAlert_withNSURLErrorCancelled_setsMessage 189ms
โœ… TPPAlertUtilsTests testAlert_withNSURLErrorNotConnected_setsMessage 40ms
โœ… TPPAlertUtilsTests testAlert_withNSURLErrorTimedOut_setsMessage 19ms
โœ… TPPAlertUtilsTests testAlert_withNSURLErrorUnknownCode_setsUnknownRequestMessage 7ms
โœ… TPPAlertUtilsTests testAlert_withNSURLErrorUnsupportedURL_setsMessage 31ms
โœ… TPPAlertUtilsTests testAlert_withNilError_createsAlert 8ms
โœ… TPPAlertUtilsTests testAlert_withUnknownDomainAndLocalizedDescription_usesDescription 8ms
โœ… TPPAlertUtilsTests testAlert_withUnknownDomainNoDescription_usesGenericFallback 538ms
โœ… TPPAlertUtilsTests testBorrowErrorPipeline_doesNotDuplicateProblemDocDetail 5ms
โœ… TPPAlertUtilsTests testCrashlyticsFE741015_PresentAlertWhileAlertShowing_DoesNotCrash 354ms
โœ… TPPAlertUtilsTests testPresentAlert_WhenNoAlertShowing_PresentsSuccessfully 295ms
โœ… TPPAlertUtilsTests testRetryPresentation_AfterFirstAlertDismisses_PresentsSecond 205ms
โœ… TPPAlertUtilsTests testRetryPresentation_ExceedsMaxRetries_DropsAlertWithCompletion 188ms
โœ… TPPAlertUtilsTests testSetProblemDocument_appendMode_appendsDetailAfterExisting 4ms
โœ… TPPAlertUtilsTests testSetProblemDocument_appendMode_titleAndDetailBothAppended 3ms
โœ… TPPAlertUtilsTests testSetProblemDocument_appendsToMessage 11ms
โœ… TPPAlertUtilsTests testSetProblemDocument_emptyAlertTitle_fillsFromDoc 54ms
โœ… TPPAlertUtilsTests testSetProblemDocument_nilController_doesNotCrash 2ms
โœ… TPPAlertUtilsTests testSetProblemDocument_nilDocument_doesNotCrash 4ms
โœ… TPPAlertUtilsTests testSetProblemDocument_replaceMode_setsTitleAndDetail 2ms
โœ… TPPAlertUtilsTests testSetProblemDocument_replaceMode_titleOnly_fillsMessageFromDetail 2ms
โœ… TPPAlertUtilsTests testSetProblemDocument_replacesMessage 3ms
โœ… TPPAnnotationsHermeticTests testAnnotationsURL_WhenMainFeedURLPresent_EndsInAnnotationsPath 75ms
โœ… TPPAnnotationsHermeticTests testDeleteBookmark_InvalidURLString_ReturnsFalseWithoutNetwork 4ms
โœ… TPPAnnotationsHermeticTests testPostAnnotation_NetworkErrorWithQueueOfflineTrue_DoesNotCrashAndReportsFailure 3ms
โœ… TPPAnnotationsHermeticTests testPostAnnotation_NetworkError_ReturnsFailure 42ms
โœ… TPPAnnotationsHermeticTests testPostAnnotation_Non200StatusCode_ReturnsFailure 695ms
โœ… TPPAnnotationsHermeticTests testPostAnnotation_NonHTTPURLResponse_ReturnsFailure 13ms
โœ… TPPAnnotationsHermeticTests testPostAnnotation_NotFound404_ReturnsFailure 12ms
โœ… TPPAnnotationsHermeticTests testPostAnnotation_RequestShape_PreservesMethodHeadersTimeoutAndBody 36ms
โœ… TPPAnnotationsHermeticTests testPostAnnotation_Success200WithFullPayload_ReturnsIdAndTimestamp 61ms
โœ… TPPAnnotationsHermeticTests testPostAnnotation_Success200WithMalformedJSON_ReturnsNilIdAndTimestamp 9ms
โœ… TPPAnnotationsHermeticTests testPostAnnotation_Success200WithMissingBodyKey_ReturnsNilTimestamp 60ms
โœ… TPPAnnotationsHermeticTests testPostAnnotation_Success200WithMissingIdKey_ReturnsNilId 1ms
โœ… TPPAnnotationsHermeticTests testPostAnnotation_Success200WithNilData_ReturnsNilIdAndTimestamp 2ms
โœ… TPPAnnotationsHermeticTests testPostAnnotation_Unauthorized401_ReturnsFailure 17ms
โœ… TPPAnnotationsHermeticTests testPostAnnotation_UsesExecutorOverride_NotShared 5ms
โœ… TPPAnnotationsOverrideTests testAnnotationDevice_FirebaseOverride_IsClearedAfterReset 1ms
โœ… TPPAnnotationsOverrideTests testAnnotationDevice_FirebaseOverride_IsUsedWhenAdobeIDIsAbsent 85ms
โœ… TPPAnnotationsOverrideTests testSyncIsPossible_ExplicitProviderArgumentBeatsOverride 252ms
โœ… TPPAnnotationsOverrideTests testSyncIsPossible_RoutesThroughAccountsManagerOverride 151ms
โœ… TPPAnnotationsTests testAnnotationResponse_HandlesNilValues 22ms
โœ… TPPAnnotationsTests testAnnotationResponse_StoresValues 23ms
โœ… TPPAnnotationsTests testTPPAnnotationsWrapper_isUsablePolymorphicallyThroughProtocolWithStableValue 42ms
โœ… TPPAnnotationsTests testTPPAnnotations_DeleteAllBookmarks_CompletesImmediately 78ms
โœ… TPPAnnotationsTests testTPPAnnotations_DeleteBookmark_Handles404AsSuccess 49ms
โœ… TPPAnnotationsTests testTPPAnnotations_DeleteBookmark_HandlesServerError 112ms
โœ… TPPAnnotationsTests testTPPAnnotations_DeleteBookmark_HandlesSuccessfulDeletion 36ms
โœ… TPPAnnotationsTests testTPPAnnotations_DeleteBookmark_ReturnsFalseForInvalidURL 28ms
โœ… TPPAnnotationsTests testTPPAnnotations_DeleteBookmarks_HandlesArray 32ms
โœ… TPPAnnotationsTests testTPPAnnotations_GetServerBookmarks_ParsesValidResponse 84ms
โœ… TPPAnnotationsTests testTPPAnnotations_GetServerBookmarks_ReturnsNilForNilBook 217ms
โœ… TPPAnnotationsTests testTPPAnnotations_GetServerBookmarks_ReturnsNilForNilURL 100ms
โœ… TPPAnnotationsTests testTPPAnnotations_GetServerBookmarks_ReturnsNilWhenSyncNotPermitted 26ms
โœ… TPPAnnotationsTests testTPPAnnotations_HandlesConcurrentRequests 33ms
โœ… TPPAnnotationsTests testTPPAnnotations_PostAnnotation_CreatesCorrectRequestFormat 83ms
โœ… TPPAnnotationsTests testTPPAnnotations_PostAnnotation_HandlesInvalidJSONGracefully 128ms
โœ… TPPAnnotationsTests testTPPAnnotations_PostAnnotation_HandlesNetworkError 217ms
โœ… TPPAnnotationsTests testTPPAnnotations_PostAnnotation_HandlesNon200StatusCode 375ms
โœ… TPPAnnotationsTests testTPPAnnotations_PostAnnotation_HandlesSuccessResponse 289ms
โœ… TPPAnnotationsTests testTPPAnnotations_PostAudiobookBookmark_ThrowsOnFailure 105ms
โœ… TPPAnnotationsTests testTPPAnnotations_PostListeningPosition_CallsPostReadingPosition 55ms
โœ… TPPAnnotationsTests testTPPAnnotations_SyncIsPossible_ReturnsFalseWithoutCredentials 89ms
โœ… TPPAnnotationsTests testTPPAnnotations_SyncIsPossible_ReturnsTrueWithCredentialsAndSyncSupport 26ms
โœ… TPPAnnotationsTests testTPPAnnotations_SyncReadingPosition_ReturnsNilWhenNotPermitted 53ms
โœ… TPPAnnotationsTests testTPPAnnotations_UploadLocalBookmarks_SkipsAlreadySyncedBookmarks 26ms
โœ… TPPAnnotationsTests testTPPBookmarkFactory_FiltersBookmarksByMotivation 102ms
โœ… TPPAnnotationsTests testTPPBookmarkFactory_RejectsBookmarksForWrongBook 158ms
โœ… TPPAnnotationsTests testTPPBookmarkSpec_ReadingProgressMotivation 32ms
โœ… TPPAnnotationsTests testTPPBookmarkSpec_SerializesToValidJSON 44ms
โœ… TPPAnnouncementManagerTests testAddPresentedAnnouncement 4ms
โœ… TPPAnnouncementManagerTests testDeletePresentedAnnouncement 4ms
โœ… TPPAnnouncementManagerTests testShouldPresentAnnouncement 3ms
โœ… TPPAuthDocumentContractTests testCoverageTable_CoversEveryKnownAuthType 13ms
โœ… TPPAuthDocumentContractTests testEveryAdvertisedRel_HasAClientSideHandler 7ms
โœ… TPPAuthDocumentContractTests testLogoutRel_OnAuthWithLogoutLink_IsCapturedAsHref 54ms
โœ… TPPBackgroundExecutorTests testExecutorCallsSetUpWorkItem 4ms
โœ… TPPBackgroundExecutorTests testExecutorDoesNotRetainOwner 8ms
โœ… TPPBackgroundExecutorTests testExecutorHandlesNilWorkItem 53ms
โœ… TPPBadgeImageGapTests testTPPBadgeImageView_audiobook_initSucceeds 8ms
โœ… TPPBadgeImageGapTests testTPPBadgeImage_audiobook_assetNameReturnsAudiobookBadge <1ms
โœ… TPPBaseReaderViewControllerInitialLocationTests testGate_afterReady_invokesGoOnce 3ms
โœ… TPPBaseReaderViewControllerInitialLocationTests testGate_beforeReady_doesNotInvokeGo 3ms
โœ… TPPBaseReaderViewControllerInitialLocationTests testGate_goFalseThenTrue_retriesToSuccess_noDegradation 3ms
โœ… TPPBaseReaderViewControllerInitialLocationTests testGate_goPersistentlyFalse_retriesThenRecordsPage1Degradation 14ms
โœ… TPPBaseReaderViewControllerInitialLocationTests testGate_goReturnsTrue_doesNotFlagDegradation 5ms
โœ… TPPBaseReaderViewControllerInitialLocationTests testGate_noInitialLocation_neverInvokesGo 5ms
โœ… TPPBaseReaderViewControllerInitialLocationTests testGate_readyBeforeAttach_navigatesWhenAttachLands 2ms
โœ… TPPBaseReaderViewControllerInitialLocationTests testGate_secondReadySignal_doesNotDuplicateGo 12ms
โœ… TPPBaseReaderViewControllerInitialLocationTests testNeverRead_nilLocator_zeroRestoresReachNavigator 6ms
โœ… TPPBaseReaderViewControllerInitialLocationTests testSyncRestore_serverShapedLocator_exactlyOneRestoreReachesNavigator 3ms
โœ… TPPBasicAuthTests testHandleChallenge_basicAuth_withEmptyCredentials_usesCredential 3ms
โœ… TPPBasicAuthTests testHandleChallenge_basicAuth_withMultipleFailures_cancelsChallenge <1ms
โœ… TPPBasicAuthTests testHandleChallenge_basicAuth_withNilPassword_cancelsChallenge <1ms
โœ… TPPBasicAuthTests testHandleChallenge_basicAuth_withNilUsername_cancelsChallenge 1ms
โœ… TPPBasicAuthTests testHandleChallenge_basicAuth_withPreviousFailure_cancelsChallenge 2ms
โœ… TPPBasicAuthTests testHandleChallenge_basicAuth_withValidCredentials_usesCredential 2ms
โœ… TPPBasicAuthTests testHandleChallenge_clientCertificate_rejectsProtectionSpace 9ms
โœ… TPPBasicAuthTests testHandleChallenge_credentials_noPersistence 2ms
โœ… TPPBasicAuthTests testHandleChallenge_serverTrust_performsDefaultHandling 2ms
โœ… TPPBasicAuthTests testHandleChallenge_unknownMethod_rejectsProtectionSpace <1ms
โœ… TPPBasicAuthTests testInit_createsInstance 89ms
โœ… TPPBookAccessibilityLabelTests testVoiceOverLabel_audiobook_authorOnly_includesFormatAndAuthor 3ms
โœ… TPPBookAccessibilityLabelTests testVoiceOverLabel_audiobook_narratorOnly_omitsAuthorPhrase 24ms
โœ… TPPBookAccessibilityLabelTests testVoiceOverLabel_audiobook_neitherAuthorNorNarrator_titlePlusFormat 29ms
โœ… TPPBookAccessibilityLabelTests testVoiceOverLabel_audiobook_withNarrator_includesNarrator 1ms
โœ… TPPBookAccessibilityLabelTests testVoiceOverLabel_ebook_blankAuthor_titleOnly 2ms
โœ… TPPBookAccessibilityLabelTests testVoiceOverLabel_ebook_noAuthor_titleOnly 4ms
โœ… TPPBookAccessibilityLabelTests testVoiceOverLabel_ebook_titleByAuthor 3ms
โœ… TPPBookAccessibilityLabelTests testVoiceOverLabel_neverIncludesSummary 2ms
โœ… TPPBookAuthorCoverageTests testBookAuthor_NilURL_IsDistinctFromEmptyURL <1ms
โœ… TPPBookAuthorCoverageTests testBookAuthor_initWithNameAndURL <1ms
โœ… TPPBookAuthorCoverageTests testBookAuthor_initWithNilURL <1ms
โœ… TPPBookAuthorTests testInit_EmptyName_AllowsEmptyString 51ms
โœ… TPPBookAuthorTests testInit_WithNameAndURL_SetsProperties 2ms
โœ… TPPBookAuthorTests testInit_WithNilURL_SetsURLToNil <1ms
โœ… TPPBookAuthorTests testIsKindOfClass_NSObject <1ms
โœ… TPPBookAuthorTests test_differentName_haveDifferentProperties <1ms
โœ… TPPBookAuthorTests test_sameNameAndURL_haveMatchingProperties <1ms
โœ… TPPBookBearerTokenTests testBearerToken_clearWithNil 8ms
โœ… TPPBookBearerTokenTests testBearerToken_defaultsToNil 149ms
โœ… TPPBookBearerTokenTests testBearerToken_writeAndRead 8ms
โœ… TPPBookBearerTokenTests testFulfillURL_clearWithNil 219ms
โœ… TPPBookBearerTokenTests testFulfillURL_defaultsToNil 8ms
โœ… TPPBookBearerTokenTests testFulfillURL_independentPerBook 70ms
โœ… TPPBookBearerTokenTests testFulfillURL_overwrite 15ms
โŠ˜ TPPBookBearerTokenTests testFulfillURL_persistsAcrossNewBookInstances 23ms
โœ… TPPBookBearerTokenTests testFulfillURL_writeAndRead 6ms
โœ… TPPBookButtonsStateTests testAllFiveAvailabilityKindsProduceDistinctStates_exceptLimitedAndUnlimited 3ms
โœ… TPPBookButtonsStateTests testStateForLimited_returnsCanBorrow 2ms
โœ… TPPBookButtonsStateTests testStateForNilAvailability_returnsUnsupported 266ms
โœ… TPPBookButtonsStateTests testStateForReady_returnsHoldingFOQ 4ms
โœ… TPPBookButtonsStateTests testStateForReserved_returnsHolding 3ms
โœ… TPPBookButtonsStateTests testStateForUnavailable_returnsCanHold 4ms
โœ… TPPBookButtonsStateTests testStateForUnlimited_returnsCanBorrow 1ms
โœ… TPPBookContentMetadataFilesHelperTests testCurrentAccountDirectory_returnsURLOrNil 2ms
โœ… TPPBookContentMetadataFilesHelperTests testDirectory_containsBundleIdentifier 1ms
โœ… TPPBookContentMetadataFilesHelperTests testDirectory_differentAccounts_returnDifferentPaths 69ms
โœ… TPPBookContentMetadataFilesHelperTests testDirectory_emptyString_handlesGracefully 38ms
โœ… TPPBookContentMetadataFilesHelperTests testDirectory_longAccountId_handlesGracefully 2ms
โœ… TPPBookContentMetadataFilesHelperTests testDirectory_pathContainsApplicationSupport 2ms
โœ… TPPBookContentMetadataFilesHelperTests testDirectory_sameAccount_returnsSamePath 1ms
โœ… TPPBookContentMetadataFilesHelperTests testDirectory_specialCharacters_handlesGracefully 3ms
โœ… TPPBookContentMetadataFilesHelperTests testDirectory_validAccountId_returnsURL 6ms
โœ… TPPBookContentTypeConverterStreamingHTMLTests testTPPBookContentTypeConverter_stringValue_allCases_returnDistinctNonEmptyTokens 27ms
โœ… TPPBookContentTypeConverterStreamingHTMLTests testTPPBookContentTypeConverter_stringValue_streamingHTML_returnsExpectedToken <1ms
โœ… TPPBookContentTypeConverterTests testStringValue_audiobook 2ms
โœ… TPPBookContentTypeConverterTests testStringValue_epub 2ms
โœ… TPPBookContentTypeConverterTests testStringValue_pdf 361ms
โœ… TPPBookContentTypeConverterTests testStringValue_unsupported 3ms
โœ… TPPBookContentTypeExtendedTests testFromMimeType_empty 2ms
โœ… TPPBookContentTypeExtendedTests testFromMimeType_epubAndPdfMappedCorrectly <1ms
โœ… TPPBookContentTypeExtendedTests testFromMimeType_nil 21ms
โœ… TPPBookContentTypeExtendedTests testFromMimeType_unknown <1ms
โœ… TPPBookContentTypeTests test_converter_audiobook_returnsAudioBook 1ms
โœ… TPPBookContentTypeTests test_converter_epub_returnsEpub <1ms
โœ… TPPBookContentTypeTests test_converter_pdf_returnsPDF <1ms
โœ… TPPBookContentTypeTests test_converter_unsupported_returnsUnsupported 1ms
โœ… TPPBookContentTypeTests test_from_audiobookJsonMimeType_returnsAudiobook 11ms
โœ… TPPBookContentTypeTests test_from_emptyMimeType_returnsUnsupported <1ms
โœ… TPPBookContentTypeTests test_from_epubZipMimeType_returnsEpub <1ms
โœ… TPPBookContentTypeTests test_from_nilMimeType_returnsUnsupported <1ms
โœ… TPPBookContentTypeTests test_from_octetStreamMimeType_returnsEpub 9ms
โœ… TPPBookContentTypeTests test_from_pdfMimeType_returnsPdf 13ms
โœ… TPPBookContentTypeTests test_from_unknownMimeType_returnsUnsupported <1ms
โœ… TPPBookContentTypeTests test_opdsPublicationType_isInSupportedTypes <1ms
โœ… TPPBookContentTypeTests test_opdsPublicationType_withDirectEpubIndirect_producesEpubPath 1ms
โœ… TPPBookContentTypeTests test_opdsPublicationType_withLCPEpubIndirect_producesEpubPath <1ms
โœ… TPPBookCoverRegistryTests testDecodePixels_ClampsToMemoryCeiling <1ms
โœ… TPPBookCoverRegistryTests testDecodePixels_TargetsExactDisplayPixels_NoOversample <1ms
โœ… TPPBookCoverRegistryTests testDownsampleImage_DecodesJPEGAtTargetSize 32ms
โœ… TPPBookCoverRegistryTests testDownsampleImage_DecodesPNGData 54ms
โœ… TPPBookCoverRegistryTests testDownsampleImage_EmptyDataReturnsNil 15ms
โœ… TPPBookCoverRegistryTests testDownsampleImage_InvalidDataReturnsNil 16ms
โœ… TPPBookCoverRegistryTests testDownsampleImage_MemoryEfficiency_LargeImage 133ms
โœ… TPPBookCoverRegistryTests testDownsampleImage_PreservesAspectRatio 23ms
โœ… TPPBookCoverRegistryTests testDownsampleImage_SmallImageNotUpscaled 44ms
โœ… TPPBookCoverRegistryTests testDownsampleImage_nonFiniteMaxDimension_returnsNil 3ms
โœ… TPPBookCoverRegistryTests testHostFailureTracker_NilHostHandledGracefully 6ms
โœ… TPPBookCoverRegistryTests testHostFailureTracker_RecordsFailureAndSkips 7ms
โœ… TPPBookCoverRegistryTests testHostFailureTracker_ResetClearsAll 95ms
โœ… TPPBookCoverRegistryTests testHostFailureTracker_ResetsAfterCooldown 264ms
โœ… TPPBookCoverRegistryTests testHostFailureTracker_SuccessClearsFailure 6ms
โœ… TPPBookCoverRegistryTests testHostFailureTracker_TracksHostsIndependently 13ms
โœ… TPPBookCoverRegistryTests testRegistry_UsesCustomImageSession 10ms
โœ… TPPBookCreationTests testBookCreationViaDictionary 13ms
โœ… TPPBookCreationTests testBookCreationViaFactoryMethod 5ms
โœ… TPPBookCreationTests testBookCreationViaMemberWiseInitializer 3ms
โœ… TPPBookCreationTests testBookCreation_FromEntry_AudienceAbsent 2ms
โœ… TPPBookCreationTests testBookCreation_FromEntry_PopulatesAudienceAndLanguage 2ms
โœ… TPPBookCreationTests testBookCreation_RoundTripsAudienceAndLanguageThroughDictionary 5ms
โœ… TPPBookCreationTests testMergingPreservingMetadata_PrefersFreshThenSelf 2ms
โœ… TPPBookExtensionsTests test_format_forAudiobook_matchesLocalizedString 17ms
โœ… TPPBookExtensionsTests test_format_forEpub_matchesLocalizedString 1ms
โœ… TPPBookExtensionsTests test_format_forPDF_matchesLocalizedString 2ms
โœ… TPPBookExtensionsTests test_format_forUnsupported_matchesLocalizedString <1ms
โœ… TPPBookExtensionsTests test_format_isNonEmptyAndDistinguishableAcrossContentTypes 3ms
โœ… TPPBookExtensionsTests test_hasAudiobookSample_audiobookWithSample_returnsTrue 2ms
โœ… TPPBookExtensionsTests test_hasAudiobookSample_audiobookWithoutSample_returnsFalse 2ms
โœ… TPPBookExtensionsTests test_hasAudiobookSample_epubWithSample_returnsFalse 2ms
โœ… TPPBookExtensionsTests test_hasAudiobookSample_pdfWithSample_returnsFalse 2ms
โœ… TPPBookExtensionsTests test_hasSample_returnsTrueOnlyWhenSampleIsPresent_andDistinguishesAudiobook 1ms
โœ… TPPBookExtensionsTests test_hasSample_withMockerHasSampleFalse_returnsFalse 13ms
โœ… TPPBookExtensionsTests test_hasSample_withMockerHasSampleTrue_returnsTrue 2ms
โœ… TPPBookExtensionsTests test_loggableDictionary_containsExpectedKeys 1ms
โœ… TPPBookExtensionsTests test_loggableShortString_containsTitleAndId <1ms
โœ… TPPBookExtensionsTests test_sample_nilForUnsupportedContentType 1ms
โœ… TPPBookExtensionsTests test_sample_preservesURL <1ms
โœ… TPPBookExtensionsTests test_sample_returnsNilWhenNoSampleIsAvailable 1ms
โœ… TPPBookExtensionsTests test_sample_withAudiobookSample_returnsAudiobookSample 5ms
โœ… TPPBookExtensionsTests test_sample_withEpubSample_returnsEpubSample 6ms
โœ… TPPBookExtensionsTests test_showAudiobookToolbar_falseForEpubEvenWithSample 2ms
โœ… TPPBookExtensionsTests test_showAudiobookToolbar_falseWhenNoSample 2ms
โœ… TPPBookIsDRMProtectedTests testIsDRMProtected_falseForBookWithNoAcquisitions 1ms
โœ… TPPBookIsDRMProtectedTests testIsDRMProtected_falseForOpenAccessAudiobook <1ms
โœ… TPPBookIsDRMProtectedTests testIsDRMProtected_falseForOpenAccessEpub 482ms
โœ… TPPBookIsDRMProtectedTests testIsDRMProtected_falseForOpenAccessPdf 2ms
โœ… TPPBookIsDRMProtectedTests testIsDRMProtected_trueForAdobeAdeptEpub <1ms
โœ… TPPBookIsDRMProtectedTests testIsDRMProtected_trueForLCPAudiobook 3ms
โœ… TPPBookIsDRMProtectedTests testIsDRMProtected_trueForLCPEpub <1ms
โœ… TPPBookIsDRMProtectedTests testIsDRMProtected_trueForLCPPdf <1ms
โœ… TPPBookIsDRMProtectedTests testIsDRMProtected_trueForOPDSFixtureEntry 9ms
โœ… TPPBookLocationCoverageTests testBookLocation_dictionaryRoundTrip <1ms
โœ… TPPBookLocationCoverageTests testBookLocation_initWithDictionary <1ms
โœ… TPPBookLocationCoverageTests testBookLocation_initWithEmptyDictionary <1ms
โœ… TPPBookLocationCoverageTests testBookLocation_initWithIncompleteDictionary <1ms
โœ… TPPBookLocationCoverageTests testBookLocation_initWithStrings <1ms
โœ… TPPBookLocationCoverageTests testBookLocation_locationStringMutation_ReflectsInDictionary <1ms
โœ… TPPBookLocationCoverageTests testBookLocation_rendererMutation_ReflectsInDictionary <1ms
โœ… TPPBookLocationEdgeCaseTests test_bookLocationData_stringForKey_missingKey_returnsNil 20ms
โœ… TPPBookLocationEdgeCaseTests test_bookLocationData_stringForKey_returnsValue 1ms
โœ… TPPBookLocationEdgeCaseTests test_bookLocationData_stringForKey_wrongType_returnsNil 1ms
โœ… TPPBookLocationEdgeCaseTests test_dictionaryRepresentation_containsExpectedKeys <1ms
โœ… TPPBookLocationEdgeCaseTests test_dictionaryRepresentation_preservesJSONContent <1ms
โœ… TPPBookLocationEdgeCaseTests test_dictionaryRepresentation_roundTrips <1ms
โœ… TPPBookLocationEdgeCaseTests test_initFromDictionary_emptyDictionary_returnsNil <1ms
โœ… TPPBookLocationEdgeCaseTests test_initFromDictionary_extraKeys_ignoresExtras 1ms
โœ… TPPBookLocationEdgeCaseTests test_initFromDictionary_missingLocationString_returnsNil <1ms
โœ… TPPBookLocationEdgeCaseTests test_initFromDictionary_missingRenderer_returnsNil 1ms
โœ… TPPBookLocationEdgeCaseTests test_initFromDictionary_withValidData_createsLocation <1ms
โœ… TPPBookLocationEdgeCaseTests test_initFromDictionary_wrongTypes_returnsNil 31ms
โœ… TPPBookLocationEdgeCaseTests test_init_withEmptyLocationString_createsLocation <1ms
โœ… TPPBookLocationEdgeCaseTests test_init_withEmptyRenderer_createsLocation 57ms
โœ… TPPBookLocationEdgeCaseTests test_init_withLongJSON_createsLocation 1ms
โœ… TPPBookLocationEdgeCaseTests test_init_withValidStringAndRenderer_createsLocation 17ms
โœ… TPPBookLocationEdgeCaseTests test_isSimilarTo_differentContent_returnsFalse 1ms
โœ… TPPBookLocationEdgeCaseTests test_isSimilarTo_differentRenderer_returnsFalse 4ms
โœ… TPPBookLocationEdgeCaseTests test_isSimilarTo_identicalLocations_returnsTrue 11ms
โœ… TPPBookLocationEdgeCaseTests test_isSimilarTo_ignoresAnnotationIdDifferences 2ms
โœ… TPPBookLocationEdgeCaseTests test_isSimilarTo_ignoresTimeStampDifferences 2ms
โœ… TPPBookLocationEdgeCaseTests test_isSimilarTo_nonJSONLocationString_returnsFalse <1ms
โœ… TPPBookLocationEdgeCaseTests test_isSimilarTo_sameContentDifferentTimeStampAndAnnotationId_returnsTrue 41ms
โœ… TPPBookLocationEdgeCaseTests test_locationStringDictionary_arrayJSON_returnsNil <1ms
โœ… TPPBookLocationEdgeCaseTests test_locationStringDictionary_emptyString_returnsNil <1ms
โœ… TPPBookLocationEdgeCaseTests test_locationStringDictionary_invalidJSON_returnsNil 1ms
โœ… TPPBookLocationEdgeCaseTests test_locationStringDictionary_validJSON_returnsParsedDictionary <1ms
โœ… TPPBookLocationKeyTests testBookLocationData_stringAccessor 6ms
โœ… TPPBookLocationKeyTests testBookLocationData_stringAccessorWrongType 1ms
โœ… TPPBookLocationKeyTests testBookLocationKey_MatchesDictionaryRepresentationKeys <1ms
โœ… TPPBookLocationTests testDictionaryRepresentation_ContainsAllFields 2ms
โœ… TPPBookLocationTests testInit_FromDictionary_Succeeds <1ms
โœ… TPPBookLocationTests testInit_FromDictionary_WithMissingLocationString_ReturnsNil 12ms
โœ… TPPBookLocationTests testInit_FromDictionary_WithMissingRenderer_ReturnsNil <1ms
โœ… TPPBookLocationTests testInit_WithValidParams_Succeeds 32ms
โœ… TPPBookLocationTests testIsSimilarTo_IgnoresAnnotationId 7ms
โœ… TPPBookLocationTests testIsSimilarTo_IgnoresTimestamp <1ms
โœ… TPPBookLocationTests testIsSimilarTo_WithDifferentRenderer_ReturnsFalse 1ms
โœ… TPPBookLocationTests testIsSimilarTo_WithSameContent_ReturnsTrue <1ms
โœ… TPPBookLocationTests testLocationStringDictionary_ParsesValidJSON <1ms
โœ… TPPBookLocationTests testLocationStringDictionary_WithInvalidJSON_ReturnsNil 2ms
โœ… TPPBookModelGapTests testTPPBook_bookWithMetadata_returnsBookWithUpdatedMetadata 6ms
โœ… TPPBookModelGapTests testTPPBook_dictionaryRepresentation_producesNonEmptyDict 3ms
โœ… TPPBookModelGapTests testTPPBook_dictionaryRepresentation_roundTripPreservesKeyProperties 1ms
โœ… TPPBookModelGapTests testTPPBook_sameIdentifier_comparableEquivalent 3ms
โœ… TPPBookRegistryAsyncReadinessTests testIntegration_underDetailsFailed_throwsAccountNotFound 45ms
โœ… TPPBookRegistryAsyncReadinessTests testReadiness_underDetailsFailed_gateThrows 68ms
โœ… TPPBookRegistryAsyncReadinessTests testReadiness_underDetailsLoading_gateBlocksUntilTransition 48ms
โœ… TPPBookRegistryAtomicWriteTests testAsyncSave_EventuallyProducesValidFile 46ms
โœ… TPPBookRegistryAtomicWriteTests testConcurrentSaves_EveryDiskStateBetweenSaves_IsValidJSON 1.52s
โœ… TPPBookRegistryAtomicWriteTests testSaveSync_FileSizeNonZero_AndJSONComplete 147ms
โœ… TPPBookRegistryAtomicWriteTests testSaveSync_LeavesNoStagingArtifactsInRegistryDir 35ms
โœ… TPPBookRegistryAtomicWriteTests testSaveSync_OverlappingSaves_FinalContentsOnly 254ms
โœ… TPPBookRegistryAtomicWriteTests testSaveSync_ProducesCompleteParseableJSON 79ms
โœ… TPPBookRegistryAtomicWriteTests testSave_AfterDirectoryDeleted_DoesNotLeaveCorruptedFile 226ms
โœ… TPPBookRegistryBookRetrievalTests testAllBooks_ReturnsRegisteredBooks 33ms
โœ… TPPBookRegistryBookRetrievalTests testBook_ForEmptyIdentifier_ReturnsNil 2ms
โœ… TPPBookRegistryBookRetrievalTests testBook_ForNilIdentifier_ReturnsNil 5ms
โœ… TPPBookRegistryBookRetrievalTests testBook_ForNonExistentIdentifier_ReturnsNil 18ms
โœ… TPPBookRegistryBookRetrievalTests testBook_ForValidIdentifier_ReturnsBook 6ms
โœ… TPPBookRegistryBookRetrievalTests testHeldBooks_ReturnsOnlyHoldingBooks 45ms
โœ… TPPBookRegistryBookRetrievalTests testMyBooks_ReturnsDownloadRelatedBooks 8ms
โœ… TPPBookRegistryBookmarkTests testAddGenericBookmark_AppendsToList 13ms
โœ… TPPBookRegistryBookmarkTests testAddOrReplaceGenericBookmark_ReplacesExisting 27ms
โœ… TPPBookRegistryBookmarkTests testAddReadiumBookmark_AppendsToList 43ms
โœ… TPPBookRegistryBookmarkTests testDeleteGenericBookmark_RemovesFromList 19ms
โœ… TPPBookRegistryBookmarkTests testDeleteReadiumBookmark_RemovesFromList 9ms
โœ… TPPBookRegistryBookmarkTests testReadiumBookmarks_SortedByProgress 5ms
โœ… TPPBookRegistryBookmarkTests testReplaceGenericBookmark_UpdatesBookmark 85ms
โœ… TPPBookRegistryCorruptedDataTests testRecordInit_WithCorruptedBookmarks_SkipsInvalid 3ms
โœ… TPPBookRegistryCorruptedDataTests testRecordInit_WithInvalidState_ReturnsNil 3ms
โœ… TPPBookRegistryCorruptedDataTests testRecordInit_WithMissingBook_ReturnsNil 2ms
โœ… TPPBookRegistryCorruptedDataTests testRecordInit_WithMissingOptionalFields_Succeeds 11ms
โœ… TPPBookRegistryCorruptedDataTests testRecordInit_WithMissingState_ReturnsNil 34ms
โœ… TPPBookRegistryDataTests testArrayForKey_ReturnsArray 5ms
โœ… TPPBookRegistryDataTests testObjectForKey_ReturnsDictionary 2ms
โœ… TPPBookRegistryDataTests testSetValue_SetsValue 40ms
โœ… TPPBookRegistryDataTests testValueForKey_ReturnsValue <1ms
โœ… TPPBookRegistryDependencyTests testAppContainer_constructionDoesNotDeadlock 13ms
โœ… TPPBookRegistryDependencyTests testAppContainer_returnsSameRegistryInstance 1ms
โœ… TPPBookRegistryDependencyTests testInit_takesAccountsManagerExplicitly 33ms
โœ… TPPBookRegistryDependencyTests testWithAccount_inheritsParentAccountsManager 4ms
โœ… TPPBookRegistryFulfillmentIdTests testFulfillmentId_ForEmptyIdentifier_ReturnsNil 4ms
โœ… TPPBookRegistryFulfillmentIdTests testFulfillmentId_ForNilIdentifier_ReturnsNil 38ms
โœ… TPPBookRegistryFulfillmentIdTests testFulfillmentId_ForNonExistentBook_ReturnsNil 2ms
โœ… TPPBookRegistryFulfillmentIdTests testSetFulfillmentId_UpdatesFulfillmentId 14ms
โœ… TPPBookRegistryLargeCorpusTests testLoad_5000Books_CompletesUnderTimeBudget 10.36s
โœ… TPPBookRegistryLargeCorpusTests testLoad_5000Books_ProducesExactCount 20.99s
โœ… TPPBookRegistryLargeCorpusTests testLookupByIdentifier_5000Books_AllUnique 18.85s
โœ… TPPBookRegistryLargeCorpusTests testRoundTrip_5000Books_AllFieldsPreserved 24.38s
โœ… TPPBookRegistryLargeCorpusTests testSave_5000Books_FileContainsAllRecords 1.17s
โœ… TPPBookRegistryLoadReentrancyTests testLoad_EmitsBookStateEventsForAllBooks 22ms
โœ… TPPBookRegistryLoadReentrancyTests testLoad_RapidCallsForSameAccount_DoesNotCrash 2ms
โœ… TPPBookRegistryLocationTests testLocation_ForNonExistentBook_ReturnsNil 2.44s
โœ… TPPBookRegistryLocationTests testSetLocationSync_UpdatesSynchronously 512ms
โœ… TPPBookRegistryLocationTests testSetLocation_UpdatesLocation 889ms
โœ… TPPBookRegistryLocationTests testSetLocation_WithNil_ClearsLocation 10.74s
โœ… TPPBookRegistryMigrationTests testDuplicateIdentifiersOnDisk_CollapseToOneRecord 113ms
โœ… TPPBookRegistryMigrationTests testLookupByIdentifier_IsUnique_AfterLoad 125ms
โœ… TPPBookRegistryMigrationTests testRecordLevelFulfillmentId_IsPreservedAcrossLoad 116ms
โœ… TPPBookRegistryMigrationTests testRecordMissingAudienceAndLanguage_FillsNilDefaults 125ms
โœ… TPPBookRegistryMigrationTests testRecordMissingCategoriesField_DefaultsToEmptyArray 110ms
โœ… TPPBookRegistryMigrationTests testRecordMissingMetadataField_Dropped 112ms
โœ… TPPBookRegistryMigrationTests testRecordMissingStateField_Dropped 118ms
โœ… TPPBookRegistryMigrationTests testRecordWithLegacyISO8601DateOnlyUpdated_StillParses 109ms
โœ… TPPBookRegistryMigrationTests testRecordWithMalformedUpdated_FallsBackToDistantPast_StillLoads 138ms
โœ… TPPBookRegistryMigrationTests testRecordWithUnknownFutureFields_FieldDroppedButRecordSurvives 114ms
โœ… TPPBookRegistryMigrationTests testRecordWithUnknownState_DroppedFromRegistry 116ms
โœ… TPPBookRegistryMigrationTests testSavedFile_StateField_IsStringValueNotInteger 18ms
โœ… TPPBookRegistryMigrationTests testSavedFile_TopLevelShape_IsRecordsArray 15ms
โœ… TPPBookRegistryMigrationTests testV1AcquisitionsLackingIndirectKey_StillParses 128ms
โœ… TPPBookRegistryMigrationTests testV1SingularAcquisitionKey_IsIgnoredButRecordIsPreserved 135ms
โœ… TPPBookRegistryMigrationTests testV2BaselineRoundTrip_LoadsAndPreservesIdentifierAndState 110ms
โœ… TPPBookRegistryPersistenceTests testAccountIsolation_AccountADoesNotLeakIntoAccountB 216ms
โœ… TPPBookRegistryPersistenceTests testBookStatePublisher_DoesNotFireOnNoOpUpdateBook 709ms
โœ… TPPBookRegistryPersistenceTests testBookStatePublisher_FiresOnDownloadingToDownloadedTransition 40ms
โœ… TPPBookRegistryPersistenceTests testConcurrentSaves_ProduceValidJSONOnDisk 177ms
โœ… TPPBookRegistryPersistenceTests testLoad_WithCorruptedJSON_RegistryIsEmpty_DoesNotCrash 227ms
โœ… TPPBookRegistryPersistenceTests testLoad_WithJSONMissingRecordsKey_RegistryIsEmpty 153ms
โœ… TPPBookRegistryPersistenceTests testLoad_WithTruncatedJSON_RegistryIsEmpty_DoesNotCrash 269ms
โœ… TPPBookRegistryPersistenceTests testRegistryUrl_DiffersAcrossAccounts 2ms
โœ… TPPBookRegistryPersistenceTests testSave_OverwritesPreviousSave_NotAppends 111ms
โœ… TPPBookRegistryPersistenceTests testSave_ThenColdStartLoad_PreservesRecord 141ms
โœ… TPPBookRegistryProcessingTests testSetProcessing_False_ClearsProcessingState 3ms
โœ… TPPBookRegistryProcessingTests testSetProcessing_TracksProcessingState 19.20s
โœ… TPPBookRegistryPublisherTests testBookStatePublisher_EmitsOnBookAdd 17ms
โœ… TPPBookRegistryPublisherTests testBookStatePublisher_EmitsOnBookRemove 16ms
โœ… TPPBookRegistryPublisherTests testBookStatePublisher_EmitsOnStateChange 16ms
โœ… TPPBookRegistryPublisherTests testBookStatePublisher_MultipleStateChanges_EmitsAll 30ms
โœ… TPPBookRegistryPublisherTests testRegistryPublisher_EmitsOnBookAdd 9ms
โœ… TPPBookRegistryPublisherTests testRegistryPublisher_EmitsOnBookRemove 5ms
โœ… TPPBookRegistryRecordPersistenceTests testAllStatesSerializeCorrectly 9ms
โœ… TPPBookRegistryRecordPersistenceTests testDictionaryRepresentation_ContainsAllFields 9ms
โœ… TPPBookRegistryRecordPersistenceTests testDictionaryRoundTrip_PreservesData 5ms
โœ… TPPBookRegistryRecordTests testAllStatesCanBePreserved <1ms
โœ… TPPBookRegistryRecordTests testDeriveInitialStateForBookWithoutAcquisition <1ms
โœ… TPPBookRegistryRecordTests testDeriveInitialStateForBorrowableBook 50ms
โœ… TPPBookRegistryRecordTests testDictionaryRepresentationPreservesState <1ms
โœ… TPPBookRegistryRecordTests testInitFromDictionaryPreservesState 2ms
โœ… TPPBookRegistryRecordTests testInitPreservesDownloadFailedState <1ms
โœ… TPPBookRegistryRecordTests testInitPreservesDownloadSuccessfulState <1ms
โœ… TPPBookRegistryRecordTests testInitPreservesDownloadingState <1ms
โœ… TPPBookRegistryRecordTests testInitPreservesHoldingState 3ms
โœ… TPPBookRegistryRecordTests testInitPreservesUsedState 35ms
โœ… TPPBookRegistryStateConcurrencyTests testConcurrentStateReads_duringResetWrites_neverCorruptTerminalState 71ms
โœ… TPPBookRegistryStateConcurrencyTests testReset_drivesRegistryStateToUnloaded_andClearsIsSyncing 15ms
โœ… TPPBookRegistryStateManagementTests testAddBook_NewBook_RegistersWithCorrectState 3ms
โœ… TPPBookRegistryStateManagementTests testAddBook_WithBookmarks_StoresBookmarks 12ms
โœ… TPPBookRegistryStateManagementTests testAddBook_WithFulfillmentId_StoresFulfillmentId 4ms
โœ… TPPBookRegistryStateManagementTests testAddBook_WithLocation_StoresLocation 37ms
โœ… TPPBookRegistryStateManagementTests testRemoveBook_RemovesFromRegistry 12ms
โœ… TPPBookRegistryStateManagementTests testRemoveBook_WithEmptyIdentifier_DoesNotCrash 4ms
โœ… TPPBookRegistryStateManagementTests testSetState_ForUnregisteredBook_DoesNotCrash 2ms
โœ… TPPBookRegistryStateManagementTests testSetState_TransitionsCorrectly 5ms
โœ… TPPBookRegistryStateManagementTests testStateFor_EmptyIdentifier_ReturnsUnregistered 2ms
โœ… TPPBookRegistryStateManagementTests testStateFor_NilIdentifier_ReturnsUnregistered 2ms
โœ… TPPBookRegistryStateManagementTests testStateFor_NonExistentBook_ReturnsUnregistered 2ms
โœ… TPPBookRegistryThreadSafetyTests testCrashlytics30c41d7e_ConcurrentAddAndUpdate_DoNotCrash 129ms
โœ… TPPBookRegistryThreadSafetyTests testCrashlytics30c41d7e_RapidRegistryMutations_DoNotCrashPublisher 121ms
โœ… TPPBookRegistryThreadSafetyTests testRegistryPublisher_EmitsConsistentSnapshots_DuringRapidMutations 135ms
โœ… TPPBookRegistryUpdateAndRemoveTests testUpdateAndRemoveBook_SetsStateToUnregistered 21ms
โœ… TPPBookRequiresAdobeDRMTests testRequiresAdobeDRM_falseForLCPBook <1ms
โœ… TPPBookRequiresAdobeDRMTests testRequiresAdobeDRM_falseForOpenAccessAudiobook 1ms
โœ… TPPBookRequiresAdobeDRMTests testRequiresAdobeDRM_falseForOpenAccessBook <1ms
โœ… TPPBookRequiresAdobeDRMTests testRequiresAdobeDRM_falseWhenNoAdobeAcquisitionsPresent <1ms
โœ… TPPBookRequiresAdobeDRMTests testRequiresAdobeDRM_trueForAdobeAdeptBook 95ms
โœ… TPPBookRequiresAdobeDRMTests testRequiresAdobeDRM_trueForOPDSFixtureEntry <1ms
โœ… TPPBookSerializationTests test_categoryStrings_returnsCategories 1ms
โœ… TPPBookSerializationTests test_comparable_sortsAlphabeticallyByTitle 1ms
โœ… TPPBookSerializationTests test_defaultBookContentType_forAudiobook_returnsAudiobook 36ms
โœ… TPPBookSerializationTests test_defaultBookContentType_forEpub_returnsEpub 2ms
โœ… TPPBookSerializationTests test_dictionaryRoundTrip_preservesAllFields 3ms
โœ… TPPBookSerializationTests test_dictionaryRoundTrip_preservesIdentifier 4ms
โœ… TPPBookSerializationTests test_dictionaryRoundTrip_preservesUpdatedTimestamp 2ms
โœ… TPPBookSerializationTests test_initFromDictionary_missingCategories_usesEmptyArray 3ms
โœ… TPPBookSerializationTests test_initFromDictionary_missingId_returnsNil 2ms
โœ… TPPBookSerializationTests test_initFromDictionary_missingTitle_returnsNil 46ms
โœ… TPPBookSerializationTests test_initFromDictionary_missingUpdated_fallsBackToDistantPast 4ms
โœ… TPPBookSerializationTests test_initFromDictionary_updatedBareDate_parsesSuccessfully 18ms
โœ… TPPBookSerializationTests test_initFromDictionary_updatedFullRFC3339Datetime_parsesSuccessfully 5ms
โœ… TPPBookStateInitializationTests testStateInit_FromInvalidString_ReturnsNil 40ms
โœ… TPPBookStateInitializationTests testStateInit_FromValidStrings 100ms
โœ… TPPBookStateInitializationTests testStateRoundTrip_AllStates <1ms
โœ… TPPBookStateInitializationTests testStateStringValue_ReturnsCorrectString <1ms
โœ… TPPBookStateTests testAllBookState 1ms
โœ… TPPBookStateTests testBookStateFromString 2ms
โœ… TPPBookStateTests testInitWithString 2ms
โœ… TPPBookStateTests testStringValue <1ms
โœ… TPPBookTests testTPPBook_isStreamingHTML_epubOnly_returnsFalse 4ms
โœ… TPPBookTests testTPPBook_isStreamingHTML_streamingMediaOnly_returnsTrue 452ms
โœ… TPPBookTests testTPPBook_isStreamingHTML_unsupported_returnsFalse 137ms
โœ… TPPBookTests testTPPBook_mixedStreamingAndEpub_epubFirst_prefersEpub 1ms
โœ… TPPBookTests testTPPBook_mixedStreamingAndEpub_streamingFirst_prefersEpub 15ms
โœ… TPPBookTests testTPPBook_openAccessSeparateLinks_streamingFirst_defaultsToEpub 2ms
โœ… TPPBookTests testTPPBook_openAccessSeparateLinks_streamingFirst_fallsBackToPDF <1ms
โœ… TPPBookTests testTPPBook_openAccessSeparateLinks_streamingOnly_staysStreaming 20ms
โœ… TPPBookTests test_authorLinkArray_excludesNilURLs 1ms
โœ… TPPBookTests test_authorLinkArray_returnsURLStrings 2ms
โœ… TPPBookTests test_authorNameArray_nilWhenNoAuthors 2ms
โœ… TPPBookTests test_authorNameArray_returnsNames <1ms
โœ… TPPBookTests test_authors_joinsNamesWithSemicolon <1ms
โœ… TPPBookTests test_authors_nilWhenNoAuthors 1ms
โœ… TPPBookTests test_authors_singleAuthor 2ms
โœ… TPPBookTests test_availabilityDetails_defaultValues 92ms
โœ… TPPBookTests test_bookWithMetadata_preservesSelfIdentifierAndAcquisitions <1ms
โœ… TPPBookTests test_bookWithMetadata_preservesSelfRevokeReportAndTimeTrackingURLs 125ms
โœ… TPPBookTests test_bookWithMetadata_takesImageURLsFromMetadataBook 3ms
โœ… TPPBookTests test_bookWithMetadata_takesMetadataFromOtherBook 2ms
โœ… TPPBookTests test_bookWithMetadata_takesSeriesNameFromMetadataBook 2ms
โœ… TPPBookTests test_categories_joinsWithSemicolon 2ms
โœ… TPPBookTests test_categories_nilWhenNil 10ms
โœ… TPPBookTests test_categoryStringsFromCategories_emptyArrayReturnsEmpty 2ms
โœ… TPPBookTests test_categoryStringsFromCategories_extractsLabelsFromSimplifiedScheme <1ms
โœ… TPPBookTests test_categoryStringsFromCategories_filtersOutUnknownSchemes 54ms
โœ… TPPBookTests test_categoryStringsFromCategories_includesCategoriesWithNilScheme 2ms
โœ… TPPBookTests test_categoryStringsFromCategories_usesTermWhenNoLabel <1ms
โœ… TPPBookTests test_clearCachedImages_removesAllKeysFromCache 2ms
โœ… TPPBookTests test_comparable_equalIdentifiersNotLessThan 2ms
โœ… TPPBookTests test_comparable_ordersById 2ms
โœ… TPPBookTests test_comparable_sortingMultipleBooks 2ms
โœ… TPPBookTests test_defaultAcquisitionIfBorrow_nilWhenOpenAccess <1ms
โœ… TPPBookTests test_defaultAcquisitionIfBorrow_returnsAcquisitionWhenBorrow <1ms
โœ… TPPBookTests test_defaultAcquisitionIfOpenAccess_nilWhenBorrow 186ms
โœ… TPPBookTests test_defaultAcquisitionIfOpenAccess_returnsWhenOpenAccess 16ms
โœ… TPPBookTests test_defaultBookContentType_audiobook 6ms
โœ… TPPBookTests test_defaultBookContentType_epub 13ms
โœ… TPPBookTests test_defaultBookContentType_pdf 11ms
โœ… TPPBookTests test_defaultBookContentType_unsupportedWhenNoAcquisitions 1ms
โœ… TPPBookTests test_dictionaryInit_handlesFlatAuthorArrayFormat 3ms
โœ… TPPBookTests test_dictionaryInit_handlesNestedAuthorArrayFormat <1ms
โœ… TPPBookTests test_dictionaryInit_nilWhenMissingId 11ms
โœ… TPPBookTests test_dictionaryInit_nilWhenMissingTitle 5ms
โœ… TPPBookTests test_dictionaryInit_readsSeriesNameFromSeriesNameKey 3ms
โœ… TPPBookTests test_dictionaryInit_salvagesWhenCategoriesMissing 1ms
โœ… TPPBookTests test_dictionaryInit_salvagesWhenUpdatedMissing 2ms
โœ… TPPBookTests test_dictionaryInit_seriesNameNilWhenKeyAbsent 111ms
โœ… TPPBookTests test_dictionaryRepresentation_containsRequiredKeys 7ms
โœ… TPPBookTests test_dictionaryRepresentation_writesSeriesNameUnderSeriesNameKey <1ms
โœ… TPPBookTests test_dictionaryRoundTrip_preservesAuthors 2ms
โœ… TPPBookTests test_dictionaryRoundTrip_preservesCategories <1ms
โœ… TPPBookTests test_dictionaryRoundTrip_preservesDistributor 12ms
โœ… TPPBookTests test_dictionaryRoundTrip_preservesIdentifierAndTitle 1ms
โœ… TPPBookTests test_dictionaryRoundTrip_preservesOptionalURLs 660ms
โœ… TPPBookTests test_dictionaryRoundTrip_preservesSeriesName 3ms
โœ… TPPBookTests test_dictionaryRoundTrip_preservesSubtitleAndSummary 4ms
โœ… TPPBookTests test_getAvailabilityDetails_nilForUnlimitedAvailability 198ms
โœ… TPPBookTests test_getAvailabilityDetails_populatesForLimitedAvailability 35ms
โœ… TPPBookTests test_getExpirationDate_nilForUnlimitedAvailability 3ms
โœ… TPPBookTests test_getExpirationDate_returnsDateForLimitedAvailability 6ms
โœ… TPPBookTests test_getExpirationDate_returnsRawUntilDate_andIsExpiredFlagsPastDates 396ms
โœ… TPPBookTests test_getReservationDetails_populatesFromReservedAvailability 3ms
โœ… TPPBookTests test_getReservationDetails_timeUnitPluralForMultipleDays 30ms
โœ… TPPBookTests test_getReservationDetails_timeUnitSingularForOneDay 1ms
โœ… TPPBookTests test_getReservationDetails_zeroValuesForUnlimitedAvailability 2ms
โœ… TPPBookTests test_hasDuration_falseWhenDurationEmpty 72ms
โœ… TPPBookTests test_hasDuration_falseWhenDurationNil <1ms
โœ… TPPBookTests test_hasDuration_trueWhenDurationSet 27ms
โœ… TPPBookTests test_identifiable_conformance 63ms
โœ… TPPBookTests test_isAudiobook_falseForEpub 3ms
โœ… TPPBookTests test_isAudiobook_falseForPDF 6ms
โœ… TPPBookTests test_isAudiobook_trueForAudiobookContentType 5ms
โœ… TPPBookTests test_isExpired_falseWhenNoExpiration 6ms
โœ… TPPBookTests test_mergingPreservingMetadata_carriesCoverImageFromSelf 5ms
โœ… TPPBookTests test_mergingPreservingMetadata_fallsBackToFreshCoverImage 67ms
โœ… TPPBookTests test_mergingPreservingMetadata_preservesRichSelfFieldsWhenFreshIsEmpty 3ms
โœ… TPPBookTests test_mergingPreservingMetadata_preservesSelfAuthorsWhenFreshIsEmpty 3ms
โœ… TPPBookTests test_mergingPreservingMetadata_preservesSelfAuthorsWhenFreshIsNil <1ms
โœ… TPPBookTests test_mergingPreservingMetadata_preservesSelfIdentifier <1ms
โœ… TPPBookTests test_mergingPreservingMetadata_preservesSelfSeriesNameWhenFreshIsEmpty 3ms
โœ… TPPBookTests test_mergingPreservingMetadata_takesFreshAuthorsWhenPresent 1ms
โœ… TPPBookTests test_mergingPreservingMetadata_takesFreshSeriesNameWhenPresent 3ms
โœ… TPPBookTests test_mergingPreservingMetadata_usesFreshUpdatedTimestamp 3ms
โœ… TPPBookTests test_narrators_joinsContributorsNrt 1ms
โœ… TPPBookTests test_narrators_nilWhenNoContributors 16ms
โœ… TPPBookTests test_narrators_nilWhenNoNrtKey 8ms
โœ… TPPBookTests test_ordinalString_eleventh 1ms
โœ… TPPBookTests test_ordinalString_first 2ms
โœ… TPPBookTests test_ordinalString_hundredAndFirst 2ms
โœ… TPPBookTests test_ordinalString_second 21ms
โœ… TPPBookTests test_ordinalString_third 1ms
โœ… TPPBookTests test_ordinalString_thirteenth <1ms
โœ… TPPBookTests test_ordinalString_twelfth 3ms
โœ… TPPBookTests test_ordinalString_twentyFirst <1ms
โœ… TPPBookTests test_reservationDetails_defaultValues <1ms
โœ… TPPBookTests test_sampleAcquisition_nilWhenNoSampleOrPreview 2ms
โœ… TPPBookTests test_sampleAcquisition_returnsPreviewLinkAsFallback 2ms
โœ… TPPBookmarkDeletionLogTests testClearAllDeletions_OnlyAffectsSpecifiedBook 6ms
โœ… TPPBookmarkDeletionLogTests testClearAllDeletions_RemovesAllForBook 3ms
โœ… TPPBookmarkDeletionLogTests testClearDeletion_RemovesSpecificAnnotation 3ms
โœ… TPPBookmarkDeletionLogTests testLogDeletion_AddsToPendingDeletions 3ms
โœ… TPPBookmarkDeletionLogTests testLogDeletion_HandlesDuplicates 23ms
โœ… TPPBookmarkDeletionLogTests testLogDeletion_IgnoresEmptyAnnotationId 2ms
โœ… TPPBookmarkDeletionLogTests testLogDeletion_MultipleDeletionsForSameBook 3ms
โœ… TPPBookmarkDeletionLogTests testPP3555_ClearAllDeletionsOnBookReturn 3ms
โœ… TPPBookmarkDeletionLogTests testPP3555_DeletionLogTracksBookmarksForServerDeletion 3ms
โœ… TPPBookmarkDeletionLogTests testPendingDeletions_ReturnsEmptyForUnknownBook 5ms
โœ… TPPBookmarkDeletionLogTests testThreadSafety_ConcurrentWrites 28ms
โœ… TPPBookmarkFactoryInitTests testInit_StoresProperties 2ms
โœ… TPPBookmarkFactoryInitTests testInit_WithNilDeviceId_CreatesFactory 6ms
โœ… TPPBookmarkFactoryServerAnnotationEdgeCaseTests testMakeFromServerAnnotation_DoubleProgressValue_ConvertsToFloat 388ms
โœ… TPPBookmarkFactoryServerAnnotationEdgeCaseTests testMakeFromServerAnnotation_EmptyHref_CreatesBookmarkWithEmptyHref 15ms
โœ… TPPBookmarkFactoryServerAnnotationEdgeCaseTests testMakeFromServerAnnotation_MissingProgressValues_UsesDefaults 100ms
โœ… TPPBookmarkFactoryServerAnnotationEdgeCaseTests testMakeFromServerAnnotation_ProgressFromBodyFallback 3.43s
โœ… TPPBookmarkFactoryServerAnnotationEdgeCaseTests testMakeFromServerAnnotation_WithReadingOrderItem_IncludesIt 151ms
โœ… TPPBookmarkFactoryTests testMakeFromServerAnnotation_ExtractsChapterTitle 8ms
โœ… TPPBookmarkFactoryTests testMakeFromServerAnnotation_InvalidSelectorJSON_ReturnsNil 6ms
โœ… TPPBookmarkFactoryTests testMakeFromServerAnnotation_MismatchedBookId_ReturnsNil 3ms
โœ… TPPBookmarkFactoryTests testMakeFromServerAnnotation_MismatchedMotivation_ReturnsNil 18ms
โœ… TPPBookmarkFactoryTests testMakeFromServerAnnotation_MissingAnnotationId_ReturnsNil 19ms
โœ… TPPBookmarkFactoryTests testMakeFromServerAnnotation_MissingBody_ReturnsNil 21ms
โœ… TPPBookmarkFactoryTests testMakeFromServerAnnotation_MissingSelector_ReturnsNil 17ms
โœ… TPPBookmarkFactoryTests testMakeFromServerAnnotation_MissingTarget_ReturnsNil 9ms
โœ… TPPBookmarkFactoryTests testMakeFromServerAnnotation_ReadingProgress_CreatesBookmark 10ms
โœ… TPPBookmarkFactoryTests testMakeFromServerAnnotation_ValidBookmark_CreatesBookmark 10ms
โœ… TPPBookmarkFactoryTests testMake_FromR3Location_CreatesBookmark 9ms
โœ… TPPBookmarkFactoryTests testMake_FromR3Location_GeneratesLocationFromLocator 23ms
โœ… TPPBookmarkFactoryTests testMake_FromR3Location_UsesCreationDate 8ms
โœ… TPPBookmarkFactoryTests testMake_FromR3Location_WithNilProgression_ReturnsNil 13ms
โœ… TPPBookmarkFactoryTests testMake_FromR3Location_WithPagePosition_IncludesPage 5ms
โœ… TPPBookmarkR3ConversionTests testConvertToR3_bookmarkNotInPublication_returnsNil 25ms
โœ… TPPBookmarkR3ConversionTests testConvertToR3_parsesTimeCorrectly 4ms
โœ… TPPBookmarkR3ConversionTests testConvertToR3_preservesChapterTitle 5ms
โœ… TPPBookmarkR3ConversionTests testConvertToR3_preservesProgressionValues 1ms
โœ… TPPBookmarkR3ConversionTests testConvertToR3_validBookmark_createsR3Location 1ms
โœ… TPPBookmarkR3LocationTests testFrom_emptyReadingOrder_returnsNil <1ms
โœ… TPPBookmarkR3LocationTests testFrom_firstChapter_returnsIndexZero 1ms
โœ… TPPBookmarkR3LocationTests testFrom_lastChapter_returnsCorrectIndex <1ms
โœ… TPPBookmarkR3LocationTests testFrom_locatorNotInPublication_returnsNil 58ms
โœ… TPPBookmarkR3LocationTests testFrom_locatorWithDifferentMediaType_findsMatchByHref 1ms
โœ… TPPBookmarkR3LocationTests testFrom_validLocatorInPublication_createsLocation 4ms
โœ… TPPBookmarkR3LocationTests testFrom_withCustomCreationDate_usesProvidedDate <1ms
โœ… TPPBookmarkR3LocationTests testInit_preservesResourceIndex <1ms
โœ… TPPBookmarkR3LocationTests testInit_withDefaultCreationDate_usesCurrentDate 8ms
โœ… TPPBookmarkR3LocationTests testInit_withValidParameters_createsLocation <1ms
โœ… TPPBookmarkR3LocationTests testLocator_preservesMediaType <1ms
โœ… TPPBookmarkR3LocationTests testLocator_preservesProgression 6ms
โœ… TPPBookmarkR3LocationTests testLocator_preservesTitle <1ms
โœ… TPPBookmarkSpecTests testBookmarkMotivationKeyword 3ms
โœ… TPPCachingTests testMaxAgeExtraction 1ms
โœ… TPPCachingTests testResponseModification 6ms
โœ… TPPCachingTests testSufficientCacheHeaders <1ms
โœ… TPPCapturedCredentialsTests testFinalizeSignIn_fallsBackToUIDelegate_whenCapturedNil 23ms
โœ… TPPCapturedCredentialsTests testFinalizeSignIn_usesCapturedCredentials_whenUIDelegateCleared 30ms
โœ… TPPCapturedCredentialsTests testLogIn_refreshesCapturedCredentials_onSubsequentAttempts 82ms
โœ… TPPCapturedCredentialsTests testUpdateUserAccount_usesAtomicUpdateWithCorrectLibraryUUID 23ms
โœ… TPPCapturedCredentialsTests testUpdateUserAccount_withAuthToken_savesAllCredentials 36ms
โœ… TPPConfigurationCustomRegistryTests test_bareHost_whenHiddenLibrariesOn_isNotRewrittenAtThisLayer 3ms
โœ… TPPConfigurationCustomRegistryTests test_customRegistryIsExplicitURL_unparseableExplicitInput_isFalse 3ms
โœ… TPPConfigurationCustomRegistryTests test_customUrlHash_matchesHashOfActualFetchURL 3ms
โœ… TPPConfigurationCustomRegistryTests test_customUrl_bareHost_appendsLibrariesQa 3ms
โœ… TPPConfigurationCustomRegistryTests test_customUrl_emptyOrWhitespaceOnly_isNil 3ms
โœ… TPPConfigurationCustomRegistryTests test_customUrl_fullHttpURL_isUsedVerbatim 3ms
โœ… TPPConfigurationCustomRegistryTests test_customUrl_fullHttpsURL_isUsedVerbatim 5ms
โœ… TPPConfigurationCustomRegistryTests test_customUrl_fullURLWithQuery_preservesQuery 3ms
โœ… TPPConfigurationCustomRegistryTests test_customUrl_whenUnset_isNil 2ms
โœ… TPPConfigurationCustomRegistryTests test_customUrl_whitespacePaddedHost_isTrimmed 3ms
โœ… TPPConfigurationCustomRegistryTests test_explicitURL_whenHiddenLibrariesOff_hasNoAvailability 3ms
โœ… TPPConfigurationCustomRegistryTests test_explicitURL_whenHiddenLibrariesOff_leavesTypedAvailabilityUntouched 3ms
โœ… TPPConfigurationCustomRegistryTests test_explicitURL_whenHiddenLibrariesOn_appendsAvailabilityAll 3ms
โœ… TPPConfigurationCustomRegistryTests test_explicitURL_whenHiddenLibrariesOn_overwritesExistingAvailability 3ms
โœ… TPPConfigurationCustomRegistryTests test_explicitURL_whenHiddenLibrariesOn_preservesOtherQueryItems 3ms
โœ… TPPConfigurationCustomRegistryTests test_hiddenLibrariesToggle_changesCacheHashForExplicitURL 3ms
โœ… TPPConfigurationTests test_accentColor_returnsValidUIColor 2ms
โœ… TPPConfigurationTests test_appearanceWithBackgroundColor_usesProvidedColor 5ms
โœ… TPPConfigurationTests test_backgroundColor_returnsValidUIColor 3ms
โœ… TPPConfigurationTests test_backgroundMediaOverlayHighlightColor_returnsValidUIColor 3ms
โœ… TPPConfigurationTests test_betaUrlHash_isNonEmpty <1ms
โœ… TPPConfigurationTests test_betaUrl_isValid 2ms
โœ… TPPConfigurationTests test_boldSystemFontName_returnsNonEmptyString <1ms
โœ… TPPConfigurationTests test_defaultAppearance_returnsConfiguredAppearance 135ms
โœ… TPPConfigurationTests test_defaultBookmarkRowHeight_returnsPositiveValue <1ms
โœ… TPPConfigurationTests test_defaultTOCRowHeight_returnsPositiveValue <1ms
โœ… TPPConfigurationTests test_mainColor_returnsValidUIColor 3ms
โœ… TPPConfigurationTests test_palaceRed_returnsValidUIColor 4ms
โœ… TPPConfigurationTests test_prodUrlHash_isDeterministic 2ms
โœ… TPPConfigurationTests test_prodUrlHash_isNonEmpty <1ms
โœ… TPPConfigurationTests test_prodUrl_isValid <1ms
โœ… TPPConfigurationTests test_readerBackgroundColor_returnsValidUIColor <1ms
โœ… TPPConfigurationTests test_readerBackgroundDarkColor_returnsValidUIColor 2ms
โœ… TPPConfigurationTests test_readerBackgroundSepiaColor_returnsValidUIColor <1ms
โœ… TPPConfigurationTests test_semiBoldSystemFontName_returnsNonEmptyString 41ms
โœ… TPPConfigurationTests test_systemFontFamilyName_returnsNonEmptyString 1ms
โœ… TPPConfigurationTests test_systemFontFamilyName_returnsOpenSans 2ms
โœ… TPPConfigurationTests test_systemFontName_returnsNonEmptyString <1ms
โœ… TPPContentTypeTests testFrom_EmptyString_ReturnsUnsupported <1ms
โœ… TPPContentTypeTests testFrom_EpubZip_ReturnsEpub 4ms
โœ… TPPContentTypeTests testFrom_NilMimeType_ReturnsUnsupported 30ms
โœ… TPPContentTypeTests testFrom_OctetStream_ReturnsEpub 6ms
โœ… TPPContentTypeTests testFrom_OpenAccessAudiobook_ReturnsAudiobook <1ms
โœ… TPPContentTypeTests testFrom_OpenAccessPDF_ReturnsPDF 45ms
โœ… TPPContentTypeTests testFrom_UnknownMimeType_ReturnsUnsupported 43ms
โœ… TPPContentTypeTests testTPPBookContentType_from_plainTextHtml_returnsUnsupported 7ms
โœ… TPPContentTypeTests testTPPBookContentType_from_streamingMediaMIME_returnsStreamingHTML <1ms
โœ… TPPCredentialConcurrencyTests testAtomicUpdate_writesAreVisibleInSnapshot <1ms
โœ… TPPCredentialConcurrencyTests testConcurrentRefreshCredentials_doesNotCrash 1ms
โœ… TPPCredentialConcurrencyTests testConcurrentSnapshots_returnConsistentData 4ms
โŠ˜ TPPCredentialIsolationE2ETests testMarkCredentialsStale_doesNotAffectOtherAccount 39ms
โŠ˜ TPPCredentialIsolationE2ETests testRapidSwitching_500Iterations_noContamination 29ms
โŠ˜ TPPCredentialIsolationE2ETests testSignInA_switchB_signInB_signOutB_verifyAIntact 17ms
โŠ˜ TPPCredentialIsolationE2ETests testSignInA_switchToB_signInB_verifyAIntact 28ms
โŠ˜ TPPCredentialIsolationE2ETests testThreeLibraries_allIsolated 18ms
โœ… TPPCredentialPersistenceTests testFullSignInFlow_authStateIsLoggedIn 259ms
โœ… TPPCredentialPersistenceTests testFullSignInFlow_completionCalledOnce 184ms
โœ… TPPCredentialPersistenceTests testFullSignInFlow_credentialsRemainAccessible 165ms
โœ… TPPCredentialPersistenceTests testUpdateUserAccount_basicAuth_setsCredentialsAndAuthState 379ms
โœ… TPPCredentialPersistenceTests testUpdateUserAccount_credentialsPersistedAndRefreshable 736ms
โœ… TPPCredentialPersistenceTests testUpdateUserAccount_noSelectedAuth_stillMarksLoggedIn 38ms
โŠ˜ TPPCredentialSnapshotCoherenceTests testCredentialSnapshot_AuthStateTransitions_ArePeerVisible 2ms
โŠ˜ TPPCredentialSnapshotCoherenceTests testCredentialSnapshot_ReflectsRemoveAllFromPeerInstance 15ms
โŠ˜ TPPCredentialSnapshotCoherenceTests testCredentialSnapshot_ReflectsWriteFromPeerInstance 5ms
โœ… TPPCredentialSnapshotTests testSnapshot_identifiesTokenCredentials <1ms
โœ… TPPCredentialSnapshotTests testSnapshot_isSignedInLogic_OAuth_stale <1ms
โœ… TPPCredentialSnapshotTests testSnapshot_isSignedInLogic_basicAuth <1ms
โœ… TPPCredentialSnapshotTests testSnapshot_isSignedInLogic_basicAuth_stale 1ms
โœ… TPPCredentialSnapshotTests testSnapshot_isSignedInLogic_loggedOut 2ms
โœ… TPPCredentialSnapshotTests testSnapshot_reportsNoCredentials <1ms
โœ… TPPCredentialSnapshotTests testSnapshot_returnsAuthState <1ms
โœ… TPPCredentialSnapshotTests testSnapshot_returnsCredentialsAfterSet <1ms
โœ… TPPCredentialsCoverageTests testBarcodeAndPin_codableRoundTrip <1ms
โœ… TPPCredentialsCoverageTests testBarcodeAndPin_storesFields <1ms
โœ… TPPCredentialsCoverageTests testCookies_codableRoundTrip 5ms
โœ… TPPCredentialsCoverageTests testCookies_storesCookies 1ms
โœ… TPPCredentialsCoverageTests testToken_codableRoundTrip 1ms
โœ… TPPCredentialsCoverageTests testToken_nilOptionals_codableRoundTrip <1ms
โœ… TPPCredentialsCoverageTests testToken_optionalDefaults 1ms
โœ… TPPCredentialsCoverageTests testToken_storesFields 2ms
โœ… TPPCredentialsCoverageTests testTypeID_rawValues <1ms
โœ… TPPCredentialsTests testBarcodeAndPin_WithEmptyValues_StoresEmptyStrings <1ms
โœ… TPPCredentialsTests testBarcodeAndPin_WithSpecialCharacters_PreservesCharacters <1ms
โœ… TPPCredentialsTests testBarcodeAndPin_WithValidData_StoresValues <1ms
โœ… TPPCredentialsTests testCookies_WithEmptyArray_StoresEmptyArray <1ms
โœ… TPPCredentialsTests testCookies_WithMultipleCookies_StoresAllCookies <1ms
โœ… TPPCredentialsTests testCookies_WithValidCookies_StoresCookies <1ms
โœ… TPPCredentialsTests testDecode_WithInvalidTypeID_ThrowsError <1ms
โœ… TPPCredentialsTests testDecode_WithMissingType_ThrowsError 1ms
โœ… TPPCredentialsTests testEncodeDecode_BarcodeAndPin_PreservesValues <1ms
โœ… TPPCredentialsTests testEncodeDecode_BarcodeAndPin_WithEmptyStrings <1ms
โœ… TPPCredentialsTests testEncodeDecode_BarcodeAndPin_WithLongStrings <1ms
โœ… TPPCredentialsTests testEncodeDecode_Cookies_WithEmptyArray <1ms
โœ… TPPCredentialsTests testEncodeDecode_Cookies_WithMultipleCookies <1ms
โœ… TPPCredentialsTests testEncodeDecode_Cookies_WithValidCookies 3ms
โœ… TPPCredentialsTests testEncodeDecode_Token_ExpirationDatePrecision <1ms
โœ… TPPCredentialsTests testEncodeDecode_Token_WithAllProperties <1ms
โœ… TPPCredentialsTests testEncodeDecode_Token_WithEmptyAuthToken 10ms
โœ… TPPCredentialsTests testEncodeDecode_Token_WithNilOptionals <1ms
โœ… TPPCredentialsTests testEncodeDecode_Token_WithSpecialCharacters 1ms
โœ… TPPCredentialsTests testEncodeDecode_Token_WithUnicodeCharacters 5ms
โœ… TPPCredentialsTests testToken_WithAllProperties_StoresValues <1ms
โœ… TPPCredentialsTests testToken_WithEmptyAuthToken_StoresEmptyString <1ms
โœ… TPPCredentialsTests testToken_WithOnlyAuthToken_StoresNilOptionals <1ms
โœ… TPPCredentialsTests testTypeID_BarcodeAndPinHasCorrectRawValue 18ms
โœ… TPPCredentialsTests testTypeID_CookiesHasCorrectRawValue <1ms
โœ… TPPCredentialsTests testTypeID_TokenHasCorrectRawValue <1ms
โœ… TPPCrossLibrarySignOutTests testMultiLibraryMock_returnsSeparateAccountsPerUUID 204ms
โœ… TPPCrossLibrarySignOutTests testSequentialSignOuts_ofMultipleLibraries_clearCorrectCredentials 341ms
โœ… TPPCrossLibrarySignOutTests testSignOut_ofNonActiveLibrary_doesNotClearActiveLibraryCredentials 56ms
โœ… TPPCrossLibrarySignOutTests testSignOut_ofNonActiveOAuthLibrary_doesNotClearActiveLibraryToken 31ms
โœ… TPPCrossLibrarySignOutTests testSignOut_ofNonActiveSAMLLibrary_doesNotClearActiveLibraryCookies 44ms
โœ… TPPCrossLibrarySignOutTests testUserAccount_isScopedToLibraryAccountID 113ms
โœ… TPPDRMFailureCredentialPreservationTests testUpdateUserAccount_drmFailure_doesNotChangeAuthState 44ms
โœ… TPPDRMFailureCredentialPreservationTests testUpdateUserAccount_drmFailure_doesNotWipeExistingCredentials 30ms
โœ… TPPDRMFailureCredentialPreservationTests testUpdateUserAccount_drmFailure_noExistingCredentials_noWipe 38ms
โœ… TPPDRMFailureCredentialPreservationTests testUpdateUserAccount_drmSuccess_doesSaveCredentials 25ms
โœ… TPPErrorLoggerTests testClientDomain_isCorrect 3ms
โœ… TPPErrorLoggerTests testErrorCode_appLaunchAndRegistryCodesAreDistinct 2ms
โœ… TPPErrorLoggerTests testErrorCode_drmCodesAreSeparateFromNetworking 2ms
โœ… TPPErrorLoggerTests testErrorCode_ignoreProducesNoError 180ms
โœ… TPPErrorLoggerTests testErrorCode_imageLoadingCodesAreUnique 205ms
โœ… TPPErrorLoggerTests testErrorCode_networkingCodesAreUnique <1ms
โœ… TPPErrorLoggerTests testErrorCode_parseAndImageGroupsDoNotOverlap <1ms
โœ… TPPErrorLoggerTests testErrorCode_parseFailureCodesAreUnique 1ms
โœ… TPPErrorLoggerTests testErrorCode_signInCodesAreDistinct 58ms
โœ… TPPErrorLoggerTests testErrorCodes_areUnique 6ms
โœ… TPPErrorLoggerTests testImageDecodeFail_doesNotCrash 4ms
โœ… TPPErrorLoggerTests testImageHostFailure_isThrottled 69ms
โœ… TPPErrorLoggerTests testLogBarcodeException_doesNotCrash 106ms
โœ… TPPErrorLoggerTests testLogError_withCodeAndSummary_doesNotCrash 29ms
โœ… TPPErrorLoggerTests testLogError_withErrorAndSummary_doesNotCrash 221ms
โœ… TPPErrorLoggerTests testLogInvalidLicensor_doesNotCrash 825ms
โœ… TPPErrorLoggerTests testLogInvalidLicensor_withNilAccountID_doesNotCrash 26ms
โœ… TPPErrorLoggerTests testLogLocalAuthFailed_doesNotCrash 95ms
โœ… TPPErrorLoggerTests testLogLoginError_withProblemDocument_doesNotCrash 110ms
โœ… TPPErrorLoggerTests testLogNetworkError_doesNotCrash 31ms
โœ… TPPErrorLoggerTests testLogNetworkError_withIgnoreCode_usesApiCallCode 849ms
โœ… TPPErrorLoggerTests testLogNetworkError_withNilSummary_usesDefault 2ms
โœ… TPPErrorLoggerTests testLogProblemDocumentParseError_doesNotCrash 55ms
โœ… TPPErrorLoggerTests testLogProblemDocumentParseError_withNilData_doesNotCrash 59ms
โœ… TPPErrorLoggerTests testSeverity_errorStringValue 302ms
โœ… TPPErrorLoggerTests testSeverity_infoStringValue 454ms
โœ… TPPErrorLoggerTests testSeverity_warningStringValue 2ms
โœ… TPPIdleSignOutRegressionTests testCancelPendingSignOut_preventsCredentialCleanup 378ms
โœ… TPPIdleSignOutRegressionTests testNormalSignOut_stillClearsCredentials 136ms
โœ… TPPIdleSignOutRegressionTests testOAuthSignOut401_clearsTokenCredentials 200ms
โœ… TPPIdleSignOutRegressionTests testRaceCondition_signInDuringPendingDeauth_preservesNewCredentials 90ms
โœ… TPPIdleSignOutRegressionTests testRapidSignOutSignInCycles_doNotCorruptState 124ms
โœ… TPPIdleSignOutRegressionTests testSignOut401_clearsCredentials 121ms
โœ… TPPIdleSignOutRegressionTests testSignOut401_deauthorizesDeviceWithLicensor 241ms
โœ… TPPIdleSignOutRegressionTests testSignOut401_doesNotShowUnexpectedCredentialsError 53ms
โœ… TPPIdleSignOutRegressionTests testSignOut500_showsErrorToUser 156ms
โœ… TPPIdleSignOutRegressionTests testSignOutSignInCycle_licensorPreservedForBorrow 82ms
โœ… TPPIdleSignOutRegressionTests testSignOut_alwaysCallsDidFinishDeauthorizing 319ms
โœ… TPPIdleSignOutRegressionTests testSignOut_withNoDRMAuthorizer_completes 58ms
โœ… TPPIdleSignOutRegressionTests testStaleSignOut_stillCallsDidFinishDeauthorizing 79ms
โœ… TPPJWKConversionTest testJWKConversion 154ms
โœ… TPPKeychainManagerTests testLogKeychainError_doesNotCrash_withEmptyMessage 14ms
โœ… TPPKeychainManagerTests testLogKeychainError_doesNotCrash_withEmptyVendor 6ms
โœ… TPPKeychainManagerTests testLogKeychainError_doesNotCrash_withKnownStatuses 29ms
โœ… TPPKeychainManagerTests testLogKeychainError_doesNotCrash_withUnknownStatus 5ms
โœ… TPPKeychainManagerTests testSecClassItems_coversAllExpectedTypes <1ms
โœ… TPPLastReadPositionPosterTests testShouldStore_cssSelectorWithRenderedZeroProgression_stores 8ms
โœ… TPPLastReadPositionPosterTests testShouldStore_meaningfulProgression_stores 7ms
โœ… TPPLastReadPositionPosterTests testShouldStore_positionGreaterThanZero_stores 204ms
โœ… TPPLastReadPositionPosterTests testShouldStore_positionZero_doesNotStore 8ms
โœ… TPPLastReadPositionPosterTests testShouldStore_progressionExactlyZero_doesNotStore 4ms
โœ… TPPLastReadPositionPosterTests testShouldStore_progressionNil_doesNotStore 4ms
โœ… TPPLastReadPositionPosterTests testShouldStore_progressionPositiveButTinyAndRendered_stores 6ms
โœ… TPPLastReadPositionPosterTests testStoreReadPosition_multipleCalls_eachDelegatesToWriter 6ms
โœ… TPPLastReadPositionPosterTests testStoreReadPosition_validLocator_savesLocally_andDelegatesToWriter 38ms
โœ… TPPLastReadPositionPosterTests testStoreReadPosition_writerThrows_doesNotCrash_localStateUnaffected 10ms
โœ… TPPLastReadPositionPosterTests testStoreReadPosition_zeroProgressionNoCssSelector_doesNotStore 6ms
โœ… TPPLastReadPositionPosterTests testStoreReadPosition_zeroProgressionWithCssSelector_storesLocally_andDelegates 42ms
โœ… TPPLastReadPositionPosterTests testThrottlingInterval_isLockedAtFifteenSeconds 40ms
โœ… TPPLastReadPositionSynchronizerIntegrationTests testRealSynchronizer_Init_Succeeds 8ms
โœ… TPPLastReadPositionSynchronizerIntegrationTests testRealSynchronizer_MultipleBooks_IndependentLocations 1ms
โœ… TPPLastReadPositionSynchronizerIntegrationTests testRealSynchronizer_WithEmptyRegistry_DoesNotCrash 1ms
โœ… TPPLastReadPositionSynchronizerIntegrationTests testRealSynchronizer_WithManyBooks_PerformsEfficiently 38ms
โœ… TPPLastReadPositionSynchronizerIntegrationTests testRealSynchronizer_WithRegistryContainingBook_AccessesLocation 132ms
โœ… TPPLastReadPositionSynchronizerTests testBookRegistry_GetLocation_ForNonexistentBook_ReturnsNil 19ms
โœ… TPPLastReadPositionSynchronizerTests testBookRegistry_SetLocationToNil_ClearsPosition 1ms
โœ… TPPLastReadPositionSynchronizerTests testBookRegistry_SetLocation_UpdatesPosition 14ms
โœ… TPPLastReadPositionSynchronizerTests testBookRegistry_StoresLocation 26ms
โœ… TPPLastReadPositionSynchronizerTests testBookRegistry_UpdateLocation_OverwritesPrevious 30ms
โœ… TPPLastReadPositionSynchronizerTests testReadiumBookmark_StoresAllProperties 64ms
โœ… TPPLastReadPositionSynchronizerTests testSyncDecision_WhenBothDeviceIDsNilButLocalExists_ReturnsTrue 3ms
โœ… TPPLastReadPositionSynchronizerTests testSyncDecision_WhenDifferentDeviceWithDifferentPosition_ReturnsTrue 16ms
โœ… TPPLastReadPositionSynchronizerTests testSyncDecision_WhenDifferentDeviceWithNoLocalPosition_ReturnsTrue 1ms
โœ… TPPLastReadPositionSynchronizerTests testSyncDecision_WhenNilLocalDeviceIDAndServerHasDevice_ReturnsTrue <1ms
โœ… TPPLastReadPositionSynchronizerTests testSyncDecision_WhenPositionsMatchExactly_RegardlessOfDevice_ReturnsFalse 49ms
โœ… TPPLastReadPositionSynchronizerTests testSyncDecision_WhenSameDeviceWithLocalPosition_ReturnsFalse 1ms
โœ… TPPLastReadPositionSynchronizerTests testSyncDecision_WhenSameDeviceWithNoLocalPosition_ReturnsTrue 3ms
โœ… TPPLastReadPositionSynchronizerTests testSyncDecision_WhenServerBookmarkHasEmptyDevice_AndLocalDeviceEmpty_ReturnsFalse 6ms
โœ… TPPLastReadPositionSynchronizerTests testSyncDecision_WhenServerDeviceIsNilAndLocalDeviceIDEmpty_ReturnsFalse 2ms
โœ… TPPLastReadPositionSynchronizerTests testSyncDecision_WhenServerHasNoPositionAndNilDeviceID_ReturnsFalse <1ms
โœ… TPPLastReadPositionSynchronizerTests testSyncDecision_WhenServerHasNoPositionAndNoLocalPosition_ReturnsFalse 4ms
โœ… TPPLastReadPositionSynchronizerTests testSyncDecision_WhenServerHasNoPosition_ReturnsFalse 1ms
โœ… TPPLastReadPositionSynchronizerTests testSyncDecision_WhenServerPositionMatchesLocal_ReturnsFalse 1ms
โœ… TPPLastReadPositionSynchronizerTests testSyncDecision_WhenServerReturnsNilOnError_ReturnsFalse 4ms
โœ… TPPLastReadPositionSynchronizerTests testSyncDecision_WithMatchingLocation_StillComparesAsStrings <1ms
โœ… TPPLastReadPositionSynchronizerTests testSynchronizer_Init_AcceptsDifferentRegistryImplementations 1ms
โœ… TPPLastReadPositionSynchronizerTests testSynchronizer_Init_StoresBookRegistry 1ms
โœ… TPPLastReadPositionSynchronizer_BehaviorDocumentationTests testBehavior_DifferentDevice_UserShouldBePrompted 3ms
โœ… TPPLastReadPositionSynchronizer_BehaviorDocumentationTests testBehavior_FreshDevice_ShouldSyncFromServer 198ms
โœ… TPPLastReadPositionSynchronizer_BehaviorDocumentationTests testBehavior_IdenticalPositions_NoPromptNeeded 12ms
โœ… TPPLastReadPositionSynchronizer_BehaviorDocumentationTests testBehavior_NoServerPosition_NoSync 1.09s
โœ… TPPLastReadPositionSynchronizer_BehaviorDocumentationTests testBehavior_SameDevice_LocalPositionIsAuthoritative 31ms
โœ… TPPLastReadPositionSynchronizer_BookLocationTests testTPPBookLocation_Creation_WithValidParameters <1ms
โœ… TPPLastReadPositionSynchronizer_BookLocationTests testTPPBookLocation_DictionaryRepresentation_ContainsRequiredKeys <1ms
โœ… TPPLastReadPositionSynchronizer_BookLocationTests testTPPBookLocation_DifferentLocationStrings_AreNotEqual <1ms
โœ… TPPLastReadPositionSynchronizer_BookLocationTests testTPPBookLocation_EmptyLocationString_IsValid 9ms
โœ… TPPLastReadPositionSynchronizer_BookLocationTests testTPPBookLocation_FromDictionary_CreatesValidLocation 10ms
โœ… TPPLastReadPositionSynchronizer_BookLocationTests testTPPBookLocation_FromDictionary_WithMissingKeys_ReturnsNil <1ms
โœ… TPPLastReadPositionSynchronizer_BookLocationTests testTPPBookLocation_LocationStringEquality_MatchesExactly <1ms
โœ… TPPLastReadPositionSynchronizer_BookLocationTests testTPPBookLocation_R3Renderer_HasCorrectValue <1ms
โœ… TPPLastReadPositionSynchronizer_BookLocationTests testTPPBookLocation_VeryLongLocationString_IsHandled 75ms
โœ… TPPLastReadPositionSynchronizer_ConcurrencyTests testConcurrentLocationUpdates_DoNotCrash 3ms
โœ… TPPLastReadPositionSynchronizer_ConcurrencyTests testConcurrentSyncDecisions_AreConsistent 1ms
โœ… TPPLastReadPositionSynchronizer_ConcurrencyTests testMultipleSynchronizersWithSameRegistry_DoNotConflict 4ms
โœ… TPPLastReadPositionSynchronizer_ReadiumBookmarkTests testReadiumBookmark_DeviceProperty_WithNilDevice_ReturnsNil 16ms
โœ… TPPLastReadPositionSynchronizer_ReadiumBookmarkTests testReadiumBookmark_DictionaryRepresentation_ContainsAllKeys 2ms
โœ… TPPLastReadPositionSynchronizer_ReadiumBookmarkTests testReadiumBookmark_Equality_SameAnnotationId 59ms
โœ… TPPLastReadPositionSynchronizer_ReadiumBookmarkTests testReadiumBookmark_FullProgress_FormatsAs100 2ms
โœ… TPPLastReadPositionSynchronizer_ReadiumBookmarkTests testReadiumBookmark_Init_WithNilHref_ReturnsNil 10ms
โœ… TPPLastReadPositionSynchronizer_ReadiumBookmarkTests testReadiumBookmark_Init_WithValidParameters 2ms
โœ… TPPLastReadPositionSynchronizer_ReadiumBookmarkTests testReadiumBookmark_PercentInBook_FormatsCorrectly 12ms
โœ… TPPLastReadPositionSynchronizer_ReadiumBookmarkTests testReadiumBookmark_PercentInChapter_FormatsCorrectly <1ms
โœ… TPPLastReadPositionSynchronizer_ReadiumBookmarkTests testReadiumBookmark_ZeroProgress_FormatsAsZero <1ms
โœ… TPPLastReadPositionSynchronizer_SyncLogicTests testSyncLogic_DeviceCheckTakesPrecedenceOverLocationMatch 3ms
โœ… TPPLastReadPositionSynchronizer_SyncLogicTests testSyncLogic_DeviceIDCaseSensitivity 1ms
โœ… TPPLastReadPositionSynchronizer_SyncLogicTests testSyncLogic_DeviceIDWithSpecialCharacters <1ms
โœ… TPPLastReadPositionSynchronizer_SyncLogicTests testSyncLogic_LocationMatchPreventsSync_EvenFromDifferentDevice 1ms
โœ… TPPLastReadPositionSynchronizer_SyncLogicTests testSyncLogic_LocationWithWhitespace_ExactMatchRequired 1ms
โœ… TPPLastReadPositionSynchronizer_SyncLogicTests testSyncLogic_ProgressAtExactBoundaries 6ms
โœ… TPPLastReadPositionSynchronizer_SyncLogicTests testSyncLogic_SameBookmarkLocation_ExactStringMatch 2ms
โœ… TPPLastReadPositionSynchronizer_SyncLogicTests testSyncLogic_SameLocationString_HandledGracefully 1ms
โœ… TPPLastReadPositionSynchronizer_SyncLogicTests testSyncLogic_VeryLongDeviceID 1ms
โœ… TPPLastReadPositionSynchronizer_SyncLogicTests testSyncLogic_VerySmallProgressDifference 2ms
โœ… TPPLastReadPositionSynchronizer_WriterDelegationTests testSync_sameDevice_andLocalExists_skipsAlertPath 7ms
โœ… TPPLastReadPositionSynchronizer_WriterDelegationTests testSync_serverEqualsLocal_skipsAlertPath 917ms
โœ… TPPLastReadPositionSynchronizer_WriterDelegationTests testSync_writerReturnsNil_callsLoadOnce_noAlertPath 92ms
โœ… TPPLastReadPositionSynchronizer_WriterDelegationTests testSync_writerThrows_logsAndReturnsWithoutAlert 59ms
โœ… TPPLoginNoActivationTests testValidateCredentials_doesNotTriggerAdobeActivation 165ms
โœ… TPPLoginNoActivationTests testValidateCredentials_savesLicensorForLaterUse 125ms
โœ… TPPLoginNoActivationTests testValidateCredentials_withStaleCredentials_doesNotActivate 61ms
โœ… TPPMainThreadCheckerTests testAsyncIfNeeded_FromBackgroundThread_DispatchesAsyncToMain 5ms
โœ… TPPMainThreadCheckerTests testAsyncIfNeeded_FromMainThread_ExecutesSynchronously 1ms
โœ… TPPMainThreadCheckerTests testSync_FromBackgroundThread_DispatchesToMainThread 6ms
โœ… TPPMainThreadCheckerTests testSync_FromMainThread_ExecutesSynchronously 2ms
โœ… TPPMigrationManagerTests testVersion_emptyA_nonEmptyB_returnsTrue <1ms
โœ… TPPMigrationManagerTests testVersion_emptyA_zeroB_returnsFalse 36ms
โœ… TPPMigrationManagerTests testVersion_emptyA_zeroZeroB_returnsFalse 20ms
โœ… TPPMigrationManagerTests testVersion_emptyArrays_returnsFalse 12ms
โœ… TPPMigrationManagerTests testVersion_equalVersions_returnsFalse 1ms
โœ… TPPMigrationManagerTests testVersion_longerA_returnsFalse 39ms
โœ… TPPMigrationManagerTests testVersion_majorGreaterThan_returnsFalse 2ms
โœ… TPPMigrationManagerTests testVersion_majorLessThan_returnsTrue 1ms
โœ… TPPMigrationManagerTests testVersion_minorGreaterThan_returnsFalse 3ms
โœ… TPPMigrationManagerTests testVersion_minorLessThan_returnsTrue 1ms
โœ… TPPMigrationManagerTests testVersion_patchLessThan_returnsTrue <1ms
โœ… TPPMigrationManagerTests testVersion_shorterA_withNonZeroRemainder_returnsTrue 3ms
โœ… TPPMigrationManagerTests testVersion_shorterA_withZeroRemainder_returnsFalse 1ms
โœ… TPPMigrationManagerTests testVersion_singleComponent_equal <1ms
โœ… TPPMigrationManagerTests testVersion_singleComponent_lessThan 3ms
โœ… TPPNetworkExecutorAPITests testBearerAuthorized_preservesExistingHeaders 4ms
โœ… TPPNetworkExecutorAPITests testBearerAuthorized_setsAuthorizationHeader 4ms
โœ… TPPNetworkExecutorAPITests testCancelNonEssentialTasks_doesNotCrash 6ms
โœ… TPPNetworkExecutorAPITests testClearCache_doesNotCrash 13ms
โœ… TPPNetworkExecutorAPITests testInit_withCachingStrategy_doesNotCrash 3ms
โœ… TPPNetworkExecutorAPITests testInit_withCustomSessionConfiguration 10ms
โœ… TPPNetworkExecutorAPITests testInit_withDefaultCachingStrategy 35ms
โœ… TPPNetworkExecutorAPITests testInit_withFallbackCachingStrategy <1ms
โœ… TPPNetworkExecutorAPITests testPauseAllTasks_doesNotCrash 3ms
โœ… TPPNetworkExecutorAPITests testRequest_forURL_createsValidRequest 26ms
โœ… TPPNetworkExecutorAPITests testRequest_forURL_setsAcceptLanguageEmpty 3ms
โœ… TPPNetworkExecutorAPITests testRequest_forURL_setsUserAgent 8ms
โœ… TPPNetworkExecutorAPITests testResumeAllTasks_doesNotCrash 8ms
โœ… TPPNetworkExecutorAPITests testShared_isNotNil 2ms
โœ… TPPNetworkExecutorConcurrencyTests testConcurrentExecuteRequest_completionHandlerPath_firesExactlyOnce 51ms
โœ… TPPNetworkExecutorConcurrencyTests testConcurrentGET_serverError_eachFailureFiresExactlyOnce 693ms
โœ… TPPNetworkExecutorConcurrencyTests testConcurrentGET_viaContinuations_eachCompletionFiresExactlyOnce 102ms
โœ… TPPNetworkExecutorConcurrencyTests testConcurrentNetworkCancellation_allTasksCancelOrComplete 64ms
โœ… TPPNetworkExecutorStubbedTests testAddBearerAndExecute_setsAuthHeader 19ms
โœ… TPPNetworkExecutorStubbedTests testDELETE_async_success 6ms
โœ… TPPNetworkExecutorStubbedTests testDELETE_nilCompletion_doesNotCrash 12ms
โœ… TPPNetworkExecutorStubbedTests testDELETE_setsMethodToDELETE 98ms
โœ… TPPNetworkExecutorStubbedTests testDownload_createsDownloadTask 23ms
โœ… TPPNetworkExecutorStubbedTests testGET_async_success 11ms
โœ… TPPNetworkExecutorStubbedTests testGET_async_withRequest 33ms
โœ… TPPNetworkExecutorStubbedTests testGET_correctsHTTPMethodIfNotGET 20ms
โœ… TPPNetworkExecutorStubbedTests testGET_objcAPI_success 8ms
โœ… TPPNetworkExecutorStubbedTests testGET_serverError_returnsFailure 135ms
โœ… TPPNetworkExecutorStubbedTests testGET_success_returnsData 47ms
โœ… TPPNetworkExecutorStubbedTests testPOST_async_success 79ms
โœ… TPPNetworkExecutorStubbedTests testPOST_nilCompletion_doesNotCrash 15ms
โœ… TPPNetworkExecutorStubbedTests testPOST_setsMethodToPOST 7ms
โœ… TPPNetworkExecutorStubbedTests testPUT_async_success 20ms
โœ… TPPNetworkExecutorStubbedTests testPUT_correctsHTTPMethodIfNotPUT 31ms
โœ… TPPNetworkExecutorStubbedTests testPUT_setsMethodToPUT 8ms
โœ… TPPNetworkExecutorTests testExecutor_conformsToProtocol 4ms
โœ… TPPNetworkExecutorTests testExecutor_hasCorrectTimeout <1ms
โœ… TPPNetworkExecutorTests testExecutor_usesEphemeralCaching 3ms
โœ… TPPNetworkResponderAuthCoordinatorTests testClassifier_seam_401_crossDomain_returnsOk_preservingResponderCDNGuard 563ms
โœ… TPPNetworkResponderAuthCoordinatorTests testClassifier_seam_401_foreignHost_returnsOk_preservingResponderForeignHostGuard 78ms
โœ… TPPNetworkResponderAuthCoordinatorTests testResponder_200_doesNotConsumeRetryBudget_andCompletionSucceeds 224ms
โœ… TPPNetworkResponderAuthCoordinatorTests testResponder_401_completion_fires_underBudget_andPreservesRetryTrackingShape 189ms
โœ… TPPNetworkResponderAuthCoordinatorTests testResponder_401_whenURLAlreadyRetried_completionFiresWithFailure 5ms
โœ… TPPNetworkResponderSizeLimitTests testResponse_declaredContentLengthExactlyAtCap_succeeds 50ms
โœ… TPPNetworkResponderSizeLimitTests testResponse_declaredContentLengthOverCap_refusedUpFront 49ms
โœ… TPPNetworkResponderSizeLimitTests testResponse_exactlyAtCap_succeeds 55ms
โœ… TPPNetworkResponderSizeLimitTests testResponse_overCap_failsWithResponseTooLarge_andDropsBody 120ms
โœ… TPPNetworkResponderSizeLimitTests testResponse_underCap_succeedsWithFullBody 68ms
โœ… TPPNetworkResponderTests testAddCompletionStoresTaskInfo 42ms
โœ… TPPNetworkResponderTests testCanRetryReturnsFalseAfterMarkRetried <1ms
โœ… TPPNetworkResponderTests testCanRetryReturnsFalseForNilURL <1ms
โœ… TPPNetworkResponderTests testCanRetryReturnsTrueForFreshURL 9ms
โœ… TPPNetworkResponderTests testClearAllRetriesResetsEverything <1ms
โœ… TPPNetworkResponderTests testClearRetryResetsURL 1ms
โœ… TPPNetworkResponderTests testInitWithCredentialsProvider 1ms
โœ… TPPNetworkResponderTests testInitWithFallbackCachingDisabledByDefault 12ms
โœ… TPPNetworkResponderTests testMarkRetriedWithNilURL_isNoOp_andLeavesRealURLTrackingIntact 34ms
โœ… TPPNetworkResponderTests testMultipleURLsTrackedIndependently <1ms
โœ… TPPNetworkResponderTests testSessionInvalidationCallsPendingCompletionsWithCancelError 4ms
โœ… TPPNetworkResponderTests testUpdateCompletionIdTransfersInfo <1ms
โœ… TPPOPDSAcquisitionPathTests testSampleLinkInAcquisitions 8ms
โœ… TPPOPDSAcquisitionPathTests testSimplifiedAdeptEpubAcquisition 6ms
โœ… TPPOPDSAcquisitionPathTests testSupportedAcquisitionPaths_borrowToStreamingHTMLIndirect_producesStreamingPath 6ms
โœ… TPPOPDSAcquisitionPathTests testTPPOPDSAcquisitionPath_supportedSubtypes_forOPDSPublication_containsStreamingHTML 45ms
โœ… TPPOPDSAcquisitionPathTests testTPPOPDSAcquisitionPath_supportedTypes_containsStreamingHTML 2ms
โœ… TPPOPDSEntryTests testAuthorStrings 2ms
โœ… TPPOPDSEntryTests testEntryFromSingleEntryFixture_parsesAllScalarFields 3ms
โœ… TPPOPDSEntryTests testGroupAttributes 6ms
โœ… TPPOPDSEntryTests testInit_returnsNilWhenRequiredIdElementIsMissing 160ms
โœ… TPPOPDSEntryTests testUpdated 6ms
โœ… TPPOPDSFeedTests testFeedFromMainFixture_parsesAllTopLevelFields 19ms
โœ… TPPOPDSFeedTests testInit_nilXMLYieldsNil_validXMLYieldsParsedFeed 19ms
โœ… TPPOPDSFeedTests testUpdated 23ms
โœ… TPPOPDSGroupSwiftTests testInitStoresEntries 1ms
โœ… TPPOPDSGroupSwiftTests testInitStoresProperties <1ms
โœ… TPPOPDSGroupSwiftTests testInitWithDifferentHref_storesDifferentHref 176ms
โœ… TPPOPDSLinkTests testCount 1ms
โœ… TPPOPDSLinkTests testHandlesNilInit 15ms
โœ… TPPOPDSLinkTests testLink0 1ms
โœ… TPPOPDSLinkTests testLink1 3ms
โœ… TPPOPDSLinkTests testLink2 1ms
โœ… TPPOPDSLinkTests testLink3 1ms
โœ… TPPOPDSLinkTests testLink4 1ms
โœ… TPPOpenSearchDescriptionExpandedTests test_initWithTitle_emptyBooks_setsEmptyBooks 31ms
โœ… TPPOpenSearchDescriptionExpandedTests test_initWithTitle_setsDescriptionAndBooks 40ms
โœ… TPPOpenSearchDescriptionExpandedTests test_initWithXML_missingDescription_returnsNil <1ms
โœ… TPPOpenSearchDescriptionExpandedTests test_initWithXML_missingOPDSUrl_returnsNil 15ms
โœ… TPPOpenSearchDescriptionExpandedTests test_initWithXML_validOpenSearchXML_returnsNonNil <1ms
โœ… TPPOpenSearchDescriptionExpandedTests test_opdsURLForSearching_emptyString_returnsURL 1ms
โœ… TPPOpenSearchDescriptionExpandedTests test_opdsURLForSearching_encodesAmpersand <1ms
โœ… TPPOpenSearchDescriptionExpandedTests test_opdsURLForSearching_encodesSpecialCharacters 35ms
โœ… TPPOpenSearchDescriptionExpandedTests test_opdsURLForSearching_encodesUnicode <1ms
โœ… TPPOpenSearchDescriptionExpandedTests test_opdsURLForSearching_preservesEntrypoint <1ms
โœ… TPPOpenSearchDescriptionTests testOPDSURLSearch 4ms
โœ… TPPPDFDocumentMetadataTests testAddBookmark_AtCurrentPage_WhenNilPassed_UsesCurrentPage 19ms
โœ… TPPPDFDocumentMetadataTests testAddBookmark_AtPageZero_HandlesCorrectly 2ms
โœ… TPPPDFDocumentMetadataTests testAddBookmark_AtSpecificPage_AddsToBookmarks 2ms
โœ… TPPPDFDocumentMetadataTests testAddBookmark_DuplicatePage_DoesNotDuplicate 2ms
โœ… TPPPDFDocumentMetadataTests testAddBookmark_MultipleTimes_AddsAllBookmarks 2ms
โœ… TPPPDFDocumentMetadataTests testBookmarks_IsPublished_EmitsChanges 2ms
โœ… TPPPDFDocumentMetadataTests testCurrentPage_IsPublished_EmitsChanges 2ms
โœ… TPPPDFDocumentMetadataTests testIsBookmarked_WhenPageInBookmarks_ReturnsTrue 2ms
โœ… TPPPDFDocumentMetadataTests testIsBookmarked_WhenPageNotInBookmarks_ReturnsFalse 23ms
โœ… TPPPDFDocumentMetadataTests testIsBookmarked_WithEmptyBookmarks_ReturnsFalse 2ms
โœ… TPPPDFDocumentMetadataTests testIsBookmarked_WithLargePageNumber_HandlesCorrectly 4ms
โœ… TPPPDFDocumentMetadataTests testIsBookmarked_WithNilPage_ChecksCurrentPage 3ms
โœ… TPPPDFDocumentMetadataTests testIsBookmarked_WithZeroPage_HandlesCorrectly 2ms
โœ… TPPPDFDocumentMetadataTests testRemoveBookmark_NonexistentPage_DoesNotCrash 2ms
โœ… TPPPDFDocumentMetadataTests testRemoveBookmark_RemovesFromBookmarks 5ms
โœ… TPPPDFDocumentTests testPDFDocument_delegateCanBeSet 8ms
โœ… TPPPDFDocumentTests testPDFDocument_initFromData_exposesData 85ms
โœ… TPPPDFDocumentTests testPDFDocument_labelReturnsNilForInvalidPage 164ms
โœ… TPPPDFDocumentTests testPDFDocument_pageCountForInvalidData 4ms
โœ… TPPPDFDocumentTests testPDFDocument_previewReturnsNilForInvalidPage <1ms
โœ… TPPPDFDocumentTests testPDFDocument_sizeReturnsNilForInvalidPage <1ms
โœ… TPPPDFDocumentTests testPDFDocument_tableOfContentsEmptyForInvalidData <1ms
โœ… TPPPDFDocumentTests testPDFDocument_thumbnailReturnsNilForInvalidPage 1ms
โœ… TPPPDFLocationCoverageTests testPDFLocation_defaultLevelIsZero <1ms
โœ… TPPPDFLocationCoverageTests testPDFLocation_differentLocations_differentIds 7ms
โœ… TPPPDFLocationCoverageTests testPDFLocation_id_encodesAllFields <1ms
โœ… TPPPDFLocationCoverageTests testPDFLocation_id_handlesNils 55ms
โœ… TPPPDFLocationCoverageTests testPDFLocation_identifiableId_isDeterministic <1ms
โœ… TPPPDFLocationCoverageTests testPDFLocation_initWithAllParameters <1ms
โœ… TPPPDFLocationCoverageTests testPDFLocation_nilProperties <1ms
โœ… TPPPDFLocationTests testId_ContainsPageNumber <1ms
โœ… TPPPDFLocationTests testId_HandlesNilValues_WithEmptyStrings 1ms
โœ… TPPPDFLocationTests testId_SameForIdenticalLocations 48ms
โœ… TPPPDFLocationTests testId_UniqueForDifferentLevels 2ms
โœ… TPPPDFLocationTests testId_UniqueForDifferentPageLabels <1ms
โœ… TPPPDFLocationTests testId_UniqueForDifferentPages 64ms
โœ… TPPPDFLocationTests testId_UniqueForDifferentSubtitles 2ms
โœ… TPPPDFLocationTests testId_UniqueForDifferentTitles 21ms
โœ… TPPPDFLocationTests testInit_AllParameters_SetsProperties <1ms
โœ… TPPPDFLocationTests testInit_NilOptionals_DefaultsLevelToZero <1ms
โœ… TPPPDFPageBookmarkTests testPageBookmark_annotationIdCanBeSet 2ms
โœ… TPPPDFPageBookmarkTests testPageBookmark_annotationIdDefaultsToNil 455ms
โœ… TPPPDFPageBookmarkTests testPageBookmark_codableRoundTrip 4ms
โœ… TPPPDFPageBookmarkTests testPageBookmark_conformsToBookmark 3ms
โœ… TPPPDFPageBookmarkTests testPageBookmark_decodesFromJSON 611ms
โœ… TPPPDFPageBookmarkTests testPageBookmark_encodesAtTypeKey 1ms
โœ… TPPPDFPageBookmarkTests testPageBookmark_initSetsPage 349ms
โœ… TPPPDFPageBookmarkTests testPageBookmark_isNSObject 2ms
โœ… TPPPDFPageBookmarkTests testPageBookmark_typeIsLocatorPage 25ms
โœ… TPPPDFPageTests testPDFPage_codableRoundTrip <1ms
โœ… TPPPDFPageTests testPDFPage_decodesFromJSON 2ms
โœ… TPPPDFPageTests testPDFPage_encodesToExpectedJSON 8ms
โœ… TPPPDFPageTests testPDFPage_initStoresPageNumber 7ms
โœ… TPPPDFPageTests testPDFPage_zeroPageNumber <1ms
โœ… TPPPDFReaderModeTests testReaderMode_allCasesHaveUniqueValues 4ms
โœ… TPPPDFReaderModeTests testReaderMode_bookmarksValue 2ms
โœ… TPPPDFReaderModeTests testReaderMode_previewsValue <1ms
โœ… TPPPDFReaderModeTests testReaderMode_readerValue <1ms
โœ… TPPPDFReaderModeTests testReaderMode_searchValue <1ms
โœ… TPPPDFReaderModeTests testReaderMode_tocValue <1ms
โœ… TPPPDFReaderSearchBindingTests test_searchSheetReaderMode_dismissFromNonSearch_isNoOp 1ms
โœ… TPPPDFReaderSearchBindingTests test_searchSheetReaderMode_dismissFromSearch_returnsToReader 2ms
โœ… TPPPDFReaderSearchBindingTests test_searchSheetReaderMode_stillPresented_staysSearch 1ms
โŠ˜ TPPPerAccountIsolationTests testConcurrentAccess_noContamination 70ms
โŠ˜ TPPPerAccountIsolationTests testConcurrentSnapshots_returnCorrectData 105ms
โŠ˜ TPPPerAccountIsolationTests testCredentialIsolation_bothAccountsHoldIndependentCredentials 45ms
โŠ˜ TPPPerAccountIsolationTests testCredentialIsolation_tokenCredentials 17ms
โŠ˜ TPPPerAccountIsolationTests testCredentialIsolation_writeToA_doesNotAffectB 52ms
โŠ˜ TPPPerAccountIsolationTests testCredentialSnapshot_perAccountIsolation 47ms
โŠ˜ TPPPerAccountIsolationTests testInstanceCache_isStableSameUUID_distinctDifferentUUIDs_andPreservesBinding 170ms
โŠ˜ TPPPerAccountIsolationTests testRemoveAll_doesNotAffectOtherAccount 285ms
โœ… TPPPreferredAuthSelectionTests testAfterAutoSelection_SelectedAuthIsSaml_forMultiAuthLibrary 85ms
โœ… TPPPreferredAuthSelectionTests testPrecondition_NYPLFixtureHasMultipleAuthMethods 44ms
โœ… TPPPreferredAuthSelectionTests testSelectPreferredAuth_AutoSelectsSoleSAMLIDP 72ms
โœ… TPPPreferredAuthSelectionTests testSelectPreferredAuth_DoesNotOverrideExplicitChoice 42ms
โœ… TPPPreferredAuthSelectionTests testSelectPreferredAuth_DoesNotOverrideExplicitIDPChoice 63ms
โœ… TPPPreferredAuthSelectionTests testSelectPreferredAuth_IsIdempotent 53ms
โœ… TPPPreferredAuthSelectionTests testSelectPreferredAuth_NoOp_ForSingleAuthLibrary 29ms
โœ… TPPPreferredAuthSelectionTests testSelectPreferredAuth_PicksSAML_WhenMultipleAuthsAndNoneSelected 51ms
โœ… TPPProblemDocumentCacheManagerTests testCacheMultipleDocuments_lastEntryRetrievable 2ms
โœ… TPPProblemDocumentCacheManagerTests testCacheProblemDocument_andRetrieve 1ms
โœ… TPPProblemDocumentCacheManagerTests testCacheProblemDocument_postsNotification 40ms
โœ… TPPProblemDocumentCacheManagerTests testCacheSize_isFive 2ms
โœ… TPPProblemDocumentCacheManagerTests testCache_exceedingSize_evictsOldestEntry <1ms
โœ… TPPProblemDocumentCacheManagerTests testClearCachedDoc_nonexistentKey_doesNotCrash 2ms
โœ… TPPProblemDocumentCacheManagerTests testClearCachedDoc_preventsRetrieval 1ms
โœ… TPPProblemDocumentCacheManagerTests testClearThenReCache_works 30ms
โœ… TPPProblemDocumentCacheManagerTests testConcurrentCacheAndClear_sameKey_doesNotCrash 9ms
โœ… TPPProblemDocumentCacheManagerTests testConcurrentReadWrite_doesNotCrash 5ms
โœ… TPPProblemDocumentCacheManagerTests testGetLastCachedDoc_unknownKey_returnsNil 2ms
โœ… TPPProblemDocumentCacheManagerTests testSharedInstance_returnsSameObject 4ms
โœ… TPPProblemDocumentTests testAccountStatusTypeConstants 503ms
โœ… TPPProblemDocumentTests testCodableRoundTrip 141ms
โœ… TPPProblemDocumentTests testDictionaryValue_roundTrip 6ms
โœ… TPPProblemDocumentTests testForExpiredOrMissing_hasCredentials 11ms
โœ… TPPProblemDocumentTests testForExpiredOrMissing_noCredentials 3ms
โœ… TPPProblemDocumentTests testFromData_invalidJSON 1ms
โœ… TPPProblemDocumentTests testFromData_validJSON 27ms
โœ… TPPProblemDocumentTests testFromDictionary_createsDocument 5ms
โœ… TPPProblemDocumentTests testFromProblemResponseData_invalidData 74ms
โœ… TPPProblemDocumentTests testFromProblemResponseData_nonProblemJSON <1ms
โœ… TPPProblemDocumentTests testFromProblemResponseData_validData <1ms
โœ… TPPProblemDocumentTests testFromResponseError_nilErrorNilData 2ms
โœ… TPPProblemDocumentTests testFromResponseError_withResponseData 12ms
โœ… TPPProblemDocumentTests testIsRecoverableAuthError 572ms
โœ… TPPProblemDocumentTests testIsUnrecoverableAuthError 3ms
โœ… TPPProblemDocumentTests testNilType_authChecks 4ms
โœ… TPPProblemDocumentTests testNonAuthError <1ms
โœ… TPPProblemDocumentTests testStaticTypeConstants 3ms
โœ… TPPProblemDocumentTests testStringValue_format <1ms
โœ… TPPProblemDocumentTests testStringValue_noDetail 84ms
โœ… TPPProblemDocumentTests testStringValue_noTitle <1ms
โœ… TPPReaderAppearanceTests testAssociatedColors_blackOnWhite_hasLightBackground <1ms
โœ… TPPReaderAppearanceTests testBlackOnSepia_hasCorrectPropertyIndex 2ms
โœ… TPPReaderAppearanceTests testBlackOnWhite_hasCorrectPropertyIndex <1ms
โœ… TPPReaderAppearanceTests testWhiteOnBlack_hasCorrectPropertyIndex 3ms
โœ… TPPReaderBlockNavigationTests testAnnotationJS_isNonEmptyAndCarriesSelectorMarkerAndCount 2ms
โœ… TPPReaderBlockNavigationTests testAnnotationJS_skipsNestedBlocks 1ms
โœ… TPPReaderBlockNavigationTests testBlockSelector_containsKeyBlockTags <1ms
โœ… TPPReaderBlockNavigationTests testIsBlockTag_blockquote_isTrue 493ms
โœ… TPPReaderBlockNavigationTests testIsBlockTag_definitionAndFigureAndPre_areTrue <1ms
โœ… TPPReaderBlockNavigationTests testIsBlockTag_headings_areTrue 1ms
โœ… TPPReaderBlockNavigationTests testIsBlockTag_inlineElements_areFalse <1ms
โœ… TPPReaderBlockNavigationTests testIsBlockTag_isCaseInsensitive 13ms
โœ… TPPReaderBlockNavigationTests testIsBlockTag_listItem_isTrue 67ms
โœ… TPPReaderBlockNavigationTests testIsBlockTag_nilAndUnrelated_areFalse <1ms
โœ… TPPReaderBlockNavigationTests testIsBlockTag_paragraph_isTrue 775ms
โœ… TPPReaderBlockNavigationTests testNextBlockJS_forwardAndBackBothFocusAMarkedBlock 3ms
โœ… TPPReaderBookmarksBusinessLogicTests testBookmarkAtIndex_WithEmptyBookmarks_ReturnsNil 57ms
โœ… TPPReaderBookmarksBusinessLogicTests testBookmarkAtIndex_WithValidIndex_ReturnsBookmark 90ms
โœ… TPPReaderBookmarksBusinessLogicTests testBookmarkAtIndex_returnsNilForOutOfRangeIndicesEmptyOrPopulated 313ms
โœ… TPPReaderBookmarksBusinessLogicTests testDeleteBookmarkAtIndex_WithInvalidIndex_ReturnsNil 23ms
โœ… TPPReaderBookmarksBusinessLogicTests testDeleteBookmarkAtIndex_WithValidIndex_RemovesAndReturns 23ms
โœ… TPPReaderBookmarksBusinessLogicTests testDeleteBookmark_RemovesFromList 42ms
โœ… TPPReaderBookmarksBusinessLogicTests testPP3555_OldBookmarksDoNotReappearAfterReborrow 54ms
โœ… TPPReaderBookmarksBusinessLogicTests testReadOnlySurfaces_noBookmarksText_shouldSelect_isBookmarkExisting 82ms
โœ… TPPReaderBookmarksBusinessLogicTests testUpdateLocalBookmarksWithDuplicatedLocalBookmarks 21ms
โœ… TPPReaderBookmarksBusinessLogicTests testUpdateLocalBookmarksWithExtraLocalBookmarks 42ms
โœ… TPPReaderBookmarksBusinessLogicTests testUpdateLocalBookmarksWithFailedUploadBookmarks 40ms
โœ… TPPReaderBookmarksBusinessLogicTests testUpdateLocalBookmarksWithNoLocalBookmarks 492ms
โœ… TPPReaderBookmarksReadinessTests testReadiness_underDetailsFailed_gateThrowsForBookmarkTask 32ms
โœ… TPPReaderBookmarksReadinessTests testReadiness_underDetailsLoading_gateConsumedByPostBookmark 39ms
โœ… TPPReaderFontTests testDyslexic_hasPropertyIndex <1ms
โœ… TPPReaderFontTests testOriginal_hasCorrectPropertyIndex 2ms
โœ… TPPReaderFontTests testSansSerif_hasPropertyIndex 11ms
โœ… TPPReaderFontTests testSerif_hasPropertyIndex 1ms
โœ… TPPReaderFootnoteAccessibilityTests testAnnotationJS_isNonEmptyAndCarriesLabelsAndSelectors 1ms
โœ… TPPReaderFootnoteAccessibilityTests testLabel_backlink_isBackToReference 12ms
โœ… TPPReaderFootnoteAccessibilityTests testLabel_note_isFootnote 1ms
โœ… TPPReaderFootnoteAccessibilityTests testLabel_referenceTrimsMarker <1ms
โœ… TPPReaderFootnoteAccessibilityTests testLabel_referenceWithEmptyOrWhitespaceMarker_isGeneric <1ms
โœ… TPPReaderFootnoteAccessibilityTests testLabel_referenceWithMarker_includesMarker 2ms
โœ… TPPReaderFootnoteAccessibilityTests testLabel_referenceWithNonNumericMarker_includesMarker 2ms
โœ… TPPReaderFootnoteAccessibilityTests testRole_ariaRoleVocabularyShared <1ms
โœ… TPPReaderFootnoteAccessibilityTests testRole_backlink_isBacklink 35ms
โœ… TPPReaderFootnoteAccessibilityTests testRole_endnoteAndRearnote_areNote 2ms
โœ… TPPReaderFootnoteAccessibilityTests testRole_footnote_isNote 2ms
โœ… TPPReaderFootnoteAccessibilityTests testRole_isCaseInsensitive <1ms
โœ… TPPReaderFootnoteAccessibilityTests testRole_multiTokenList_picksReferenceFirst <1ms
โœ… TPPReaderFootnoteAccessibilityTests testRole_nilAndEmptyAndUnrelated_areNil 2ms
โœ… TPPReaderFootnoteAccessibilityTests testRole_noteref_isReference 2ms
โœ… TPPReaderFootnoteAccessibilityTests testRole_toleratesMissingDocPrefix 8ms
โœ… TPPReaderPageListBusinessLogicTests testCurrentPageLabel_locatorWithoutProgression_returnsNil 76ms
โœ… TPPReaderPageListBusinessLogicTests testCurrentPageLabel_noPageList_returnsNil 10ms
โœ… TPPReaderPageListBusinessLogicTests testHasPageList_whenPublicationHasNoPageList_isFalse 5ms
โœ… TPPReaderPageListBusinessLogicTests testHasPageList_whenPublicationHasPages_isTrue 29ms
โœ… TPPReaderPageListBusinessLogicTests testIndexForPage_aboveHighestNumericPage_returnsLastNumericPage 1ms
โœ… TPPReaderPageListBusinessLogicTests testIndexForPage_belowLowestNumericPage_returnsNil 3ms
โœ… TPPReaderPageListBusinessLogicTests testIndexForPage_duplicateNumericLabels_resolvesToFirstPrecedingBoundary 1ms
โœ… TPPReaderPageListBusinessLogicTests testIndexForPage_emptyOrWhitespaceRequest_returnsNil 1ms
โœ… TPPReaderPageListBusinessLogicTests testIndexForPage_exactMatchIsCaseInsensitive_forRomanNumerals 6ms
โœ… TPPReaderPageListBusinessLogicTests testIndexForPage_exactNumericMatch_returnsThatIndex <1ms
โœ… TPPReaderPageListBusinessLogicTests testIndexForPage_noExactNumericMatch_fallsBackToNearestPreceding 1ms
โœ… TPPReaderPageListBusinessLogicTests testIndexForPage_nonNumericRequestNoExactMatch_returnsNil 1ms
โœ… TPPReaderPageListBusinessLogicTests testIndexForPage_numericRequestSkipsNonNumericLabels_forFallback <1ms
โœ… TPPReaderPageListBusinessLogicTests testIndexForPage_numericValueEqualsRequestButLabelDiffers_resolvesViaInclusiveFallback 359ms
โœ… TPPReaderPageListBusinessLogicTests testIndexForPage_trimsRequestWhitespace 3ms
โœ… TPPReaderPageListBusinessLogicTests testInit_dropsEntriesWithEmptyOrWhitespaceLabels <1ms
โœ… TPPReaderPageListBusinessLogicTests testInit_trimsWhitespaceFromLabels 319ms
โœ… TPPReaderPageListBusinessLogicTests testLabelAt_outOfRange_returnsNil 1ms
โœ… TPPReaderPageListBusinessLogicTests testLabelAt_validIndex_returnsLabel 2ms
โœ… TPPReaderPageListBusinessLogicTests testLocatorAt_outOfRange_returnsNil 3ms
โœ… TPPReaderPageListBusinessLogicTests testNearestPreceding_allUnresolved_returnsNil <1ms
โœ… TPPReaderPageListBusinessLogicTests testNearestPreceding_currentBeforeFirstBoundary_returnsNil <1ms
โœ… TPPReaderPageListBusinessLogicTests testNearestPreceding_emptyProgressions_returnsNil 2.02s
โœ… TPPReaderPageListBusinessLogicTests testNearestPreceding_exactMatchIsInclusive 84ms
โœ… TPPReaderPageListBusinessLogicTests testNearestPreceding_picksLargestAtOrBelowCurrent <1ms
โœ… TPPReaderPageListBusinessLogicTests testNearestPreceding_skipsUnresolvedProgressions 126ms
โœ… TPPReaderPageListBusinessLogicTests testNearestPreceding_tiesSelectFirstBoundary <1ms
โœ… TPPReaderPositionReportTests testAnnouncement_allComponents_joinsSectionPagePercentInOrder 1ms
โœ… TPPReaderPositionReportTests testAnnouncement_emptyOrWhitespaceSection_omitsSection 6ms
โœ… TPPReaderPositionReportTests testAnnouncement_emptyPageLabel_treatedAsAbsent 1ms
โœ… TPPReaderPositionReportTests testAnnouncement_noPageLabel_omitsPageButKeepsSectionAndPercent 10ms
โœ… TPPReaderPositionReportTests testAnnouncement_noPercentage_omitsPercentComponent 3ms
โœ… TPPReaderPositionReportTests testAnnouncement_noSection_omitsSection <1ms
โœ… TPPReaderPositionReportTests testAnnouncement_nothingAvailable_returnsUnavailableFallback 4ms
โœ… TPPReaderPositionReportTests testAnnouncement_onlySection_returnsSectionAlone 1ms
โœ… TPPReaderPositionReportTests testAnnouncement_percentageClampsToZeroAndOneHundred <1ms
โœ… TPPReaderPositionReportTests testAnnouncement_percentageRoundsToNearestWholePercent 1ms
โœ… TPPReaderPreferencesLoadTests testTPPReaderPreferencesLoad_disablesPublisherStyles 2ms
โœ… TPPReaderPreferencesLoadTests testTPPReaderPreferencesLoad_returnsValidPreferences 31ms
โœ… TPPReaderPreferencesLoadTests testTPPReaderPreferencesLoad_setsDefaultTheme 2ms
โœ… TPPReaderSettingsTests testCanDecreaseFontSize_falseAtMinimum <1ms
โœ… TPPReaderSettingsTests testCanIncreaseFontSize_trueWhenBelowMax 1ms
โœ… TPPReaderSettingsTests testChangeAppearance_updatesColors 2ms
โœ… TPPReaderSettingsTests testChangeAppearance_updatesIndex 7ms
โœ… TPPReaderSettingsTests testChangeFontFamily_updatesIndex 152ms
โœ… TPPReaderSettingsTests testDecreaseFontSize_decreasesByStep 1ms
โœ… TPPReaderSettingsTests testDecreaseFontSize_respectsMinimum <1ms
โœ… TPPReaderSettingsTests testIncreaseFontSize_increasesByStep 19ms
โœ… TPPReaderSettingsTests testIncreaseFontSize_respectsMaximum 36ms
โœ… TPPReaderSettingsTests testInit_getsScreenBrightness <1ms
โœ… TPPReaderSettingsTests testInit_setsDefaultAppearanceIndex 38ms
โœ… TPPReaderSettingsTests testInit_setsDefaultFontFamilyIndex 5ms
โœ… TPPReaderSettingsTests testInit_setsDefaultFontSize <1ms
โœ… TPPReaderSettingsTests testLoadPreferences_returnsPreferences 6ms
โœ… TPPReaderSettingsTests testMapAppearanceToIndex_dark <1ms
โœ… TPPReaderSettingsTests testMapAppearanceToIndex_light 2ms
โœ… TPPReaderSettingsTests testMapAppearanceToIndex_sepia 3ms
โœ… TPPReaderSettingsTests testMapFontFamilyToIndex_nil 28ms
โœ… TPPReaderSettingsTests testMapFontFamilyToIndex_openDyslexic 6ms
โœ… TPPReaderSettingsTests testMapFontFamilyToIndex_sansSerif 1ms
โœ… TPPReaderSettingsTests testMapFontFamilyToIndex_serif 1ms
โœ… TPPReaderSettingsTests testMapIndexToAppearance_dark 1ms
โœ… TPPReaderSettingsTests testMapIndexToAppearance_default 13ms
โœ… TPPReaderSettingsTests testMapIndexToAppearance_sepia 2ms
โœ… TPPReaderSettingsTests testMapIndexToFontFamily_default <1ms
โœ… TPPReaderSettingsTests testMapIndexToFontFamily_dyslexic <1ms
โœ… TPPReaderSettingsTests testMapIndexToFontFamily_sansSerif <1ms
โœ… TPPReaderSettingsTests testMapIndexToFontFamily_serif 62ms
โœ… TPPReaderTOCBusinessLogicTests testInit_withCurrentLocation_storesLocation 13ms
โœ… TPPReaderTOCBusinessLogicTests testInit_withPublication_initializesCorrectly 3ms
โœ… TPPReaderTOCBusinessLogicTests testIsCurrentChapterTitled_caseInsensitiveMatch_returnsTrue 7ms
โœ… TPPReaderTOCBusinessLogicTests testIsCurrentChapterTitled_withDifferentTitle_returnsFalse 12ms
โœ… TPPReaderTOCBusinessLogicTests testIsCurrentChapterTitled_withMatchingTitle_returnsTrue 79ms
โœ… TPPReaderTOCBusinessLogicTests testIsCurrentChapterTitled_withNilCurrentLocation_returnsFalse 6ms
โœ… TPPReaderTOCBusinessLogicTests testIsCurrentChapterTitled_withNilLocationTitle_returnsFalse 5ms
โœ… TPPReaderTOCBusinessLogicTests testShouldSelectTOCItem_invalidIndex_returnsFalse 6ms
โœ… TPPReaderTOCBusinessLogicTests testTitleAndLevel_forValidIndex_returnsTitleAndLevel 8ms
โœ… TPPReaderTOCBusinessLogicTests testTitleForHref_existingHref_returnsTitle 9ms
โœ… TPPReaderTOCBusinessLogicTests testTitleForHref_nonExistentHref_returnsNil 17ms
โœ… TPPReaderTOCBusinessLogicTests testTocDisplayTitle_returnsLocalizedString 12ms
โœ… TPPReaderTOCBusinessLogicTests testTocElements_initiallyEmpty_beforeAsyncLoad 16ms
โœ… TPPReaderTOCBusinessLogicTests testTocLocator_negativeIndex_returnsNil 6ms
โœ… TPPReaderTOCBusinessLogicTests testTocLocator_outOfBoundsIndex_returnsNil 19ms
โœ… TPPReaderTOCFlattenTests testFlatten_emptyTOC_producesEmptyElements 113ms
โœ… TPPReaderTOCFlattenTests testFlatten_nestedTOC_assignsCorrectLevels 3ms
โœ… TPPReadiumBookmarkLocationMatchingTests testLocationMatches_differentChapterProgress_returnsFalse <1ms
โœ… TPPReadiumBookmarkLocationMatchingTests testLocationMatches_differentTotalProgress_returnsFalse 2ms
โœ… TPPReadiumBookmarkLocationMatchingTests testLocationMatches_exactProgress_returnsTrue <1ms
โœ… TPPReadiumBookmarkLocationMatchingTests testLocationMatches_matchingProgress_returnsTrue <1ms
โœ… TPPReadiumBookmarkLocationMatchingTests testLocationMatches_nilLocatorProgress_matchesZeroBookmarkProgress <1ms
โœ… TPPReadiumBookmarkTests testDescription_returnsNonEmptyString 6ms
โœ… TPPReadiumBookmarkTests testDictionaryRepresentation_containsAllFields 66ms
โœ… TPPReadiumBookmarkTests testInit_dictionary_withBothOffsetAndChapterProgress_prefersExplicitChapterProgress 6ms
โœ… TPPReadiumBookmarkTests testInit_dictionary_withOnlyChapterProgress_preservesValue 2ms
โœ… TPPReadiumBookmarkTests testInit_dictionary_withOnlyReadingOrderItemOffset_preservesValue <1ms
โœ… TPPReadiumBookmarkTests testInit_fromDictionary_createsBookmark <1ms
โœ… TPPReadiumBookmarkTests testInit_fromDictionary_withEmptyAnnotationId_setsNil 39ms
โœ… TPPReadiumBookmarkTests testInit_fromDictionary_withMissingRequiredFields_returnsNil <1ms
โœ… TPPReadiumBookmarkTests testInit_withDefaultTime_usesCurrentTime 2ms
โœ… TPPReadiumBookmarkTests testInit_withNilHref_returnsNil 2ms
โœ… TPPReadiumBookmarkTests testInit_withValidParameters_createsBookmark <1ms
โœ… TPPReadiumBookmarkTests testIsEqual_differentHref_returnsFalse 2ms
โœ… TPPReadiumBookmarkTests testIsEqual_differentProgress_returnsFalse 48ms
โœ… TPPReadiumBookmarkTests testIsEqual_sameAnnotationId_returnsTrue 1ms
โœ… TPPReadiumBookmarkTests testIsEqual_sameProgress_noAnnotationId_returnsTrue <1ms
โœ… TPPReadiumBookmarkTests testIsEqual_withNonBookmarkObject_returnsFalse 3ms
โœ… TPPReadiumBookmarkTests testPercentInBook_formatsCorrectly 2ms
โœ… TPPReadiumBookmarkTests testPercentInBook_fullProgress_showsHundred <1ms
โœ… TPPReadiumBookmarkTests testPercentInChapter_formatsCorrectly 2ms
โœ… TPPReadiumBookmarkTests testPercentInChapter_zeroProgress_showsZero 3ms
โœ… TPPReadiumBookmarkTests testToJSONDictionary_UsesPinnedWireKeys <1ms
โœ… TPPReadiumBookmarkTests testToJSONDictionary_includesLocationFields 3ms
โœ… TPPReadiumBookmarkTests testWireFormatKeys_ArePinned 1ms
โœ… TPPReauthenticatorMockTests testMockReauthenticator_callsCompletion <1ms
โœ… TPPReauthenticatorMockTests testMockReauthenticator_tracksReauthPerformed 4ms
โœ… TPPReauthenticatorTests testAuthenticateIfNeeded_withNilCompletion_doesNotCrash 7ms
โœ… TPPReauthenticatorTests testInit_conformsToReauthenticatorProtocol 7ms
โœ… TPPReauthenticatorTests testInit_createsDistinctInstances 2ms
โœ… TPPReauthenticatorTests testInit_isNSObjectSubclass <1ms
โœ… TPPReturnPromptHelperTests testAudiobookPrompt_createsAlertController 8ms
โœ… TPPReturnPromptHelperTests testAudiobookPrompt_hasExactlyKeepAndReturnActionsWithTitles 1ms
โœ… TPPReturnPromptHelperTests testAudiobookPrompt_hasKeepAction_withCancelStyle 1ms
โœ… TPPReturnPromptHelperTests testAudiobookPrompt_hasReturnAction_withDefaultStyle 4ms
โœ… TPPReturnPromptHelperTests testAudiobookPrompt_hasTitleAndMessage 2ms
โœ… TPPSAMLCookieExpirationTests testSAMLLogin_allCookiesExpired_filtersAllAndProceedsWithEmptyArray 59ms
โœ… TPPSAMLCookieExpirationTests testSAMLLogin_allCookiesExpired_proceedsWithEmpty 4ms
โœ… TPPSAMLCookieExpirationTests testSAMLLogin_cookieExpiringInFuture_isKept <1ms
โœ… TPPSAMLCookieExpirationTests testSAMLLogin_filtersExpiredCookies 1ms
โœ… TPPSAMLCookieExpirationTests testSAMLLogin_keepsSessionCookiesWithoutExpiry 2ms
โœ… TPPSAMLCookieExpirationTests testSAMLLogin_mixOfExpiredAndValid_onlyPassesValid <1ms
โœ… TPPSAMLCookieExpirationTests testSAMLLogin_mixedExpiredAndValidCookies_filtersOnlyExpired_passesValid <1ms
โœ… TPPSAMLFlowTests testSAMLHelper_initRequiresContext_andStartsWithCleanCookieState 254ms
โœ… TPPSAMLFlowTests testSAMLLogin_callsPresenterNotUIKit 9ms
โœ… TPPSAMLFlowTests testSAMLLogin_cancelCallsCancelHandler 1ms
โœ… TPPSAMLFlowTests testSAMLLogin_completionCallsHandleRedirect 8ms
โœ… TPPSAMLFlowTests testSAMLLogin_dismissCalledAfterCompletion 2.56s
โœ… TPPSAMLFlowTests testSAMLLogin_dismissCalledWithError <1ms
โœ… TPPSAMLFlowTests testSAMLLogin_passesCorrectURLPreservesExistingQueryParams 8ms
โœ… TPPSAMLFlowTests testSAMLLogin_passesCorrectURLWithRedirectURI 1ms
โœ… TPPSAMLFlowTests testSAMLLogin_passesSavedCookiesToPresenter 225ms
โœ… TPPSAMLFlowTests testSAMLLogin_withNilIDP_doesNotCallPresenter <1ms
โœ… TPPSAMLReauthFlowTests testFreshLogin_callsAdobeActivation 79ms
โœ… TPPSAMLReauthFlowTests testSAMLReauthFlow_skipsAdobeActivation 46ms
โœ… TPPSAMLRegressionTests testOAuthFlow_unaffectedBySAMLRefactor 91ms
โœ… TPPSAMLRegressionTests testSAMLAuthType_matchesCMValue 37ms
โœ… TPPSAMLRegressionTests testSAMLIdPParsing_fromAuthDocumentLinks 102ms
โœ… TPPSAMLRegressionTests testSAMLRedirectURL_matchesCMExpectedPattern 1ms
โœ… TPPSAMLSignInTests testAuthState_transitionsFromLoggedOutToLoggedIn 24ms
โœ… TPPSAMLSignInTests testCredentialsStale_PP418_userStillHasCredentials 94ms
โœ… TPPSAMLSignInTests testCredentialsStale_hasCredentialsReturnsTrue 67ms
โœ… TPPSAMLSignInTests testCredentialsStale_preservesCookies 2.97s
โœ… TPPSAMLSignInTests testCredentialsStale_reAuthClearsStaleState 69ms
โœ… TPPSAMLSignInTests testRefreshCredentialsFromKeychain_returnsFalseWhenNoCredentials 1.24s
โœ… TPPSAMLSignInTests testRefreshCredentialsFromKeychain_returnsTrueWhenCredentialsExist 188ms
โœ… TPPSAMLSignInTests testSAMLReauth_usesSavedCookiesForIDPSession 6.32s
โœ… TPPSAMLSignInTests testSAMLSignIn_PP418_credentialsArePersisted 993ms
โœ… TPPSAMLSignInTests testSAMLSignIn_cookiesAreStored 491ms
โœ… TPPSAMLSignInTests testSAMLSignIn_drmFailurePreventsCredentialStorage 220ms
โœ… TPPSAMLSignInTests testSAMLSignIn_hasCredentialsReturnsTrue 37ms
โœ… TPPSAMLSignInTests testSAMLSignIn_patronInfoIsStored 97ms
โœ… TPPSAMLSignInTests testSAMLSignIn_setsAuthStateToLoggedIn 122ms
โœ… TPPSAMLSignInTests testSAMLSignIn_stateTransitions 50ms
โœ… TPPSAMLSignInTests testSAMLSignIn_usesCorrectLibraryUUID 970ms
โœ… TPPSAMLSignInTests testSAMLSignIn_worksWithoutCookies 267ms
โœ… TPPSAMLSignInTests testSAMLSignIn_worksWithoutPatronInfo 510ms
โœ… TPPSAMLSignInTests testSAMLSignOut_clearsAllCredentials 40ms
โœ… TPPSAMLSignInTests testSetAuthToken_clearsStaleState 68ms
โœ… TPPSAMLSignInTests testSignIn_callsBusinessLogicDidCompleteSignIn 124ms
โœ… TPPSAMLSignInTests testSignIn_callsBusinessLogicWillSignIn 38ms
โœ… TPPSAMLSignInTests testSignIn_cancelledSetsLoadingFalse 27ms
โœ… TPPSAMLSignInTests testSignIn_loadingStateTransitions 141ms
โœ… TPPSAMLSignInTests testTokenRefresh_settingsScreenShowsSignedIn 57ms
โœ… TPPSAMLSignInTests testTokenRefresh_transitionsFromStaleToLoggedIn 57ms
โœ… TPPSAMLStateIsolationTests testNonSAMLLibrary_noSAMLHelperCreated 37ms
โœ… TPPSAMLStateIsolationTests testSAMLCookies_storedOnHelper_notBusinessLogic 1ms
โœ… TPPSAMLStateIsolationTests testSAMLLibrary_helperCreatedOnDemand 96ms
โœ… TPPSAMLStateIsolationTests testSignOut_clearsSAMLState 57ms
โœ… TPPSAMLStateMachineTests testFinalizeSignIn_transitionsToLoggedIn 69ms
โœ… TPPSAMLStateMachineTests testIsSignedIn_returnsFalseWhenCredentialsStale 47ms
โœ… TPPSAMLStateMachineTests testIsSignedIn_returnsFalseWhenLoggedOut 68ms
โœ… TPPSAMLStateMachineTests testIsSignedIn_returnsTrueWhenLoggedIn 104ms
โœ… TPPSAMLStateMachineTests testRefreshAuth_SAMLClearsSelectedAuth 77ms
โœ… TPPSAMLStateMachineTests testRefreshAuth_transitionsToCredentialsStale 102ms
โœ… TPPSettingsTests testAccountMainFeedURL_setToSameValue_doesNotPostNotification 22ms
โœ… TPPSettingsTests testCustomMainFeedURL_publishesViaSettingsDidChange 21ms
โœ… TPPSettingsTests testCustomMainFeedURL_setToDifferentValue_postsNotification 2.32s
โœ… TPPSettingsTests testCustomMainFeedURL_setToSameValue_doesNotPostNotification 19ms
โœ… TPPSettingsTests testUseBetaLibraries_postsNotification 20.49s
โœ… TPPSettingsTests testUseBetaLibraries_publishesViaCombine 17ms
โœ… TPPSignInAdobeSkipTests testEnsureAuthDocLoaded_callsCompletionImmediatelyWhenDetailsExist 25ms
โœ… TPPSignInAdobeSkipTests testEnsureAuthDocLoaded_setsLoadingFlag 38ms
โœ… TPPSignInAdobeSkipTests testIgnoreSignedInState_affectsIsSignedIn 43ms
โœ… TPPSignInAdobeSkipTests testLogIn_capturedBarcode_nilWhenUIDelegateHasNilUsername 30ms
โœ… TPPSignInAdobeSkipTests testLogIn_capturesBarcodeAndPIN 158ms
โœ… TPPSignInAdobeSkipTests testLogIn_notifiesUIDelegateWillSignIn 32ms
โœ… TPPSignInAdobeSkipTests testLogIn_postsSigningInNotification 63ms
โœ… TPPSignInAdobeSkipTests testLogIn_withNoSelectedAuth_doesNotCrash 31ms
โœ… TPPSignInAdobeSkipTests testMakeRequest_prefersBusinessLogicToken_overUserAccountToken 26ms
โœ… TPPSignInAdobeSkipTests testMakeRequest_withOAuthButNoToken_logsError 27ms
โœ… TPPSignInAdobeSkipTests testRefreshAuthIfNeeded_returnsFalseWithNoAuthDefinition 30ms
โœ… TPPSignInAdobeSkipTests testRefreshAuthIfNeeded_setsRefreshAuthCompletion 29ms
โœ… TPPSignInAdobeSkipTests testShouldSkipAdobeActivation_falseWhenNotStale 28ms
โœ… TPPSignInAdobeSkipTests testShouldSkipAdobeActivation_falseWithoutAdobeCredentials 34ms
โœ… TPPSignInAuthStateTransitionTests testReauth_transitionsFromStaleToLoggedIn 27ms
โœ… TPPSignInAuthStateTransitionTests testSignIn_isSignedInConditionMet 53ms
โœ… TPPSignInAuthStateTransitionTests testSignIn_transitionsFromLoggedOutToLoggedIn 30ms
โœ… TPPSignInBusinessLogicExtendedTests testCanResetPassword_dependsOnLibraryConfig 22ms
โœ… TPPSignInBusinessLogicExtendedTests testCurrentAccount_matchesLibraryAccount 66ms
โœ… TPPSignInBusinessLogicExtendedTests testEnsureAuthDoc_setsAndClearsLoadingFlag 41ms
โœ… TPPSignInBusinessLogicExtendedTests testEnsureAuthenticationDocumentIsLoaded_whenDetailsAlreadyLoaded_firesCompletionSync 24ms
โœ… TPPSignInBusinessLogicExtendedTests testInitialization_authTokenNilByDefault 22ms
โœ… TPPSignInBusinessLogicExtendedTests testInitialization_cookiesNilByDefault 22ms
โœ… TPPSignInBusinessLogicExtendedTests testInitialization_defaultsIgnoreSignedInStateToFalse 22ms
โœ… TPPSignInBusinessLogicExtendedTests testInitialization_defaultsNotLoggingInAfterSignUp 39ms
โœ… TPPSignInBusinessLogicExtendedTests testInitialization_defaultsNotValidatingCredentials 31ms
โœ… TPPSignInBusinessLogicExtendedTests testInitialization_patronNilByDefault 26ms
โœ… TPPSignInBusinessLogicExtendedTests testInitialization_setsCorrectLibraryAccountID 44ms
โœ… TPPSignInBusinessLogicExtendedTests testInitialization_setsUIDelegate 69ms
โœ… TPPSignInBusinessLogicExtendedTests testIsAuthenticationDocumentLoading_defaultsFalse 33ms
โœ… TPPSignInBusinessLogicExtendedTests testIsLoggingInAfterSignUp_setterRoutesThroughReducer 24ms
โœ… TPPSignInBusinessLogicExtendedTests testIsNetworkConnectivityError_NonURLDomain_ReturnsFalse 26ms
โœ… TPPSignInBusinessLogicExtendedTests testIsSamlPossible_trueWhenLibrarySupports 49ms
โœ… TPPSignInBusinessLogicExtendedTests testIsSignedIn_falseWhenIgnoreSignedInStateTrue 28ms
โœ… TPPSignInBusinessLogicExtendedTests testIsSignedIn_falseWhenNoCredentials 60ms
โœ… TPPSignInBusinessLogicExtendedTests testIsSignedIn_trueWhenHasCredentials 37ms
โœ… TPPSignInBusinessLogicExtendedTests testLibraryAccount_returnsCorrectAccount 22ms
โœ… TPPSignInBusinessLogicExtendedTests testLibrarySupportsBarcodeDisplay_WithoutAuthorizationIdentifier_ReturnsFalse 23ms
โœ… TPPSignInBusinessLogicExtendedTests testLibrarySupportsBarcodeDisplay_falseWithoutCredentials 66ms
โœ… TPPSignInBusinessLogicExtendedTests testLibrarySupportsBarcodeDisplay_requiresAuthorizationIdentifier 63ms
โœ… TPPSignInBusinessLogicExtendedTests testLogIn_initiatesSignIn 25ms
โœ… TPPSignInBusinessLogicExtendedTests testLogIn_preventsMultipleSimultaneousCalls 82ms
โœ… TPPSignInBusinessLogicExtendedTests testLogIn_withBasicAuth_validatesCredentials 37ms
โœ… TPPSignInBusinessLogicExtendedTests testMakeRequest_forBasicAuth_noAuthorizationHeader 22ms
โœ… TPPSignInBusinessLogicExtendedTests testMakeRequest_forOAuth_hasBearerToken 23ms
โœ… TPPSignInBusinessLogicExtendedTests testMakeRequest_forSAML_hasBearerToken 36ms
โœ… TPPSignInBusinessLogicExtendedTests testMakeRequest_signOut_usesCorrectURL 51ms
โœ… TPPSignInBusinessLogicExtendedTests testRefreshAuthIfNeeded_basicAuthWithoutSavedCredentials_returnsTrue 44ms
โœ… TPPSignInBusinessLogicExtendedTests testRefreshAuthIfNeeded_oauthFreshFlow_marksCredentialsStaleButKeepsSelection 51ms
โœ… TPPSignInBusinessLogicExtendedTests testRefreshAuthIfNeeded_returnsFalseWhenNoAuthDefinition 70ms
โœ… TPPSignInBusinessLogicExtendedTests testRefreshAuthIfNeeded_samlAuthFreshFlow_marksCredentialsStale 27ms
โœ… TPPSignInBusinessLogicExtendedTests testRegistrationIsPossible_falseWhenSignedIn 24ms
โœ… TPPSignInBusinessLogicExtendedTests testRegistrationIsPossible_notSignedInAndLibraryHasSignUpUrl_returnsTrue 25ms
โœ… TPPSignInBusinessLogicExtendedTests testSelectPreferredAuthIfNeeded_WithExistingSelection_DoesNotOverride 33ms
โœ… TPPSignInBusinessLogicExtendedTests testSelectedAuthentication_canBeSetToBasic 47ms
โœ… TPPSignInBusinessLogicExtendedTests testSelectedAuthentication_canBeSetToOAuth 49ms
โœ… TPPSignInBusinessLogicExtendedTests testSelectedAuthentication_canBeSetToSAML 24ms
โœ… TPPSignInBusinessLogicExtendedTests testSelectedAuthentication_nilByDefault 39ms
โœ… TPPSignInBusinessLogicExtendedTests testShouldShowEULALink_basedOnLibraryDetails 22ms
โœ… TPPSignInBusinessLogicExtendedTests testShouldShowSyncButton_PP3252_usesCurrentAccountIdNotCurrentAccountUuid 76ms
โœ… TPPSignInBusinessLogicExtendedTests testShouldShowSyncButton_falseWhenDifferentLibrary 34ms
โœ… TPPSignInBusinessLogicExtendedTests testShouldShowSyncButton_falseWhenNoCredentials 38ms
โœ… TPPSignInBusinessLogicExtendedTests testShouldSkipAdobeActivation_WhenMissingAdobeCredentials_ReturnsFalse 23ms
โœ… TPPSignInBusinessLogicExtendedTests testShouldSkipAdobeActivation_WhenNotCredentialsStale_ReturnsFalse 56ms
โœ… TPPSignInBusinessLogicExtendedTests testSignOut_PP418_clearsWebViewDataBeforeCompletion 173ms
โœ… TPPSignInBusinessLogicExtendedTests testSignOut_sequencesCookieClearingBeforeCompletionCallback 35ms
โœ… TPPSignInBusinessLogicExtendedTests testUpdateUserAccount_clearsCapturedCredentials 82ms
โœ… TPPSignInBusinessLogicExtendedTests testUpdateUserAccount_clearsIgnoreSignedInState 27ms
โœ… TPPSignInBusinessLogicExtendedTests testUpdateUserAccount_clearsInFlightAuthToken 27ms
โœ… TPPSignInBusinessLogicExtendedTests testUpdateUserAccount_setsAuthDefinition 22ms
โœ… TPPSignInBusinessLogicExtendedTests testUpdateUserAccount_withBasicAuth_setsBarcodePIN 22ms
โœ… TPPSignInBusinessLogicExtendedTests testUpdateUserAccount_withOAuth_setsAuthToken 23ms
โœ… TPPSignInBusinessLogicExtendedTests testUpdateUserAccount_withSAML_setsCookies 22ms
โœ… TPPSignInBusinessLogicExtendedTests testValidateCredentials_setsIsValidatingCredentialsTrue 29ms
โœ… TPPSignInBusinessLogicExtendedTests testValidateCredentials_setsValidatingFlag 22ms
โœ… TPPSignInBusinessLogicOAuthTests test_handleRedirectURL_baseTokenWithEqualsSign_isPreservedIntact 72ms
โœ… TPPSignInBusinessLogicOAuthTests test_handleRedirectURL_missingAccessToken_skipsValidationAndReportsParseError 69ms
โœ… TPPSignInBusinessLogicOAuthTests test_handleRedirectURL_missingPatronInfo_skipsValidationAndReportsParseError 144ms
โœ… TPPSignInBusinessLogicOAuthTests test_handleRedirectURL_nonURLObject_reportsErrorWithoutSideEffects 124ms
โœ… TPPSignInBusinessLogicOAuthTests test_handleRedirectURL_serverError_surfacesProblemDocumentTitle 211ms
โœ… TPPSignInBusinessLogicOAuthTests test_handleRedirectURL_validPayload_storesAuthTokenAndPatron 113ms
โœ… TPPSignInBusinessLogicOAuthTests test_handleRedirectURL_wrongPrefix_skipsParseAndReportsMissingPayload 290ms
โœ… TPPSignInBusinessLogicOAuthTests test_makeRequest_OAuth_fallsBackToPersistedToken 112ms
โœ… TPPSignInBusinessLogicOAuthTests test_makeRequest_OAuth_includesBearerHeaderFromInFlightToken 28ms
โœ… TPPSignInBusinessLogicOAuthTests test_makeRequest_signIn_returnsNilWhenNoUserProfileURL 27ms
โœ… TPPSignInBusinessLogicOAuthTests test_oauthRedirectObserver_registersAndRemovesItself_viaInjectedCenter 36ms
โœ… TPPSignInBusinessLogicSignOutTests test_signOut_401Response_doesNotShowSignOutErrorToUser 40ms
โœ… TPPSignInBusinessLogicSignOutTests test_signOut_500Response_surfacesSignOutErrorAndStillCleansUp 205ms
โœ… TPPSignInBusinessLogicSignOutTests test_signOut_callsWillSignOutBeforeDeauthorize 130ms
โœ… TPPSignInBusinessLogicSignOutTests test_signOut_clearsCredentialsFromKeychainAfterDeauthorize 59ms
โœ… TPPSignInBusinessLogicSignOutTests test_signOut_clearsSAMLHelperState 115ms
โœ… TPPSignInBusinessLogicSignOutTests test_signOut_clearsSelectedIDP 103ms
โœ… TPPSignInBusinessLogicSignOutTests test_signOut_invokesDRMDeauthorizeExactlyOnce 144ms
โœ… TPPSignInBusinessLogicSignOutTests test_signOut_preservesAdobeActivation_whenStaleCallbackArrives 272ms
โœ… TPPSignInBusinessLogicSignOutTests test_signOut_preservesNewCredentials_whenUserReauthenticatesDuringSignOut 187ms
โœ… TPPSignInBusinessLogicSignOutTests test_signOut_reentrantCall_isCoalesced 151ms
โœ… TPPSignInBusinessLogicSignOutTests test_signOut_resetsBookRegistry 56ms
โœ… TPPSignInBusinessLogicStateMachineTests testIsSamlAuth_failedDetailsLoad_returnsFalse 29ms
โœ… TPPSignInBusinessLogicStateMachineTests testIsSamlPossible_loaded_returnsTrueWhenSamlAuthPresent 23ms
โœ… TPPSignInBusinessLogicStateMachineTests testLogIn_racingAuthDocLoad_firesRequestOnceReady 59ms
โœ… TPPSignInBusinessLogicStateMachineTests testRegistrationIsPossible_loaded_returnsTrueWhenSignUpUrlPresent 22ms
โœ… TPPSignInBusinessLogicStateMachineTests testSelectPreferredAuthIfNeeded_loaded_picksSamlOverDefault 39ms
โœ… TPPSignInBusinessLogicStateMachineTests testSelectPreferredAuthIfNeeded_loading_doesNotMutate 23ms
โœ… TPPSignInBusinessLogicStateMachineTests testSelectedAuthentication_loading_returnsNil 28ms
โœ… TPPSignInBusinessLogicStateMachineTests testShouldShowEULALink_loaded_reflectsEulaUrlAndSignInState 30ms
โœ… TPPSignInBusinessLogicStateMachineTests testSignIn_blocksUntilLoaded_thenProceeds 27ms
โœ… TPPSignInBusinessLogicStateMachineTests testSignIn_failedDetailsLoad_surfacesError 147ms
โœ… TPPSignInBusinessLogicTests testIsNetworkConnectivityError_OnlyRecognizesURLErrorDomain 29ms
โœ… TPPSignInBusinessLogicTests testIsTransientServerError_classification 59ms
โœ… TPPSignInBusinessLogicTests testLogInFlow 130ms
โœ… TPPSignInBusinessLogicTests testMakeSignInRequest 60ms
โœ… TPPSignInBusinessLogicTests testShouldShowEULALink_WhenCredentialsStale_ReturnsTrue 56ms
โœ… TPPSignInBusinessLogicTests testShouldShowEULALink_WhenSignedIn_ReturnsFalse 39ms
โœ… TPPSignInBusinessLogicTests testShouldShowEULALink_WhenSignedOutAndEULAURLAvailable_ReturnsTrue 48ms
โœ… TPPSignInBusinessLogicTests testUpdateUserAccountWithBarcodeAuthentication 34ms
โœ… TPPSignInBusinessLogicTests testUpdateUserAccountWithCleverAuthentication 705ms
โœ… TPPSignInBusinessLogicTests testUpdateUserAccountWithNoSelectedAuthentication 179ms
โœ… TPPSignInBusinessLogicTests testUpdateUserAccountWithSAMLAuthentication 287ms
โœ… TPPSignInBusinessLogicTests testUserFacingSignInError_ConnectionLost_ReturnsNetworkMessage 32ms
โœ… TPPSignInBusinessLogicTests testUserFacingSignInError_NoInternet_ReturnsNetworkMessage 46ms
โœ… TPPSignInBusinessLogicTests testUserFacingSignInError_NonURLErrorDomain_ReturnsInvalidCredentials 49ms
โœ… TPPSignInBusinessLogicTests testUserFacingSignInError_ProblemDocument_TakesPrecedenceOverNetworkError 94ms
โœ… TPPSignInBusinessLogicTests testUserFacingSignInError_Timeout_ReturnsNetworkMessage 52ms
โœ… TPPSignInBusinessLogicTests testUserFacingSignInError_TokenRequest401_StillReturnsInvalidCredentials 49ms
โœ… TPPSignInBusinessLogicTests testUserFacingSignInError_TransientServer5xx_ReturnsTryAgain_Not_InvalidCredentials 186ms
โœ… TPPSignInBusinessLogicTokenFlowTests test_getBearerToken_emptyUsername_failsImmediatelyWithoutNetwork 163ms
โœ… TPPSignInBusinessLogicTokenFlowTests test_getBearerToken_failure_doesNotStoreTokenAndSurfacesError 266ms
โœ… TPPSignInBusinessLogicTokenFlowTests test_getBearerToken_success_persistsTokenViaTokenRefresher 52ms
โœ… TPPSignInBusinessLogicValidationCallbackOrderTests test_validateCredentials_basicAuthFailure_doesNotFireReceiveCredentialsCallback 52ms
โœ… TPPSignInBusinessLogicValidationCallbackOrderTests test_validateCredentials_basicAuthSuccess_firesDidReceiveCredentialsCallback 69ms
โœ… TPPSignInErrorHandlingTests testValidateCredentials_withSelectedAuth_doesNotCrash 43ms
โœ… TPPSignInErrorHandlingTests testValidateCredentials_withoutSelectedAuth_doesNotCrash 51ms
โœ… TPPSignInProfileDocEdgeCaseTests testSignIn_invalidProfileDoc_credentialsPreserved 63ms
โœ… TPPSignInProfileDocEdgeCaseTests testSignIn_noDRMInProfileDoc_credentialsPreserved 106ms
โœ… TPPSignInProfileDocEdgeCaseTests testSignIn_validDRMProfileDoc_savesCredentialsAndDRM 31ms
โœ… TPPSignedInStateProviderTests testIsSignedIn_AfterRemoveAll_ReturnsFalse 4ms
โœ… TPPSignedInStateProviderTests testIsSignedIn_WhenCredentialsPresent_ReturnsTrue 4ms
โœ… TPPSignedInStateProviderTests testIsSignedIn_WhenNoCredentials_ReturnsFalse <1ms
โœ… TPPUserAccountAuthStateTests testAuthState_defaultIsLoggedOut_andDerivesFromCredentialsWhenNotExplicit <1ms
โœ… TPPUserAccountAuthStateTests testMarkCredentialsStale_doesNotTransitionFromLoggedOut 1ms
โœ… TPPUserAccountAuthStateTests testMarkCredentialsStale_transitionsFromLoggedInToStale <1ms
โœ… TPPUserAccountAuthStateTests testMarkLoggedIn_transitionsFromAnyReauthenticatableStateToLoggedIn <1ms
โœ… TPPUserAccountAuthStateTests testRemoveAll_resetsStateToLoggedOut <1ms
โœ… TPPUserAccountAuthStateTests testSetAuthToken_transitionsFromCredentialsStaleToLoggedIn <1ms
โœ… TPPUserAccountConcurrencyTests testIncrementSignInGeneration_underConcurrentCallers_countsExactlyOncePerCall 2ms
โœ… TPPUserAccountGapTests testTPPUserAccount_basicPropertyAccessors_dontCrash 8ms
โœ… TPPUserAccountGapTests testTPPUserAccount_hasAuthToken_returnsFalseWhenNoToken <1ms
โœ… TPPUserAccountGapTests testTPPUserAccount_hasBarcodeAndPIN_returnsFalseWhenNoCredentials <1ms
โœ… TPPUserAccountGapTests testTPPUserAccount_sharedAccount_isAccessible 2ms
โœ… TPPUserAccountIsolationLintTests testLintCatchesSyntheticViolator <1ms
โœ… TPPUserAccountIsolationLintTests testNoSharedAccountOutsideWhitelist 546ms
โœ… TPPUserAccountIsolationLintTests testResetterIsRegisteredAfterFactoryUse 1ms
โŠ˜ TPPUserAccountTestFactoryTests testFactory_neverWritesToProductionKeychain 77ms
โŠ˜ TPPUserAccountTestFactoryTests testFactory_registersResetterUnderStableName 37ms
โŠ˜ TPPUserAccountTestFactoryTests testMakeIsolated_doesNotPolluteSharedCache 22ms
โŠ˜ TPPUserAccountTestFactoryTests testMakeIsolated_eachCallReturnsDistinctLibraryUUID 93ms
โŠ˜ TPPUserAccountTestFactoryTests testMakeIsolated_honorsExplicitLibraryUUID 85ms
โŠ˜ TPPUserAccountTestFactoryTests testMakeIsolated_reRegistersResetter_afterRegistryCleared 14ms
โŠ˜ TPPUserAccountTestFactoryTests testResetter_clearsKeychainResidue 67ms
โœ… TPPUserFriendlyErrorTests testDefaultImplementation_messageIsNil 1ms
โœ… TPPUserFriendlyErrorTests testDefaultImplementation_titleIsNil <1ms
โœ… TPPUserFriendlyErrorTests testMakeFromProblemDocument_preservesExistingUserInfo <1ms
โœ… TPPUserFriendlyErrorTests testMakeFromProblemDocument_setsDomainAndCode <1ms
โœ… TPPUserFriendlyErrorTests testMakeFromProblemDocument_storesProblemDocument <1ms
โœ… TPPUserFriendlyErrorTests testNSError_withProblemDocument_hasFriendlyMessage <1ms
โœ… TPPUserFriendlyErrorTests testNSError_withProblemDocument_hasFriendlyTitle <1ms
โœ… TPPUserFriendlyErrorTests testNSError_withoutProblemDocument_messageIsLocalizedDescription <1ms
โœ… TPPUserFriendlyErrorTests testNSError_withoutProblemDocument_noUserInfo_messageIsNil <1ms
โœ… TPPUserFriendlyErrorTests testNSError_withoutProblemDocument_titleIsNil <1ms
โœ… TPPUserFriendlyErrorTests testProblemDocument_accessor_returnsStoredDocument 2ms
โœ… TPPUserNotificationsTests testBackgroundFetchIsNeeded_returnsBasedOnHeldBooksCount 34ms
โœ… TPPUserNotificationsTests testCompareAvailability_detectsTransitionFromReservedToReady 94ms
โœ… TPPUserNotificationsTests testCompareAvailability_doesNotCrashWithValidInputs 77ms
โœ… TPPUserNotificationsTests testCompareAvailability_doesNotNotifyWhenStillReserved 10ms
โœ… TPPUserNotificationsTests testCompareAvailability_handlesNilAvailability 3ms
โœ… TPPUserNotificationsTests testRequestAuthorization_isExposedAsObjcSelectorOnService <1ms
โœ… TPPUserNotificationsTests testSharedInstance_isStableAcrossCallsAndConcurrentAccess 1ms
โœ… TPPUserNotificationsTests testUpdateAppIconBadge_countsOnlyReadyBooks 67ms
โœ… TPPUserNotificationsTests testUpdateAppIconBadge_withBooks_processesWithoutCrash 7ms
โœ… TPPUserNotificationsTests testUpdateAppIconBadge_withEmptyArray_isIdempotentAndCrashFree <1ms
โœ… TPPXMLSwiftTests test_attributes_emptyAttributes_returnsEmptyDictionary 1ms
โœ… TPPXMLSwiftTests test_attributes_withAttributes_returnsDictionary 5ms
โœ… TPPXMLSwiftTests test_childrenWithName_nonexistentName_returnsEmptyArray <1ms
โœ… TPPXMLSwiftTests test_childrenWithName_returnsMatchingChildren <1ms
โœ… TPPXMLSwiftTests test_firstChildWithName_nonexistent_returnsNil 4ms
โœ… TPPXMLSwiftTests test_firstChildWithName_returnsFirstMatch 4ms
โœ… TPPXMLSwiftTests test_parseEmptyData_returnsNil <1ms
โœ… TPPXMLSwiftTests test_parseInlineXML_simpleElement <1ms
โœ… TPPXMLSwiftTests test_parseInvalidXML_returnsNil 4ms
โœ… TPPXMLSwiftTests test_parseNilData_returnsNil <1ms
โœ… TPPXMLSwiftTests test_parseValidXML_rootHasNoParent 3ms
โœ… TPPXMLSwiftTests test_parseValidXML_rootHasThreeChildren <1ms
โœ… TPPXMLSwiftTests test_parseValidXML_rootName_isFoo 4ms
โœ… TPPXMLSwiftTests test_parseValidXML_rootNamespaceURI_isCorrect <1ms
โœ… TPPXMLSwiftTests test_parseValidXML_rootQualifiedName <1ms
โœ… TPPXMLSwiftTests test_value_returnsTextContent 1ms
โœ… TPPXMLTests testInvalid 2ms
โœ… TPPXMLTests testNoData <1ms
โœ… TPPXMLTests testValid 4ms
โœ… TabBarModernizationTests test_miniPlayerBottomInset_bogusBarHeight_fallsBackToDefault <1ms
โœ… TabBarModernizationTests test_miniPlayerBottomInset_fullFrameMeasurement_doesNotDoubleCountSafeArea <1ms
โœ… TabBarModernizationTests test_miniPlayerBottomInset_negativeSafeArea_clampsToZero 32ms
โœ… TabBarModernizationTests test_miniPlayerBottomInset_sumsSafeAreaBarAndMargin <1ms
โœ… TabBarModernizationTests test_shouldEnableTabBarMinimize_miniPlayerActive_returnsFalse <1ms
โœ… TabBarModernizationTests test_shouldEnableTabBarMinimize_noMiniPlayer_returnsTrue <1ms
โœ… TabBarModernizationTests test_tabBarHeightObserver_measure_neverCorruptsToBogusHeight 3ms
โœ… TabBarModernizationTests test_tabBarHeightObserver_seedsWithHistoricalDefault 12ms
โœ… TearDownRequiredLintTests testBaselineFileIsLoaded 1ms
โœ… TearDownRequiredLintTests testLintAcceptsExplicitTearDown 12ms
โœ… TearDownRequiredLintTests testLintAcceptsInheritedTearDown 5ms
โœ… TearDownRequiredLintTests testLintCatchesSyntheticViolator 2ms
โœ… TearDownRequiredLintTests testTearDownRequired_runsAgainstPalaceTestsTree 2.06s
โœ… TestAppContainerFactoryTests testMakeTestAppContainer_acceptsBookRegistryOverride 502ms
โœ… TestAppContainerFactoryTests testMakeTestAppContainer_acceptsExplicitDependencyOverrides 7ms
โœ… TestAppContainerFactoryTests testMakeTestAppContainer_doesNotMutateProductionCache 9ms
โœ… TestAppContainerFactoryTests testMakeTestAppContainer_doesNotSpawnLoadCatalogsTask 178ms
โœ… TestAppContainerFactoryTests testMakeTestAppContainer_returnsDistinctInstancesPerCall 13ms
โ“ TestTargetHermeticityRegressionTests testAwaitCondition_onTimeout_predicateIsNeverEvaluatedAfterReturn 313ms
โœ… TestTargetHermeticityRegressionTests testBootstrap_deferInitialLoadCatalogs_isPinnedTrueAtTestStart <1ms
โœ… TestTargetHermeticityRegressionTests testMockRegistry_addBookFromBackgroundThread_deliversChangeNotificationOnMain 18ms
โœ… TestTargetHermeticityRegressionTests testTestTarget_compilesWithDEBUG_soPerTestResetLayerIsActive <1ms
โœ… TimeEntryTests testTimeEntry_creation <1ms
โœ… TimeEntryTests testTimeEntry_durationLimit 11ms
โœ… TimeEntryTests testTimeEntry_utcFormat 4ms
โœ… TokenRefreshAndRetryQueueTests testConcurrentRefreshes_OnlyOneTokenRequestFires 132ms
โœ… TokenRefreshAndRetryQueueTests testDELETE_401_DoesNotTriggerRefresh 563ms
โœ… TokenRefreshAndRetryQueueTests testQueuedRequest_AfterRefresh_RetriesWithNewBearer 50ms
โœ… TokenRefreshAndRetryQueueTests testQueuedRequest_CompletionFiresWithRetryBodyAfterRetry 103ms
โœ… TokenRefreshAndRetryQueueTests testRefresh_SuccessWithoutTask_FiresSuccessCompletion 515ms
โœ… TokenRefreshAndRetryQueueTests testRefresh_Success_ReleasesSingleFlightSlot 1.06s
โœ… TokenRefreshAndRetryQueueTests testRefresh_TokenEndpointNetworkError_DoesNotMarkCredentialsStale 2.39s
โœ… TokenRefreshAndRetryQueueTests testRefresh_TokenEndpointReturns401_MarksCredentialsStaleAndDoesNotLoop 67ms
โœ… TokenRefreshAndRetryQueueTests testRefresh_WithoutCredentials_FailsImmediatelyAndReleasesSlot 115ms
โœ… TokenRefreshIntegrationTests testExecuteTokenRefresh_EmptyUsername_NeverHitsNetwork 4ms
โœ… TokenRefreshIntegrationTests testExecuteTokenRefresh_ValidatesBasicAuthHeaderOnWire 5.18s
โœ… TokenRefreshInterceptorAuthCoordinatorTests testCoordinator_401_OAuthIntermediary_doesNotInvokeCoordinator_fallsToTokenRefreshPath 13ms
โœ… TokenRefreshInterceptorAuthCoordinatorTests testCoordinator_401_OIDC_doesNotRouteThroughCoordinator 9ms
โœ… TokenRefreshInterceptorAuthCoordinatorTests testCoordinator_401_SAML_dispatchesViaCoordinator_andSetsSAMLStarted 13ms
โœ… TokenRefreshInterceptorAuthCoordinatorTests testCoordinator_401_SAML_userCancel_doesNotRetry_butStillFlipsPerBookState 17ms
โœ… TokenRefreshInterceptorAuthCoordinatorTests testCoordinator_handleProblem_browserSAML_dispatchesViaCoordinator 17ms
โœ… TokenRefreshInterceptorAuthCoordinatorTests testCoordinator_noActiveLoan_SAML_dispatchesViaCoordinator_andSetsSAMLStarted 9ms
โœ… TokenRefreshInterceptorAuthCoordinatorTests testForeignHost_401_SAML_doesNotMarkCredentialsStale_doesNotDispatchCoordinator 20ms
โœ… TokenRefreshInterceptorAuthCoordinatorTests testForeignHost_401_SAML_withNilProvider_fallsBackToLegacyDispatch 8ms
โœ… TokenRefreshInterceptorTests testHandleBorrowInvalidCredentials_firstAttempt_triggersReauth 7ms
โœ… TokenRefreshInterceptorTests testHandleBorrowInvalidCredentials_nilDelegate_doesNotCrash 13ms
โœ… TokenRefreshInterceptorTests testHandleBorrowInvalidCredentials_secondAttempt_showsAlert 6ms
โœ… TokenRefreshInterceptorTests testHandleBorrowInvalidCredentials_successfulReauth_startsDownload 8ms
โœ… TokenRefreshInterceptorTests testHandleDownloadFailure_OIDC_401_marksCredentialsStale 16ms
โœ… TokenRefreshInterceptorTests testHandleDownloadFailure_OIDC_401_triggersReauthViaSignInModal 20ms
โœ… TokenRefreshInterceptorTests testHandleDownloadFailure_OIDC_cancelledReauth_doesNotRetry 27ms
โœ… TokenRefreshInterceptorTests testHandleDownloadFailure_OIDC_successfulReauth_retriesDownload 7ms
โœ… TokenRefreshInterceptorTests testHandleDownloadFailure_SAML_401_legacyPath_retriesViaSAMLNotBrowserModal 10ms
โœ… TokenRefreshInterceptorTests testHandleDownloadFailure_SAML_noActiveLoan_legacyPath_retriesViaSAMLNotBrowserModal 9ms
โœ… TokenRefreshInterceptorTests testHandleDownloadFailure_hasCredentials_noLoginRequired_returnsFalse 3ms
โœ… TokenRefreshInterceptorTests testHandleDownloadFailure_noActiveLoan_OIDC_triggersReauth 6ms
โœ… TokenRefreshInterceptorTests testHandleDownloadFailure_noActiveLoan_SAML_treatAsSessionExpiry 4ms
โœ… TokenRefreshInterceptorTests testHandleDownloadFailure_noActiveLoan_nonSAML_autoBorrows 67ms
โœ… TokenRefreshInterceptorTests testHandleDownloadFailure_noCredentialsLoginRequired_triggersSignIn 3ms
โœ… TokenRefreshInterceptorTests testHandleDownloadFailure_noDelegateReturnsFalse 2ms
โœ… TokenRefreshInterceptorTests testHandleDownloadFailure_nonAuthRelatedError_returnsFalse 3ms
โœ… TokenRefreshInterceptorTests testHandleProblem_SAMLStartedState_circuitBreaker 7ms
โœ… TokenRefreshInterceptorTests testHandleProblem_SAMLWithCredentials_retriesWithSAML 8ms
โœ… TokenRefreshInterceptorTests testHandleProblem_authenticatedUser_noReauth 13ms
โœ… TokenRefreshInterceptorTests testHandleProblem_nilDelegate_doesNotCrash 2ms
โœ… TokenRefreshInterceptorTests testHandleProblem_noCredentials_triggersReauth 7ms
โœ… TokenRefreshInterceptorTests testInit_defaultState 1ms
โœ… TokenRefreshInterceptorTests testInit_withCustomReauthenticator 1ms
โœ… TokenRefreshOnForegroundTests test_ConcurrentForegroundRequests_ProduceOneTokenRefresh 48ms
โœ… TokenRefreshOnForegroundTests test_ForegroundRefreshFailure_StillResolvesCaller 1.34s
โœ… TokenRefreshOnForegroundTests test_HealthyToken_NoProactiveRefresh 362ms
โœ… TokenRefreshOnForegroundTests test_NearExpiryToken_GETBlocksOnRefresh 68ms
โœ… TokenRefreshOnForegroundTests test_NearExpiryToken_OnForeground_FiresTokenRefreshBeforeUserRequest 48ms
โœ… TokenRefreshOnForegroundTests test_NearExpiryToken_RetriedRequest_UsesFreshBearer 76ms
โœ… TokenRefreshOnForegroundTests test_POSTBody_PreservedAcrossProactiveRefresh 116ms
โœ… TokenRefreshOnForegroundTests test_SAMLAuth_DoesNotTriggerProactiveTokenRefresh 64ms
โœ… TokenRefreshOnForegroundTests test_TokenAtExactExpiryThreshold_IsConsideredNearExpiry 62ms
โœ… TokenRefreshOnForegroundTests test_UseTokenIfAvailableFalse_BypassesProactiveRefresh 42ms
โœ… TokenRefreshTests testBearerAuthorized_AddsAuthorizationHeader 1ms
โœ… TokenRefreshTests testBearerAuthorized_EmptyTokenSetsEmptyHeader 1ms
โœ… TokenRefreshTests testMockExecutor_HandlesEmptyURL 7ms
โœ… TokenRefreshTests testMockExecutor_Returns404ForUnknownURL 6ms
โœ… TokenRefreshTests testMockExecutor_ReturnsConfiguredResponse 13ms
โœ… TokenRefreshTests testNYPLResult_FailureCase 1ms
โœ… TokenRefreshTests testNYPLResult_FailureWithNilResponse 3ms
โœ… TokenRefreshTests testNYPLResult_SuccessCase 1ms
โœ… TokenRefreshTests testNYPLResult_SuccessWithNilResponse 82ms
โœ… TokenRefreshTests testRequestTimeout_DefaultValue 1ms
โœ… TokenRefreshTests testRequestTimeout_StaticDefault 46ms
โœ… TokenRefreshTests testTPPErrorCode_InvalidCredentialsValue <1ms
โœ… TokenRefreshTests testTokenRequest_EmptyPassword <1ms
โœ… TokenRefreshTests testTokenRequest_EmptyUsername 87ms
โœ… TokenRefreshTests testTokenRequest_InitializesCorrectly 2ms
โœ… TokenRefreshTests testTokenRequest_SpecialCharactersInCredentials 492ms
โœ… TokenRefreshTests testTokenResponse_DecodesFromJSON 2ms
โœ… TokenRefreshTests testTokenResponse_DifferentTokenTypes 2ms
โœ… TokenRefreshTests testTokenResponse_EncodesToJSON <1ms
โœ… TokenRefreshTests testTokenResponse_ExpirationDateCalculation <1ms
โœ… TokenRefreshTests testTokenResponse_LargeExpiresIn 1ms
โœ… TokenRefreshTests testTokenResponse_NegativeExpiresIn 3ms
โœ… TokenRefreshTests testTokenResponse_RoundTrip 5ms
โœ… TokenRefreshTests testTokenResponse_SmallExpiresIn 11ms
โœ… TokenRefreshTests testTokenResponse_ZeroExpiresIn 268ms
โœ… TokenRefreshWatchdogTests testClaim_isSingleFlight 8ms
โœ… TokenRefreshWatchdogTests testWatchdog_doesNotDisturb_aRefreshThatCompletedNormally 10ms
โœ… TokenRefreshWatchdogTests testWatchdog_forceReleasesStuckRefresh_andHandsBackStrandedQueue 1ms
โœ… TokenRefreshWatchdogTests testWatchdog_isIdempotent 6ms
โœ… TokenRefreshWatchdogTests testWatchdog_staleGeneration_doesNotReleaseNewerRefresh 4ms
โœ… TokenRequestCredentialGuardTests testExecute_BothEmpty_ReturnsFailureWithoutNetworkCall 3ms
โœ… TokenRequestCredentialGuardTests testExecute_ColonInPassword_EncodesCorrectly 4ms
โœ… TokenRequestCredentialGuardTests testExecute_EmptyCredentials_ErrorDomain 4ms
โœ… TokenRequestCredentialGuardTests testExecute_EmptyPassword_PinlessLogin_MakesNetworkCall 5ms
โœ… TokenRequestCredentialGuardTests testExecute_EmptyUsername_ReturnsFailureWithoutNetworkCall 5ms
โœ… TokenRequestCredentialGuardTests testExecute_SendsPOSTMethod 28ms
โœ… TokenRequestCredentialGuardTests testExecute_ServerReturns400_ReturnsFailureWithStatusCode 3ms
โœ… TokenRequestCredentialGuardTests testExecute_ServerReturns401_ReturnsFailureWithStatusCode 10ms
โœ… TokenRequestCredentialGuardTests testExecute_ServerReturnsIncompleteJSON_ReturnsDecodingError 20ms
โœ… TokenRequestCredentialGuardTests testExecute_ServerReturnsNonJSON_ReturnsDecodingError 13ms
โœ… TokenRequestCredentialGuardTests testExecute_SpecialCharactersInCredentials_EncodesCorrectly 66ms
โœ… TokenRequestCredentialGuardTests testExecute_ValidCredentials_MakesNetworkCall 4ms
โœ… TokenRequestCredentialGuardTests testExecute_ValidCredentials_SendsCorrectBasicAuthHeader 10ms
โœ… TokenRequestTests testExecute403WithNonJSONBody_FallsBackToGenericError 11ms
โœ… TokenRequestTests testExecute403WithProblemDocument_EmbedsProblemDocInError 110ms
โœ… TokenRequestTests testExecuteInvalidJSONReturnsDecodingError 16ms
โœ… TokenRequestTests testExecuteNon200StatusReturnsFailure 93ms
โœ… TokenRequestTests testExecuteSendsBasicAuthHeader 97ms
โœ… TokenRequestTests testExecuteSuccessReturnsToken 12ms
โœ… TokenRequestTests testExecuteUsesPOSTMethod 13ms
โœ… TokenRequestTests testTokenRequestInitProperties 2ms
โœ… TokenRequestTests testTokenResponseDecodableFromJSON <1ms
โœ… TokenRequestTests testTokenResponseExpirationDate <1ms
โœ… TokenRequestTests testTokenResponseInitProperties <1ms
โœ… TokenResponseTests testAccessToken_WithSpecialCharacters 88ms
โœ… TokenResponseTests testAccessToken_WithUnicodeCharacters 12ms
โœ… TokenResponseTests testDecode_WithDifferentTokenType_ParsesCorrectly 43ms
โœ… TokenResponseTests testDecode_WithExtraFields_IgnoresExtraFields <1ms
โœ… TokenResponseTests testDecode_WithLargeExpiresIn_ParsesCorrectly 1ms
โœ… TokenResponseTests testDecode_WithMissingAccessToken_ThrowsError 73ms
โœ… TokenResponseTests testDecode_WithMissingExpiresIn_ThrowsError 1ms
โœ… TokenResponseTests testDecode_WithMissingTokenType_ThrowsError 1ms
โœ… TokenResponseTests testDecode_WithValidJSON_ParsesCorrectly 2ms
โœ… TokenResponseTests testDecode_WithWrongTypeForExpiresIn_ThrowsError 7ms
โœ… TokenResponseTests testEncodeDecode_RoundTrip_PreservesValues 285ms
โœ… TokenResponseTests testEncode_ProducesValidJSON 15ms
โœ… TokenResponseTests testExpirationDate_CalculatesCorrectInterval <1ms
โœ… TokenResponseTests testExpirationDate_WithNegativeExpiresIn_ReturnsDateInPast 84ms
โœ… TokenResponseTests testExpirationDate_WithPositiveExpiresIn_ReturnsDateInFuture <1ms
โœ… TokenResponseTests testExpirationDate_WithZeroExpiresIn_ReturnsCurrentTime 6ms
โœ… TokenResponseTests testExpiresIn_WithMaxInt32Value 65ms
โœ… TokenResponseTests testInit_WithEmptyToken_StoresEmptyString 2ms
โœ… TokenResponseTests testInit_WithNegativeExpiresIn_StoresNegativeValue 41ms
โœ… TokenResponseTests testInit_WithValidParameters_StoresValues <1ms
โœ… TokenResponseTests testInit_WithZeroExpiresIn_StoresZero 2ms
โœ… TriageBotKeyAdminTests testClear_deletesTheStoredKey 6ms
โœ… TriageBotKeyAdminTests testHasStoredKey_isFalseForNilOrEmpty_trueForNonEmpty <1ms
โœ… TriageBotKeyAdminTests testSave_trimsSurroundingWhitespace_beforeStoring <1ms
โœ… TriageBotKeyAdminTests testSave_whitespaceOnly_isRejected_andLeavesExistingKeyIntact <1ms
โœ… TypographyPresetTests testAllPresetFontSizesInRange 7ms
โœ… TypographyPresetTests testAllPresetLetterSpacingsInRange 4ms
โœ… TypographyPresetTests testAllPresetLineSpacingsInRange 7ms
โœ… TypographyPresetTests testAllPresetWordSpacingsInRange 3ms
โœ… TypographyPresetTests testAllPresetsProduceCSS 10ms
โœ… TypographyPresetTests testClassicCSSContainsGeorgia 11ms
โœ… TypographyPresetTests testClassicPreset 12ms
โœ… TypographyPresetTests testCozyPreset 8ms
โœ… TypographyPresetTests testDensePreset 6ms
โœ… TypographyPresetTests testDyslexiaCSSContainsOpenDyslexic 7ms
โœ… TypographyPresetTests testDyslexiaFriendlyPreset 8ms
โœ… TypographyPresetTests testModernCSSContainsSFPro 4ms
โœ… TypographyPresetTests testModernPreset 9ms
โœ… TypographyPresetTests testNightReaderCSSHasBlackBackground 4ms
โœ… TypographyPresetTests testNightReaderPreset 7ms
โœ… TypographyPresetTests testPresetCount 10ms
โœ… TypographyPresetTests testPresetLookupById 31ms
โœ… TypographyPresetTests testPresetLookupByInvalidId 3ms
โœ… TypographyPresetTests testPresetSettingsAreCodable 20ms
โœ… TypographyPresetTests testPresetsHaveUniqueIds 4ms
โœ… TypographyPresetTests testPresetsHaveUniqueNames 6ms
โœ… TypographyServiceTests testApplyPreset 3ms
โœ… TypographyServiceTests testApplyPresetClearsPreviousCustomization 3ms
โœ… TypographyServiceTests testCSSContainsBackgroundColor 3ms
โœ… TypographyServiceTests testCSSContainsFontFamily 3ms
โœ… TypographyServiceTests testCSSContainsFontSize 3ms
โœ… TypographyServiceTests testCSSContainsLetterSpacing 3ms
โœ… TypographyServiceTests testCSSContainsLineSpacing 5ms
โœ… TypographyServiceTests testCSSContainsMargins 22ms
โœ… TypographyServiceTests testCSSContainsParagraphSpacing 3ms
โœ… TypographyServiceTests testCSSContainsTextAlignment 3ms
โœ… TypographyServiceTests testCSSContainsWordSpacing 3ms
โœ… TypographyServiceTests testCSSDisablesHyphensForLeftAligned 5ms
โœ… TypographyServiceTests testCSSEnablesHyphensForJustifiedText 3ms
โœ… TypographyServiceTests testCSSForArbitrarySettings 3ms
โœ… TypographyServiceTests testCSSForDarkTheme 18ms
โœ… TypographyServiceTests testCSSForSepiaTheme 5ms
โœ… TypographyServiceTests testDefaultSettingsLoadClassicPreset 6ms
โœ… TypographyServiceTests testResetToPresetRestoresOriginal 20ms
โœ… TypographyServiceTests testResetToPresetWithNoPresetResetsToClassic 3ms
โœ… TypographyServiceTests testSettingsPersistedAfterDebounce 519ms
โœ… TypographyServiceTests testSettingsPublisherEmitsOnChange 7ms
โœ… TypographyServiceTests testUpdateFontFamily 3ms
โœ… TypographyServiceTests testUpdateFontSizeClampsToRange 8ms
โœ… TypographyServiceTests testUpdateLetterSpacingClampsToRange 5ms
โœ… TypographyServiceTests testUpdateLineSpacingClampsToRange 3ms
โœ… TypographyServiceTests testUpdateMarginLevel 29ms
โœ… TypographyServiceTests testUpdateParagraphSpacing 6ms
โœ… TypographyServiceTests testUpdateSettingsReplacesAll 6ms
โœ… TypographyServiceTests testUpdateTextAlignment 5ms
โœ… TypographyServiceTests testUpdateTheme 9ms
โœ… TypographyServiceTests testUpdateWordSpacingClampsToRange 5ms
โœ… TypographySettingsViewModelTests testAlignmentGetterMatchesSettings 17ms
โœ… TypographySettingsViewModelTests testAvailableFontsNotEmpty 10ms
โœ… TypographySettingsViewModelTests testFontSizeGetterMatchesSettings 15ms
โœ… TypographySettingsViewModelTests testHasCustomOverridesIsFalseForPreset 26ms
โœ… TypographySettingsViewModelTests testHasCustomOverridesIsTrueAfterChange 24ms
โœ… TypographySettingsViewModelTests testHasCustomOverridesIsTrueWithNoPreset 23ms
โœ… TypographySettingsViewModelTests testInitialPresetIsClassic 47ms
โœ… TypographySettingsViewModelTests testInitialStateMatchesService 6ms
โœ… TypographySettingsViewModelTests testPreviewCSSChangesWithSettings 424ms
โœ… TypographySettingsViewModelTests testPreviewCSSNotEmpty 3ms
โœ… TypographySettingsViewModelTests testPreviewTextNotEmpty 474ms
โœ… TypographySettingsViewModelTests testRapidChangesSettleCorrectly 1.21s
โœ… TypographySettingsViewModelTests testResetToPresetAfterCustomization 54ms
โœ… TypographySettingsViewModelTests testResetWithNoPresetResetsToClassic 203ms
โœ… TypographySettingsViewModelTests testSelectAllPresetsInSequence 103ms
โœ… TypographySettingsViewModelTests testSelectPresetUpdatesService 19ms
โœ… TypographySettingsViewModelTests testSelectPresetUpdatesSettings 17ms
โœ… TypographySettingsViewModelTests testServiceChangesReflectedInViewModel 2ms
โœ… TypographySettingsViewModelTests testUpdateFontFamily 13ms
โœ… TypographySettingsViewModelTests testUpdateFontSize 536ms
โœ… TypographySettingsViewModelTests testUpdateLetterSpacing 15ms
โœ… TypographySettingsViewModelTests testUpdateLineSpacing 42ms
โœ… TypographySettingsViewModelTests testUpdateMarginLevel 13ms
โœ… TypographySettingsViewModelTests testUpdateParagraphSpacing 19ms
โœ… TypographySettingsViewModelTests testUpdateTextAlignment 13ms
โœ… TypographySettingsViewModelTests testUpdateTheme 15ms
โœ… TypographySettingsViewModelTests testUpdateWordSpacing 13ms
โœ… UIAlertCACommitGuardTests testAlertTitleError_WithCancelledNetworkError_DoesNotCrash 4ms
โœ… UIAlertCACommitGuardTests testAlertTitleError_WithNilError_ProducesGenericMessage 128ms
โœ… UIAlertCACommitGuardTests testAlertTitleError_WithUnknownDomain_ProducesGenericMessage 6ms
โœ… UIAlertCACommitGuardTests testAlertTitleMessage_WithEmptyMessage_DoesNotCrashAndStillUsable 47ms
โœ… UIAlertCACommitGuardTests testAlertTitleMessage_WithNonEmptyArgs_ProducesValidController 40ms
โœ… UIAlertCACommitGuardTests testPresentFromViewControllerOrNil_WithNilController_DoesNothing 203ms
โœ… UIAlertCACommitGuardTests testPresent_OnInWindowVC_NoTransition_StillPresentsAlert 138ms
โœ… UIAlertCACommitGuardTests testSetProblemDocument_WithNilController_DoesNothing <1ms
โœ… UIAlertCACommitGuardTests testSetProblemDocument_WithNilDocument_DoesNothing 3ms
โœ… UIColor_NYPLAdditionsTests testExample <1ms
โœ… URLBackupExclusionTests test_excludeFromBackup_returnsFalse_whenURLDoesNotExist 30ms
โœ… URLBackupExclusionTests test_excludeFromBackup_setsFlag_onExistingDirectory 1ms
โœ… URLBackupExclusionTests test_excludeFromBackup_setsFlag_onExistingFile 6ms
โœ… URLExtensionTests testAppendingPathComponent <1ms
โœ… URLExtensionTests testAppendingPathExtension <1ms
โœ… URLExtensionTests testFileURL_deletingLastPathComponent 2ms
โœ… URLExtensionTests testFileURL_isFileURL <1ms
โœ… URLExtensionTests testFileURL_lastPathComponent 11ms
โœ… URLExtensionTests testFileURL_pathExtension <1ms
โœ… URLExtensionTests testHTTPURL_isNotFileURL <1ms
โœ… URLExtensionTests testURLComponents_fragment <1ms
โœ… URLExtensionTests testURLComponents_host <1ms
โœ… URLExtensionTests testURLComponents_path <1ms
โœ… URLExtensionTests testURLComponents_query 1ms
โœ… URLExtensionTests testURLComponents_scheme 1ms
โœ… URLExtensionTests testURLEncoding_spaceInQuery <1ms
โœ… URLExtensionTests testURLEncoding_specialCharacters <1ms
โœ… URLExtensionTests testURLQueryItems_building <1ms
โœ… URLExtensionTests testURLQueryItems_parsing 3ms
โœ… URLExtensionsTests testReplacingScheme_HttpToHttps_ReplacesScheme <1ms
โœ… URLExtensionsTests testReplacingScheme_HttpsToHttp_ReplacesScheme <1ms
โœ… URLExtensionsTests testReplacingScheme_PreservesFragment <1ms
โœ… URLExtensionsTests testReplacingScheme_PreservesPort 3ms
โœ… URLExtensionsTests testReplacingScheme_PreservesUserInfo <1ms
โœ… URLExtensionsTests testReplacingScheme_ToCustomScheme_Works 8ms
โœ… URLExtensionsTests testSettingQueryItem_NoExistingQuery_AddsItem 6ms
โœ… URLExtensionsTests testSettingQueryItem_PercentEncodesValue <1ms
โœ… URLExtensionsTests testSettingQueryItem_PreservesOtherItems_AndOrder 2ms
โœ… URLExtensionsTests testSettingQueryItem_RemovesAllDuplicatesOfName <1ms
โœ… URLExtensionsTests testSettingQueryItem_ReplacesExistingSameName_ExactlyOnce 1ms
โœ… URLRequestExtensionsCoverageTests testURLRequest_applyCustomUserAgent 21ms
โœ… URLRequestExtensionsCoverageTests testURLRequest_customUserAgent <1ms
โœ… URLRequestExtensionsCoverageTests testURLRequest_noCustomUserAgent_doesNotSetUserAgentHeader 2ms
โœ… URLRequestExtensionsTests testApplyCustomUserAgent_ReturnsSelf <1ms
โœ… URLRequestExtensionsTests testApplyCustomUserAgent_SetsHeader <1ms
โœ… URLRequestExtensionsTests testInit_WithCustomUserAgent_PreservesURL 19ms
โœ… URLRequestExtensionsTests testInit_WithCustomUserAgent_SetsUserAgentHeader <1ms
โœ… URLRequestExtensionsTests testInit_WithoutCustomUserAgent_NoUserAgentHeader <1ms
โœ… URLRequestExtensionsTests testIsTokenAuthorized_NoAuthHeader_ReturnsFalse 3ms
โœ… URLRequestExtensionsTests testIsTokenAuthorized_WithBasicAuth_ReturnsFalse 1ms
โœ… URLRequestExtensionsTests testIsTokenAuthorized_WithBearerToken_ReturnsTrue <1ms
โœ… URLRequestExtensionsTests testLoggableString_ContainsMethodAndURL <1ms
โœ… URLRequestExtensionsTests testLoggableString_ExcludesAuthorizationHeader <1ms
โœ… URLRequestExtensionsTests testLoggableString_IncludesNonSensitiveHeaders <1ms
โœ… URLRequestNYPLAdditionsTests testPostParams_bodyContainsParams <1ms
โœ… URLRequestNYPLAdditionsTests testPostParams_boundaryConsistencyBetweenHeaderAndBody 9ms
โœ… URLRequestNYPLAdditionsTests testPostParams_emptyParams_doesNotCrash 2ms
โœ… URLRequestNYPLAdditionsTests testPostParams_producesMultipartFormPOSTRequest 3ms
โœ… URLRequestNYPLAdditionsTests testPostParams_setsContentLength 7ms
โœ… URLRequestNYPLAdditionsTests testPostParams_withImage_bodyContainsImageData 19ms
โœ… URLRequestNYPLAdditionsTests testPostParams_withNilImage_bodyLacksImageSection 44ms
โœ… URLRequestNYPLAdditionsTests testPostProblemDocument_producesCompliantProblemJSONRequest <1ms
โœ… URLRequestNYPLAdditionsTests testPostProblemDocument_setsBody <1ms
โœ… URLRequestNYPLAdditionsTests testPostProblemDocument_setsContentLength <1ms
โœ… URLRequestNYPLAdditionsTests testPostProblemDocument_usesTransportDefaultsForReporting <1ms
โœ… URLRequest_NYPLTests testAuthorizationHeaderStrip <1ms
โœ… URLResponseAuthenticationTests testHTTPURLResponse_with200StatusCode_returnsFalse 6ms
โœ… URLResponseAuthenticationTests testHTTPURLResponse_with401StatusCode_returnsTrue 7ms
โœ… URLResponseAuthenticationTests testHTTPURLResponse_with403StatusCode_returnsFalse <1ms
โœ… URLResponseAuthenticationTests testHTTPURLResponse_withApiProblemMimeType_andInvalidCredentials_returnsTrue 4ms
โœ… URLResponseAuthenticationTests testHTTPURLResponse_withInvalidCredentialsProblemDoc_returnsTrue 2ms
โœ… URLResponseAuthenticationTests testHTTPURLResponse_withOPDSAuthMimeType_and200Status_returnsFalse <1ms
โœ… URLResponseAuthenticationTests testHTTPURLResponse_withOPDSAuthMimeType_andNon2xxStatus_returnsTrue 1ms
โœ… URLResponseAuthenticationTests testURLResponse_withInvalidCredentialsProblemDoc_returnsTrue <1ms
โœ… URLResponseAuthenticationTests testURLResponse_withNilProblemDoc_returnsFalse <1ms
โœ… URLResponseAuthenticationTests testURLResponse_withNonProblemMimeType_returnsFalse <1ms
โœ… URLResponseNYPLTests testIsProblemDocument_WithApiProblemJsonMime_ReturnsTrue 2ms
โœ… URLResponseNYPLTests testIsProblemDocument_WithHtmlMime_ReturnsFalse <1ms
โœ… URLResponseNYPLTests testIsProblemDocument_WithNilMime_ReturnsFalse <1ms
โœ… URLResponseNYPLTests testIsProblemDocument_WithProblemJsonMime_ReturnsTrue <1ms
โœ… URLResponseNYPLTests testIsProblemDocument_WithRegularJsonMime_ReturnsFalse <1ms
โœ… URLResponseNYPLTests testIsSuccess_199_ReturnsFalse 2ms
โœ… URLResponseNYPLTests testIsSuccess_200_ReturnsTrue <1ms
โœ… URLResponseNYPLTests testIsSuccess_201Created_ReturnsTrue 20ms
โœ… URLResponseNYPLTests testIsSuccess_204NoContent_ReturnsTrue <1ms
โœ… URLResponseNYPLTests testIsSuccess_299_ReturnsTrue 51ms
โœ… URLResponseNYPLTests testIsSuccess_300Redirect_ReturnsFalse <1ms
โœ… URLResponseNYPLTests testIsSuccess_400BadRequest_ReturnsFalse 2ms
โœ… URLResponseNYPLTests testIsSuccess_401Unauthorized_ReturnsFalse <1ms
โœ… URLResponseNYPLTests testIsSuccess_500ServerError_ReturnsFalse <1ms
โœ… URLSessionCredentialStorageTests testMakeURLSessionConfiguration_Default_DisablesCredentialStorage 26ms
โœ… URLSessionCredentialStorageTests testMakeURLSessionConfiguration_Ephemeral_ReturnsEphemeralConfig 53ms
โœ… URLSessionCredentialStorageTests testMakeURLSessionConfiguration_Fallback_DisablesCredentialStorage 2ms
โœ… URLSessionStubbingResetTests testResetStubbedSession_inFlightTaskOnOldSession_completesGracefully 14ms
โœ… URLSessionStubbingResetTests testResetStubbedSession_returnsDistinctSessionInstance 7ms
โœ… URLTypeTests testURLType_HasAllExpectedCases 7ms
โœ… URLTypeTests testURLType_RawValues_AreDistinct 2ms
โœ… URLValidationTests testEmptyString_returnsNil 1ms
โœ… URLValidationTests testFileURL_alwaysValid <1ms
โœ… URLValidationTests testInvalidURL_handledByURLInit 232ms
โœ… URLValidationTests testURLWithSpaces_handledCorrectly 2ms
โœ… URLValidationTests testValidHTTPURL <1ms
โœ… UnifiedOPDSServiceStateMachineTests testFetchLoansFeed_blocksUntilLoaded_thenFetches 38ms
โœ… UnifiedOPDSServiceStateMachineTests testFetchLoansFeed_failedDetailsLoad_throws 44ms
โœ… UserAccountPublisherAuthStateTests testAuthStateDidChangePublisher_firesOnStateChanges 3ms
โœ… UserAccountPublisherAuthStateTests testCredentialsStalePublisher_firesWhenStateBecomesStale 2ms
โœ… UserAccountPublisherAuthStateTests testInitialState_isLoggedOut_andMarkCredentialsStaleFromLoggedOutIsNoOp 1ms
โœ… UserAccountPublisherAuthStateTests testMarkCredentialsStale_updatesState 2ms
โœ… UserAccountPublisherAuthStateTests testSignOut_resetsToLoggedOut <1ms
โœ… UserAccountPublisherTests testAuthStateDidChangePublisher_emitsStateChanges <1ms
โœ… UserAccountPublisherTests testCredentialsDidChangePublisher_emitsOnChange 3ms
โœ… UserAccountPublisherTests testCredentialsStalePublisher_emitsWhenStale 2ms
โœ… UserAccountPublisherTests testDidSignOutPublisher_emitsOnSignOut <1ms
โœ… UserAccountPublisherTests testInit_hasCorrectDefaults 1ms
โœ… UserAccountPublisherTests testMarkCredentialsStale_fromLoggedIn_setsStaleState 51ms
โœ… UserAccountPublisherTests testMarkCredentialsStale_fromLoggedOut_doesNotChange 3ms
โœ… UserAccountPublisherTests testMarkLoggedIn_setsLoggedInState 15ms
โœ… UserAccountPublisherTests testShared_returnsSameInstance 9ms
โœ… UserAccountPublisherTests testSignOut_calledTwice_cancelsFirstResetTask 115ms
โœ… UserAccountPublisherTests testSignOut_deferredResetTask_isRetained 9ms
โœ… UserAccountPublisherTests testSignOut_deinit_cancelsPendingReset 15ms
โœ… UserAccountPublisherTests testSignOut_resetsAllState <1ms
โœ… UserAccountPublisherTests testSignOut_resetsIsSigningOutAfterDelay 103ms
โœ… UserAccountValidationTests testAcceptsASCIICharacters 47ms
โœ… UserAccountValidationTests testAcceptsEmptyReplacementString 23ms
โœ… UserAccountValidationTests testAcceptsPINAtExactlyAuthPasscodeLength 126ms
โœ… UserAccountValidationTests testAcceptsUsernameAtExactly25Characters 41ms
โœ… UserAccountValidationTests testRejectsNonASCIICharacters 47ms
โœ… UserAccountValidationTests testRejectsPINLongerThanAuthPasscodeLength 60ms
โœ… UserAccountValidationTests testRejectsUsernameLongerThan25Characters 23ms
โœ… UserAccountValidationTests testRejectsUsernameRangeOutsideTextBounds 41ms
โœ… UserAccountValidationTests testShouldBeginEditingWhenForceEditabilityIsTrue 99ms
โœ… UserAccountValidationTests testShouldBeginEditingWhenNoBusinessLogic 42ms
โœ… UserAccountValidationTests testShouldNotBeginEditingWhenBusinessLogicHasBarcodeAndPIN 53ms
โœ… UserDefaultsIsolationLintTests testLintCatchesSyntheticViolatorIfStrictModeEnabled <1ms
โœ… UserDefaultsIsolationLintTests testWarnsOnUserDefaultsStandardOutsideWhitelist 810ms
โœ… UserProfileDocumentTests testParse 18ms
โœ… UserProfileDocumentTests testParseJSONExtraProperty 2ms
โœ… UserProfileDocumentTests testParseJSONInvalid <1ms
โœ… UserProfileDocumentTests testParseJSONMissingProperty 1ms
โœ… UserProfileDocumentTests testParseJSONNilValue 65ms
โœ… UserProfileDocumentTests testParseJSONTypeMismatch 1ms
โœ… UserProfileDocumentTests testParseProfileDocCausingSIMPLY2491 2ms
โœ… UserRetryTrackerTests testCanRetry_afterFiveRetries_returnsFalse <1ms
โœ… UserRetryTrackerTests testCanRetry_afterFourRetries_returnsTrue <1ms
โœ… UserRetryTrackerTests testCanRetry_afterOneRetry_returnsTrue 4ms
โœ… UserRetryTrackerTests testCanRetry_newOperation_returnsTrue 10ms
โœ… UserRetryTrackerTests testClearRetries_onlyAffectsSpecifiedOperation 4ms
โœ… UserRetryTrackerTests testClearRetries_resetsCount <1ms
โœ… UserRetryTrackerTests testConcurrentAccess_doesNotCrash 17ms
โœ… UserRetryTrackerTests testRecordRetry_afterMax_returnsZero <1ms
โœ… UserRetryTrackerTests testRecordRetry_returnsRemainingCount <1ms
โœ… UserRetryTrackerTests testSeparateOperations_trackIndependently <1ms
โœ… XCTestCase_testUserDefaultsTests testTestUserDefaults_resetterClearsSuiteOnTestEnd 8ms
โœ… XCTestCase_testUserDefaultsTests testTestUserDefaults_returnsIsolatedSuite 14ms
โœ… XCTestCase_testUserDefaultsTests testTestUserDefaults_writesDoNotLeakToStandard 4ms
โœ… iPadOnMacRMSDKGuardTests testDidUseAdobeDRMThisSession_isFalseUntilMarked_thenTrue 7ms
โœ… iPadOnMacRMSDKGuardTests testProcessInfoExposes_isiOSAppOnMac_OnSupportedSDKs 1ms
โœ… iPadOnMacRMSDKGuardTests testShouldRegisterStaticDestructorBypass_OnIOSDevice_NeverRegisters 6ms
โœ… iPadOnMacRMSDKGuardTests testShouldRegisterStaticDestructorBypass_OnIPadOnMac_AlreadyRegistered_DoesNotReRegister 1ms
โœ… iPadOnMacRMSDKGuardTests testShouldRegisterStaticDestructorBypass_OnIPadOnMac_NotYetRegistered_Registers 2ms
โœ… iPadOnMacRMSDKGuardTests testShouldSkipStaticDestructorsOnExit_OnIOSDevice_ReturnsFalse 4ms
โœ… iPadOnMacRMSDKGuardTests testShouldSkipStaticDestructorsOnExit_OnIPadOnMac_ReturnsTrue 6ms