t2.put("C1", false);
assertTrue(t1.compareTo(t2)>0);
assertTrue(t2.compareTo(t1)<0);
// comparing string map
CaseInsensitiveTreeMap m1 = new CaseInsensitiveTreeMap();
CaseInsensitiveTreeMap m2 = new CaseInsensitiveTreeMap();
t1.put("C1", m1);
t2.put("C1", m2);
assertTrue(t1.compareTo(t2)==0);
m1.put("K1", "V1");
assertTrue(t1.compareTo(t2)>0); // m1 is not empty, m2 is empty
m2.put("K1", "V1");
assertTrue(t1.compareTo(t2)==0);// m1 and m2 both are not empty and same value
m1.put("K1", "V2");
assertTrue(t1.compareTo(t2)>0);// m1 m2 has same key but different value