package com.mysema.rdfbean.tapestry.services; import static org.junit.Assert.assertEquals; import java.io.IOException; import java.util.Arrays; import java.util.List; import org.junit.After; import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; import com.mysema.rdfbean.TEST; import com.mysema.rdfbean.annotations.ClassMapping; import com.mysema.rdfbean.annotations.Id; import com.mysema.rdfbean.annotations.Predicate; import com.mysema.rdfbean.model.ID; import com.mysema.rdfbean.object.Configuration; import com.mysema.rdfbean.object.DefaultConfiguration; import com.mysema.rdfbean.object.Session; import com.mysema.rdfbean.object.SessionFactoryImpl; import com.mysema.rdfbean.sesame.MemoryRepository; public class SeedEntityTest { private static Configuration configuration; private static SessionFactoryImpl sessionFactory; private Session session; @ClassMapping(ns = TEST.NS) public static class User { @Id ID id; @Predicate String firstName; @Predicate String lastName; public User() { } public User(String firstName, String lastName) { this.firstName = firstName; this.lastName = lastName; } } @ClassMapping(ns = TEST.NS) public static class Article { @Id ID id; @Predicate User author; } @BeforeClass public static void before() throws IOException { configuration = new DefaultConfiguration(User.class, Article.class); sessionFactory = new SessionFactoryImpl(); sessionFactory.setConfiguration(configuration); sessionFactory.setRepository(new MemoryRepository()); sessionFactory.initialize(); } @AfterClass public static void after() { sessionFactory.close(); } @After public void tearDown() throws IOException { if (session != null) session.close(); } @Test public void test() throws IOException { List<Object> entities = Arrays.<Object> asList(new User("John", "Smith"), new User("Bob", "Stewart")); new SeedEntityImpl(configuration, sessionFactory, entities); session = sessionFactory.openSession(); assertEquals(2, session.findInstances(User.class).size()); new SeedEntityImpl(configuration, sessionFactory, entities); assertEquals(2, session.findInstances(User.class).size()); } }