### Question:
TransformSpec implements Serializable { @JsonIgnore public CoordinateTransform getNewInstance() throws IllegalArgumentException { return buildInstance(); } protected  TransformSpec(final String id,
                            final TransformSpecMetaData metaData); boolean hasId(); String getId(); TransformSpecMetaData getMetaData(); void setMetaData(final TransformSpecMetaData metaData); boolean hasLabel(final String label); boolean hasOneOfTheseLabels(final Set<String> labels); void addLabel(final String label); void removeLabel(final String label); void validate(); @JsonIgnore CoordinateTransform getNewInstance(); @JsonIgnore abstract boolean isFullyResolved(); abstract void addUnresolvedIds(Set<String> unresolvedIds); @JsonIgnore Set<String> getUnresolvedIds(); abstract void resolveReferences(Map<String, TransformSpec> idToSpecMap); abstract void flatten(ListTransformSpec flattenedList); String toJson(); static TransformSpec fromJson(final String json); static TransformSpec fromJson(final Reader json); static List<TransformSpec> fromJsonArray(final String json); static List<TransformSpec> fromJsonArray(final Reader json); static TransformSpec create(final CoordinateTransform transform);  }### Answer:
@Test public void testGetNewInstance() throws Exception { leaf1.validate(); final mpicbg.models.CoordinateTransform coordinateTransform1 = leaf1.getNewInstance(); final mpicbg.models.CoordinateTransform coordinateTransform2 = leaf1.getNewInstance(); Assert.assertNotNull("transform 1 not created", coordinateTransform1); Assert.assertNotNull("transform 2 not created", coordinateTransform2); Assert.assertFalse("transform instances should be different", (coordinateTransform1 == coordinateTransform2)); }