package org.openrdf.repository.object.managers; import java.util.Collection; import junit.framework.TestCase; import org.openrdf.annotations.Mixin; import org.openrdf.model.impl.ValueFactoryImpl; public class RoleMapperTest extends TestCase { public abstract class BehaviourClass { public boolean isBehaviourClass() { return true; } } @Mixin(BehaviourClass.class) public interface MixedClass { } @Mixin(name="org.openrdf.repository.object.managers.RoleMapperTest$BehaviourClass") public interface MixedClassName { } public void testMixinClass() throws Exception { RoleMapper rm = new RoleMapper(); ValueFactoryImpl vf = ValueFactoryImpl.getInstance(); rm.addConcept(MixedClass.class, vf.createURI("urn:MixedClass")); Collection<Class<?>> roles = rm.findRoles(vf.createURI("urn:MixedClass")); assertTrue(roles.contains(BehaviourClass.class)); } public void testMixinName() throws Exception { RoleMapper rm = new RoleMapper(); ValueFactoryImpl vf = ValueFactoryImpl.getInstance(); rm.addConcept(MixedClassName.class, vf.createURI("urn:MixedClass")); Collection<Class<?>> roles = rm.findRoles(vf.createURI("urn:MixedClass")); assertTrue(roles.contains(BehaviourClass.class)); } }