diff --git a/tests/hazmat/primitives/test_dsa.py b/tests/hazmat/primitives/test_dsa.py
index 3f65fd5..67f9029 100644
--- a/tests/hazmat/primitives/test_dsa.py
+++ b/tests/hazmat/primitives/test_dsa.py
@@ -761,10 +761,19 @@
                 verifier.verify()
         else:
             verifier.verify()
-            with pytest.raises(AlreadyFinalized):
-                verifier.verify()
-            with pytest.raises(AlreadyFinalized):
-                verifier.update(b"more data")
+
+    def test_use_after_finalize(self, backend):
+        parameters = dsa.DSAParameters.generate(1024, backend)
+        private_key = dsa.DSAPrivateKey.generate(parameters, backend)
+        public_key = private_key.public_key()
+        verifier = public_key.verifier(b'fakesig', hashes.SHA1(), backend)
+        verifier.update(b'irrelevant')
+        with pytest.raises(InvalidSignature):
+            verifier.verify()
+        with pytest.raises(AlreadyFinalized):
+            verifier.verify()
+        with pytest.raises(AlreadyFinalized):
+            verifier.update(b"more data")
 
     def test_dsa_verifier_invalid_backend(self, backend):
         pretend_backend = object()
