### Question:
ConfigKeyImpl implements Config.Key { static ConfigKeyImpl of() { return new ConfigKeyImpl(null, ""); } private  ConfigKeyImpl(ConfigKeyImpl parent, String name); @Override ConfigKeyImpl parent(); @Override boolean isRoot(); @Override ConfigKeyImpl child(Config.Key key); @Override String name(); @Override String toString(); @Override boolean equals(Object o); @Override int hashCode(); @Override int compareTo(Config.Key that);  }### Answer:
@Test public void testOf() { assertThatKey(ConfigKeyImpl.of("aaa"), false, is(ROOT), "aaa", "aaa"); assertThatKey(ConfigKeyImpl.of("aaa.bbb"), false, not(ROOT), "bbb", "aaa.bbb"); assertThatKey(ConfigKeyImpl.of("aaa.bbb.ccc"), false, not(ROOT), "ccc", "aaa.bbb.ccc"); }