DSLSentence implements
        IPattern,
        IAction { public DSLSentence copy() { final DSLSentence copy = new DSLSentence(); copy.drl = getDrl(); copy.definition = getDefinition(); copy.values = mapCopy(getValues()); return copy; }  String toString(); String interpolate(); DSLSentence copy(); String getDrl(); void setDrl(String drl); String getDefinition(); void setDefinition(String definition); List<DSLVariableValue> getValues(); Map<String, String> getEnumFieldValueMap(); @Override boolean equals(Object o); @Override int hashCode(); static final String ENUM_TAG; static final String DATE_TAG; static final String BOOLEAN_TAG; static final String CUSTOM_FORM_TAG; }
@Test public void testCopy() { final String definition = "Human lives in \"{city}\""; final String drl = "Human(city==\"{city}\")"; final DSLSentence original = makeDslSentence(definition, drl); final DSLSentence copy = original.copy(); assertEquals(original.getDefinition(), copy.getDefinition()); assertEquals(original.getDrl(), copy.getDrl()); assertEquals(original.getValues(), copy.getValues()); assertEquals(firstValue(original), firstValue(copy)); assertNotSame(firstValue(original), firstValue(copy)); }