1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-07-23 17:05:26 +02:00

Extend launch bar tests and fix up one of the Listener methods.

Change-Id: I920f7c08f30d51cff2a5188f81b85839e7d972e3
Reviewed-on: https://git.eclipse.org/r/33289
Tested-by: Hudson CI
Reviewed-by: Doug Schaefer <dschaefer@qnx.com>
This commit is contained in:
Doug Schaefer 2014-09-11 22:39:55 -04:00
parent 63b9ba54f5
commit d5b3ed1ce7
4 changed files with 51 additions and 6 deletions

View file

@ -30,6 +30,7 @@ import org.eclipse.cdt.launchbar.core.ILaunchObjectProvider;
import org.eclipse.cdt.launchbar.core.ILaunchTarget;
import org.eclipse.cdt.launchbar.core.ILaunchTargetType;
import org.eclipse.cdt.launchbar.core.LaunchConfigurationProvider;
import org.eclipse.cdt.launchbar.core.internal.LaunchBarManager.Listener;
import org.eclipse.core.internal.preferences.EclipsePreferences;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IConfigurationElement;
@ -507,8 +508,10 @@ public class LaunchBarManagerTest extends TestCase {
@Test
public void testSetActiveDescriptor() throws Exception {
TestLaunchBarManager manager = new TestLaunchBarManager();
final TestLaunchBarManager manager = new TestLaunchBarManager();
ILaunchMode runMode = launchManager.getLaunchMode("run");
ILaunchMode debugMode = launchManager.getLaunchMode("debug");
// descriptor for the test descriptor
String name = "test1";
ILaunchConfigurationType configType = manager.getLaunchManager().getLaunchConfigurationType(DEFAULT_CONFIG_TYPE_ID);
@ -520,6 +523,33 @@ public class LaunchBarManagerTest extends TestCase {
ILaunchDescriptor test1 = manager.getLaunchDescriptor(testObject1);
assertNotNull(test1);
final ILaunchMode[] testActiveMode = new ILaunchMode[1];
final ILaunchDescriptor[] testActiveDesc = new ILaunchDescriptor[1];
Listener listener = new Listener() {
@Override
public void launchTargetsChanged() {
}
@Override
public void launchDescriptorRemoved(ILaunchDescriptor descriptor) {
}
@Override
public void activeLaunchTargetChanged() {
}
@Override
public void activeLaunchModeChanged() {
testActiveMode[0] = manager.getActiveLaunchMode();
}
@Override
public void activeLaunchDescriptorChanged() {
testActiveDesc[0] = manager.getActiveLaunchDescriptor();
}
};
manager.addListener(listener);
// descriptor for the default descriptor
ILaunchConfigurationType defaultConfigType = mockLaunchConfigurationType("configType.default");
ILaunchConfiguration config = mockLaunchConfiguration("test2", defaultConfigType);
@ -527,20 +557,35 @@ public class LaunchBarManagerTest extends TestCase {
ILaunchDescriptor test2 = manager.getLaunchDescriptor(config);
assertNotNull(test2);
assertNotSame(test1, test2);
manager.setActiveLaunchMode(runMode);
// test2 should be active by default since it was created last
assertEquals(test2, manager.getActiveLaunchDescriptor());
assertEquals(test2, testActiveDesc[0]);
assertEquals(config, manager.getActiveLaunchConfiguration());
assertEquals(runMode, manager.getActiveLaunchMode());
assertEquals(runMode, testActiveMode[0]);
// flip to test1
testActiveMode[0] = null;
testActiveDesc[0] = null;
manager.setActiveLaunchDescriptor(test1);
manager.setActiveLaunchMode(debugMode);
assertEquals(test1, manager.getActiveLaunchDescriptor());
assertEquals(test1, testActiveDesc[0]);
assertEquals(wc, manager.getActiveLaunchConfiguration());
assertEquals(debugMode, manager.getActiveLaunchMode());
assertEquals(debugMode, testActiveMode[0]);
// and back to test2
testActiveMode[0] = null;
testActiveDesc[0] = null;
manager.setActiveLaunchDescriptor(test2);
assertEquals(test2, manager.getActiveLaunchDescriptor());
assertEquals(test2, testActiveDesc[0]);
assertEquals(config, manager.getActiveLaunchConfiguration());
assertEquals(runMode, manager.getActiveLaunchMode());
assertEquals(runMode, testActiveMode[0]);
}
@Test

View file

@ -54,7 +54,7 @@ public class LaunchBarManager implements ILaunchBarManager, ILaunchConfiguration
// TODO make these more fine grained or break them into more focused listeners
public interface Listener {
void activeConfigurationDescriptorChanged();
void activeLaunchDescriptorChanged();
void activeLaunchModeChanged();
void activeLaunchTargetChanged();
void launchDescriptorRemoved(ILaunchDescriptor descriptor);
@ -711,7 +711,7 @@ public class LaunchBarManager implements ILaunchBarManager, ILaunchConfiguration
public void updateLaunchDescriptor(ILaunchDescriptor configDesc) {
for (Listener listener : listeners) {
try {
listener.activeConfigurationDescriptorChanged();
listener.activeLaunchDescriptorChanged();
} catch (Exception e) {
Activator.log(e);
}

View file

@ -110,7 +110,7 @@ public class LaunchBarControl implements Listener {
}
@Override
public void activeConfigurationDescriptorChanged() {
public void activeLaunchDescriptorChanged() {
if (configSelector != null && !configSelector.isDisposed()) {
final ILaunchDescriptor configDesc = manager.getActiveLaunchDescriptor();
configSelector.getDisplay().asyncExec(new Runnable() {

View file

@ -41,7 +41,7 @@ public class LaunchTargetsNavigator extends CommonNavigator {
public void activeLaunchModeChanged() {
}
@Override
public void activeConfigurationDescriptorChanged() {
public void activeLaunchDescriptorChanged() {
}
});