org.hamcrest.StringDescription Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of hamcrest Show documentation
Show all versions of hamcrest Show documentation
Core API and libraries of hamcrest matcher framework.
package org.hamcrest;
import java.io.IOException;
/**
* A {@link Description} that is stored as a string.
*/
public class StringDescription extends BaseDescription {
private final Appendable out;
public StringDescription() {
this(new StringBuilder());
}
public StringDescription(Appendable out) {
this.out = out;
}
/**
* Return the description of a {@link SelfDescribing} object as a String.
*
* @param selfDescribing
* The object to be described.
* @return
* The description of the object.
*/
public static String toString(SelfDescribing selfDescribing) {
return new StringDescription().appendDescriptionOf(selfDescribing).toString();
}
/**
* Alias for {@link #toString(SelfDescribing)}.
*/
public static String asString(SelfDescribing selfDescribing) {
return toString(selfDescribing);
}
@Override
protected void append(String str) {
try {
out.append(str);
} catch (IOException e) {
throw new RuntimeException("Could not write description", e);
}
}
@Override
protected void append(char c) {
try {
out.append(c);
} catch (IOException e) {
throw new RuntimeException("Could not write description", e);
}
}
/**
* Returns the description as a string.
*/
@Override
public String toString() {
return out.toString();
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy