### Question:
ObjectGraphMeasurer { public static Footprint measure(Object rootObject) { return measure(rootObject, Predicates.alwaysTrue()); } private  ObjectGraphMeasurer(); static Footprint measure(Object rootObject); static Footprint measure(Object rootObject, Predicate<Object> objectAcceptor);  }### Answer:
@Test public void testEnum() { ObjectGraphMeasurer.Footprint footprint = ObjectGraphMeasurer.measure(oneEnumField); assertEquals(new Footprint(1, 1, 0, NO_PRIMITIVES), footprint); }
@Test public void testClass() { ObjectGraphMeasurer.Footprint footprint = ObjectGraphMeasurer.measure(oneClassField); assertEquals(new ObjectGraphMeasurer.Footprint(1, 1, 0, NO_PRIMITIVES), footprint); }
@Test public void testObject() { ObjectGraphMeasurer.Footprint footprint = ObjectGraphMeasurer.measure(oneObjectField); assertEquals(new ObjectGraphMeasurer.Footprint(2, 1, 0, NO_PRIMITIVES), footprint); }
@Test public void testCycle() { ObjectGraphMeasurer.Footprint footprint = ObjectGraphMeasurer.measure(withCycle); assertEquals(new ObjectGraphMeasurer.Footprint(2, 2, 0, NO_PRIMITIVES), footprint); }
@Test public void testMultiplePathsToObject() { ObjectGraphMeasurer.Footprint footprint = ObjectGraphMeasurer.measure(multiplePathsToObject); assertEquals(new ObjectGraphMeasurer.Footprint(2, 3, 0, NO_PRIMITIVES), footprint); }
@Test public void testMultiplePathsToClass() { ObjectGraphMeasurer.Footprint footprint = ObjectGraphMeasurer.measure(multiplePathsToClass); assertEquals(new ObjectGraphMeasurer.Footprint(1, 3, 0, NO_PRIMITIVES), footprint); }
@Test public void testStaticFields() { ObjectGraphMeasurer.Footprint footprint = ObjectGraphMeasurer.measure(new WithStaticField()); assertEquals(new ObjectGraphMeasurer.Footprint(1, 0, 0, NO_PRIMITIVES), footprint); }
@Test public void testNullField() { ObjectGraphMeasurer.Footprint footprint = ObjectGraphMeasurer.measure(oneNullOneNonNull); assertEquals(new ObjectGraphMeasurer.Footprint(2, 2, 3, NO_PRIMITIVES), footprint); }
@Test public void testWeakReference() { ObjectGraphMeasurer.Footprint footprint = ObjectGraphMeasurer.measure(weakRef); assertEquals(new ObjectGraphMeasurer.Footprint(2, 1, 0, NO_PRIMITIVES), footprint); }