package org.jboss.windup.rules.apps.javaee.service; import com.google.common.collect.Iterables; import org.jboss.arquillian.junit.Arquillian; import org.jboss.windup.graph.GraphContext; import org.jboss.windup.graph.GraphContextFactory; import org.jboss.windup.graph.model.ProjectModel; import org.jboss.windup.graph.service.ProjectService; import org.jboss.windup.rules.apps.javaee.AbstractTest; import org.jboss.windup.rules.apps.javaee.model.HibernateEntityModel; import org.junit.Assert; import org.junit.Test; import org.junit.runner.RunWith; import javax.inject.Inject; import java.util.Collections; /** * @author <a href="mailto:jesse.sightler@gmail.com">Jesse Sightler</a> */ @RunWith(Arquillian.class) public class HibernateEntityServiceTest extends AbstractTest { @Inject GraphContextFactory factory; @Test public void testHibernateEntityFindByProject() throws Exception { try (GraphContext context = factory.create()) { ProjectService projectService = new ProjectService(context); ProjectModel app1 = projectService.create(); app1.setName("app1"); ProjectModel app2 = projectService.create(); app2.setName("app2"); HibernateEntityService service = new HibernateEntityService(context); HibernateEntityModel bean1 = service.create(); bean1.setApplications(Collections.singleton(app1)); HibernateEntityModel bean2 = service.create(); bean2.setApplications(Collections.singleton(app2)); service.create(); Assert.assertEquals(3, Iterables.size(service.findAll())); Assert.assertEquals(1, Iterables.size(service.findAllByApplication(app1))); Assert.assertEquals(1, Iterables.size(service.findAllByApplication(app2))); Assert.assertTrue(Iterables.contains(service.findAllByApplication(app1), bean1)); Assert.assertTrue(Iterables.contains(service.findAllByApplication(app2), bean2)); } } }