### Question:
BooleanType implements Type, Serializable { @SuppressWarnings({"rawtypes", "unchecked"}) @Override public int compare(Object v1, Object v2) { if (v1 == null) { if (v2 == null) { return 0; } else { return -1; } } else if (v2 == null) { return 1; } else { return ((Comparable) cast(v1)).compareTo(cast(v2)); } } private  BooleanType(); @Override String getName(); @Override boolean supportsEq(); @Override boolean supportsOrdering(); @Override JsonNode toJson(JsonNodeFactory factory, Object obj); @Override Object fromJson(JsonNode node); @Override Object cast(Object obj); @SuppressWarnings({"rawtypes", "unchecked"}) @Override int compare(Object v1, Object v2); @Override boolean equals(Object obj); @Override int hashCode(); @Override String toString(); static final Type TYPE; static final String NAME; }### Answer:
@Test public void testCompareBothNull() { assertEquals(booleanType.compare(null, null), 0); }
@Test public void testCompareV1Null() { assertEquals(booleanType.compare(null, new Object()), -1); }
@Test public void testCompareV2Null() { assertEquals(booleanType.compare(new Object(), null), 1); }
@Test public void testCompareEqual() { assertEquals(booleanType.compare((Object) BigInteger.ONE, (Object) BigInteger.ONE), 0); }
@Test public void testCompareNotEqual() { assertEquals(booleanType.compare((Object) BigInteger.ZERO, (Object) BigInteger.ONE), -1); }