diff --git a/test/cpp/src/TestClient.cc b/test/cpp/src/TestClient.cc
index 42272d3..2e2f61b 100644
--- a/test/cpp/src/TestClient.cc
+++ b/test/cpp/src/TestClient.cc
@@ -325,26 +325,52 @@
     }
     printf("}\n");
 
-    /* test multi exception */
+    /* test exception */
 
     try {
-      Xtruct result = testClient.testMultiException("Xception", "test 1");
+      printf("testClient.testException(\"Xception\") =>");
+      testClient.testException("Xception");
+      printf("  void\nFAILURE\n");
       
     }  catch(Xception& e) {
-      printf("testClient.testMulticException(\"Xception\", \"test 1\") => {%u, \"%s\"}\n", e.errorCode, e.message.c_str());
+      printf("  {%u, \"%s\"}\n", e.errorCode, e.message.c_str());
     }
-   
+    
     try {
+      printf("testClient.testException(\"success\") =>");
+      testClient.testException("success");
+      printf("  void\n");
+    } catch(...) {
+      printf("  exception\nFAILURE\n");
+    }
+    
+    /* test multi exception */
+    
+    try {
+      printf("testClient.testMultiException(\"Xception\", \"test 1\") =>");
+      Xtruct result = testClient.testMultiException("Xception", "test 1");
+      printf("  result\nFAILURE\n");
+    }  catch(Xception& e) {
+      printf("  {%u, \"%s\"}\n", e.errorCode, e.message.c_str());
+    }
+
+    try {
+      printf("testClient.testMultiException(\"Xception2\", \"test 2\") =>");
       Xtruct result = testClient.testMultiException("Xception2", "test 2");
+      printf("  result\nFAILURE\n");
       
     }  catch(Xception2& e) {
-      printf("testClient.testMultiException(\"Xception2\", \"test 2\") => {%u, {\"%s\"}}\n", e.errorCode, e.struct_thing.string_thing.c_str());
+      printf("  {%u, {\"%s\"}}\n", e.errorCode, e.struct_thing.string_thing.c_str());
     }
     
-    Xtruct result = testClient.testMultiException("success", "test 3");
+    try {
+      printf("testClient.testMultiException(\"success\", \"test 3\") =>");
+      Xtruct result = testClient.testMultiException("success", "test 3");
+      printf("  {{\"%s\"}}\n", result.string_thing.c_str());
+    } catch(...) {
+      printf("  exception\nFAILURE\n");
+    }
     
-    printf("testClient.testMultiException(\"success\", \"test 3\") => {{\"%s\"}}\n", result.string_thing.c_str());
-
     uint64_t stop = now();
     printf("Total time: %llu us\n", stop-start);
     
diff --git a/test/cpp/src/TestServer.cc b/test/cpp/src/TestServer.cc
index 4df37af..9e5cf91 100644
--- a/test/cpp/src/TestServer.cc
+++ b/test/cpp/src/TestServer.cc
@@ -246,7 +246,7 @@
   
   virtual struct Xtruct testMultiException(std::string arg0, std::string arg1) throw(struct Xception, struct Xception2) {
 
-    printf("testException(%s, %s)\n", arg0.c_str(), arg1.c_str());
+    printf("testMultiException(%s, %s)\n", arg0.c_str(), arg1.c_str());
 
     if(arg0.compare("Xception") == 0) {
       Xception e;
