/* * Copyright (c) 2010 Mysema Ltd. * All rights reserved. * */ package com.mysema.rdfbean.rdb.query; import static com.mysema.query.alias.Alias.$; import static org.junit.Assert.assertEquals; import java.util.Arrays; import org.junit.Before; import org.junit.Test; import com.mysema.query.alias.Alias; import com.mysema.rdfbean.domains.UserDepartmentCompanyDomain; import com.mysema.rdfbean.domains.UserDepartmentCompanyDomain.Company; import com.mysema.rdfbean.domains.UserDepartmentCompanyDomain.Department; import com.mysema.rdfbean.domains.UserDepartmentCompanyDomain.User; import com.mysema.rdfbean.rdb.AbstractRDBTest; import com.mysema.rdfbean.testutil.SessionConfig; @SessionConfig({ User.class, Department.class, Company.class }) public class MultiSourcesTest extends AbstractRDBTest implements UserDepartmentCompanyDomain { @Before public void setUp() { for (String username : Arrays.asList("X", "X", "Y")) { User user = new User(); user.userName = username; session.save(user); } session.clear(); } @Test public void test() { User u = Alias.alias(User.class, "u"); User u2 = Alias.alias(User.class, "u2"); assertEquals(6, session.from($(u), $(u2)).where($(u).ne($(u2))).count()); assertEquals(2, session.from($(u), $(u2)).where($(u).ne($(u2)), $(u.getUserName()).eq($(u2.getUserName()))).count()); assertEquals(2, session.from($(u), $(u2)).where($(u).ne($(u2)), $(u.getUserName()).eq($(u2.getUserName()))).list($(u), $(u2)).size()); } }