diff --git a/swh/model/tests/fields/test_hashes.py b/swh/model/tests/fields/test_hashes.py
index 69a739f29d5f617addf127715cfac2fc3f17cfa8..145084ebb51f4d90a0ab001b54930d349951f4fa 100644
--- a/swh/model/tests/fields/test_hashes.py
+++ b/swh/model/tests/fields/test_hashes.py
@@ -112,3 +112,43 @@ class ValidateHash(unittest.TestCase):
 
         self.assertIn('Unexpected type', str(exc))
         self.assertIn(self.bad_hash.__class__.__name__, str(exc))
+
+    @istest
+    def validate_sha1(self):
+        self.assertTrue(hashes.validate_sha1(self.valid_byte_hashes['sha1']))
+        self.assertTrue(hashes.validate_sha1(self.valid_str_hashes['sha1']))
+
+        with self.assertRaises(ValidationError) as cm:
+            hashes.validate_sha1(self.bad_hash)
+
+        exc = cm.exception
+        self.assertEqual(exc.code, 'unexpected-hash-value-type')
+        self.assertEqual(exc.params['type'], self.bad_hash.__class__.__name__)
+
+    @istest
+    def validate_sha1_git(self):
+        self.assertTrue(
+            hashes.validate_sha1_git(self.valid_byte_hashes['sha1_git']))
+        self.assertTrue(
+            hashes.validate_sha1_git(self.valid_str_hashes['sha1_git']))
+
+        with self.assertRaises(ValidationError) as cm:
+            hashes.validate_sha1_git(self.bad_hash)
+
+        exc = cm.exception
+        self.assertEqual(exc.code, 'unexpected-hash-value-type')
+        self.assertEqual(exc.params['type'], self.bad_hash.__class__.__name__)
+
+    @istest
+    def validate_sha256(self):
+        self.assertTrue(
+            hashes.validate_sha256(self.valid_byte_hashes['sha256']))
+        self.assertTrue(
+            hashes.validate_sha256(self.valid_str_hashes['sha256']))
+
+        with self.assertRaises(ValidationError) as cm:
+            hashes.validate_sha256(self.bad_hash)
+
+        exc = cm.exception
+        self.assertEqual(exc.code, 'unexpected-hash-value-type')
+        self.assertEqual(exc.params['type'], self.bad_hash.__class__.__name__)