summaryrefslogtreecommitdiffstats
path: root/java/sca/modules/core/src/test/java/org/apache/tuscany
diff options
context:
space:
mode:
authorlresende <lresende@13f79535-47bb-0310-9956-ffa450edef68>2008-11-19 00:07:37 +0000
committerlresende <lresende@13f79535-47bb-0310-9956-ffa450edef68>2008-11-19 00:07:37 +0000
commitad1c9458ea08eb593be252b706a88568f17c494c (patch)
treea40c652e6409242cc858afbdf24e52e429892115 /java/sca/modules/core/src/test/java/org/apache/tuscany
parent85ec6444c1ff2cb29da5889344d365779d3dc778 (diff)
Moving current trunk modules to contrib, before starting the Equinox branch merge
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@718812 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/sca/modules/core/src/test/java/org/apache/tuscany')
-rw-r--r--java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/DefaultExtensionPointRegistryTestCase.java52
-rw-r--r--java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/event/BaseEventPublisherTestCase.java98
-rw-r--r--java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/event/EventTestCase.java69
-rw-r--r--java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/invocation/PhaseManagerTestCase.java51
-rw-r--r--java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/invocation/PhaseSorterTestCase.java63
-rw-r--r--java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/scope/AbstractScopeContainerTestCase.java69
-rw-r--r--java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/store/MemoryStoreTestCase.java165
-rw-r--r--java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/wire/CallbackInterfaceInterceptorTestCase.java62
-rw-r--r--java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/wire/InvocationChainImplTestCase.java93
-rw-r--r--java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/wire/NonBlockingInterceptorTestCase.java74
-rw-r--r--java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/FailingWork.java50
-rw-r--r--java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/JSR237MyFailingRunnable.java43
-rw-r--r--java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/JSR237MyRunnable.java71
-rw-r--r--java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/JSR237MyRunnerListener.java154
-rw-r--r--java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/Jsr237WorkSchedulerTestCase.java240
-rw-r--r--java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/TestWorkListener.java156
-rw-r--r--java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/ThreadPoolWorkManagerTestCase.java243
-rw-r--r--java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/TimeDelayWork.java87
-rw-r--r--java/sca/modules/core/src/test/java/org/apache/tuscany/sca/scope/ScopeTestCase.java61
19 files changed, 0 insertions, 1901 deletions
diff --git a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/DefaultExtensionPointRegistryTestCase.java b/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/DefaultExtensionPointRegistryTestCase.java
deleted file mode 100644
index 7b44736d4b..0000000000
--- a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/DefaultExtensionPointRegistryTestCase.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * 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.
- */
-
-package org.apache.tuscany.sca.core;
-
-import junit.framework.TestCase;
-
-public class DefaultExtensionPointRegistryTestCase extends TestCase {
- private ExtensionPointRegistry registry;
-
- @Override
- protected void setUp() throws Exception {
- super.setUp();
- registry = new DefaultExtensionPointRegistry();
- }
-
- public void testRegistry() {
- MyRegistry service = new MyREgistryImpl();
- registry.addExtensionPoint(service);
- assertSame(service, registry.getExtensionPoint(MyRegistry.class));
- registry.removeExtensionPoint(service);
- assertNull(registry.getExtensionPoint(MyRegistry.class));
- }
-
- public static interface MyRegistry {
- void doSomething();
- }
-
- private static class MyREgistryImpl implements MyRegistry {
-
- public void doSomething() {
- }
-
- }
-
-}
diff --git a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/event/BaseEventPublisherTestCase.java b/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/event/BaseEventPublisherTestCase.java
deleted file mode 100644
index 2bc78c3d35..0000000000
--- a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/event/BaseEventPublisherTestCase.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * 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.
- */
-package org.apache.tuscany.sca.core.event;
-
-
-import junit.framework.TestCase;
-
-import org.apache.tuscany.sca.event.Event;
-import org.apache.tuscany.sca.event.EventFilter;
-import org.apache.tuscany.sca.event.EventPublisher;
-import org.apache.tuscany.sca.event.RuntimeEventListener;
-import org.apache.tuscany.sca.event.TrueFilter;
-import org.easymock.EasyMock;
-
-/**
- * @version $Rev$ $Date$
- */
-public class BaseEventPublisherTestCase extends TestCase {
- EventPublisher publisher;
-
- public void testFireListener() {
- Event event = new TestEvent();
- RuntimeEventListener listener = EasyMock.createMock(RuntimeEventListener.class);
- listener.onEvent(EasyMock.same(event));
- EasyMock.expectLastCall();
- EasyMock.replay(listener);
- publisher.addListener(listener);
- publisher.publish(event);
- EasyMock.verify(listener);
- }
-
- public void testRemoveListener() {
- Event event = new TestEvent();
- RuntimeEventListener listener = EasyMock.createMock(RuntimeEventListener.class);
- EasyMock.replay(listener);
- publisher.addListener(listener);
- publisher.removeListener(listener);
- publisher.publish(event);
- EasyMock.verify(listener);
- }
-
- public void testFalseFilterListener() {
- Event event = new TestEvent();
- RuntimeEventListener listener = EasyMock.createMock(RuntimeEventListener.class);
- EasyMock.replay(listener);
- publisher.addListener(new FalseFilter(), listener);
- publisher.publish(event);
- EasyMock.verify(listener);
- }
-
- public void testTrueFilterListener() {
- Event event = new TestEvent();
- RuntimeEventListener listener = EasyMock.createMock(RuntimeEventListener.class);
- listener.onEvent(EasyMock.same(event));
- EasyMock.expectLastCall();
- EasyMock.replay(listener);
- publisher.addListener(new TrueFilter(), listener);
- publisher.publish(event);
- EasyMock.verify(listener);
- }
-
- @Override
- protected void setUp() throws Exception {
- publisher = new BaseEventPublisher() {
- };
- }
-
- private class TestEvent implements Event {
- public Object getSource() {
- return null;
- }
- }
-
- private class FalseFilter implements EventFilter {
-
- public boolean match(Event event) {
- return false;
- }
- }
-
-
-}
diff --git a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/event/EventTestCase.java b/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/event/EventTestCase.java
deleted file mode 100644
index 48dcf8df07..0000000000
--- a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/event/EventTestCase.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * 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.
- */
-package org.apache.tuscany.sca.core.event;
-
-import java.net.URI;
-
-import junit.framework.TestCase;
-
-/**
- * @version $Rev$ $Date$
- */
-public class EventTestCase extends TestCase {
- private URI uri = URI.create("foo");
-
- public void testCompositeStart() {
- ComponentStart event = new ComponentStart(this, uri);
- assertEquals(uri, event.getComponentURI());
- }
-
- public void testCompositeStop() {
- ComponentStop event = new ComponentStop(this, uri);
- assertEquals(uri, event.getComponentURI());
- }
-
- public void testHttpSessionStart() {
- Object id = new Object();
- HttpSessionStart event = new HttpSessionStart(this, id);
- assertEquals(this, event.getSource());
- assertEquals(id, event.getSessionID());
- }
-
- public void testHttpSessionEnd() {
- Object id = new Object();
- HttpSessionEnd event = new HttpSessionEnd(this, id);
- assertEquals(this, event.getSource());
- assertEquals(id, event.getSessionID());
- }
-
- public void testRequestStart() {
- RequestStart event = new RequestStart(this);
- assertEquals(this, event.getSource());
- }
-
- public void testReequestEnd() {
- RequestEnd event = new RequestEnd(this);
- assertEquals(this, event.getSource());
- }
-
-
- @Override
- protected void setUp() throws Exception {
- }
-}
diff --git a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/invocation/PhaseManagerTestCase.java b/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/invocation/PhaseManagerTestCase.java
deleted file mode 100644
index 99d5ec7bc9..0000000000
--- a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/invocation/PhaseManagerTestCase.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * 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.
- */
-
-package org.apache.tuscany.sca.core.invocation;
-
-import java.util.List;
-
-import junit.framework.Assert;
-
-import org.junit.Test;
-
-/**
- * @version $Rev$ $Date$
- */
-public class PhaseManagerTestCase {
-
- @Test
- public void testDiscovery() {
- PhaseManager pm = new PhaseManager("org.apache.tuscany.sca.invocation.PhaseTest");
- List<String> phases = pm.getAllPhases();
- System.out.println(phases.size());
- System.out.println(phases);
- // Assert.assertEquals(15, phases.size());
- Assert.assertEquals("reference.first", phases.get(0));
-
- int rt = phases.indexOf("reference.transaction");
- Assert.assertTrue(rt > phases.indexOf("reference.interface"));
-
- int st = phases.indexOf("service.transaction");
- Assert.assertTrue(st > phases.indexOf("service.binding"));
-
- int it = phases.indexOf("implementation.transaction");
- Assert.assertTrue(it < phases.indexOf("implementation.policy"));
- }
-}
diff --git a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/invocation/PhaseSorterTestCase.java b/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/invocation/PhaseSorterTestCase.java
deleted file mode 100644
index 61164fa2de..0000000000
--- a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/invocation/PhaseSorterTestCase.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * 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.
- */
-package org.apache.tuscany.sca.core.invocation;
-
-import java.util.Arrays;
-import java.util.List;
-
-import junit.framework.TestCase;
-
-public class PhaseSorterTestCase extends TestCase {
- private PhaseSorter<String> graph;
-
- @Override
- protected void setUp() throws Exception {
- super.setUp();
- graph = new PhaseSorter<String>();
- }
-
- public void testSort() {
- graph.addEdge("a", "b");
- graph.addEdge("a", "c");
- graph.addEdge("c", "d");
- graph.addEdge("b", "c");
- List<String> order = graph.topologicalSort(true);
- assertEquals(Arrays.asList("a", "b", "c", "d"), order);
- assertTrue(!graph.getVertices().isEmpty());
-
- graph.addEdge("d", "a");
- try {
- order = graph.topologicalSort(true);
- assertTrue("Should have failed", false);
- } catch (IllegalArgumentException e) {
- assertTrue(true);
- }
-
- graph.removeEdge("d", "a");
- order = graph.topologicalSort(false);
- assertEquals(Arrays.asList("a", "b", "c", "d"), order);
- assertTrue(graph.getVertices().isEmpty());
- }
-
- @Override
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
-}
diff --git a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/scope/AbstractScopeContainerTestCase.java b/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/scope/AbstractScopeContainerTestCase.java
deleted file mode 100644
index 64114f7fb2..0000000000
--- a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/scope/AbstractScopeContainerTestCase.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * 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.
- */
-package org.apache.tuscany.sca.core.scope;
-
-import java.net.URI;
-
-import junit.framework.TestCase;
-
-import org.apache.tuscany.sca.assembly.Implementation;
-import org.apache.tuscany.sca.core.context.InstanceWrapper;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.easymock.EasyMock;
-import org.easymock.IMocksControl;
-
-/**
- * @version $Rev$ $Date$
- */
-public abstract class AbstractScopeContainerTestCase<T, KEY> extends TestCase {
- protected IMocksControl control;
- protected ScopeContainer<KEY> scopeContainer;
- protected URI groupId;
- protected KEY contextId;
- protected RuntimeComponent component;
- protected ScopedImplementation implementation;
- protected InstanceWrapper<T> wrapper;
-
- @SuppressWarnings("unchecked")
- @Override
- protected void setUp() throws Exception {
- super.setUp();
- control = EasyMock.createStrictControl();
- component = control.createMock(RuntimeComponent.class);
- wrapper = control.createMock(InstanceWrapper.class);
- implementation = control.createMock(ScopedImplementation.class);
- EasyMock.expect(component.getImplementation()).andReturn(implementation).anyTimes();
- }
-
- protected void preRegisterComponent() throws Exception {
- scopeContainer.start();
- EasyMock.expect(implementation.isEagerInit()).andStubReturn(false);
- }
-
- protected void expectCreateWrapper() throws Exception {
- EasyMock.expect(implementation.createInstanceWrapper()).andReturn(wrapper);
- wrapper.start();
- }
-
- protected static interface ScopedImplementation extends ScopedImplementationProvider, Implementation {
-
- }
-
-
-}
diff --git a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/store/MemoryStoreTestCase.java b/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/store/MemoryStoreTestCase.java
deleted file mode 100644
index d46d77b4b8..0000000000
--- a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/store/MemoryStoreTestCase.java
+++ /dev/null
@@ -1,165 +0,0 @@
-/*
- * 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.
- */
-package org.apache.tuscany.sca.core.store;
-
-import java.util.UUID;
-import java.util.concurrent.CountDownLatch;
-import java.util.concurrent.TimeUnit;
-
-import junit.framework.TestCase;
-
-import org.apache.tuscany.sca.event.RuntimeEventListener;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.store.DuplicateRecordException;
-import org.apache.tuscany.sca.store.Store;
-import org.apache.tuscany.sca.store.StoreExpirationEvent;
-import org.apache.tuscany.sca.store.StoreMonitor;
-import org.easymock.EasyMock;
-import org.easymock.IAnswer;
-
-/**
- * @version $Rev$ $Date$
- */
-public class MemoryStoreTestCase extends TestCase {
- private StoreMonitor monitor;
-
- public void testEviction() throws Exception {
- MemoryStore store = new MemoryStore(monitor);
- store.setReaperInterval(10);
- store.init();
- RuntimeComponent component = EasyMock.createNiceMock(RuntimeComponent.class);
- EasyMock.replay(component);
- String id = UUID.randomUUID().toString();
- Object value = new Object();
- store.insertRecord(component, id, value, 1);
- Thread.sleep(200);
- assertNull(store.readRecord(component, id));
- store.destroy();
- }
-
- public void testNotifyOnEviction() throws Exception {
- final CountDownLatch latch = new CountDownLatch(1);
- RuntimeEventListener listener = EasyMock.createMock(RuntimeEventListener.class);
- listener.onEvent(EasyMock.isA(StoreExpirationEvent.class));
- EasyMock.expectLastCall().andStubAnswer(new IAnswer<Object>() {
- public Object answer() throws Throwable {
- latch.countDown();
- return null;
- }
- });
- EasyMock.replay(listener);
- MemoryStore store = new MemoryStore(monitor);
- store.addListener(listener);
- store.setReaperInterval(10);
- store.init();
- RuntimeComponent component = EasyMock.createNiceMock(RuntimeComponent.class);
- EasyMock.replay(component);
- String id = UUID.randomUUID().toString();
- Object value = new Object();
- store.insertRecord(component, id, value, 1);
- if (!latch.await(1000, TimeUnit.MILLISECONDS)) {
- // failed to notify listener
- fail();
- }
- EasyMock.verify(listener);
- }
-
- public void testNoEviction() throws Exception {
- MemoryStore store = new MemoryStore(monitor);
- store.setReaperInterval(10);
- store.init();
- RuntimeComponent component = EasyMock.createNiceMock(RuntimeComponent.class);
- EasyMock.replay(component);
- String id = UUID.randomUUID().toString();
- Object value = new Object();
- store.insertRecord(component, id, value, Store.NEVER);
- Thread.sleep(100);
- assertNotNull(store.readRecord(component, id));
- store.destroy();
- }
-
- public void testInsertRecord() throws Exception {
- MemoryStore store = new MemoryStore(monitor);
- store.setReaperInterval(10);
- store.init();
- RuntimeComponent component = EasyMock.createNiceMock(RuntimeComponent.class);
- EasyMock.replay(component);
- String id = UUID.randomUUID().toString();
- Object value = new Object();
- store.insertRecord(component, id, value, Store.NEVER);
- store.destroy();
- }
-
- public void testInsertAlreadyExists() throws Exception {
- MemoryStore store = new MemoryStore(monitor);
- store.setReaperInterval(10);
- store.init();
- RuntimeComponent component = EasyMock.createMock(RuntimeComponent.class);
- EasyMock.expect(component.getURI()).andReturn("component");
- EasyMock.replay(component);
- String id = UUID.randomUUID().toString();
- Object value = new Object();
- store.insertRecord(component, id, value, Store.NEVER);
- try {
- store.insertRecord(component, id, value, Store.NEVER);
- fail();
- } catch (DuplicateRecordException e) {
- //expected
- }
- store.destroy();
- }
-
- public void testUpdateRecord() throws Exception {
- MemoryStore store = new MemoryStore(monitor);
- store.setReaperInterval(10);
- store.init();
- RuntimeComponent component = EasyMock.createNiceMock(RuntimeComponent.class);
- EasyMock.replay(component);
- String id = UUID.randomUUID().toString();
- Object value = new Object();
- Object newValue = new Object();
-
- store.insertRecord(component, id, value, Store.NEVER);
- store.updateRecord(component, id, newValue, 1L);
- assertEquals(newValue, store.readRecord(component, id));
- store.destroy();
- }
-
- public void testDeleteRecord() throws Exception {
- MemoryStore store = new MemoryStore(monitor);
- store.setReaperInterval(10);
- store.init();
- RuntimeComponent component = EasyMock.createNiceMock(RuntimeComponent.class);
- EasyMock.replay(component);
- String id = UUID.randomUUID().toString();
- Object value = new Object();
-
- store.insertRecord(component, id, value, Store.NEVER);
- store.removeRecord(component, id);
- assertNull(store.readRecord(component, id));
- store.destroy();
- }
-
- @Override
- protected void setUp() throws Exception {
- monitor = EasyMock.createNiceMock(StoreMonitor.class);
- EasyMock.replay(monitor);
- }
-
-}
diff --git a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/wire/CallbackInterfaceInterceptorTestCase.java b/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/wire/CallbackInterfaceInterceptorTestCase.java
deleted file mode 100644
index 1aba9656d8..0000000000
--- a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/wire/CallbackInterfaceInterceptorTestCase.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * 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.
- */
-package org.apache.tuscany.sca.core.wire;
-
-import junit.framework.TestCase;
-
-import org.apache.tuscany.sca.core.assembly.EndpointReferenceImpl;
-import org.apache.tuscany.sca.core.invocation.CallbackInterfaceInterceptor;
-import org.apache.tuscany.sca.core.invocation.MessageFactoryImpl;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Message;
-import org.easymock.EasyMock;
-import org.osoa.sca.NoRegisteredCallbackException;
-
-/**
- * @version $Rev$ $Date$
- */
-public class CallbackInterfaceInterceptorTestCase extends TestCase {
-
- public void testHasCallbackObject() {
- CallbackInterfaceInterceptor interceptor = new CallbackInterfaceInterceptor();
- Interceptor next = EasyMock.createMock(Interceptor.class);
- EasyMock.expect(next.invoke(EasyMock.isA(Message.class))).andReturn(null);
- EasyMock.replay(next);
- interceptor.setNext(next);
- Message msg = new MessageFactoryImpl().createMessage();
- msg.setFrom(new EndpointReferenceImpl("uri"));
- msg.getFrom().getReferenceParameters().setCallbackObjectID("ABC");
- interceptor.invoke(msg);
- EasyMock.verify(next);
- }
-
- public void testNoCallbackObject() {
- CallbackInterfaceInterceptor interceptor = new CallbackInterfaceInterceptor();
- Message msg = new MessageFactoryImpl().createMessage();
- msg.setFrom(new EndpointReferenceImpl("uri"));
- msg.getFrom().getReferenceParameters().setCallbackObjectID(null);
- try {
- interceptor.invoke(msg);
- fail();
- } catch (NoRegisteredCallbackException e) {
- // expected
- }
- }
-
-}
diff --git a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/wire/InvocationChainImplTestCase.java b/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/wire/InvocationChainImplTestCase.java
deleted file mode 100644
index 1ad0927d16..0000000000
--- a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/wire/InvocationChainImplTestCase.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*
- * 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.
- */
-package org.apache.tuscany.sca.core.wire;
-
-import junit.framework.TestCase;
-
-import org.apache.tuscany.sca.core.invocation.InvocationChainImpl;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.interfacedef.impl.OperationImpl;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.InvocationChain;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.invocation.Phase;
-
-/**
- * @version $Rev$ $Date$
- */
-public class InvocationChainImplTestCase extends TestCase {
-
- public void testInsertAtEnd() throws Exception {
- Operation op = newOperation("foo");
- InvocationChain chain = new InvocationChainImpl(op, op, true);
- Interceptor inter2 = new MockInterceptor();
- Interceptor inter1 = new MockInterceptor();
- chain.addInterceptor(inter1);
- chain.addInterceptor(inter2);
- Interceptor head = (Interceptor)chain.getHeadInvoker();
- assertEquals(inter1, head);
- assertEquals(inter2, head.getNext());
- assertEquals(inter2, chain.getTailInvoker());
-
- }
-
- public void testAddByPhase() throws Exception {
- Operation op = newOperation("foo");
- InvocationChain chain = new InvocationChainImpl(op, op, false);
- Interceptor inter1 = new MockInterceptor();
- Interceptor inter2 = new MockInterceptor();
- Interceptor inter3 = new MockInterceptor();
- Interceptor inter4 = new MockInterceptor();
- chain.addInterceptor(inter3); // SERVICE
- chain.addInterceptor(Phase.IMPLEMENTATION_POLICY, inter4);
- chain.addInterceptor(Phase.SERVICE_POLICY, inter2);
- chain.addInterceptor(Phase.SERVICE_BINDING, inter1);
- Interceptor head = (Interceptor)chain.getHeadInvoker();
- assertEquals(inter1, head);
- assertEquals(inter2, inter1.getNext());
- assertEquals(inter3, inter2.getNext());
- assertEquals(inter4, inter3.getNext());
- assertEquals(inter4, chain.getTailInvoker());
- }
-
- private class MockInterceptor implements Interceptor {
-
- private Invoker next;
-
- public Message invoke(Message msg) {
- return null;
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-
- public Invoker getNext() {
- return next;
- }
-
- }
-
- private static Operation newOperation(String name) {
- Operation operation = new OperationImpl();
- operation.setName(name);
- return operation;
- }
-}
diff --git a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/wire/NonBlockingInterceptorTestCase.java b/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/wire/NonBlockingInterceptorTestCase.java
deleted file mode 100644
index b8150d4edc..0000000000
--- a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/wire/NonBlockingInterceptorTestCase.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * 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.
- */
-package org.apache.tuscany.sca.core.wire;
-
-import static org.easymock.EasyMock.createMock;
-import static org.easymock.EasyMock.expectLastCall;
-import static org.easymock.EasyMock.getCurrentArguments;
-import static org.easymock.EasyMock.isA;
-import static org.easymock.EasyMock.replay;
-import static org.easymock.EasyMock.verify;
-import junit.framework.TestCase;
-
-import org.apache.tuscany.sca.core.invocation.NonBlockingInterceptor;
-import org.apache.tuscany.sca.core.invocation.ThreadMessageContext;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.work.WorkScheduler;
-import org.easymock.EasyMock;
-import org.easymock.IAnswer;
-
-/**
- * @version $Rev$ $Date$
- */
-public class NonBlockingInterceptorTestCase extends TestCase {
-
- public void testInvoke() throws Exception {
- WorkScheduler scheduler = createMock(WorkScheduler.class);
- scheduler.scheduleWork(isA(Runnable.class));
- expectLastCall().andStubAnswer(new IAnswer<Object>() {
- public Object answer() throws Throwable {
- Runnable runnable = (Runnable) getCurrentArguments()[0];
- runnable.run();
- return null;
- }
- });
- replay(scheduler);
- Message context = createMock(Message.class);
- //String convID = "convID";
- //TODO port to the new way of dealing with conversation IDs later
- //EasyMock.expect(context.getConversationID()).andReturn(convID);
- EasyMock.replay(context);
- ThreadMessageContext.setMessageContext(context);
- Message msg = createMock(Message.class);
- //TODO port to the new way of dealing with conversation IDs later
- //msg.setConversationID(convID);
- Interceptor next = EasyMock.createMock(Interceptor.class);
- EasyMock.expect(next.invoke(EasyMock.eq(msg))).andReturn(msg);
- EasyMock.expect(msg.isFault()).andReturn(false);
- EasyMock.replay(next);
- EasyMock.replay(msg);
- Interceptor interceptor = new NonBlockingInterceptor(scheduler, next);
- interceptor.invoke(msg);
- verify(context);
- verify(next);
- verify(msg);
- }
-
-}
diff --git a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/FailingWork.java b/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/FailingWork.java
deleted file mode 100644
index 3184c3de92..0000000000
--- a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/FailingWork.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * 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.
- */
-package org.apache.tuscany.sca.core.work;
-
-import commonj.work.Work;
-
-/**
- * Simple Work item that will throw an exception
- *
- * @version $Rev$ $Date$
- */
-public class FailingWork implements Work {
-
- /**
- * {@inheritDoc}
- */
- public boolean isDaemon() {
- return false;
- }
-
- /**
- * {@inheritDoc}
- */
- public void release() {
- }
-
- /**
- * Throws an IllegalArgumentException
- */
- public void run() {
- System.out.println("Starting " + this + " and throwing an Exception");
- throw new IllegalArgumentException("Sample exception from " + this);
- }
-}
diff --git a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/JSR237MyFailingRunnable.java b/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/JSR237MyFailingRunnable.java
deleted file mode 100644
index 91b45dfbcb..0000000000
--- a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/JSR237MyFailingRunnable.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * 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.
- */
-package org.apache.tuscany.sca.core.work;
-
-/**
- * Simple Runnable that throws an IllegalArgumentException
- *
- * @version $Rev$ $Date$
- */
-public class JSR237MyFailingRunnable extends JSR237MyRunnable {
-
- /**
- * Constructor
- */
- public JSR237MyFailingRunnable() {
- super(-1);
- }
-
- /**
- * Sleeps for a period of time defined by sleepTime
- */
- @Override
- public void run() {
- System.out.println("Starting " + this + " and throwing an Exception");
- throw new IllegalArgumentException("Sample exception from " + this);
- }
-}
diff --git a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/JSR237MyRunnable.java b/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/JSR237MyRunnable.java
deleted file mode 100644
index a7617f7a70..0000000000
--- a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/JSR237MyRunnable.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * 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.
- */
-package org.apache.tuscany.sca.core.work;
-
-import java.util.concurrent.atomic.AtomicInteger;
-
-/**
- * Simple Runnable that is used for testing Jsr237WorkScheduler
- *
- * @version $Rev$ $Date$
- */
-public class JSR237MyRunnable implements Runnable {
-
- /**
- * Count of workAccepted() method calls
- */
- private AtomicInteger runCompletedCount = new AtomicInteger();
-
- /**
- * The amount of time to sleep in the Run loop
- */
- private final long sleepTime;
-
- /**
- * Constructor
- *
- * @param sleepTime The amount of time to sleep (in milliseconds) in the run() method
- */
- public JSR237MyRunnable(long sleepTime) {
- this.sleepTime = sleepTime;
- }
-
- /**
- * Sleeps for a period of time defined by sleepTime
- */
- public void run() {
- System.out.println("Starting " + this);
- try {
- Thread.sleep(sleepTime);
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- System.out.println("Done " + this);
- runCompletedCount.incrementAndGet();
- }
-
- /**
- * Returns the number of completed calls to run()
- *
- * @return The number of completed calls to run()
- */
- public int getRunCompletedCount() {
- return runCompletedCount.get();
- }
-}
diff --git a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/JSR237MyRunnerListener.java b/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/JSR237MyRunnerListener.java
deleted file mode 100644
index 75840efef4..0000000000
--- a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/JSR237MyRunnerListener.java
+++ /dev/null
@@ -1,154 +0,0 @@
-/*
- * 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.
- */
-package org.apache.tuscany.sca.core.work;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.concurrent.atomic.AtomicInteger;
-
-import org.apache.tuscany.sca.work.NotificationListener;
-
-/**
- * Simple NotificationListener that is used for testing Jsr237WorkScheduler
- *
- * @version $Rev$ $Date$
- */
-public class JSR237MyRunnerListener implements NotificationListener<JSR237MyRunnable> {
-
- /**
- * Count of workAccepted() method calls
- */
- private AtomicInteger workAcceptedCallCount = new AtomicInteger();
-
- /**
- * Count of workStarted() method calls
- */
- private AtomicInteger workStartedCallCount = new AtomicInteger();
-
- /**
- * Count of workCompleted() method calls
- */
- private AtomicInteger workCompletedCallCount = new AtomicInteger();
-
- /**
- * Count of workFailed() method calls
- */
- private AtomicInteger workFailedCallCount = new AtomicInteger();
-
- /**
- * Count of workRejected() method calls
- */
- private AtomicInteger workRejectedCallCount = new AtomicInteger();
-
- /**
- * List of all exceptions thrown by Work items
- */
- private List<Throwable> workExceptions = Collections.synchronizedList(new ArrayList<Throwable>());
-
- /**
- * {@inheritDoc}
- */
- public void workAccepted(JSR237MyRunnable work) {
- workAcceptedCallCount.incrementAndGet();
- }
-
- /**
- * {@inheritDoc}
- */
- public void workCompleted(JSR237MyRunnable work) {
- workCompletedCallCount.incrementAndGet();
- }
-
- /**
- * {@inheritDoc}
- */
- public void workFailed(JSR237MyRunnable work, Throwable error) {
- workExceptions.add(error);
- workFailedCallCount.incrementAndGet();
- }
-
- /**
- * {@inheritDoc}
- */
- public void workRejected(JSR237MyRunnable work) {
- workRejectedCallCount.incrementAndGet();
- }
-
- /**
- * {@inheritDoc}
- */
- public void workStarted(JSR237MyRunnable work) {
- workStartedCallCount.incrementAndGet();
- }
-
- /**
- * Returns the number of calls to workAccepted()
- *
- * @return The number of calls to workAccepted()
- */
- public int getWorkAcceptedCallCount() {
- return workAcceptedCallCount.get();
- }
-
- /**
- * Returns the number of calls to workStarted()
- *
- * @return The number of calls to workStarted()
- */
- public int getWorkStartedCallCount() {
- return workStartedCallCount.get();
- }
-
- /**
- * Returns the number of calls to workCompleted()
- *
- * @return The number of calls to workCompleted()
- */
- public int getWorkCompletedCallCount() {
- return workCompletedCallCount.get();
- }
-
- /**
- * Returns the number of calls to workFailed()
- *
- * @return The number of calls to workFailed()
- */
- public int getWorkFailedCallCount() {
- return workFailedCallCount.get();
- }
-
- /**
- * Returns the number of calls to workRejected()
- *
- * @return The number of calls to workRejected()
- */
- public int getWorkRejectedCallCount() {
- return workRejectedCallCount.get();
- }
-
- /**
- * Returns a List of all exceptions that are thrown by the Work items
- *
- * @return A List of all exceptions that are thrown by the Work items
- */
- public List<Throwable> getWorkExceptions() {
- return Collections.unmodifiableList(workExceptions);
- }
-}
diff --git a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/Jsr237WorkSchedulerTestCase.java b/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/Jsr237WorkSchedulerTestCase.java
deleted file mode 100644
index 225f23cb93..0000000000
--- a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/Jsr237WorkSchedulerTestCase.java
+++ /dev/null
@@ -1,240 +0,0 @@
-/*
- * 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.
- */
-package org.apache.tuscany.sca.core.work;
-
-import org.junit.AfterClass;
-import org.junit.Assert;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-/**
- * Test case for Jsr237WorkScheduler
- *
- * @version $Rev$ $Date$
- */
-public class Jsr237WorkSchedulerTestCase {
-
- /**
- * Wait up to 20 seconds for the Work units to complete
- */
- private static final long WAIT_TIMEOUT = 20000;
-
- /**
- * This is the shared instance of the ThreadPoolWorkManager used by the tests
- */
- private static Jsr237WorkScheduler workSchedular = null;
-
- /**
- * Setup the Jsr237WorkScheduler
- */
- @BeforeClass
- public static void setup() {
- workSchedular = new Jsr237WorkScheduler();
- }
-
- /**
- * Make sure that the Jsr237WorkScheduler is stopped after running the tests
- */
- @AfterClass
- public static void destroy() {
- if (workSchedular != null) {
- workSchedular.destroy();
- }
- }
-
- /**
- * Tests running a single fast job on the Jsr237WorkScheduler
- */
- @Test
- public void testSingleFastJob() {
- // Create the work and register it
- JSR237MyRunnable fast = new JSR237MyRunnable(10);
- JSR237MyRunnerListener listener = new JSR237MyRunnerListener();
- workSchedular.scheduleWork(fast, listener);
-
- // Wait for the 1 job to complete
- waitForWorkToComplete(listener, 1);
-
- // Test that the job completed successfully.
- Assert.assertEquals(1, listener.getWorkAcceptedCallCount());
- Assert.assertEquals(0, listener.getWorkRejectedCallCount());
- Assert.assertEquals(1, listener.getWorkStartedCallCount());
- Assert.assertEquals(1, listener.getWorkCompletedCallCount());
- Assert.assertEquals(0, listener.getWorkExceptions().size());
- }
-
- /**
- * Tests running a single job that fails on the Jsr237WorkScheduler
- */
- @Test
- public void testSingleFailingJob() {
- // Create the work and register it
- JSR237MyFailingRunnable fail = new JSR237MyFailingRunnable();
- JSR237MyRunnerListener listener = new JSR237MyRunnerListener();
- workSchedular.scheduleWork(fail, listener);
-
- // Wait for the 1 job to complete
- waitForWorkToComplete(listener, 1);
-
- // Test that the job completed successfully.
- Assert.assertEquals(1, listener.getWorkAcceptedCallCount());
- Assert.assertEquals(0, listener.getWorkRejectedCallCount());
- Assert.assertEquals(1, listener.getWorkStartedCallCount());
- Assert.assertEquals(0, listener.getWorkCompletedCallCount());
- Assert.assertEquals(1, listener.getWorkFailedCallCount());
- Assert.assertEquals(1, listener.getWorkExceptions().size());
- }
-
- /**
- * Tests running a mixture of fast and slow jobs on the Jsr237WorkScheduler
- */
- @Test
- public void testMultipleJobs() {
- // Create the work and register it
- JSR237MyRunnable fast1 = new JSR237MyRunnable(50);
- JSR237MyRunnable fast2 = new JSR237MyRunnable(100);
- JSR237MyRunnable fast3 = new JSR237MyRunnable(200);
- JSR237MyRunnable slow1= new JSR237MyRunnable(2000);
- JSR237MyRunnable slow2 = new JSR237MyRunnable(2000);
- JSR237MyRunnerListener listener = new JSR237MyRunnerListener();
- workSchedular.scheduleWork(fast1, listener);
- workSchedular.scheduleWork(fast2, listener);
- workSchedular.scheduleWork(fast3, listener);
- workSchedular.scheduleWork(slow1, listener);
- workSchedular.scheduleWork(slow2, listener);
-
- // Wait for the 5 jobs to complete
- waitForWorkToComplete(listener, 5);
-
- // Test that the job completed successfully.
- Assert.assertEquals(5, listener.getWorkAcceptedCallCount());
- Assert.assertEquals(0, listener.getWorkRejectedCallCount());
- Assert.assertEquals(5, listener.getWorkStartedCallCount());
- Assert.assertEquals(5, listener.getWorkCompletedCallCount());
- Assert.assertEquals(0, listener.getWorkExceptions().size());
- }
-
- /**
- * Tests running a mixture of fast and slow jobs some of which fail on the
- * Jsr237WorkScheduler
- */
- @Test
- public void testMultipleJobsSomeFail() {
- // Create the work and register it
- JSR237MyRunnable fast1 = new JSR237MyRunnable(50);
- JSR237MyRunnable fast2 = new JSR237MyRunnable(100);
- JSR237MyRunnable fast3 = new JSR237MyRunnable(200);
- JSR237MyRunnable slow1= new JSR237MyRunnable(2000);
- JSR237MyRunnable slow2 = new JSR237MyRunnable(2000);
- JSR237MyFailingRunnable fail1 = new JSR237MyFailingRunnable();
- JSR237MyFailingRunnable fail2 = new JSR237MyFailingRunnable();
- JSR237MyRunnerListener listener = new JSR237MyRunnerListener();
- workSchedular.scheduleWork(fast1, listener);
- workSchedular.scheduleWork(fast2, listener);
- workSchedular.scheduleWork(fail1, listener);
- workSchedular.scheduleWork(fast3, listener);
- workSchedular.scheduleWork(slow1, listener);
- workSchedular.scheduleWork(fail2, listener);
- workSchedular.scheduleWork(slow2, listener);
-
- // Wait for the 7 jobs to complete
- waitForWorkToComplete(listener, 7);
-
- // Test that the job completed successfully.
- Assert.assertEquals(7, listener.getWorkAcceptedCallCount());
- Assert.assertEquals(0, listener.getWorkRejectedCallCount());
- Assert.assertEquals(7, listener.getWorkStartedCallCount());
- Assert.assertEquals(5, listener.getWorkCompletedCallCount());
- Assert.assertEquals(2, listener.getWorkFailedCallCount());
- Assert.assertEquals(2, listener.getWorkExceptions().size());
- }
-
- /**
- * Tests running a single job that has no listener
- */
- @Test
- public void testSingleFastJobWithNoListener() {
- // Create the work and register it
- JSR237MyRunnable fast = new JSR237MyRunnable(10);
- workSchedular.scheduleWork(fast);
-
- // Wait for the job to complete
- long startTime = System.currentTimeMillis();
- while (true) {
- int completedCount = fast.getRunCompletedCount();
- if (completedCount == 1) {
- break;
- }
-
- if (System.currentTimeMillis() - startTime > WAIT_TIMEOUT) {
- Assert.fail("Only " + completedCount + " work items completed before timeout");
- return;
- }
-
- // Lets wait for the job to complete
- try {
- Thread.sleep(25);
- } catch (InterruptedException ex) {
- Assert.fail("Unexpected exception: " + ex);
- }
- }
- }
-
- /**
- * Tests scheduling a null as the work item
- */
- @Test
- public void testNullWork() {
- try {
- workSchedular.scheduleWork(null);
- Assert.fail("Should have thrown IllegalArgumentException ");
- } catch (IllegalArgumentException ex) {
- // As expected
- Assert.assertTrue(ex.toString().indexOf("null") != -1);
- }
- }
-
- /**
- * Waits for the specified number of jobs to complete or the timeout to fire.
- *
- * @param listener The listener to use to track Work unit completion
- * @param completedWorkItemsToWaitFor The number of Work items to complete
- */
- private void waitForWorkToComplete(JSR237MyRunnerListener listener, int completedWorkItemsToWaitFor) {
- long startTime = System.currentTimeMillis();
- while (true) {
- int completedCount = listener.getWorkCompletedCallCount() + listener.getWorkFailedCallCount();
- if (completedCount == completedWorkItemsToWaitFor) {
- return;
- }
-
- if (System.currentTimeMillis() - startTime > WAIT_TIMEOUT) {
- Assert.fail("Only " + completedCount + " work items completed before timeout");
- return;
- }
-
- // Lets wait for more jobs to complete
- try {
- Thread.sleep(25);
- } catch (InterruptedException ex) {
- Assert.fail("Unexpected exception: " + ex);
- }
- }
- }
-}
diff --git a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/TestWorkListener.java b/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/TestWorkListener.java
deleted file mode 100644
index ba32a92c18..0000000000
--- a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/TestWorkListener.java
+++ /dev/null
@@ -1,156 +0,0 @@
-/*
- * 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.
- */
-package org.apache.tuscany.sca.core.work;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.concurrent.atomic.AtomicInteger;
-
-import org.junit.Assert;
-
-import commonj.work.WorkEvent;
-import commonj.work.WorkException;
-import commonj.work.WorkListener;
-
-/**
- * A simple WorkListener that tracks invocations to it.
- *
- * @version $Rev$ $Date$
- */
-public class TestWorkListener implements WorkListener {
-
- /**
- * Count of workAccepted() method calls
- */
- private AtomicInteger workAcceptedCallCount = new AtomicInteger();
-
- /**
- * Count of workStarted() method calls
- */
- private AtomicInteger workStartedCallCount = new AtomicInteger();
-
- /**
- * Count of workCompleted() method calls
- */
- private AtomicInteger workCompletedCallCount = new AtomicInteger();
-
- /**
- * Count of workRejected() method calls
- */
- private AtomicInteger workRejectedCallCount = new AtomicInteger();
-
- /**
- * List of all exceptions thrown by Work items
- */
- private List<WorkException> workExceptions = Collections.synchronizedList(new ArrayList<WorkException>());
-
- /**
- * {@inheritDoc}
- */
- public void workAccepted(WorkEvent work) {
- workAcceptedCallCount.incrementAndGet();
-
- // Validate the WorkEvent
- Assert.assertNotNull(work.getWorkItem());
- Assert.assertEquals(WorkEvent.WORK_ACCEPTED, work.getType());
- }
-
- /**
- * {@inheritDoc}
- */
- public void workStarted(WorkEvent work) {
- workStartedCallCount.incrementAndGet();
-
- // Validate the WorkEvent
- Assert.assertNotNull(work.getWorkItem());
- Assert.assertEquals(WorkEvent.WORK_STARTED, work.getType());
- }
-
- /**
- * {@inheritDoc}
- */
- public void workCompleted(WorkEvent work) {
- if (work.getException() != null) {
- workExceptions.add(work.getException());
- }
-
- // Validate the WorkEvent
- Assert.assertNotNull(work.getWorkItem());
- Assert.assertEquals(WorkEvent.WORK_COMPLETED, work.getType());
-
- workCompletedCallCount.incrementAndGet();
- }
-
- /**
- * {@inheritDoc}
- */
- public void workRejected(WorkEvent work) {
- workRejectedCallCount.incrementAndGet();
-
- // Validate the WorkEvent
- Assert.assertNotNull(work.getWorkItem());
- Assert.assertEquals(WorkEvent.WORK_REJECTED, work.getType());
- }
-
- /**
- * Returns the number of calls to workAccepted()
- *
- * @return The number of calls to workAccepted()
- */
- public int getWorkAcceptedCallCount() {
- return workAcceptedCallCount.get();
- }
-
- /**
- * Returns the number of calls to workStarted()
- *
- * @return The number of calls to workStarted()
- */
- public int getWorkStartedCallCount() {
- return workStartedCallCount.get();
- }
-
- /**
- * Returns the number of calls to workCompleted()
- *
- * @return The number of calls to workCompleted()
- */
- public int getWorkCompletedCallCount() {
- return workCompletedCallCount.get();
- }
-
- /**
- * Returns the number of calls to workRejected()
- *
- * @return The number of calls to workRejected()
- */
- public int getWorkRejectedCallCount() {
- return workRejectedCallCount.get();
- }
-
- /**
- * Returns a List of all exceptions that are thrown by the Work items
- *
- * @return A List of all exceptions that are thrown by the Work items
- */
- public List<WorkException> getWorkExceptions() {
- return Collections.unmodifiableList(workExceptions);
- }
-}
diff --git a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/ThreadPoolWorkManagerTestCase.java b/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/ThreadPoolWorkManagerTestCase.java
deleted file mode 100644
index 715f5f95c0..0000000000
--- a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/ThreadPoolWorkManagerTestCase.java
+++ /dev/null
@@ -1,243 +0,0 @@
-/*
- * 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.
- */
-package org.apache.tuscany.sca.core.work;
-
-import org.junit.AfterClass;
-import org.junit.Assert;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-/**
- * This test case will test the ThreadPoolWorkManager
- *
- * @version $Rev$ $Date$
- */
-public class ThreadPoolWorkManagerTestCase {
-
- /**
- * Wait up to 20 seconds for the Work units to complete
- */
- private static final long WAIT_TIMEOUT = 20000;
-
- /**
- * This is the shared instance of the ThreadPoolWorkManager used by the tests
- */
- private static ThreadPoolWorkManager workManager = null;
-
- /**
- * Setup the ThreadPoolWorkManager
- */
- @BeforeClass
- public static void setup() {
- workManager = new ThreadPoolWorkManager(10);
- }
-
- /**
- * Make sure that the ThreadPoolWorkManager is stopped after running the tests
- */
- @AfterClass
- public static void destroy() {
- if (workManager != null) {
- workManager.destroy();
- }
- }
-
- /**
- * Tests running a single fast job on the ThreadPoolWorkManager
- */
- @Test
- public void testSingleFastJob() {
- // Create the work and register it
- TimeDelayWork fast = new TimeDelayWork(10);
- TestWorkListener listener = new TestWorkListener();
- workManager.schedule(fast, listener);
-
- // Wait for the 1 job to complete
- waitForWorkToComplete(listener, 1);
-
- // Test that the job completed successfully.
- Assert.assertEquals(1, listener.getWorkAcceptedCallCount());
- Assert.assertEquals(0, listener.getWorkRejectedCallCount());
- Assert.assertEquals(1, listener.getWorkStartedCallCount());
- Assert.assertEquals(1, listener.getWorkCompletedCallCount());
- Assert.assertEquals(0, listener.getWorkExceptions().size());
- }
-
- /**
- * Tests running a single job that fails on the ThreadPoolWorkManager
- */
- @Test
- public void testSingleFailingJob() {
- // Create the work and register it
- FailingWork fail = new FailingWork();
- TestWorkListener listener = new TestWorkListener();
- workManager.schedule(fail, listener);
-
- // Wait for the 1 job to complete
- waitForWorkToComplete(listener, 1);
-
- // Test that the job completed successfully.
- Assert.assertEquals(1, listener.getWorkAcceptedCallCount());
- Assert.assertEquals(0, listener.getWorkRejectedCallCount());
- Assert.assertEquals(1, listener.getWorkStartedCallCount());
- Assert.assertEquals(1, listener.getWorkCompletedCallCount());
- Assert.assertEquals(1, listener.getWorkExceptions().size());
- }
-
- /**
- * Tests running a mixture of fast and slow jobs on the ThreadPoolWorkManager
- */
- @Test
- public void testMultipleJobs() {
- // Create the work and register it
- TimeDelayWork fast1 = new TimeDelayWork(50);
- TimeDelayWork fast2 = new TimeDelayWork(100);
- TimeDelayWork fast3 = new TimeDelayWork(200);
- TimeDelayWork slow1= new TimeDelayWork(2000);
- TimeDelayWork slow2 = new TimeDelayWork(2000);
- TestWorkListener listener = new TestWorkListener();
- workManager.schedule(fast1, listener);
- workManager.schedule(fast2, listener);
- workManager.schedule(fast3, listener);
- workManager.schedule(slow1, listener);
- workManager.schedule(slow2, listener);
-
- // Wait for the 5 jobs to complete
- waitForWorkToComplete(listener, 5);
-
- // Test that the job completed successfully.
- Assert.assertEquals(5, listener.getWorkAcceptedCallCount());
- Assert.assertEquals(0, listener.getWorkRejectedCallCount());
- Assert.assertEquals(5, listener.getWorkStartedCallCount());
- Assert.assertEquals(5, listener.getWorkCompletedCallCount());
- Assert.assertEquals(0, listener.getWorkExceptions().size());
- }
-
- /**
- * Tests running a mixture of fast and slow jobs some of which fail on the
- * ThreadPoolWorkManager
- */
- @Test
- public void testMultipleJobsSomeFail() {
- // Create the work and register it
- TimeDelayWork fast1 = new TimeDelayWork(50);
- TimeDelayWork fast2 = new TimeDelayWork(100);
- TimeDelayWork fast3 = new TimeDelayWork(200);
- TimeDelayWork slow1= new TimeDelayWork(2000);
- TimeDelayWork slow2 = new TimeDelayWork(2000);
- FailingWork fail1 = new FailingWork();
- FailingWork fail2 = new FailingWork();
- TestWorkListener listener = new TestWorkListener();
- workManager.schedule(fast1, listener);
- workManager.schedule(fast2, listener);
- workManager.schedule(fail1, listener);
- workManager.schedule(fast3, listener);
- workManager.schedule(slow1, listener);
- workManager.schedule(fail2, listener);
- workManager.schedule(slow2, listener);
-
- // Wait for the 7 jobs to complete
- waitForWorkToComplete(listener, 7);
-
- // Test that the job completed successfully.
- Assert.assertEquals(7, listener.getWorkAcceptedCallCount());
- Assert.assertEquals(0, listener.getWorkRejectedCallCount());
- Assert.assertEquals(7, listener.getWorkStartedCallCount());
- Assert.assertEquals(7, listener.getWorkCompletedCallCount());
- Assert.assertEquals(2, listener.getWorkExceptions().size());
- }
-
- /**
- * Tests creating a ThreadPoolWorkManager with invalid pool sizes of -10 to 0
- * inclusive
- */
- @Test
- public void testThreadPoolWorkManagerLessThan1Size() {
- for (int i = 0; i >= -10; i--) {
- try {
- new ThreadPoolWorkManager(i);
- Assert.fail("Should have thrown IllegalArgumentException");
- } catch (IllegalArgumentException ex) {
- Assert.assertTrue(ex.toString().indexOf(Integer.toString(i)) != -1);
- }
- }
- }
-
- /**
- * Tests running a single job that has no listener
- */
- @Test
- public void testSingleFastJobWithNoListener() {
- // Create the work and register it
- TimeDelayWork fast = new TimeDelayWork(10);
- workManager.schedule(fast);
-
- // Wait for the job to complete
- long startTime = System.currentTimeMillis();
- while (true) {
- int completedCount = fast.getRunCompletedCount();
- if (completedCount == 1) {
- break;
- }
-
- if (System.currentTimeMillis() - startTime > WAIT_TIMEOUT) {
- Assert.fail("Only " + completedCount + " work items completed before timeout");
- return;
- }
-
- // Lets wait for the job to complete
- try {
- Thread.sleep(25);
- } catch (InterruptedException ex) {
- Assert.fail("Unexpected exception: " + ex);
- }
- }
-
- // Make sure we have got one completed run
- Assert.assertEquals(1, fast.getRunCompletedCount());
- }
-
- /**
- * Waits for the specified number of jobs to complete or the timeout to fire.
- *
- * @param listener The listener to use to track Work unit completion
- * @param completedWorkItemsToWaitFor The number of Work items to complete
- */
- private void waitForWorkToComplete(TestWorkListener listener, int completedWorkItemsToWaitFor) {
- long startTime = System.currentTimeMillis();
- while (true) {
- int completedCount = listener.getWorkCompletedCallCount();
- if (completedCount == completedWorkItemsToWaitFor) {
- return;
- }
-
- if (System.currentTimeMillis() - startTime > WAIT_TIMEOUT) {
- Assert.fail("Only " + completedCount + " work items completed before timeout");
- return;
- }
-
- // Lets wait for more jobs to complete
- try {
- Thread.sleep(25);
- } catch (InterruptedException ex) {
- Assert.fail("Unexpected exception: " + ex);
- }
- }
- }
-}
diff --git a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/TimeDelayWork.java b/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/TimeDelayWork.java
deleted file mode 100644
index 3b30d86f14..0000000000
--- a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/core/work/TimeDelayWork.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
- * 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.
- */
-package org.apache.tuscany.sca.core.work;
-
-import java.util.concurrent.atomic.AtomicInteger;
-
-import commonj.work.Work;
-
-/**
- * Simple Work item that will sleep in the run() method for the specified
- * period of time
- *
- * @version $Rev$ $Date$
- */
-public class TimeDelayWork implements Work {
-
- /**
- * Count of completed run() method calls
- */
- private AtomicInteger runCompletedCount = new AtomicInteger();
-
- /**
- * The amount of time to sleep in the Run loop
- */
- private final long sleepTime;
-
- /**
- * Constructor
- *
- * @param sleepTime The amount of time to sleep (in milliseconds) in the run() method
- */
- public TimeDelayWork(long sleepTime) {
- this.sleepTime = sleepTime;
- }
-
- /**
- * {@inheritDoc}
- */
- public boolean isDaemon() {
- return false;
- }
-
- /**
- * {@inheritDoc}
- */
- public void release() {
- }
-
- /**
- * Sleeps for a period of time defined by sleepTime
- */
- public void run() {
- System.out.println("Starting " + this);
- try {
- Thread.sleep(sleepTime);
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- System.out.println("Done " + this);
- runCompletedCount.incrementAndGet();
- }
-
- /**
- * Returns the number of completed calls to run()
- *
- * @return The number of completed calls to run()
- */
- public int getRunCompletedCount() {
- return runCompletedCount.get();
- }
-}
diff --git a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/scope/ScopeTestCase.java b/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/scope/ScopeTestCase.java
deleted file mode 100644
index 341d889b7d..0000000000
--- a/java/sca/modules/core/src/test/java/org/apache/tuscany/sca/scope/ScopeTestCase.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * 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.
- */
-package org.apache.tuscany.sca.scope;
-
-import junit.framework.TestCase;
-
-import org.apache.tuscany.sca.core.scope.Scope;
-
-/**
- * @version $Rev$ $Date$
- */
-public class ScopeTestCase extends TestCase {
-
- public void testEquals() throws Exception {
- Scope scope = new Scope("COMPOSITE");
- assertTrue(scope.equals(Scope.COMPOSITE));
- }
-
- public void testEqualsNew() throws Exception {
- Scope foo = new Scope("foo");
- Scope foo2 = new Scope("FOO");
- assertTrue(foo.equals(foo2));
- }
-
- public void testNotEquals() throws Exception {
- Scope foo = new Scope("BAR");
- Scope foo2 = new Scope("FOO");
- assertFalse(foo.equals(foo2));
- }
-
- public void testNotEqualsDifferent() throws Exception {
- Scope foo = new Scope("FOO");
- assertFalse(foo.equals(new Bar("FOO")));
- }
-
- public class Bar {
- String scope;
-
- public Bar(String scope) {
- this.scope = scope;
- }
- }
-
-
-}