Make SkImageFilter::Cache purging methods pure virtual

This is intended to see if the Windows 10 bots ignoring of the purge methods is a compiler bug.

TBR=reed@google.com

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1901883002

Review URL: https://codereview.chromium.org/1901883002
diff --git a/tests/ImageFilterCacheTest.cpp b/tests/ImageFilterCacheTest.cpp
index 1337d01..688069e 100644
--- a/tests/ImageFilterCacheTest.cpp
+++ b/tests/ImageFilterCacheTest.cpp
@@ -113,6 +113,7 @@
     SkIPoint offset = SkIPoint::Make(3, 4);
     cache->set(key1, image.get(), offset);
     cache->set(key2, image.get(), offset);
+    SkDEBUGCODE(REPORTER_ASSERT(reporter, 2 == cache->count());)
 
     SkIPoint foundOffset;
 
@@ -120,11 +121,13 @@
     REPORTER_ASSERT(reporter, cache->get(key2, &foundOffset));
 
     cache->purgeByKeys(&key1, 1);
+    SkDEBUGCODE(REPORTER_ASSERT(reporter, 1 == cache->count());)
 
     REPORTER_ASSERT(reporter, !cache->get(key1, &foundOffset));
     REPORTER_ASSERT(reporter, cache->get(key2, &foundOffset));
 
     cache->purge();
+    SkDEBUGCODE(REPORTER_ASSERT(reporter, 0 == cache->count());)
 
     REPORTER_ASSERT(reporter, !cache->get(key1, &foundOffset));
     REPORTER_ASSERT(reporter, !cache->get(key2, &foundOffset));