### Question:
DN implements Comparable<DN>, Serializable { @Override public String toString() { if (dnString == null) { if (numComponents == 0) { dnString = ""; } else { StringBuilder buffer = new StringBuilder(); rdnComponents[0].toString(buffer); for (int i=1; i < numComponents; i++) { buffer.append(","); rdnComponents[i].toString(buffer); } dnString = buffer.toString(); } } return dnString; } DN();  DN(RDN[] rdnComponents);  DN(List<RDN> rdnComponents);  DN(RDN rdn, DN parentDN); static DN rootDN(); boolean isRootDN(); int size(); RDN rdn(); DN rename(final DN fromDN, final DN toDN); RDN getRDN(int pos); DN parent(); DN getParentDNInSuffix(); DN child(RDN rdn); DN concat(RDN[] rdnComponents); DN child(DN relativeBaseDN); boolean isDescendantOf(DN dn); boolean isAncestorOf(DN dn); boolean matchesBaseAndScope(DN baseDN, SearchScope scope); static DN decode(ByteSequence dnString); static DN valueOf(String dnString); @Override boolean equals(Object o); @Override int hashCode(); @Override String toString(); void toString(StringBuilder buffer); String toNormalizedUrlSafeString(); ByteString toNormalizedByteString(); @Override int compareTo(DN other); static final DN NULL_DN; static final byte NORMALIZED_RDN_SEPARATOR; static final byte NORMALIZED_AVA_SEPARATOR; static final byte NORMALIZED_ESC_BYTE; }### Answer:
@Test(dataProvider = "testDNs") public void testToString(String rawDN, String unused, String stringDN) throws Exception { DN dn = DN.valueOf(rawDN); assertEquals(dn.toString(), stringDN); }