Fix the Mac build, and clean up some test-only code.

Change-Id: Ie0acf7ac5e99153d153a0d5f40e9b69cecb4942b
diff --git a/src/mutex_test.cc b/src/mutex_test.cc
index 2099951..b59b305 100644
--- a/src/mutex_test.cc
+++ b/src/mutex_test.cc
@@ -20,48 +20,56 @@
 
 namespace art {
 
+#if !defined(__APPLE__)
+struct MutexTester {
+  static void AssertDepth(Mutex& mu, uint32_t expected_depth) {
+    ASSERT_EQ(expected_depth, mu.GetDepth());
+  }
+};
+
 TEST(Mutex, LockUnlock) {
   Mutex mu("test mutex");
-  mu.AssertDepth(0U);
+  MutexTester::AssertDepth(mu, 0U);
   mu.Lock();
-  mu.AssertDepth(1U);
+  MutexTester::AssertDepth(mu, 1U);
   mu.Unlock();
-  mu.AssertDepth(0U);
+  MutexTester::AssertDepth(mu, 0U);
 }
 
 TEST(Mutex, TryLockUnlock) {
   Mutex mu("test mutex");
-  mu.AssertDepth(0U);
+  MutexTester::AssertDepth(mu, 0U);
   mu.TryLock();
-  mu.AssertDepth(1U);
+  MutexTester::AssertDepth(mu, 1U);
   mu.Unlock();
-  mu.AssertDepth(0U);
+  MutexTester::AssertDepth(mu, 0U);
 }
 
 TEST(Mutex, RecursiveLockUnlock) {
   Mutex mu("test mutex");
-  mu.AssertDepth(0U);
+  MutexTester::AssertDepth(mu, 0U);
   mu.Lock();
-  mu.AssertDepth(1U);
+  MutexTester::AssertDepth(mu, 1U);
   mu.Lock();
-  mu.AssertDepth(2U);
+  MutexTester::AssertDepth(mu, 2U);
   mu.Unlock();
-  mu.AssertDepth(1U);
+  MutexTester::AssertDepth(mu, 1U);
   mu.Unlock();
-  mu.AssertDepth(0U);
+  MutexTester::AssertDepth(mu, 0U);
 }
 
 TEST(Mutex, RecursiveTryLockUnlock) {
   Mutex mu("test mutex");
-  mu.AssertDepth(0U);
+  MutexTester::AssertDepth(mu, 0U);
   mu.TryLock();
-  mu.AssertDepth(1U);
+  MutexTester::AssertDepth(mu, 1U);
   mu.TryLock();
-  mu.AssertDepth(2U);
+  MutexTester::AssertDepth(mu, 2U);
   mu.Unlock();
-  mu.AssertDepth(1U);
+  MutexTester::AssertDepth(mu, 1U);
   mu.Unlock();
-  mu.AssertDepth(0U);
+  MutexTester::AssertDepth(mu, 0U);
 }
+#endif
 
 }  // namespace art