| Index: base/memory/discardable_memory_provider_unittest.cc
|
| diff --git a/base/memory/discardable_memory_provider_unittest.cc b/base/memory/discardable_memory_provider_unittest.cc
|
| index f033a0524e727ab1d314b50b31faca888123901c..a1294fbcde9e3034b16065f703d748a923b212ff 100644
|
| --- a/base/memory/discardable_memory_provider_unittest.cc
|
| +++ b/base/memory/discardable_memory_provider_unittest.cc
|
| @@ -232,6 +232,22 @@ TEST_P(DiscardableMemoryProviderPermutationTest, LRUDiscardedExceedLimit) {
|
| EXPECT_NE(static_cast<void*>(NULL), Memory(discardable(0)));
|
| }
|
|
|
| +// Verify that no more memory than necessary was discarded after changing
|
| +// memory limit.
|
| +TEST_P(DiscardableMemoryProviderPermutationTest, LRUDiscardedAmount) {
|
| + SetBytesToReclaimUnderModeratePressure(2048);
|
| + SetDiscardableMemoryLimit(4096);
|
| +
|
| + CreateAndUseDiscardableMemory();
|
| +
|
| + SetDiscardableMemoryLimit(2048);
|
| +
|
| + EXPECT_EQ(DISCARDABLE_MEMORY_SUCCESS, discardable(2)->Lock());
|
| + EXPECT_EQ(DISCARDABLE_MEMORY_PURGED, discardable(1)->Lock());
|
| + // 0 should still be locked.
|
| + EXPECT_NE(static_cast<void*>(NULL), Memory(discardable(0)));
|
| +}
|
| +
|
| TEST_P(DiscardableMemoryProviderPermutationTest,
|
| CriticalPressureFreesAllUnlocked) {
|
| CreateAndUseDiscardableMemory();
|
|
|