mirror of https://github.com/apache/activemq.git
moving a test to activemq-spring
git-svn-id: https://svn.apache.org/repos/asf/activemq/trunk@938343 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
093c901329
commit
e0d7906605
|
@ -20,48 +20,6 @@ import org.apache.activemq.broker.BrokerService;
|
|||
import org.springframework.context.support.ClassPathXmlApplicationContext;
|
||||
|
||||
public class SpringTest extends SpringTestSupport {
|
||||
/**
|
||||
* Make sure that brokers are being pooled properly.
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
public void testSenderWithSpringXmlEmbeddedPooledBrokerConfiguredViaXml() throws Exception {
|
||||
String config = "spring-embedded-pooled.xml";
|
||||
|
||||
Thread.currentThread().setContextClassLoader(SpringTest.class.getClassLoader());
|
||||
ClassPathXmlApplicationContext context1 = new ClassPathXmlApplicationContext(config);
|
||||
|
||||
BrokerService bs1 = (BrokerService) context1.getBean("broker1");
|
||||
assertNotNull(bs1);
|
||||
BrokerService bs2 = (BrokerService) context1.getBean("broker2");
|
||||
assertNotNull(bs1);
|
||||
|
||||
// It should be the same broker;
|
||||
assertEquals(bs1, bs2);
|
||||
|
||||
// Even if we load up another context, it should still be the same broker.
|
||||
ClassPathXmlApplicationContext context2 = new ClassPathXmlApplicationContext(config);
|
||||
|
||||
BrokerService bs3 = (BrokerService) context2.getBean("broker1");
|
||||
assertNotNull(bs3);
|
||||
BrokerService bs4 = (BrokerService) context2.getBean("broker2");
|
||||
assertNotNull(bs4);
|
||||
|
||||
// It should be the same broker;
|
||||
assertEquals(bs1, bs3);
|
||||
assertEquals(bs1, bs4);
|
||||
|
||||
// And it should be started.
|
||||
assertTrue(bs1.isStarted());
|
||||
|
||||
// should still be started asfter the 2nd context closes.
|
||||
context2.close();
|
||||
assertTrue(bs1.isStarted());
|
||||
|
||||
// Should stop once all contexts close.
|
||||
context1.close();
|
||||
assertFalse(bs1.isStarted());
|
||||
}
|
||||
|
||||
/**
|
||||
* Uses ActiveMQConnectionFactory to create the connection context.
|
||||
|
|
|
@ -0,0 +1,53 @@
|
|||
package org.apache.activemq.spring;
|
||||
|
||||
import org.apache.activemq.broker.BrokerService;
|
||||
import org.springframework.context.support.ClassPathXmlApplicationContext;
|
||||
|
||||
import junit.framework.TestCase;
|
||||
|
||||
public class SpringTest extends TestCase {
|
||||
|
||||
/**
|
||||
* Make sure that brokers are being pooled properly.
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
public void testSenderWithSpringXmlEmbeddedPooledBrokerConfiguredViaXml() throws Exception {
|
||||
String config = "spring-embedded-pooled.xml";
|
||||
|
||||
Thread.currentThread().setContextClassLoader(SpringTest.class.getClassLoader());
|
||||
ClassPathXmlApplicationContext context1 = new ClassPathXmlApplicationContext(config);
|
||||
|
||||
BrokerService bs1 = (BrokerService) context1.getBean("broker1");
|
||||
assertNotNull(bs1);
|
||||
BrokerService bs2 = (BrokerService) context1.getBean("broker2");
|
||||
assertNotNull(bs1);
|
||||
|
||||
// It should be the same broker;
|
||||
assertEquals(bs1, bs2);
|
||||
|
||||
// Even if we load up another context, it should still be the same broker.
|
||||
ClassPathXmlApplicationContext context2 = new ClassPathXmlApplicationContext(config);
|
||||
|
||||
BrokerService bs3 = (BrokerService) context2.getBean("broker1");
|
||||
assertNotNull(bs3);
|
||||
BrokerService bs4 = (BrokerService) context2.getBean("broker2");
|
||||
assertNotNull(bs4);
|
||||
|
||||
// It should be the same broker;
|
||||
assertEquals(bs1, bs3);
|
||||
assertEquals(bs1, bs4);
|
||||
|
||||
// And it should be started.
|
||||
assertTrue(bs1.isStarted());
|
||||
|
||||
// should still be started asfter the 2nd context closes.
|
||||
context2.close();
|
||||
assertTrue(bs1.isStarted());
|
||||
|
||||
// Should stop once all contexts close.
|
||||
context1.close();
|
||||
assertFalse(bs1.isStarted());
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,41 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
contributor license agreements. See the NOTICE file distributed with
|
||||
this work for additional information regarding copyright ownership.
|
||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<!-- START SNIPPET: xbean -->
|
||||
<beans
|
||||
xmlns="http://www.springframework.org/schema/beans"
|
||||
xmlns:amq="http://activemq.apache.org/schema/core"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
|
||||
http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd">
|
||||
|
||||
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>
|
||||
|
||||
<broker useJmx="false" xmlns="http://activemq.apache.org/schema/core" persistent="false">
|
||||
|
||||
<networkConnectors>
|
||||
<networkConnector uri="multicast://default"/>
|
||||
</networkConnectors>
|
||||
|
||||
<transportConnectors>
|
||||
<transportConnector uri="tcp://localhost:0" discoveryUri="multicast://default"/>
|
||||
</transportConnectors>
|
||||
|
||||
</broker>
|
||||
|
||||
</beans>
|
||||
<!-- END SNIPPET: xbean -->
|
Loading…
Reference in New Issue