### Question:
DefaultQueryMetadata implements QueryMetadata, Cloneable { @Override public boolean isDistinct() { return distinct; } DefaultQueryMetadata(); DefaultQueryMetadata noValidate(); @Override void addFlag(QueryFlag flag); @Override void addJoinFlag(JoinFlag flag); @Override void addGroupBy(Expression<?> o); @Override void addHaving(Predicate e); @Override void addJoin(JoinType joinType, Expression<?> expr); @Override void addJoinCondition(Predicate o); @Override void addOrderBy(OrderSpecifier<?> o); @Override void setProjection(Expression<?> o); @Override void addWhere(Predicate e); @Override void clearOrderBy(); @Override void clearWhere(); @Override QueryMetadata clone(); @Override List<Expression<?>> getGroupBy(); @Override Predicate getHaving(); @Override List<JoinExpression> getJoins(); @Override QueryModifiers getModifiers(); @Override Map<ParamExpression<?>,Object> getParams(); @Override List<OrderSpecifier<?>> getOrderBy(); @Override Expression<?> getProjection(); @Override Predicate getWhere(); @Override boolean isDistinct(); @Override boolean isUnique(); @Override void reset(); @Override void setDistinct(boolean distinct); @Override void setLimit(Long limit); @Override void setModifiers(QueryModifiers restriction); @Override void setOffset(Long offset); @Override void setUnique(boolean unique); @Override void setParam(ParamExpression<T> param, T value); @Override Set<QueryFlag> getFlags(); @Override boolean hasFlag(QueryFlag flag); @Override void removeFlag(QueryFlag flag); @Override void setValidate(boolean v); void setValidatingVisitor(ValidatingVisitor visitor); @Override boolean equals(Object o); @Override int hashCode();  }### Answer:
@Test public void isDistinct() { assertFalse(metadata.isDistinct()); metadata.setDistinct(true); assertTrue(metadata.isDistinct()); }