assertThat(join.getLeft(), is((Source)namedSelector(selectorName("modetest:queryable"))));
assertThat(join.getRight(), is((Source)namedSelector(selectorName("mix:referenceable"))));
assertThat(join.type(), is(JoinType.INNER));
SameNodeJoinCondition joinCondition = isSameNodeJoinCondition(join.getJoinCondition());
assertThat(joinCondition.selector1Name(), is(selectorName("modetest:queryable")));
assertThat(joinCondition.selector2Name(), is(selectorName("mix:referenceable")));
assertThat(joinCondition.getSelector2Path(), is(nullValue()));
// WHERE ...
Comparison comparison = isComparison(query.constraint());
assertThat(comparison.getOperand1(), is((DynamicOperand)nodePath(selectorName("modetest:queryable"))));
assertThat(comparison.getOperand2(), is((StaticOperand)literal("/testroot/someQueryableNodeD/%")));