Bug 1959622 - QM: Add SaveOriginAccessTime helper to QuotaManagerDependencyFixture; r=dom-storage-reviewers,asuth

Adds a static helper method to QuotaManagerDependencyFixture that runs
QuotaManager::SaveOriginAccessTime on the PBackground thread.

This simplifies calling SaveOriginAccessTime from gtests and ensures
consistency across test cases.

For more complex testing, use of this helper is optional.

Differential Revision: https://phabricator.services.mozilla.com/D244752
This commit is contained in:
Jan Varga
2025-05-09 06:30:33 +00:00
committed by jvarga@mozilla.com
parent 4ee2636f0a
commit 3784234e60
3 changed files with 19 additions and 12 deletions

View File

@@ -271,6 +271,19 @@ void QuotaManagerDependencyFixture::AssertTemporaryOriginNotInitialized(
ASSERT_FALSE(result); ASSERT_FALSE(result);
} }
// static
void QuotaManagerDependencyFixture::SaveOriginAccessTime(
const OriginMetadata& aOriginMetadata, int64_t aTimestamp) {
PerformOnBackgroundThread([aOriginMetadata, aTimestamp]() {
QuotaManager* quotaManager = QuotaManager::Get();
MOZ_RELEASE_ASSERT(quotaManager);
auto value =
Await(quotaManager->SaveOriginAccessTime(aOriginMetadata, aTimestamp));
MOZ_RELEASE_ASSERT(value.IsResolve());
});
}
// static // static
void QuotaManagerDependencyFixture::GetOriginUsage( void QuotaManagerDependencyFixture::GetOriginUsage(
const OriginMetadata& aOriginMetadata, UsageInfo* aResult) { const OriginMetadata& aOriginMetadata, UsageInfo* aResult) {

View File

@@ -55,6 +55,11 @@ class QuotaManagerDependencyFixture : public testing::Test {
const OriginMetadata& aOriginMetadata); const OriginMetadata& aOriginMetadata);
static void AssertTemporaryOriginNotInitialized( static void AssertTemporaryOriginNotInitialized(
const OriginMetadata& aOriginMetadata); const OriginMetadata& aOriginMetadata);
// For more complex testing, use of this helper is optional.
static void SaveOriginAccessTime(const OriginMetadata& aOriginMetadata,
int64_t aTimestamp);
static void GetOriginUsage(const OriginMetadata& aOriginMetadata, static void GetOriginUsage(const OriginMetadata& aOriginMetadata,
UsageInfo* aResult); UsageInfo* aResult);
static void GetCachedOriginUsage(const OriginMetadata& aOriginMetadata, static void GetCachedOriginUsage(const OriginMetadata& aOriginMetadata,

View File

@@ -2040,18 +2040,7 @@ TEST_F(TestQuotaManager, SaveOriginAccessTime_Simple) {
ASSERT_NO_FATAL_FAILURE( ASSERT_NO_FATAL_FAILURE(
AssertTemporaryOriginNotInitialized(testOriginMetadata)); AssertTemporaryOriginNotInitialized(testOriginMetadata));
PerformOnBackgroundThread([testOriginMetadata]() { SaveOriginAccessTime(testOriginMetadata, PR_Now());
QuotaManager* quotaManager = QuotaManager::Get();
ASSERT_TRUE(quotaManager);
{
int64_t timestamp = PR_Now();
auto value = Await(
quotaManager->SaveOriginAccessTime(testOriginMetadata, timestamp));
ASSERT_TRUE(value.IsResolve());
}
});
ASSERT_NO_FATAL_FAILURE(AssertStorageInitialized()); ASSERT_NO_FATAL_FAILURE(AssertStorageInitialized());
ASSERT_NO_FATAL_FAILURE(AssertTemporaryStorageNotInitialized()); ASSERT_NO_FATAL_FAILURE(AssertTemporaryStorageNotInitialized());