diff options
author | mkuppe | 2009-03-12 06:12:16 +0000 |
---|---|---|
committer | mkuppe | 2009-03-12 06:12:16 +0000 |
commit | 747f440030fbef39bfa94bd6110c8881c6d178d7 (patch) | |
tree | 837282370fe2660724ab394b50e99dec856cb71d /tests/bundles/org.eclipse.ecf.tests.provider.discovery | |
parent | 523383775484fbf1fe4efc597a0ff940406ed204 (diff) | |
download | org.eclipse.ecf-747f440030fbef39bfa94bd6110c8881c6d178d7.tar.gz org.eclipse.ecf-747f440030fbef39bfa94bd6110c8881c6d178d7.tar.xz org.eclipse.ecf-747f440030fbef39bfa94bd6110c8881c6d178d7.zip |
NEW - bug 254684: [core] defer extension registry processing
https://bugs.eclipse.org/bugs/show_bug.cgi?id=254684
Released work around for providers
Diffstat (limited to 'tests/bundles/org.eclipse.ecf.tests.provider.discovery')
2 files changed, 64 insertions, 33 deletions
diff --git a/tests/bundles/org.eclipse.ecf.tests.provider.discovery/src/org/eclipse/ecf/tests/provider/discovery/CompositeDiscoveryContainerTest.java b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/src/org/eclipse/ecf/tests/provider/discovery/CompositeDiscoveryContainerTest.java index fed2631b6..e7ee4645d 100644 --- a/tests/bundles/org.eclipse.ecf.tests.provider.discovery/src/org/eclipse/ecf/tests/provider/discovery/CompositeDiscoveryContainerTest.java +++ b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/src/org/eclipse/ecf/tests/provider/discovery/CompositeDiscoveryContainerTest.java @@ -10,13 +10,22 @@ *******************************************************************************/ package org.eclipse.ecf.tests.provider.discovery; +import java.util.Arrays; +import java.util.HashSet; import java.util.List; +import java.util.Set; import org.eclipse.ecf.core.ContainerConnectException; +import org.eclipse.ecf.core.events.IContainerEvent; +import org.eclipse.ecf.core.identity.ID; import org.eclipse.ecf.core.util.ECFRuntimeException; +import org.eclipse.ecf.discovery.IServiceEvent; +import org.eclipse.ecf.discovery.IServiceInfo; import org.eclipse.ecf.discovery.identity.IServiceTypeID; import org.eclipse.ecf.provider.discovery.CompositeDiscoveryContainer; +import org.eclipse.ecf.provider.discovery.CompositeServiceContainerEvent; import org.eclipse.ecf.tests.discovery.DiscoveryContainerTest; +import org.eclipse.ecf.tests.discovery.listener.TestServiceListener; public class CompositeDiscoveryContainerTest extends DiscoveryContainerTest { @@ -80,20 +89,23 @@ public class CompositeDiscoveryContainerTest extends DiscoveryContainerTest { } } -// protected void addServiceListener(TestServiceListener serviceListener) { -// discoveryLocator.addServiceListener(serviceListener); -// addListenerRegisterAndWait(serviceListener, serviceInfo); -// discoveryLocator.removeServiceListener(serviceListener); -// IContainerEvent[] events = serviceListener.getEvent(); -// assertNotNull("Test listener didn't receive discovery", events); -// assertEquals("Test listener received more than expected discovery event", eventsToExpect, events.length); -// Set origContainers = new HashSet(); -// for (int i = 0; i < events.length; i++) { -// CompositeServiceContainerEvent event = (CompositeServiceContainerEvent) events[i]; -// assertTrue("Container mismatch", event.getLocalContainerID().equals(container.getConnectedID())); -// assertTrue("IServiceInfo mismatch", comparator.compare(((IServiceEvent) event).getServiceInfo(), serviceInfo) == 0); -// origContainers.add(event.getOriginalLocalContainerID()); -// } -// assertEquals("A nested container didn't send an event, but another multiple", eventsToExpect, origContainers.size()); -// } + protected void addServiceListener(TestServiceListener serviceListener) { + discoveryLocator.addServiceListener(serviceListener); + addListenerRegisterAndWait(serviceListener, serviceInfo); + discoveryLocator.removeServiceListener(serviceListener); + IContainerEvent[] events = serviceListener.getEvent(); + assertNotNull("Test listener didn't receive any discovery events.", events); + assertEquals("Test listener received unexpected amount of discovery events: \n\t" + Arrays.asList(events), eventsToExpect, events.length); + Set origContainers = new HashSet(); + for (int i = 0; i < events.length; i++) { + CompositeServiceContainerEvent event = (CompositeServiceContainerEvent) events[i]; + ID localContainerId = event.getLocalContainerID(); + ID connectedId = container.getConnectedID(); + assertTrue("Container mismatch, excepted:\n\t" + localContainerId + " but was:\n\t" + connectedId, localContainerId.equals(connectedId)); + IServiceInfo serviceInfo2 = ((IServiceEvent) event).getServiceInfo(); + assertTrue("IServiceInfo should match, expected:\n\t" + serviceInfo + " but was \n\t" + serviceInfo2, comparator.compare(serviceInfo2, serviceInfo) == 0); + origContainers.add(event.getOriginalLocalContainerID()); + } + assertEquals("A nested container didn't send an event, but another multiple", eventsToExpect, origContainers.size()); + } } diff --git a/tests/bundles/org.eclipse.ecf.tests.provider.discovery/src/org/eclipse/ecf/tests/provider/discovery/CompositeDiscoveryServiceContainerTest.java b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/src/org/eclipse/ecf/tests/provider/discovery/CompositeDiscoveryServiceContainerTest.java index c2e309071..74bb31658 100644 --- a/tests/bundles/org.eclipse.ecf.tests.provider.discovery/src/org/eclipse/ecf/tests/provider/discovery/CompositeDiscoveryServiceContainerTest.java +++ b/tests/bundles/org.eclipse.ecf.tests.provider.discovery/src/org/eclipse/ecf/tests/provider/discovery/CompositeDiscoveryServiceContainerTest.java @@ -10,13 +10,27 @@ ******************************************************************************/ package org.eclipse.ecf.tests.provider.discovery; +import java.util.Arrays; +import java.util.HashSet; +import java.util.Set; + +import org.eclipse.ecf.core.ContainerFactory; +import org.eclipse.ecf.core.IContainer; +import org.eclipse.ecf.core.events.IContainerEvent; +import org.eclipse.ecf.core.identity.ID; +import org.eclipse.ecf.discovery.IServiceEvent; +import org.eclipse.ecf.discovery.IServiceInfo; import org.eclipse.ecf.discovery.identity.IServiceTypeID; import org.eclipse.ecf.provider.discovery.CompositeDiscoveryContainer; +import org.eclipse.ecf.provider.discovery.CompositeServiceContainerEvent; import org.eclipse.ecf.tests.discovery.DiscoveryServiceTest; +import org.eclipse.ecf.tests.discovery.listener.TestServiceListener; public class CompositeDiscoveryServiceContainerTest extends DiscoveryServiceTest { + private IContainer container; + public CompositeDiscoveryServiceContainerTest() { super("ecf.discovery.composite"); setComparator(new CompositeServiceInfoComporator()); @@ -24,6 +38,7 @@ public class CompositeDiscoveryServiceContainerTest extends setWaitTimeForProvider(Long.parseLong(System.getProperty("net.slp.rediscover", new Long(60L * 1000L).toString()))); //$NON-NLS-1$); //TODO-mkuppe https://bugs.eclipse.org/bugs/show_bug.cgi?id=218308 setScope(IServiceTypeID.DEFAULT_SCOPE[0]); + } /* (non-Javadoc) @@ -31,24 +46,28 @@ public class CompositeDiscoveryServiceContainerTest extends */ protected void setUp() throws Exception { super.setUp(); + container = ContainerFactory.getDefault().createContainer(containerUnderTest); eventsToExpect = ((CompositeDiscoveryContainer) discoveryLocator).getDiscoveryContainers().size(); } -// -// protected void addServiceListener(TestServiceListener serviceListener) { -// discoveryContainer.addServiceListener(serviceListener); -// addListenerRegisterAndWait(serviceListener, serviceInfo); -// discoveryContainer.removeServiceListener(serviceListener); -// IContainerEvent[] events = serviceListener.getEvent(); -// assertNotNull("Test listener didn't receive discovery", events); -// assertEquals("Test listener received more than expected discovery event", eventsToExpect, events.length); -// Set origContainers = new HashSet(); -// for (int i = 0; i < events.length; i++) { -// CompositeServiceContainerEvent event = (CompositeServiceContainerEvent) events[i]; -// assertTrue("Container mismatch", event.getLocalContainerID().equals(container.getConnectedID())); -// assertTrue("IServiceInfo mismatch", comparator.compare(((IServiceEvent) event).getServiceInfo(), serviceInfo) == 0); -// origContainers.add(event.getOriginalLocalContainerID()); -// } -// assertEquals("A nested container didn't send an event, but another multiple", eventsToExpect, origContainers.size()); -// } + + protected void addServiceListener(TestServiceListener serviceListener) { + discoveryLocator.addServiceListener(serviceListener); + addListenerRegisterAndWait(serviceListener, serviceInfo); + discoveryLocator.removeServiceListener(serviceListener); + IContainerEvent[] events = serviceListener.getEvent(); + assertNotNull("Test listener didn't receive any discovery events.", events); + assertEquals("Test listener received unexpected amount of discovery events: \n\t" + Arrays.asList(events), eventsToExpect, events.length); + Set origContainers = new HashSet(); + for (int i = 0; i < events.length; i++) { + CompositeServiceContainerEvent event = (CompositeServiceContainerEvent) events[i]; + ID localContainerId = event.getLocalContainerID(); + ID connectedId = container.getConnectedID(); + assertTrue("Container mismatch, excepted:\n\t" + localContainerId + " but was:\n\t" + connectedId, localContainerId.equals(connectedId)); + IServiceInfo serviceInfo2 = ((IServiceEvent) event).getServiceInfo(); + assertTrue("IServiceInfo should match, expected:\n\t" + serviceInfo + " but was \n\t" + serviceInfo2, comparator.compare(serviceInfo2, serviceInfo) == 0); + origContainers.add(event.getOriginalLocalContainerID()); + } + assertEquals("A nested container didn't send an event, but another multiple", eventsToExpect, origContainers.size()); + } } |