package com.mysema.rdfbean.rdb.support; import static org.junit.Assert.assertEquals; import org.junit.Test; import com.mysema.query.JoinType; import com.mysema.query.QueryMetadata; import com.mysema.rdfbean.rdb.QStatement; import com.mysema.rdfbean.rdb.QSymbol; public class SortableQueryMetadataTest { @Test public void Statements() { QueryMetadata metadata = new SortableQueryMetadata(); QStatement user = new QStatement("user"); QStatement user_type = new QStatement("user_type"); QStatement dep = new QStatement("dep"); QStatement dep_type = new QStatement("dep_type"); metadata.addJoin(JoinType.DEFAULT, user); metadata.addJoin(JoinType.DEFAULT, dep); metadata.addJoin(JoinType.INNERJOIN, user_type); metadata.addJoin(JoinType.INNERJOIN, dep_type); assertEquals(user, metadata.getJoins().get(0).getTarget()); assertEquals(user_type, metadata.getJoins().get(1).getTarget()); assertEquals(dep, metadata.getJoins().get(2).getTarget()); assertEquals(dep_type, metadata.getJoins().get(3).getTarget()); } @Test public void Statements_and_Symbols() { QueryMetadata metadata = new SortableQueryMetadata(); QStatement stmt = new QStatement("stmt"); QSymbol sub = new QSymbol("subject"); QSymbol obj = new QSymbol("object"); metadata.addJoin(JoinType.DEFAULT, stmt); metadata.addJoin(JoinType.INNERJOIN, sub); metadata.addJoin(JoinType.INNERJOIN, obj); assertEquals(stmt, metadata.getJoins().get(0).getTarget()); assertEquals(sub, metadata.getJoins().get(1).getTarget()); assertEquals(obj, metadata.getJoins().get(2).getTarget()); } }