package com.muleinaction; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; import java.math.BigInteger; import org.junit.Test; import org.mule.api.endpoint.EndpointBuilder; import org.mule.api.registry.MuleRegistry; import org.mule.config.spring.SpringRegistry; import org.mule.tck.junit4.FunctionalTestCase; import org.springframework.context.ApplicationContext; public class RegistryTestCase extends FunctionalTestCase { @Override protected String getConfigResources() { return "registry-config.xml"; } @Test public void testGetMuleObject() throws Exception { final Object muleObject = muleContext.getRegistry().lookupObject("MuleObject"); assertTrue(muleObject.toString(), muleObject instanceof EndpointBuilder); } @Test public void testGetSpringBeanDirect() throws Exception { final Object springBean = muleContext.getRegistry().lookupObject("SpringBean"); assertTrue(springBean instanceof BigInteger); } @Test public void testGetSpringBeanViaApplicationContext() throws Exception { final ApplicationContext ac = (ApplicationContext) muleContext.getRegistry().lookupObject( SpringRegistry.SPRING_APPLICATION_CONTEXT); final Object springBean = ac.getBean("SpringBean", BigInteger.class); assertNotNull(springBean); } @Test public void testPutInTransientRegistry() throws Exception { final MuleRegistry registry = muleContext.getRegistry(); assertNull(registry.lookupObject("bar")); registry.registerObject("bar", 123L); assertEquals(123L, registry.lookupObject("bar")); } }