package com.mysema.rdfbean.object; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; 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.model.IDType; import com.mysema.rdfbean.model.MiniRepository; import com.mysema.rdfbean.model.RDF; import com.mysema.rdfbean.model.STMT; import com.mysema.rdfbean.model.UID; @ClassMapping public class IdMappingTest { @Id(value = IDType.URI, ns = "http://example.com/") String id; @Test public void Success() { MiniRepository repository = new MiniRepository(); Session session = SessionUtil.openSession(repository, IdMappingTest.class); IdMappingTest instance = new IdMappingTest(); instance.id = "abc"; session.save(instance); session.clear(); UID id = new UID("http://example.com/abc"); assertTrue(repository.exists(id, null, null, null)); IdMappingTest instance2 = session.get(IdMappingTest.class, id); assertEquals(instance.id, instance2.id); } @Test(expected = IllegalArgumentException.class) public void Error() { MiniRepository repository = new MiniRepository(); UID id = new UID("http://example2.com/abc"); UID type = new UID(TEST.NS, "IdMappingTest"); repository.add(new STMT(id, RDF.type, type)); Session session = SessionUtil.openSession(repository, IdMappingTest.class); session.get(IdMappingTest.class, id); } }