@Test
  public void testGetObj() {
    try {
      MockClassForTesting mockObj = Utils.getObj("com.github.ambry.utils.MockClassForTesting");
      Assert.assertNotNull(mockObj);
      Assert.assertTrue(mockObj.noArgConstructorInvoked);
      mockObj = Utils.getObj("com.github.ambry.utils.MockClassForTesting", new Object());
      Assert.assertNotNull(mockObj);
      Assert.assertTrue(mockObj.oneArgConstructorInvoked);
      mockObj = Utils.getObj("com.github.ambry.utils.MockClassForTesting", new Object(), new Object());
      Assert.assertNotNull(mockObj);
      Assert.assertTrue(mockObj.twoArgConstructorInvoked);
      mockObj = Utils.getObj("com.github.ambry.utils.MockClassForTesting", new Object(), new Object(), new Object());
      Assert.assertNotNull(mockObj);
      Assert.assertTrue(mockObj.threeArgConstructorInvoked);
      mockObj = Utils.getObj("com.github.ambry.utils.MockClassForTesting", new Object(), new Object(), new Object(),
          new Object());
      Assert.assertNotNull(mockObj);
      Assert.assertTrue(mockObj.fourArgConstructorInvoked);
    } catch (Exception e) {
      Assert.assertTrue(false);
    }
  }
Return the internal byte array of the given {@link ByteBuffer}. It only works when the {@link ByteBuffer} is not
a direct {@link ByteBuffer}.
@param buffer The {@link ByteBuffer}.
@return The internal byte array.
@throws Exception Any unexpected error.
ambry-utils/src/test/java/com/github/ambry/utils/UtilsTest.java