@Test
  public void testObjectReleaseTracker() {
    ObjectReleaseTracker.track(new Object());
    ObjectReleaseTracker.release(new Object());
    assertNotNull(ObjectReleaseTracker.clearObjectTrackerAndCheckEmpty());
    assertNull(ObjectReleaseTracker.clearObjectTrackerAndCheckEmpty());
    Object obj = new Object();
    ObjectReleaseTracker.track(obj);
    ObjectReleaseTracker.release(obj);
    assertNull(ObjectReleaseTracker.clearObjectTrackerAndCheckEmpty());

    Object obj1 = new Object();
    ObjectReleaseTracker.track(obj1);
    Object obj2 = new Object();
    ObjectReleaseTracker.track(obj2);
    Object obj3 = new Object();
    ObjectReleaseTracker.track(obj3);

    ObjectReleaseTracker.release(obj1);
    ObjectReleaseTracker.release(obj2);
    ObjectReleaseTracker.release(obj3);
    assertNull(ObjectReleaseTracker.clearObjectTrackerAndCheckEmpty());

    ObjectReleaseTracker.track(obj1);
    ObjectReleaseTracker.track(obj2);
    ObjectReleaseTracker.track(obj3);

    ObjectReleaseTracker.release(obj1);
    ObjectReleaseTracker.release(obj2);
    // ObjectReleaseTracker.release(obj3);
    assertNotNull(ObjectReleaseTracker.clearObjectTrackerAndCheckEmpty());
    assertNull(ObjectReleaseTracker.clearObjectTrackerAndCheckEmpty());
  }