diff --git a/tests/check_framework/test_caches.py b/tests/check_framework/test_caches.py
index a3ddfd64e7..3b6b41d442 100644
--- a/tests/check_framework/test_caches.py
+++ b/tests/check_framework/test_caches.py
@@ -91,6 +91,35 @@ class CheckCacheLocationTest(SimpleTestCase):
             with self.subTest(setting=setting), self.settings(**settings):
                 self.assertEqual(check_cache_location_not_exposed(None), [])
 
+    def test_staticfiles_dirs_prefix(self):
+        root = pathlib.Path.cwd()
+        tests = [
+            (root, root, 'matches'),
+            (root / 'cache', root, 'is inside'),
+            (root, root / 'other', 'contains'),
+        ]
+        for cache_path, setting_path, msg in tests:
+            settings = self.get_settings(
+                'STATICFILES_DIRS',
+                cache_path,
+                ('prefix', setting_path),
+            )
+            with self.subTest(path=setting_path), self.settings(**settings):
+                msg = self.warning_message % (msg, 'STATICFILES_DIRS')
+                self.assertEqual(check_cache_location_not_exposed(None), [
+                    Warning(msg, id='caches.W002'),
+                ])
+
+    def test_staticfiles_dirs_prefix_not_conflict(self):
+        root = pathlib.Path.cwd()
+        settings = self.get_settings(
+            'STATICFILES_DIRS',
+            root / 'cache',
+            ('prefix', root / 'other'),
+        )
+        with self.settings(**settings):
+            self.assertEqual(check_cache_location_not_exposed(None), [])
+
 
 class CheckCacheAbsolutePath(SimpleTestCase):
     def test_absolute_path(self):

