@Override
        public boolean evaluate() throws Exception {
          try {
            if (expectSync) {
              verify(wal, times(1)).sync(anyLong()); // Hregion calls this one
            } else if (expectSyncFromLogSyncer) {
              verify(wal, times(1)).sync(); // wal syncer calls this one
            }
          } catch (Throwable ignore) {
          }
          return true;
        }
For this test,the spied {@link AsyncFSWAL} can not work properly because of a Mockito defect
that can not deal with classes which have a field of an inner class. See discussions in
HBASE-15536.When we reuse the code of {@link AsyncFSWAL} for {@link FSHLog}, this test could
not work for {@link FSHLog} also.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java