}
@Test
public void AddJoin() {
List<JoinExpression> joins = new ArrayList<JoinExpression>();
joins.add(new JoinExpression(JoinType.DEFAULT, x));
joins.add(new JoinExpression(JoinType.DEFAULT, y));
joins.add(new JoinExpression(JoinType.INNERJOIN, y));
joins.add(new JoinExpression(JoinType.INNERJOIN, x_a));
joins.add(new JoinExpression(JoinType.INNERJOIN, x_a_a));
joins.add(new JoinExpression(JoinType.INNERJOIN, x_a_b));
joins.add(new JoinExpression(JoinType.INNERJOIN, x_b));
joins.add(new JoinExpression(JoinType.INNERJOIN, y_a));
joins.add(new JoinExpression(JoinType.INNERJOIN, y_b));
for (JoinExpression join1 : joins) {
for (JoinExpression join2 : joins) {
QueryMetadata md = new OrderedQueryMetadata();
addJoin(md, join1);