mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-07-31 12:55:40 +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:
parent
63b9ba54f5
commit
d5b3ed1ce7
4 changed files with 51 additions and 6 deletions
|
@ -30,6 +30,7 @@ import org.eclipse.cdt.launchbar.core.ILaunchObjectProvider;
|
||||||
import org.eclipse.cdt.launchbar.core.ILaunchTarget;
|
import org.eclipse.cdt.launchbar.core.ILaunchTarget;
|
||||||
import org.eclipse.cdt.launchbar.core.ILaunchTargetType;
|
import org.eclipse.cdt.launchbar.core.ILaunchTargetType;
|
||||||
import org.eclipse.cdt.launchbar.core.LaunchConfigurationProvider;
|
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.internal.preferences.EclipsePreferences;
|
||||||
import org.eclipse.core.runtime.CoreException;
|
import org.eclipse.core.runtime.CoreException;
|
||||||
import org.eclipse.core.runtime.IConfigurationElement;
|
import org.eclipse.core.runtime.IConfigurationElement;
|
||||||
|
@ -507,8 +508,10 @@ public class LaunchBarManagerTest extends TestCase {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testSetActiveDescriptor() throws Exception {
|
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
|
// descriptor for the test descriptor
|
||||||
String name = "test1";
|
String name = "test1";
|
||||||
ILaunchConfigurationType configType = manager.getLaunchManager().getLaunchConfigurationType(DEFAULT_CONFIG_TYPE_ID);
|
ILaunchConfigurationType configType = manager.getLaunchManager().getLaunchConfigurationType(DEFAULT_CONFIG_TYPE_ID);
|
||||||
|
@ -520,6 +523,33 @@ public class LaunchBarManagerTest extends TestCase {
|
||||||
ILaunchDescriptor test1 = manager.getLaunchDescriptor(testObject1);
|
ILaunchDescriptor test1 = manager.getLaunchDescriptor(testObject1);
|
||||||
assertNotNull(test1);
|
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
|
// descriptor for the default descriptor
|
||||||
ILaunchConfigurationType defaultConfigType = mockLaunchConfigurationType("configType.default");
|
ILaunchConfigurationType defaultConfigType = mockLaunchConfigurationType("configType.default");
|
||||||
ILaunchConfiguration config = mockLaunchConfiguration("test2", defaultConfigType);
|
ILaunchConfiguration config = mockLaunchConfiguration("test2", defaultConfigType);
|
||||||
|
@ -527,20 +557,35 @@ public class LaunchBarManagerTest extends TestCase {
|
||||||
ILaunchDescriptor test2 = manager.getLaunchDescriptor(config);
|
ILaunchDescriptor test2 = manager.getLaunchDescriptor(config);
|
||||||
assertNotNull(test2);
|
assertNotNull(test2);
|
||||||
assertNotSame(test1, test2);
|
assertNotSame(test1, test2);
|
||||||
|
manager.setActiveLaunchMode(runMode);
|
||||||
|
|
||||||
// test2 should be active by default since it was created last
|
// test2 should be active by default since it was created last
|
||||||
assertEquals(test2, manager.getActiveLaunchDescriptor());
|
assertEquals(test2, manager.getActiveLaunchDescriptor());
|
||||||
|
assertEquals(test2, testActiveDesc[0]);
|
||||||
assertEquals(config, manager.getActiveLaunchConfiguration());
|
assertEquals(config, manager.getActiveLaunchConfiguration());
|
||||||
|
assertEquals(runMode, manager.getActiveLaunchMode());
|
||||||
|
assertEquals(runMode, testActiveMode[0]);
|
||||||
|
|
||||||
// flip to test1
|
// flip to test1
|
||||||
|
testActiveMode[0] = null;
|
||||||
|
testActiveDesc[0] = null;
|
||||||
manager.setActiveLaunchDescriptor(test1);
|
manager.setActiveLaunchDescriptor(test1);
|
||||||
|
manager.setActiveLaunchMode(debugMode);
|
||||||
assertEquals(test1, manager.getActiveLaunchDescriptor());
|
assertEquals(test1, manager.getActiveLaunchDescriptor());
|
||||||
|
assertEquals(test1, testActiveDesc[0]);
|
||||||
assertEquals(wc, manager.getActiveLaunchConfiguration());
|
assertEquals(wc, manager.getActiveLaunchConfiguration());
|
||||||
|
assertEquals(debugMode, manager.getActiveLaunchMode());
|
||||||
|
assertEquals(debugMode, testActiveMode[0]);
|
||||||
|
|
||||||
// and back to test2
|
// and back to test2
|
||||||
|
testActiveMode[0] = null;
|
||||||
|
testActiveDesc[0] = null;
|
||||||
manager.setActiveLaunchDescriptor(test2);
|
manager.setActiveLaunchDescriptor(test2);
|
||||||
assertEquals(test2, manager.getActiveLaunchDescriptor());
|
assertEquals(test2, manager.getActiveLaunchDescriptor());
|
||||||
|
assertEquals(test2, testActiveDesc[0]);
|
||||||
assertEquals(config, manager.getActiveLaunchConfiguration());
|
assertEquals(config, manager.getActiveLaunchConfiguration());
|
||||||
|
assertEquals(runMode, manager.getActiveLaunchMode());
|
||||||
|
assertEquals(runMode, testActiveMode[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|
|
@ -54,7 +54,7 @@ public class LaunchBarManager implements ILaunchBarManager, ILaunchConfiguration
|
||||||
|
|
||||||
// TODO make these more fine grained or break them into more focused listeners
|
// TODO make these more fine grained or break them into more focused listeners
|
||||||
public interface Listener {
|
public interface Listener {
|
||||||
void activeConfigurationDescriptorChanged();
|
void activeLaunchDescriptorChanged();
|
||||||
void activeLaunchModeChanged();
|
void activeLaunchModeChanged();
|
||||||
void activeLaunchTargetChanged();
|
void activeLaunchTargetChanged();
|
||||||
void launchDescriptorRemoved(ILaunchDescriptor descriptor);
|
void launchDescriptorRemoved(ILaunchDescriptor descriptor);
|
||||||
|
@ -711,7 +711,7 @@ public class LaunchBarManager implements ILaunchBarManager, ILaunchConfiguration
|
||||||
public void updateLaunchDescriptor(ILaunchDescriptor configDesc) {
|
public void updateLaunchDescriptor(ILaunchDescriptor configDesc) {
|
||||||
for (Listener listener : listeners) {
|
for (Listener listener : listeners) {
|
||||||
try {
|
try {
|
||||||
listener.activeConfigurationDescriptorChanged();
|
listener.activeLaunchDescriptorChanged();
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
Activator.log(e);
|
Activator.log(e);
|
||||||
}
|
}
|
||||||
|
|
|
@ -110,7 +110,7 @@ public class LaunchBarControl implements Listener {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void activeConfigurationDescriptorChanged() {
|
public void activeLaunchDescriptorChanged() {
|
||||||
if (configSelector != null && !configSelector.isDisposed()) {
|
if (configSelector != null && !configSelector.isDisposed()) {
|
||||||
final ILaunchDescriptor configDesc = manager.getActiveLaunchDescriptor();
|
final ILaunchDescriptor configDesc = manager.getActiveLaunchDescriptor();
|
||||||
configSelector.getDisplay().asyncExec(new Runnable() {
|
configSelector.getDisplay().asyncExec(new Runnable() {
|
||||||
|
|
|
@ -41,7 +41,7 @@ public class LaunchTargetsNavigator extends CommonNavigator {
|
||||||
public void activeLaunchModeChanged() {
|
public void activeLaunchModeChanged() {
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public void activeConfigurationDescriptorChanged() {
|
public void activeLaunchDescriptorChanged() {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue