public void testParentChild() {
    InternetDomainName origin = InternetDomainName.from("foo.com");
    InternetDomainName parent = origin.parent();
    assertEquals("com", parent.toString());

    // These would throw an exception if leniency were not preserved during parent() and child()
    // calls.
    InternetDomainName child = parent.child(LOTS_OF_DELTAS);
    child.child(LOTS_OF_DELTAS);
  }
 public void testTopPrivateDomain() {
   for (String name : TOP_PRIVATE_DOMAIN) {
     final InternetDomainName domain = InternetDomainName.from(name);
     assertFalse(name, domain.isPublicSuffix());
     assertTrue(name, domain.hasPublicSuffix());
     assertTrue(name, domain.isUnderPublicSuffix());
     assertTrue(name, domain.isTopPrivateDomain());
     assertEquals(domain.parent(), domain.publicSuffix());
   }
 }