/* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ #include "nsISupports.idl" interface nsIObserver; /** * This is an internal interface used only for testing purposes. * * THIS IS NOT AN API TO BE USED BY EXTENSIONS! ONLY USED BY MOZILLA TESTS. */ [scriptable, builtinclass, uuid(4e8ba935-92e1-4a74-944b-b1a2f02a7480)] interface nsICacheTesting : nsISupports { void suspendCacheIOThread(in uint32_t aLevel); void resumeCacheIOThread(); void flush(in nsIObserver aObserver); /** * Clear the in-memory DictionaryCache but keep disk data intact. * This forces dictionary entries to be reloaded from disk on next access. */ void clearDictionaryCacheMemory(); /** * Corrupt the hash of a stored dictionary for testing hash mismatch handling. * @param aURI The URI of the dictionary to corrupt */ void corruptDictionaryHash(in ACString aURI); /** * Clear the loaded dictionary data for a specific entry while keeping the * entry metadata (including hash). This forces the data to be reloaded from * disk on next prefetch. * @param aURI The URI of the dictionary */ void clearDictionaryDataForTesting(in ACString aURI); };