diff --git a/ChangeLog b/ChangeLog
index 27cec7acc89426b150fe7bc69fef853d3f3c4e39..9ce0579d840040d0ef9e59a0bb9c66dc58cc0239 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2014-04-09  Niels Möller  <nisse@lysator.liu.se>
 
+	* testsuite/sha512-224-test.c: New file.
+	* testsuite/sha512-256-test.c: New file.
+	* testsuite/Makefile.in (TS_NETTLE_SOURCES): Added new files.
+
 	* nettle-meta.h (nettle_sha512_224, nettle_sha512_256): Declare.
 	* sha512-224-meta.c (nettle_sha512_224): New file, new nettle_hash.
 	* sha512-256-meta.c (nettle_sha512_256): New file, new nettle_hash.
diff --git a/testsuite/.test-rules.make b/testsuite/.test-rules.make
index 16d107ca660426238b7471a5fc55dcba2ff62b9d..03711c4b60c46bade46e08e0a46c80d96ed1ceb2 100644
--- a/testsuite/.test-rules.make
+++ b/testsuite/.test-rules.make
@@ -73,6 +73,12 @@ sha384-test$(EXEEXT): sha384-test.$(OBJEXT)
 sha512-test$(EXEEXT): sha512-test.$(OBJEXT)
 	$(LINK) sha512-test.$(OBJEXT) $(TEST_OBJS) -o sha512-test$(EXEEXT)
 
+sha512-224-test$(EXEEXT): sha512-224-test.$(OBJEXT)
+	$(LINK) sha512-224-test.$(OBJEXT) $(TEST_OBJS) -o sha512-224-test$(EXEEXT)
+
+sha512-256-test$(EXEEXT): sha512-256-test.$(OBJEXT)
+	$(LINK) sha512-256-test.$(OBJEXT) $(TEST_OBJS) -o sha512-256-test$(EXEEXT)
+
 sha3-permute-test$(EXEEXT): sha3-permute-test.$(OBJEXT)
 	$(LINK) sha3-permute-test.$(OBJEXT) $(TEST_OBJS) -o sha3-permute-test$(EXEEXT)
 
@@ -100,9 +106,6 @@ knuth-lfib-test$(EXEEXT): knuth-lfib-test.$(OBJEXT)
 cbc-test$(EXEEXT): cbc-test.$(OBJEXT)
 	$(LINK) cbc-test.$(OBJEXT) $(TEST_OBJS) -o cbc-test$(EXEEXT)
 
-ccm-test$(EXEEXT): ccm-test.$(OBJEXT)
-	$(LINK) ccm-test.$(OBJEXT) $(TEST_OBJS) -o ccm-test$(EXEEXT)
-
 ctr-test$(EXEEXT): ctr-test.$(OBJEXT)
 	$(LINK) ctr-test.$(OBJEXT) $(TEST_OBJS) -o ctr-test$(EXEEXT)
 
@@ -112,6 +115,9 @@ gcm-test$(EXEEXT): gcm-test.$(OBJEXT)
 eax-test$(EXEEXT): eax-test.$(OBJEXT)
 	$(LINK) eax-test.$(OBJEXT) $(TEST_OBJS) -o eax-test$(EXEEXT)
 
+ccm-test$(EXEEXT): ccm-test.$(OBJEXT)
+	$(LINK) ccm-test.$(OBJEXT) $(TEST_OBJS) -o ccm-test$(EXEEXT)
+
 poly1305-test$(EXEEXT): poly1305-test.$(OBJEXT)
 	$(LINK) poly1305-test.$(OBJEXT) $(TEST_OBJS) -o poly1305-test$(EXEEXT)
 
diff --git a/testsuite/Makefile.in b/testsuite/Makefile.in
index 30611c769c90fb40d30c317208be62ce306c2d3a..2ea2bf95a15f17b11978be58f50e8669b28b6f8c 100644
--- a/testsuite/Makefile.in
+++ b/testsuite/Makefile.in
@@ -20,7 +20,7 @@ TS_NETTLE_SOURCES = aes-test.c arcfour-test.c arctwo-test.c \
 		    ripemd160-test.c \
 		    salsa20-test.c \
 		    sha1-test.c sha224-test.c sha256-test.c \
-		    sha384-test.c sha512-test.c \
+		    sha384-test.c sha512-test.c sha512-224-test.c sha512-256-test.c \
 		    sha3-permute-test.c sha3-224-test.c sha3-256-test.c \
 		    sha3-384-test.c sha3-512-test.c \
 		    serpent-test.c twofish-test.c \
diff --git a/testsuite/sha512-224-test.c b/testsuite/sha512-224-test.c
new file mode 100644
index 0000000000000000000000000000000000000000..6b81184b8018c3651de460c5d46b55378d17e811
--- /dev/null
+++ b/testsuite/sha512-224-test.c
@@ -0,0 +1,17 @@
+#include "testutils.h"
+
+void
+test_main(void)
+{
+  /* From http://csrc.nist.gov/groups/ST/toolkit/documents/Examples/SHA_All.pdf */
+  test_hash(&nettle_sha512_224, SDATA("abc"),
+	    SHEX("4634270F 707B6A54 DAAE7530 460842E2"
+		 "0E37ED26 5CEEE9A4 3E8924AA"));
+
+  test_hash(&nettle_sha512_224, SDATA("abcdefghbcdefghicdefghijdefghijk"
+				      "efghijklfghijklmghijklmnhijklmno"
+				      "ijklmnopjklmnopqklmnopqrlmnopqrs"
+				      "mnopqrstnopqrstu"),
+	    SHEX("23FEC5BB 94D60B23 30819264 0B0C4533"
+		 "35D66473 4FE40E72 68674AF9"));
+}
diff --git a/testsuite/sha512-256-test.c b/testsuite/sha512-256-test.c
new file mode 100644
index 0000000000000000000000000000000000000000..c0613ed0e38855d3ad3999bc72a0f1ead1d259c6
--- /dev/null
+++ b/testsuite/sha512-256-test.c
@@ -0,0 +1,17 @@
+#include "testutils.h"
+
+void
+test_main(void)
+{
+  /* From http://csrc.nist.gov/groups/ST/toolkit/documents/Examples/SHA_All.pdf */
+  test_hash(&nettle_sha512_256, SDATA("abc"),
+	    SHEX("53048E26 81941EF9 9B2E29B7 6B4C7DAB"
+		 "E4C2D0C6 34FC6D46 E0E2F131 07E7AF23"));
+
+  test_hash(&nettle_sha512_256, SDATA("abcdefghbcdefghicdefghijdefghijk"
+				      "efghijklfghijklmghijklmnhijklmno"
+				      "ijklmnopjklmnopqklmnopqrlmnopqrs"
+				      "mnopqrstnopqrstu"),
+	    SHEX("3928E184 FB8690F8 40DA3988 121D31BE"
+		 "65CB9D3E F83EE614 6FEAC861 E19B563A"));
+}