mirror of
https://github.com/querydsl/querydsl.git
synced 2026-07-03 21:07:49 +08:00
Merge pull request #987 from querydsl/i981
Fix joins content for equals, hashCode and clone
This commit is contained in:
commit
6b412b1f8a
@ -212,6 +212,7 @@ public class DefaultQueryMetadata implements QueryMetadata, Cloneable {
|
||||
@Override
|
||||
public QueryMetadata clone() {
|
||||
try {
|
||||
addLastJoin();
|
||||
DefaultQueryMetadata clone = (DefaultQueryMetadata) super.clone();
|
||||
clone.exprInJoins = copyOf(exprInJoins);
|
||||
clone.groupBy = copyOf(groupBy);
|
||||
@ -362,6 +363,7 @@ public class DefaultQueryMetadata implements QueryMetadata, Cloneable {
|
||||
@Override
|
||||
public boolean equals(Object o) {
|
||||
if (o instanceof QueryMetadata) {
|
||||
addLastJoin();
|
||||
QueryMetadata q = (QueryMetadata)o;
|
||||
return q.getFlags().equals(flags)
|
||||
&& q.getGroupBy().equals(groupBy)
|
||||
@ -382,6 +384,7 @@ public class DefaultQueryMetadata implements QueryMetadata, Cloneable {
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
addLastJoin();
|
||||
return Objects.hashCode(flags, groupBy, having, joins, modifiers,
|
||||
orderBy, params, projection, unique, where);
|
||||
}
|
||||
|
||||
@ -154,6 +154,14 @@ public class DefaultQueryMetadataTest {
|
||||
assertTrue(metadata.isUnique());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void JoinShouldBeCommitted() {
|
||||
DefaultQueryMetadata md = new DefaultQueryMetadata();
|
||||
md.addJoin(JoinType.DEFAULT, str);
|
||||
DefaultQueryMetadata emptyMetadata = new DefaultQueryMetadata();
|
||||
assertFalse(md.equals(emptyMetadata));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Clone() {
|
||||
metadata.addJoin(JoinType.DEFAULT, str);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user