mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-07-13 12:05:21 +02:00
parameterized tests gdb tests
this commit to introduce a test harness that allow to reduce SIGNIFICALLY duplication of test per gdb version. Tests is now parameterized with version and type (gdb vs gdbserver). This commit flattens on of the tests as example rest is still using an old way. Parameters are defined externally now via Java variable like this -Dcdt.tests.dsf.gdb.versions=gdb.7.7,gdbserver.7.7,gdb.7.11 Change-Id: I855449afba40e265c542dc5de7a3562548c97e8b
This commit is contained in:
parent
df63a59b53
commit
b3f03996de
57 changed files with 1289 additions and 1789 deletions
|
@ -439,7 +439,7 @@ public class GdbLaunchDelegate extends AbstractCLaunchDelegate2
|
||||||
* @since 4.0
|
* @since 4.0
|
||||||
*/
|
*/
|
||||||
protected boolean isNonStopSupportedInGdbVersion(String version) {
|
protected boolean isNonStopSupportedInGdbVersion(String version) {
|
||||||
if (NON_STOP_FIRST_VERSION.compareTo(version) <= 0) {
|
if (NON_STOP_FIRST_VERSION.compareTo(version) <= 0) {// XXX: 7.2 > 7.11 !!!
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<classpath>
|
<classpath>
|
||||||
<classpathentry kind="src" path="src"/>
|
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
|
||||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
|
|
||||||
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
|
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
|
||||||
|
<classpathentry kind="src" path="src"/>
|
||||||
<classpathentry kind="output" path="bin"/>
|
<classpathentry kind="output" path="bin"/>
|
||||||
</classpath>
|
</classpath>
|
||||||
|
|
|
@ -1,9 +1,8 @@
|
||||||
#Tue Jun 24 11:05:41 PDT 2008
|
|
||||||
eclipse.preferences.version=1
|
eclipse.preferences.version=1
|
||||||
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
|
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
|
||||||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
|
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
|
||||||
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
|
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
|
||||||
org.eclipse.jdt.core.compiler.compliance=1.7
|
org.eclipse.jdt.core.compiler.compliance=1.8
|
||||||
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
|
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
|
||||||
org.eclipse.jdt.core.compiler.debug.localVariable=generate
|
org.eclipse.jdt.core.compiler.debug.localVariable=generate
|
||||||
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
|
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
|
||||||
|
@ -67,4 +66,4 @@ org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disa
|
||||||
org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
|
org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
|
||||||
org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
|
org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
|
||||||
org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
|
org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
|
||||||
org.eclipse.jdt.core.compiler.source=1.7
|
org.eclipse.jdt.core.compiler.source=1.8
|
||||||
|
|
|
@ -19,7 +19,7 @@ Require-Bundle: org.eclipse.core.runtime,
|
||||||
org.mockito,
|
org.mockito,
|
||||||
org.hamcrest
|
org.hamcrest
|
||||||
Bundle-ActivationPolicy: lazy
|
Bundle-ActivationPolicy: lazy
|
||||||
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
|
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
|
||||||
Bundle-ClassPath: .
|
Bundle-ClassPath: .
|
||||||
Export-Package: org.eclipse.cdt.dsf.mi.service;x-internal:=true,
|
Export-Package: org.eclipse.cdt.dsf.mi.service;x-internal:=true,
|
||||||
org.eclipse.cdt.tests.dsf.gdb.framework;x-internal:=true,
|
org.eclipse.cdt.tests.dsf.gdb.framework;x-internal:=true,
|
||||||
|
|
|
@ -19,6 +19,7 @@
|
||||||
<dsf.gdb.tests.gdbPath>/shared/common/gdb/gdb-all/bin</dsf.gdb.tests.gdbPath>
|
<dsf.gdb.tests.gdbPath>/shared/common/gdb/gdb-all/bin</dsf.gdb.tests.gdbPath>
|
||||||
<dsf.gdb.tests.gdbTestSuite>AutomatedSuite.java</dsf.gdb.tests.gdbTestSuite>
|
<dsf.gdb.tests.gdbTestSuite>AutomatedSuite.java</dsf.gdb.tests.gdbTestSuite>
|
||||||
<dsf.gdb.tests.timeout.multiplier>1</dsf.gdb.tests.timeout.multiplier>
|
<dsf.gdb.tests.timeout.multiplier>1</dsf.gdb.tests.timeout.multiplier>
|
||||||
|
<cdt.tests.dsf.gdb.versions>gdb.7.11,gdbserver.7.11</cdt.tests.dsf.gdb.versions>
|
||||||
</properties>
|
</properties>
|
||||||
<build>
|
<build>
|
||||||
<plugins>
|
<plugins>
|
||||||
|
@ -58,7 +59,7 @@
|
||||||
<version>${tycho-version}</version>
|
<version>${tycho-version}</version>
|
||||||
<configuration>
|
<configuration>
|
||||||
<useUIHarness>false</useUIHarness>
|
<useUIHarness>false</useUIHarness>
|
||||||
<argLine>${tycho.testArgLine} ${base.ui.test.vmargs} -ea -Xms256m -Xmx512m -XX:MaxPermSize=256M -Dcdt.tests.dsf.gdb.path=${dsf.gdb.tests.gdbPath} -Ddsf.gdb.tests.timeout.multiplier=${dsf.gdb.tests.timeout.multiplier}</argLine>
|
<argLine>${tycho.testArgLine} ${base.ui.test.vmargs} -ea -Xms256m -Xmx512m -XX:MaxPermSize=256M -Dcdt.tests.dsf.gdb.path=${dsf.gdb.tests.gdbPath} -Ddsf.gdb.tests.timeout.multiplier=${dsf.gdb.tests.timeout.multiplier} -Dcdt.tests.dsf.gdb.versions=${cdt.tests.dsf.gdb.versions}</argLine>
|
||||||
<includes>
|
<includes>
|
||||||
<include>**/${dsf.gdb.tests.gdbTestSuite}</include>
|
<include>**/${dsf.gdb.tests.gdbTestSuite}</include>
|
||||||
</includes>
|
</includes>
|
||||||
|
|
|
@ -0,0 +1,142 @@
|
||||||
|
/*******************************************************************************
|
||||||
|
* Copyright (c) 2016 QNX Software System and others.
|
||||||
|
* All rights reserved. This program and the accompanying materials
|
||||||
|
* are made available under the terms of the Eclipse Public License v1.0
|
||||||
|
* which accompanies this distribution, and is available at
|
||||||
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
|
*
|
||||||
|
* Contributors:
|
||||||
|
* Elena Laskavaia (QNX Software System) - initial API and implementation
|
||||||
|
*******************************************************************************/
|
||||||
|
package org.eclipse.cdt.tests.dsf.gdb.framework;
|
||||||
|
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.Collection;
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
|
||||||
|
import org.eclipse.cdt.dsf.gdb.IGDBLaunchConfigurationConstants;
|
||||||
|
import org.eclipse.cdt.dsf.gdb.launching.LaunchUtils;
|
||||||
|
import org.junit.AfterClass;
|
||||||
|
import org.junit.Assume;
|
||||||
|
import org.junit.runner.RunWith;
|
||||||
|
import org.junit.runners.Parameterized;
|
||||||
|
import org.junit.runners.Parameterized.Parameter;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This is base test class for all parametrized classes (classes parameter is
|
||||||
|
* gdb version)
|
||||||
|
*/
|
||||||
|
@RunWith(Parameterized.class)
|
||||||
|
public abstract class BaseParametrizedTestCase extends BaseTestCase {
|
||||||
|
@Parameterized.Parameters(name = "{0}")
|
||||||
|
public static Collection<String> getVersions() {
|
||||||
|
return calculateVersions();
|
||||||
|
}
|
||||||
|
@Parameter public String parameter;
|
||||||
|
// other fields
|
||||||
|
private String gdbVersionPostfix; // this is how we want to invoke it
|
||||||
|
private boolean remote; // this is if we want remote tests (gdbserver)
|
||||||
|
|
||||||
|
protected static List<String> calculateVersions() {
|
||||||
|
if (globalVersion != null) {
|
||||||
|
// this is old tests. Version specific suite will set this value
|
||||||
|
return Collections.singletonList(globalVersion);
|
||||||
|
}
|
||||||
|
String gdbVersions = System.getProperty("cdt.tests.dsf.gdb.versions");
|
||||||
|
if (gdbVersions == null) {
|
||||||
|
// this has to be put in maven using -Dcdt.tests.dsf.gdb.versions or in junit config if you run locally
|
||||||
|
// like this -Dcdt.tests.dsf.gdb.versions=gdb.7.7,gdbserver.7.7
|
||||||
|
gdbVersions = "gdb,gdbserver";
|
||||||
|
}
|
||||||
|
String[] versions = gdbVersions.split(",");
|
||||||
|
return Arrays.asList(versions);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected void parseParameter() {
|
||||||
|
if (gdbVersionPostfix == null && parameter != null) {
|
||||||
|
parameter = parameter.trim();
|
||||||
|
if (parameter.startsWith("gdbserver")) { // remote
|
||||||
|
remote = true;
|
||||||
|
gdbVersionPostfix = parameter.replaceAll("^gdbserver\\.?", "");
|
||||||
|
} else if (parameter.startsWith("gdb")) { // local
|
||||||
|
remote = false;
|
||||||
|
gdbVersionPostfix = parameter.replaceAll("^gdb\\.?", "");
|
||||||
|
} else { // then it is just local and just version number
|
||||||
|
remote = false;
|
||||||
|
gdbVersionPostfix = parameter;
|
||||||
|
}
|
||||||
|
if (gdbVersionPostfix.isEmpty())
|
||||||
|
gdbVersionPostfix = "default";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void resetGlobalState() {
|
||||||
|
BaseTestCase.removeGlobalLaunchAttribute(IGDBLaunchConfigurationConstants.ATTR_DEBUG_NAME);
|
||||||
|
BaseTestCase.removeGlobalLaunchAttribute(BaseTestCase.ATTR_DEBUG_SERVER_NAME);
|
||||||
|
BaseTestCase.removeGlobalLaunchAttribute(ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_START_MODE);
|
||||||
|
globalVersion = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void assumeGdbVersionLowerThen(String checkVersion) {
|
||||||
|
String gdbVersion = getGdbVersion();
|
||||||
|
// otherwise it has to be strictly lower
|
||||||
|
boolean isLower = LaunchUtils.compareVersions(checkVersion, gdbVersion) > 0;
|
||||||
|
Assume.assumeTrue(
|
||||||
|
"Skipped because gdb " + gdbVersion + " does not support this feature: removed since " + checkVersion,
|
||||||
|
isLower);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected String getGdbVersion() {
|
||||||
|
if (gdbVersionPostfix==null) gdbVersionPostfix=globalVersion;
|
||||||
|
String gdbPath = getProgramPath("gdb", gdbVersionPostfix);
|
||||||
|
return getGdbVersion(gdbPath);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void assumeGdbVersionAtLeast(String checkVersion) {
|
||||||
|
String gdbVersion = getGdbVersion();
|
||||||
|
if (gdbVersion == GDB_NOT_FOUND) {
|
||||||
|
String gdbPath = getProgramPath("gdb", gdbVersionPostfix);
|
||||||
|
// fail assumption
|
||||||
|
Assume.assumeFalse("GDB cannot be run " + gdbPath, true);
|
||||||
|
}
|
||||||
|
if (checkVersion == null || checkVersion.isEmpty() || checkVersion.equals("default"))
|
||||||
|
return; // no version restrictions
|
||||||
|
if (checkVersion.equals(gdbVersion))
|
||||||
|
return;
|
||||||
|
// otherwise it has to be same of higher
|
||||||
|
boolean isSupported = LaunchUtils.compareVersions(checkVersion, gdbVersion) <= 0;
|
||||||
|
Assume.assumeTrue("Skipped because gdb " + gdbVersion + " does not support this feature: since " + checkVersion,
|
||||||
|
isSupported);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void setGdbVersion() {
|
||||||
|
// this will be ignored in new style tests
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void initializeLaunchAttributes() {
|
||||||
|
parseParameter();
|
||||||
|
if (gdbVersionPostfix == null) {
|
||||||
|
// we are not running parametrized
|
||||||
|
setGdbVersion(); // old way
|
||||||
|
gdbVersionPostfix = globalVersion;
|
||||||
|
} else {
|
||||||
|
String gdbPath = getProgramPath("gdb", gdbVersionPostfix);
|
||||||
|
String gdbServerPath = getProgramPath("gdbserver", gdbVersionPostfix);
|
||||||
|
assumeGdbVersionAtLeast(gdbVersionPostfix);
|
||||||
|
setLaunchAttribute(IGDBLaunchConfigurationConstants.ATTR_DEBUG_NAME, gdbPath);
|
||||||
|
setLaunchAttribute(ATTR_DEBUG_SERVER_NAME, gdbServerPath);
|
||||||
|
if (remote)
|
||||||
|
setLaunchAttribute(ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_START_MODE,
|
||||||
|
IGDBLaunchConfigurationConstants.DEBUGGER_MODE_REMOTE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@AfterClass
|
||||||
|
public static void afterClass() {
|
||||||
|
BaseParametrizedTestCase.resetGlobalState();
|
||||||
|
}
|
||||||
|
}
|
|
@ -25,6 +25,8 @@ import java.util.HashSet;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.NoSuchElementException;
|
import java.util.NoSuchElementException;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
import java.util.concurrent.TimeUnit;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
|
import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
|
||||||
import org.eclipse.cdt.dsf.datamodel.IDMEvent;
|
import org.eclipse.cdt.dsf.datamodel.IDMEvent;
|
||||||
|
@ -33,6 +35,7 @@ import org.eclipse.cdt.dsf.gdb.IGDBLaunchConfigurationConstants;
|
||||||
import org.eclipse.cdt.dsf.gdb.internal.GdbDebugOptions;
|
import org.eclipse.cdt.dsf.gdb.internal.GdbDebugOptions;
|
||||||
import org.eclipse.cdt.dsf.gdb.internal.GdbPlugin;
|
import org.eclipse.cdt.dsf.gdb.internal.GdbPlugin;
|
||||||
import org.eclipse.cdt.dsf.gdb.launching.GdbLaunch;
|
import org.eclipse.cdt.dsf.gdb.launching.GdbLaunch;
|
||||||
|
import org.eclipse.cdt.dsf.gdb.launching.LaunchUtils;
|
||||||
import org.eclipse.cdt.dsf.mi.service.command.events.IMIDMEvent;
|
import org.eclipse.cdt.dsf.mi.service.command.events.IMIDMEvent;
|
||||||
import org.eclipse.cdt.dsf.mi.service.command.events.MIStoppedEvent;
|
import org.eclipse.cdt.dsf.mi.service.command.events.MIStoppedEvent;
|
||||||
import org.eclipse.cdt.dsf.mi.service.command.output.MIFrame;
|
import org.eclipse.cdt.dsf.mi.service.command.output.MIFrame;
|
||||||
|
@ -88,7 +91,7 @@ public class BaseTestCase {
|
||||||
@Rule public TestName testName = new TestName();
|
@Rule public TestName testName = new TestName();
|
||||||
|
|
||||||
// Add a timeout for each test, to make sure no test hangs
|
// Add a timeout for each test, to make sure no test hangs
|
||||||
@Rule public TestRule timeout = new Timeout(TEST_TIMEOUT);
|
@Rule public TestRule timeout = new Timeout(TEST_TIMEOUT, TimeUnit.MILLISECONDS);
|
||||||
|
|
||||||
public static final String ATTR_DEBUG_SERVER_NAME = TestsPlugin.PLUGIN_ID + ".DEBUG_SERVER_NAME";
|
public static final String ATTR_DEBUG_SERVER_NAME = TestsPlugin.PLUGIN_ID + ".DEBUG_SERVER_NAME";
|
||||||
private static final String DEFAULT_EXEC_NAME = "GDBMIGenericTestApp.exe";
|
private static final String DEFAULT_EXEC_NAME = "GDBMIGenericTestApp.exe";
|
||||||
|
@ -100,7 +103,7 @@ public class BaseTestCase {
|
||||||
|
|
||||||
// A set of global launch attributes which are not
|
// A set of global launch attributes which are not
|
||||||
// reset when we load a new class of tests.
|
// reset when we load a new class of tests.
|
||||||
// This allows a Suite to set an attribute
|
// This allows a SuiteGdb to set an attribute
|
||||||
// The suite is responsible for clearing those attributes
|
// The suite is responsible for clearing those attributes
|
||||||
// once it is finished
|
// once it is finished
|
||||||
private static Map<String, Object> globalLaunchAttributes = new HashMap<String, Object>();
|
private static Map<String, Object> globalLaunchAttributes = new HashMap<String, Object>();
|
||||||
|
@ -114,10 +117,16 @@ public class BaseTestCase {
|
||||||
private boolean fTargetSuspended;
|
private boolean fTargetSuspended;
|
||||||
|
|
||||||
/** Event semaphore we set when the target has reached the breakpoint at main() */
|
/** Event semaphore we set when the target has reached the breakpoint at main() */
|
||||||
final private String fTargetSuspendedSem = new String(); // just used as a semaphore
|
final private Object fTargetSuspendedSem = new Object(); // just used as a semaphore
|
||||||
|
|
||||||
private static boolean fgStatusHandlersEnabled = true;
|
private static boolean fgStatusHandlersEnabled = true;
|
||||||
|
|
||||||
|
/** global cache of gdb versions, to avoid running gdb every time just to check if it is present*/
|
||||||
|
private static Map<String, String> gdbCache = new HashMap<>();
|
||||||
|
protected static String globalVersion;
|
||||||
|
protected static final String GDB_NOT_FOUND = "not found";
|
||||||
|
|
||||||
|
|
||||||
private HashMap<String, Integer> fTagLocations = new HashMap<>();
|
private HashMap<String, Integer> fTagLocations = new HashMap<>();
|
||||||
|
|
||||||
public GdbLaunch getGDBLaunch() { return fLaunch; }
|
public GdbLaunch getGDBLaunch() { return fLaunch; }
|
||||||
|
@ -130,10 +139,18 @@ public class BaseTestCase {
|
||||||
launchAttributes.remove(key);
|
launchAttributes.remove(key);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Object getLaunchAttribute(String key) {
|
||||||
|
return launchAttributes.get(key);
|
||||||
|
}
|
||||||
|
|
||||||
public static void setGlobalLaunchAttribute(String key, Object value) {
|
public static void setGlobalLaunchAttribute(String key, Object value) {
|
||||||
globalLaunchAttributes.put(key, value);
|
globalLaunchAttributes.put(key, value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static Object getGlobalLaunchAttribite(String key){
|
||||||
|
return globalLaunchAttributes.get(key);
|
||||||
|
}
|
||||||
|
|
||||||
public static void removeGlobalLaunchAttribute(String key) {
|
public static void removeGlobalLaunchAttribute(String key) {
|
||||||
globalLaunchAttributes.remove(key);
|
globalLaunchAttributes.remove(key);
|
||||||
}
|
}
|
||||||
|
@ -248,9 +265,9 @@ public class BaseTestCase {
|
||||||
launchAttributes.put(ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_STOP_AT_MAIN_SYMBOL, ICDTLaunchConfigurationConstants.DEBUGGER_STOP_AT_MAIN_SYMBOL_DEFAULT);
|
launchAttributes.put(ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_STOP_AT_MAIN_SYMBOL, ICDTLaunchConfigurationConstants.DEBUGGER_STOP_AT_MAIN_SYMBOL_DEFAULT);
|
||||||
launchAttributes.put(IGDBLaunchConfigurationConstants.ATTR_GDB_INIT, ".gdbinit");
|
launchAttributes.put(IGDBLaunchConfigurationConstants.ATTR_GDB_INIT, ".gdbinit");
|
||||||
|
|
||||||
if (launchAttributes.get(ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_START_MODE) == null) {
|
|
||||||
launchAttributes.put(ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_START_MODE, ICDTLaunchConfigurationConstants.DEBUGGER_MODE_RUN );
|
launchAttributes.put(ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_START_MODE, ICDTLaunchConfigurationConstants.DEBUGGER_MODE_RUN );
|
||||||
}
|
|
||||||
|
|
||||||
// Set these up in case we will be running Remote tests. They will be ignored if we don't
|
// Set these up in case we will be running Remote tests. They will be ignored if we don't
|
||||||
launchAttributes.put(ATTR_DEBUG_SERVER_NAME, "gdbserver");
|
launchAttributes.put(ATTR_DEBUG_SERVER_NAME, "gdbserver");
|
||||||
|
@ -259,12 +276,23 @@ public class BaseTestCase {
|
||||||
launchAttributes.put(IGDBLaunchConfigurationConstants.ATTR_PORT, "9999");
|
launchAttributes.put(IGDBLaunchConfigurationConstants.ATTR_PORT, "9999");
|
||||||
launchAttributes.put(ITestConstants.LAUNCH_GDB_SERVER, true);
|
launchAttributes.put(ITestConstants.LAUNCH_GDB_SERVER, true);
|
||||||
|
|
||||||
setGdbVersion();
|
initializeLaunchAttributes();
|
||||||
|
|
||||||
// Set the global launch attributes
|
// Set the global launch attributes
|
||||||
launchAttributes.putAll(globalLaunchAttributes);
|
launchAttributes.putAll(globalLaunchAttributes);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Override this method to initialize test specific launch attributes.
|
||||||
|
* Use {@link #setLaunchAttribute(String, Object)} method to set them.
|
||||||
|
* Don't need to clean it up its local to a specific test method.
|
||||||
|
* Note that global attributes will override these values.
|
||||||
|
* If it is undesired override {@link #setLaunchAttributes()} method instead
|
||||||
|
*/
|
||||||
|
protected void initializeLaunchAttributes() {
|
||||||
|
setGdbVersion();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Given a set of tags (strings) to find in sourceFile, populate the
|
* Given a set of tags (strings) to find in sourceFile, populate the
|
||||||
* fTagLocations map with the line numbers where they are found.
|
* fTagLocations map with the line numbers where they are found.
|
||||||
|
@ -280,32 +308,24 @@ public class BaseTestCase {
|
||||||
new BufferedReader(new FileReader(SOURCE_PATH + sourceName))) {
|
new BufferedReader(new FileReader(SOURCE_PATH + sourceName))) {
|
||||||
Set<String> tagsToFind = new HashSet<>(Arrays.asList(tags));
|
Set<String> tagsToFind = new HashSet<>(Arrays.asList(tags));
|
||||||
String line;
|
String line;
|
||||||
int lineNumber = 1;
|
|
||||||
int numberFound = 0;
|
|
||||||
|
|
||||||
line = reader.readLine();
|
for (int lineNumber = 1; (line = reader.readLine()) != null; lineNumber++) {
|
||||||
while (line != null) {
|
|
||||||
for (String tag : tagsToFind) {
|
for (String tag : tagsToFind) {
|
||||||
if (line.contains(tag)) {
|
if (line.contains(tag)) {
|
||||||
if (fTagLocations.containsKey(tag)) {
|
if (fTagLocations.containsKey(tag)) {
|
||||||
throw new RuntimeException("Tag " + tag
|
throw new RuntimeException("Tag " + tag
|
||||||
+ " was found twice in " + sourceName);
|
+ " was found twice in " + sourceName);
|
||||||
}
|
}
|
||||||
|
|
||||||
fTagLocations.put(tag, lineNumber);
|
fTagLocations.put(tag, lineNumber);
|
||||||
numberFound++;
|
tagsToFind.remove(tag);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
lineNumber++;
|
|
||||||
line = reader.readLine();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Make sure all tags have been found */
|
/* Make sure all tags have been found */
|
||||||
if (numberFound != tagsToFind.size()) {
|
if (!tagsToFind.isEmpty()) {
|
||||||
throw new RuntimeException(
|
throw new RuntimeException(
|
||||||
"Some tags were not found in " + sourceName);
|
"Tags " + tagsToFind + " were not found in " + sourceName);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -478,22 +498,27 @@ public class BaseTestCase {
|
||||||
*
|
*
|
||||||
* @param version
|
* @param version
|
||||||
* string that contains the major and minor version number, e.g.,
|
* string that contains the major and minor version number, e.g.,
|
||||||
* "6.8"
|
* "6.8", special constant "default" represent default gdb on the box (called as "gdb")
|
||||||
*/
|
*/
|
||||||
public static void setGdbProgramNamesLaunchAttributes(String version) {
|
public static void setGdbProgramNamesLaunchAttributes(String version) {
|
||||||
// See bugzilla 303811 for why we have to append ".exe" on Windows
|
globalVersion = version;
|
||||||
boolean isWindows = runningOnWindows();
|
setGlobalLaunchAttribute(IGDBLaunchConfigurationConstants.ATTR_DEBUG_NAME, getProgramPath("gdb", version));
|
||||||
String gdbPath = System.getProperty("cdt.tests.dsf.gdb.path");
|
setGlobalLaunchAttribute(ATTR_DEBUG_SERVER_NAME, getProgramPath("gdbserver", version));
|
||||||
String debugName = "gdb." + version + (isWindows ? ".exe" : "");
|
|
||||||
String debugServerName = "gdbserver." + version + (isWindows ? ".exe" : "");
|
|
||||||
if (gdbPath != null) {
|
|
||||||
debugName = gdbPath + "/" + debugName;
|
|
||||||
debugServerName = gdbPath + "/" + debugServerName;
|
|
||||||
}
|
|
||||||
setGlobalLaunchAttribute(IGDBLaunchConfigurationConstants.ATTR_DEBUG_NAME, debugName);
|
|
||||||
setGlobalLaunchAttribute(ATTR_DEBUG_SERVER_NAME, debugServerName);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static String getProgramPath(String main, String version) {
|
||||||
|
// See bugzilla 303811 for why we have to append ".exe" on Windows
|
||||||
|
boolean isWindows = runningOnWindows();
|
||||||
|
String gdbPath = System.getProperty("cdt.tests.dsf.gdb.path");
|
||||||
|
String fileExtension = isWindows ? ".exe" : "";
|
||||||
|
String versionPostfix = (!version.equals("default")) ? "." + version : "";
|
||||||
|
String debugName = main + versionPostfix + fileExtension;
|
||||||
|
if (gdbPath != null) {
|
||||||
|
debugName = gdbPath + "/" + debugName;
|
||||||
|
}
|
||||||
|
return debugName;
|
||||||
|
}
|
||||||
|
|
||||||
public static boolean supportsNonStop() {
|
public static boolean supportsNonStop() {
|
||||||
return !(runningOnWindows() || runningOnMac());
|
return !(runningOnWindows() || runningOnMac());
|
||||||
}
|
}
|
||||||
|
@ -504,19 +529,49 @@ public class BaseTestCase {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This method will verify that the GDB binary is available, and if it is not, the test will
|
* This method will verify that the GDB binary is available, and if it is not, the test will
|
||||||
* be ignored. This method should be called by a Suite that specifies a specific GDB version.
|
* be ignored. This method should be called by a SuiteGdb that specifies a specific GDB version.
|
||||||
*/
|
*/
|
||||||
public static void ignoreIfGDBMissing() {
|
public static void ignoreIfGDBMissing() {
|
||||||
try {
|
String gdb = (String) globalLaunchAttributes.get(IGDBLaunchConfigurationConstants.ATTR_DEBUG_NAME);
|
||||||
// See if we can find GDB by actually running it.
|
String version = getGdbVersion(gdb);
|
||||||
String gdb = (String)globalLaunchAttributes.get(IGDBLaunchConfigurationConstants.ATTR_DEBUG_NAME);
|
// If we cannot run GDB, just ignore the test case.
|
||||||
Process process = ProcessFactory.getFactory().exec(gdb + " --version");
|
Assume.assumeFalse("GDB cannot be run " + gdb, version == GDB_NOT_FOUND);
|
||||||
process.destroy();
|
}
|
||||||
} catch (IOException e) {
|
|
||||||
// If we cannot run GDB, just ignore the test case.
|
protected static String getGdbVersion(String gdb) {
|
||||||
Assume.assumeNoException(e);
|
try {
|
||||||
}
|
// See if we can find GDB by actually running it.
|
||||||
}
|
String version = gdbCache.get(gdb);
|
||||||
|
if (version == null) {
|
||||||
|
version = doReadGdbVersion(gdb);
|
||||||
|
gdbCache.put(gdb, version);
|
||||||
|
}
|
||||||
|
return version;
|
||||||
|
} catch (IOException e) {
|
||||||
|
gdbCache.put(gdb, GDB_NOT_FOUND);
|
||||||
|
return GDB_NOT_FOUND;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
protected static String doReadGdbVersion(String gdb) throws IOException {
|
||||||
|
Process process = ProcessFactory.getFactory().exec(gdb + " --version");
|
||||||
|
try {
|
||||||
|
String streamOutput;
|
||||||
|
try (BufferedReader buffer = new BufferedReader(new InputStreamReader(process.getInputStream()))) {
|
||||||
|
streamOutput = buffer.lines().collect(Collectors.joining("\n"));
|
||||||
|
}
|
||||||
|
String gdbVersion = LaunchUtils.getGDBVersionFromText(streamOutput);
|
||||||
|
return gdbVersion;
|
||||||
|
} finally {
|
||||||
|
try {
|
||||||
|
process.getOutputStream().close();
|
||||||
|
process.getErrorStream().close();
|
||||||
|
process.destroy();
|
||||||
|
} catch (IOException e) {
|
||||||
|
// ignore these
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected static boolean runningOnWindows() {
|
protected static boolean runningOnWindows() {
|
||||||
return Platform.getOS().equals(Platform.OS_WIN32);
|
return Platform.getOS().equals(Platform.OS_WIN32);
|
||||||
|
@ -538,5 +593,5 @@ public class BaseTestCase {
|
||||||
public static void restoreGlobalPreferences() {
|
public static void restoreGlobalPreferences() {
|
||||||
IEclipsePreferences node = InstanceScope.INSTANCE.getNode(DebugPlugin.getUniqueIdentifier());
|
IEclipsePreferences node = InstanceScope.INSTANCE.getNode(DebugPlugin.getUniqueIdentifier());
|
||||||
node.putBoolean(IInternalDebugCoreConstants.PREF_ENABLE_STATUS_HANDLERS, fgStatusHandlersEnabled);
|
node.putBoolean(IInternalDebugCoreConstants.PREF_ENABLE_STATUS_HANDLERS, fgStatusHandlersEnabled);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,21 +10,16 @@
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
package org.eclipse.cdt.tests.dsf.gdb.tests;
|
package org.eclipse.cdt.tests.dsf.gdb.tests;
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11.Suite_7_11;
|
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This suite runs all suites that are part of the tests
|
* This suite runs all suites that are part of the tests automatically run with
|
||||||
* automatically run with each CDT build.
|
* each CDT build.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@RunWith(Suite.class)
|
@RunWith(Suite.class)
|
||||||
@Suite.SuiteClasses({
|
@Suite.SuiteClasses({
|
||||||
Suite_7_11.class,
|
SuiteGdb.class,
|
||||||
// Can't run the Remote test just yet because they
|
|
||||||
// have the same names on the local tests, which is
|
|
||||||
// not handled by JUnit (https://bugs.eclipse.org/172256)
|
|
||||||
})
|
})
|
||||||
|
public class AutomatedSuite {
|
||||||
public class AutomatedSuite {}
|
}
|
File diff suppressed because it is too large
Load diff
|
@ -58,12 +58,12 @@ import org.eclipse.cdt.dsf.service.DsfSession;
|
||||||
import org.eclipse.cdt.gdb.eventbkpts.IEventBreakpointConstants;
|
import org.eclipse.cdt.gdb.eventbkpts.IEventBreakpointConstants;
|
||||||
import org.eclipse.cdt.gdb.internal.eventbkpts.GdbCatchpoints;
|
import org.eclipse.cdt.gdb.internal.eventbkpts.GdbCatchpoints;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.AsyncCompletionWaitor;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.AsyncCompletionWaitor;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BackgroundRunner;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseParametrizedTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.SyncUtil;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.SyncUtil;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.launching.TestsPlugin;
|
import org.eclipse.cdt.tests.dsf.gdb.launching.TestsPlugin;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
|
import org.junit.runners.Parameterized;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This is the test suite for the catchpoint support in DSF-GDB.
|
* This is the test suite for the catchpoint support in DSF-GDB.
|
||||||
|
@ -79,8 +79,8 @@ import org.junit.runner.RunWith;
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@RunWith(BackgroundRunner.class)
|
@RunWith(Parameterized.class)
|
||||||
public class MICatchpointsTest extends BaseTestCase {
|
public class MICatchpointsTest extends BaseParametrizedTestCase {
|
||||||
|
|
||||||
private static final String EXEC_NAME = "CatchpointTestApp.exe"; //$NON-NLS-1$
|
private static final String EXEC_NAME = "CatchpointTestApp.exe"; //$NON-NLS-1$
|
||||||
private static final String SOURCE_NAME = "CatchpointTestApp.cc"; //$NON-NLS-1$
|
private static final String SOURCE_NAME = "CatchpointTestApp.cc"; //$NON-NLS-1$
|
||||||
|
@ -190,23 +190,23 @@ public class MICatchpointsTest extends BaseTestCase {
|
||||||
@Override
|
@Override
|
||||||
public void doAfterTest() throws Exception {
|
public void doAfterTest() throws Exception {
|
||||||
super.doAfterTest();
|
super.doAfterTest();
|
||||||
|
if (fSession != null) {
|
||||||
Runnable runnable = new Runnable() {
|
Runnable runnable = new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
fRunControl.getSession().removeServiceEventListener(MICatchpointsTest.this);
|
fRunControl.getSession().removeServiceEventListener(MICatchpointsTest.this);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
fSession.getExecutor().submit(runnable).get();
|
fSession.getExecutor().submit(runnable).get();
|
||||||
|
}
|
||||||
// Clear the references (not strictly necessary)
|
// Clear the references (not strictly necessary)
|
||||||
fBreakpointService = null;
|
fBreakpointService = null;
|
||||||
fRunControl = null;
|
fRunControl = null;
|
||||||
fServicesTracker.dispose();
|
if (fServicesTracker != null)
|
||||||
fServicesTracker = null;
|
fServicesTracker.dispose();
|
||||||
|
fServicesTracker = null;
|
||||||
clearEventCounters();
|
clearEventCounters();
|
||||||
}
|
}
|
||||||
|
|
||||||
// ========================================================================
|
// ========================================================================
|
||||||
// Event Management Functions
|
// Event Management Functions
|
||||||
|
|
|
@ -0,0 +1,86 @@
|
||||||
|
/*******************************************************************************
|
||||||
|
* Copyright (c) 2016 QNX Software System and others.
|
||||||
|
* All rights reserved. This program and the accompanying materials
|
||||||
|
* are made available under the terms of the Eclipse Public License v1.0
|
||||||
|
* which accompanies this distribution, and is available at
|
||||||
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
|
*
|
||||||
|
* Contributors:
|
||||||
|
* Elena Laskavaia (QNX Software System) - initial API and implementation
|
||||||
|
*******************************************************************************/
|
||||||
|
package org.eclipse.cdt.tests.dsf.gdb.tests;
|
||||||
|
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseParametrizedTestCase;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11.CommandTimeoutTest_7_11;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11.GDBConsoleBreakpointsTest_7_11;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11.GDBConsoleSynchronizingTest_7_11;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11.GDBMultiNonStopRunControlTest_7_11;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11.GDBPatternMatchingExpressionsTest_7_11;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11.GDBProcessesTest_7_11;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11.LaunchConfigurationAndRestartTest_7_11;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11.MICatchpointsTest_7_11;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11.MIDisassemblyTest_7_11;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11.MIExpressionsNonStopTest_7_11;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11.MIExpressionsTest_7_11;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11.MIMemoryTest_7_11;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11.MIRegistersTest_7_11;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11.MIRunControlNonStopTargetAvailableTest_7_11;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11.MIRunControlTargetAvailableTest_7_11;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11.MIRunControlTest_7_11;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11.OperationsWhileTargetIsRunningNonStopTest_7_11;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11.OperationsWhileTargetIsRunningTest_7_11;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11.PostMortemCoreTest_7_11;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11.SourceLookupTest_7_11;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11.StepIntoSelectionNonStopTest_7_11;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11.StepIntoSelectionTest_7_11;
|
||||||
|
import org.junit.BeforeClass;
|
||||||
|
import org.junit.runner.RunWith;
|
||||||
|
import org.junit.runners.Suite;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This suite is for tests to be run with GDB.
|
||||||
|
*
|
||||||
|
* If you running this from IDE use java var to control version like this -Dcdt.tests.dsf.gdb.versions=gdb.7.7,gdbserver.7.7
|
||||||
|
* If you don't it will run default gdb (without version postfix) for new tests. It will run 7.11 for all non-converted tests.
|
||||||
|
*
|
||||||
|
* If you adding a new test class do not use gdb version naming. Use flat version extending BaseParametrizedTestCase,
|
||||||
|
* see {@link MIBreakpointsTest}
|
||||||
|
*/
|
||||||
|
@RunWith(Suite.class)
|
||||||
|
@Suite.SuiteClasses({
|
||||||
|
// temporary we still use hardcoded gdb version name, we will slowly flatten them
|
||||||
|
MIRegistersTest_7_11.class,
|
||||||
|
MIRunControlTest_7_11.class,
|
||||||
|
MIRunControlTargetAvailableTest_7_11.class,
|
||||||
|
MIRunControlNonStopTargetAvailableTest_7_11.class,
|
||||||
|
MIExpressionsTest_7_11.class,
|
||||||
|
MIExpressionsNonStopTest_7_11.class,
|
||||||
|
GDBPatternMatchingExpressionsTest_7_11.class,
|
||||||
|
MIMemoryTest_7_11.class,
|
||||||
|
MIBreakpointsTest.class, // this is flat version
|
||||||
|
MICatchpointsTest_7_11.class,
|
||||||
|
MIDisassemblyTest_7_11.class,
|
||||||
|
GDBProcessesTest_7_11.class,
|
||||||
|
LaunchConfigurationAndRestartTest_7_11.class,
|
||||||
|
OperationsWhileTargetIsRunningTest_7_11.class,
|
||||||
|
OperationsWhileTargetIsRunningNonStopTest_7_11.class,
|
||||||
|
PostMortemCoreTest_7_11.class,
|
||||||
|
CommandTimeoutTest_7_11.class,
|
||||||
|
GDBMultiNonStopRunControlTest_7_11.class,
|
||||||
|
GDBConsoleBreakpointsTest_7_11.class,
|
||||||
|
GDBConsoleSynchronizingTest_7_11.class,
|
||||||
|
StepIntoSelectionTest_7_11.class,
|
||||||
|
StepIntoSelectionNonStopTest_7_11.class,
|
||||||
|
SourceLookupTest_7_11.class,
|
||||||
|
/* Add your test class here */
|
||||||
|
})
|
||||||
|
public class SuiteGdb {
|
||||||
|
@BeforeClass
|
||||||
|
public static void before() {
|
||||||
|
// If we running this suite we have to clean up global options since
|
||||||
|
// each test will set local version of these properly.
|
||||||
|
// If our tests are running from other suites they
|
||||||
|
// may have globals that will override local values.
|
||||||
|
BaseParametrizedTestCase.resetGlobalState();
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,36 +0,0 @@
|
||||||
/*******************************************************************************
|
|
||||||
* Copyright (c) 2009, 2015 Ericsson and others.
|
|
||||||
* All rights reserved. This program and the accompanying materials
|
|
||||||
* are made available under the terms of the Eclipse Public License v1.0
|
|
||||||
* which accompanies this distribution, and is available at
|
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
|
||||||
*
|
|
||||||
* Contributors:
|
|
||||||
* Ericsson - Initial Implementation
|
|
||||||
*******************************************************************************/
|
|
||||||
package org.eclipse.cdt.tests.dsf.gdb.tests.tests_6_6;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BackgroundRunner;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
|
||||||
import org.junit.Ignore;
|
|
||||||
import org.junit.Test;
|
|
||||||
import org.junit.runner.RunWith;
|
|
||||||
|
|
||||||
@RunWith(BackgroundRunner.class)
|
|
||||||
public class MIBreakpointsTest_6_6 extends MIBreakpointsTest {
|
|
||||||
@Override
|
|
||||||
protected void setGdbVersion() {
|
|
||||||
setGdbProgramNamesLaunchAttributes(ITestConstants.SUFFIX_GDB_6_6);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Currently, this test uses breakpoint synchronization with
|
|
||||||
// the gdb console which is only available with GDB 7.4
|
|
||||||
// So we mark it with @Ignore
|
|
||||||
@Override
|
|
||||||
@Ignore
|
|
||||||
@Test
|
|
||||||
public void updateBreakpoint_AfterRestart() throws Throwable {
|
|
||||||
super.updateBreakpoint_AfterRestart();
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -14,6 +14,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_6_6;
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -36,7 +37,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsTest_6_6.class,
|
MIExpressionsTest_6_6.class,
|
||||||
GDBPatternMatchingExpressionsTest_6_6.class,
|
GDBPatternMatchingExpressionsTest_6_6.class,
|
||||||
MIMemoryTest_6_6.class,
|
MIMemoryTest_6_6.class,
|
||||||
MIBreakpointsTest_6_6.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_6_6.class,
|
MICatchpointsTest_6_6.class,
|
||||||
MIDisassemblyTest_6_6.class,
|
MIDisassemblyTest_6_6.class,
|
||||||
GDBProcessesTest_6_6.class,
|
GDBProcessesTest_6_6.class,
|
||||||
|
|
|
@ -15,6 +15,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_6_6;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -37,7 +38,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsTest_6_6.class,
|
MIExpressionsTest_6_6.class,
|
||||||
GDBPatternMatchingExpressionsTest_6_6.class,
|
GDBPatternMatchingExpressionsTest_6_6.class,
|
||||||
MIMemoryTest_6_6.class,
|
MIMemoryTest_6_6.class,
|
||||||
MIBreakpointsTest_6_6.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_6_6.class,
|
MICatchpointsTest_6_6.class,
|
||||||
MIDisassemblyTest_6_6.class,
|
MIDisassemblyTest_6_6.class,
|
||||||
GDBProcessesTest_6_6.class,
|
GDBProcessesTest_6_6.class,
|
||||||
|
|
|
@ -1,24 +0,0 @@
|
||||||
/*******************************************************************************
|
|
||||||
* Copyright (c) 2009, 2012 Ericsson and others.
|
|
||||||
* All rights reserved. This program and the accompanying materials
|
|
||||||
* are made available under the terms of the Eclipse Public License v1.0
|
|
||||||
* which accompanies this distribution, and is available at
|
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
|
||||||
*
|
|
||||||
* Contributors:
|
|
||||||
* Ericsson - Initial Implementation
|
|
||||||
*******************************************************************************/
|
|
||||||
package org.eclipse.cdt.tests.dsf.gdb.tests.tests_6_7;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BackgroundRunner;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_6_6.MIBreakpointsTest_6_6;
|
|
||||||
import org.junit.runner.RunWith;
|
|
||||||
|
|
||||||
@RunWith(BackgroundRunner.class)
|
|
||||||
public class MIBreakpointsTest_6_7 extends MIBreakpointsTest_6_6 {
|
|
||||||
@Override
|
|
||||||
protected void setGdbVersion() {
|
|
||||||
setGdbProgramNamesLaunchAttributes(ITestConstants.SUFFIX_GDB_6_7);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -14,6 +14,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_6_7;
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -36,7 +37,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsTest_6_7.class,
|
MIExpressionsTest_6_7.class,
|
||||||
GDBPatternMatchingExpressionsTest_6_7.class,
|
GDBPatternMatchingExpressionsTest_6_7.class,
|
||||||
MIMemoryTest_6_7.class,
|
MIMemoryTest_6_7.class,
|
||||||
MIBreakpointsTest_6_7.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_6_7.class,
|
MICatchpointsTest_6_7.class,
|
||||||
MIDisassemblyTest_6_7.class,
|
MIDisassemblyTest_6_7.class,
|
||||||
GDBProcessesTest_6_7.class,
|
GDBProcessesTest_6_7.class,
|
||||||
|
|
|
@ -15,6 +15,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_6_7;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -37,7 +38,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsTest_6_7.class,
|
MIExpressionsTest_6_7.class,
|
||||||
GDBPatternMatchingExpressionsTest_6_7.class,
|
GDBPatternMatchingExpressionsTest_6_7.class,
|
||||||
MIMemoryTest_6_7.class,
|
MIMemoryTest_6_7.class,
|
||||||
MIBreakpointsTest_6_7.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_6_7.class,
|
MICatchpointsTest_6_7.class,
|
||||||
MIDisassemblyTest_6_7.class,
|
MIDisassemblyTest_6_7.class,
|
||||||
GDBProcessesTest_6_7.class,
|
GDBProcessesTest_6_7.class,
|
||||||
|
|
|
@ -1,192 +0,0 @@
|
||||||
/*******************************************************************************
|
|
||||||
* Copyright (c) 2009, 2015 Ericsson and others.
|
|
||||||
* All rights reserved. This program and the accompanying materials
|
|
||||||
* are made available under the terms of the Eclipse Public License v1.0
|
|
||||||
* which accompanies this distribution, and is available at
|
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
|
||||||
*
|
|
||||||
* Contributors:
|
|
||||||
* Ericsson - Initial Implementation
|
|
||||||
* Simon Marchi (Ericsson) - Add and use runningOnWindows().
|
|
||||||
*******************************************************************************/
|
|
||||||
package org.eclipse.cdt.tests.dsf.gdb.tests.tests_6_8;
|
|
||||||
|
|
||||||
import static org.junit.Assert.assertTrue;
|
|
||||||
|
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.dsf.debug.service.IBreakpoints.IBreakpointDMContext;
|
|
||||||
import org.eclipse.cdt.dsf.mi.service.MIBreakpointDMData;
|
|
||||||
import org.eclipse.cdt.dsf.mi.service.MIBreakpoints.MIBreakpointDMContext;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BackgroundRunner;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.SyncUtil;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_6_7.MIBreakpointsTest_6_7;
|
|
||||||
import org.junit.Ignore;
|
|
||||||
import org.junit.Test;
|
|
||||||
import org.junit.runner.RunWith;
|
|
||||||
|
|
||||||
@RunWith(BackgroundRunner.class)
|
|
||||||
public class MIBreakpointsTest_6_8 extends MIBreakpointsTest_6_7 {
|
|
||||||
@Override
|
|
||||||
protected void setGdbVersion() {
|
|
||||||
setGdbProgramNamesLaunchAttributes(ITestConstants.SUFFIX_GDB_6_8);
|
|
||||||
}
|
|
||||||
|
|
||||||
// GDB 6.8 has a bug that ignores watchpoint conditions,which makes this
|
|
||||||
// test fail. We therefore ignore this test for GDB 6.8 only, but run it
|
|
||||||
// for all other versions
|
|
||||||
@Override
|
|
||||||
@Ignore("This test does not work with GDB 6.8")
|
|
||||||
@Test
|
|
||||||
public void breakpointHit_watchpointUpdateCondition() throws Throwable {
|
|
||||||
// Must call the test in the super class to allow further derived
|
|
||||||
// classes to run this test.
|
|
||||||
super.breakpointHit_watchpointUpdateCondition();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Starting with GDB 6.8, we request failed breakpoints to be pending in
|
|
||||||
* GDB. So we no longer get an installation error from GDB.
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
@Test
|
|
||||||
public void insertBreakpoint_InvalidFileName() throws Throwable {
|
|
||||||
|
|
||||||
// Create an invalid line breakpoint
|
|
||||||
Map<String, Object> breakpoint = new HashMap<String, Object>();
|
|
||||||
breakpoint.put(BREAKPOINT_TYPE_TAG, BREAKPOINT_TAG);
|
|
||||||
breakpoint.put(FILE_NAME_TAG, SOURCE_NAME + "_bad");
|
|
||||||
breakpoint.put(LINE_NUMBER_TAG, LINE_NUMBER_1);
|
|
||||||
|
|
||||||
// Perform the test, which we still expect to succeed
|
|
||||||
// giving us a pending breakpoint
|
|
||||||
IBreakpointDMContext ref = insertBreakpoint(fBreakpointsDmc, breakpoint);
|
|
||||||
assertTrue(fWait.getMessage(), fWait.isOK());
|
|
||||||
|
|
||||||
// Ensure that right BreakpointEvents were received
|
|
||||||
waitForBreakpointEvent(1);
|
|
||||||
assertTrue("BreakpointEvent problem: expected " + 1 + " BREAKPOINT event(s), received "
|
|
||||||
+ fBreakpointEventCount, fBreakpointEventCount == 1);
|
|
||||||
assertTrue("BreakpointEvent problem: expected " + 1 + " BREAKPOINT_ADDED event(s), received "
|
|
||||||
+ getBreakpointEventCount(BP_ADDED), getBreakpointEventCount(BP_ADDED) == 1);
|
|
||||||
clearEventCounters();
|
|
||||||
|
|
||||||
// Ensure that the breakpoint was correctly installed
|
|
||||||
MIBreakpointDMData breakpoint1 = (MIBreakpointDMData) getBreakpoint(ref);
|
|
||||||
assertTrue("BreakpointService problem: breakpoint mismatch (wrong file name)",
|
|
||||||
breakpoint1.getFileName().equals(""));
|
|
||||||
assertTrue("BreakpointService problem: breakpoint mismatch (wrong line number)",
|
|
||||||
breakpoint1.getLineNumber() == -1);
|
|
||||||
assertTrue("BreakpointService problem: breakpoint mismatch (wrong condition)",
|
|
||||||
breakpoint1.getCondition().equals(NO_CONDITION));
|
|
||||||
assertTrue("BreakpointService problem: breakpoint mismatch (wrong ignore count)",
|
|
||||||
breakpoint1.getIgnoreCount() == 0);
|
|
||||||
assertTrue("BreakpointService problem: breakpoint mismatch (wrong state)",
|
|
||||||
breakpoint1.isEnabled());
|
|
||||||
assertTrue("BreakpointService problem: breakpoint mismatch (not pending)",
|
|
||||||
breakpoint1.isPending());
|
|
||||||
|
|
||||||
// Ensure the BreakpointService holds only the right breakpoints
|
|
||||||
IBreakpointDMContext[] breakpoints = getBreakpoints(fBreakpointsDmc);
|
|
||||||
assertTrue("BreakpointService problem: expected " + 1 + " breakpoint(s), received "
|
|
||||||
+ breakpoints.length, breakpoints.length == 1);
|
|
||||||
MIBreakpointDMData breakpoint2 = (MIBreakpointDMData) getBreakpoint(breakpoints[0]);
|
|
||||||
assertTrue("BreakpointService problem: breakpoint mismatch",
|
|
||||||
breakpoint1.equals(breakpoint2));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Starting with GDB 6.8, we request failed breakpoints to be pending in
|
|
||||||
* GDB. So we no longer get an installation error from GDB.
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
@Test
|
|
||||||
public void insertBreakpoint_InvalidFunctionName() throws Throwable {
|
|
||||||
|
|
||||||
// Create an invalid function breakpoint
|
|
||||||
Map<String, Object> breakpoint = new HashMap<String, Object>();
|
|
||||||
breakpoint.put(BREAKPOINT_TYPE_TAG, BREAKPOINT_TAG);
|
|
||||||
breakpoint.put(FILE_NAME_TAG, SOURCE_NAME);
|
|
||||||
breakpoint.put(FUNCTION_TAG, "invalid-function-name");
|
|
||||||
|
|
||||||
// Perform the test, which we still expect to succeed
|
|
||||||
// giving us a pending breakpoint
|
|
||||||
IBreakpointDMContext ref = insertBreakpoint(fBreakpointsDmc, breakpoint);
|
|
||||||
assertTrue(fWait.getMessage(), fWait.isOK());
|
|
||||||
|
|
||||||
// Ensure that right BreakpointEvents were received
|
|
||||||
waitForBreakpointEvent(1);
|
|
||||||
assertTrue("BreakpointEvent problem: expected " + 1 + " BREAKPOINT event(s), received "
|
|
||||||
+ fBreakpointEventCount, fBreakpointEventCount == 1);
|
|
||||||
assertTrue("BreakpointEvent problem: expected " + 1 + " BREAKPOINT_ADDED event(s), received "
|
|
||||||
+ getBreakpointEventCount(BP_ADDED), getBreakpointEventCount(BP_ADDED) == 1);
|
|
||||||
clearEventCounters();
|
|
||||||
|
|
||||||
// Ensure that the breakpoint was correctly installed
|
|
||||||
MIBreakpointDMData breakpoint1 = (MIBreakpointDMData) getBreakpoint(ref);
|
|
||||||
assertTrue("BreakpointService problem: breakpoint mismatch (wrong file name)",
|
|
||||||
breakpoint1.getFileName().equals(""));
|
|
||||||
assertTrue("BreakpointService problem: breakpoint mismatch (wrong function)",
|
|
||||||
breakpoint1.getFunctionName().equals(""));
|
|
||||||
assertTrue("BreakpointService problem: breakpoint mismatch (wrong condition)",
|
|
||||||
breakpoint1.getCondition().equals(NO_CONDITION));
|
|
||||||
assertTrue("BreakpointService problem: breakpoint mismatch (wrong ignore count)",
|
|
||||||
breakpoint1.getIgnoreCount() == 0);
|
|
||||||
assertTrue("BreakpointService problem: breakpoint mismatch (not pending)",
|
|
||||||
breakpoint1.isPending());
|
|
||||||
|
|
||||||
// Ensure the BreakpointService holds only the right breakpoints
|
|
||||||
IBreakpointDMContext[] breakpoints = getBreakpoints(fBreakpointsDmc);
|
|
||||||
assertTrue("BreakpointService problem: expected " + 1 + " breakpoint(s), received "
|
|
||||||
+ breakpoints.length, breakpoints.length == 1);
|
|
||||||
MIBreakpointDMData breakpoint2 = (MIBreakpointDMData) getBreakpoint(breakpoints[0]);
|
|
||||||
assertTrue("BreakpointService problem: breakpoint mismatch",
|
|
||||||
breakpoint1.equals(breakpoint2));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Starting with GDB 6.8, we request failed breakpoints to be pending in
|
|
||||||
* GDB. So we no longer get an installation error from GDB.
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
@Test
|
|
||||||
public void insertInvalidBreakpoint_WhileTargetRunning() throws Throwable {
|
|
||||||
// Interrupting the target on Windows is susceptible to an additional,
|
|
||||||
// unwanted suspension. That means that silently interrupting the target
|
|
||||||
// to set/modify/remove a breakpoint then resuming it can leave the
|
|
||||||
// target in a suspended state. Unfortunately, there is nothing
|
|
||||||
// practical CDT can do to address this issue except wait for the gdb
|
|
||||||
// folks to resolve it. See https://bugs.eclipse.org/bugs/show_bug.cgi?id=304096#c27
|
|
||||||
if (runningOnWindows()) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Create an invalid line breakpoint
|
|
||||||
Map<String, Object> breakpoint = new HashMap<String, Object>();
|
|
||||||
breakpoint.put(BREAKPOINT_TYPE_TAG, BREAKPOINT_TAG);
|
|
||||||
breakpoint.put(FILE_NAME_TAG, "Bad file name");
|
|
||||||
breakpoint.put(LINE_NUMBER_TAG, LINE_NUMBER_5);
|
|
||||||
|
|
||||||
// Run the program. It will make a two second sleep() call, during which time...
|
|
||||||
SyncUtil.resume();
|
|
||||||
|
|
||||||
// ...we install the breakpoint
|
|
||||||
MIBreakpointDMContext ref = (MIBreakpointDMContext) insertBreakpoint(fBreakpointsDmc, breakpoint);
|
|
||||||
assertTrue(fWait.getMessage(), fWait.isOK());
|
|
||||||
|
|
||||||
waitForBreakpointEvent(1);
|
|
||||||
// Ensure the correct BreakpointEvent was received
|
|
||||||
MIBreakpointDMData breakpoint1 = (MIBreakpointDMData) getBreakpoint(ref);
|
|
||||||
assertTrue("BreakpointEvent problem: expected " + 1 + " BREAKPOINT event(s), received "
|
|
||||||
+ fBreakpointEventCount, fBreakpointEventCount == 1);
|
|
||||||
assertTrue("BreakpointEvent problem: expected " + 0 + " BREAKPOINT_HIT event(s), received "
|
|
||||||
+ getBreakpointEventCount(BP_HIT), getBreakpointEventCount(BP_HIT) == 0);
|
|
||||||
assertTrue("BreakpointService problem: breakpoint mismatch",
|
|
||||||
fBreakpointRef == breakpoint1.getNumber());
|
|
||||||
assertTrue("BreakpointService problem: breakpoint mismatch (not pending)",
|
|
||||||
breakpoint1.isPending());
|
|
||||||
clearEventCounters();
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -14,6 +14,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_6_8;
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -36,7 +37,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsTest_6_8.class,
|
MIExpressionsTest_6_8.class,
|
||||||
GDBPatternMatchingExpressionsTest_6_8.class,
|
GDBPatternMatchingExpressionsTest_6_8.class,
|
||||||
MIMemoryTest_6_8.class,
|
MIMemoryTest_6_8.class,
|
||||||
MIBreakpointsTest_6_8.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_6_8.class,
|
MICatchpointsTest_6_8.class,
|
||||||
MIDisassemblyTest_6_8.class,
|
MIDisassemblyTest_6_8.class,
|
||||||
GDBProcessesTest_6_8.class,
|
GDBProcessesTest_6_8.class,
|
||||||
|
|
|
@ -15,6 +15,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_6_8;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -37,7 +38,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsTest_6_8.class,
|
MIExpressionsTest_6_8.class,
|
||||||
GDBPatternMatchingExpressionsTest_6_8.class,
|
GDBPatternMatchingExpressionsTest_6_8.class,
|
||||||
MIMemoryTest_6_8.class,
|
MIMemoryTest_6_8.class,
|
||||||
MIBreakpointsTest_6_8.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_6_8.class,
|
MICatchpointsTest_6_8.class,
|
||||||
MIDisassemblyTest_6_8.class,
|
MIDisassemblyTest_6_8.class,
|
||||||
GDBProcessesTest_6_8.class,
|
GDBProcessesTest_6_8.class,
|
||||||
|
|
|
@ -1,35 +0,0 @@
|
||||||
/*******************************************************************************
|
|
||||||
* Copyright (c) 2009, 2012 Ericsson and others.
|
|
||||||
* All rights reserved. This program and the accompanying materials
|
|
||||||
* are made available under the terms of the Eclipse Public License v1.0
|
|
||||||
* which accompanies this distribution, and is available at
|
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
|
||||||
*
|
|
||||||
* Contributors:
|
|
||||||
* Ericsson - Initial Implementation
|
|
||||||
*******************************************************************************/
|
|
||||||
package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_0;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BackgroundRunner;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_6_8.MIBreakpointsTest_6_8;
|
|
||||||
import org.junit.Test;
|
|
||||||
import org.junit.runner.RunWith;
|
|
||||||
|
|
||||||
@RunWith(BackgroundRunner.class)
|
|
||||||
public class MIBreakpointsTest_7_0 extends MIBreakpointsTest_6_8 {
|
|
||||||
@Override
|
|
||||||
protected void setGdbVersion() {
|
|
||||||
setGdbProgramNamesLaunchAttributes(ITestConstants.SUFFIX_GDB_7_0);
|
|
||||||
}
|
|
||||||
|
|
||||||
// GDB 6.8 has a bug that ignores watchpoint conditions,which makes this
|
|
||||||
// test fail. We therefore ignore this test for GDB 6.8 only, but run it
|
|
||||||
// for all other versions, so the code below re-enables the test starting
|
|
||||||
// with GDB 7.0.
|
|
||||||
@Override
|
|
||||||
@Test
|
|
||||||
public void breakpointHit_watchpointUpdateCondition() throws Throwable {
|
|
||||||
super.breakpointHit_watchpointUpdateCondition();
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -15,6 +15,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_0;
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -39,7 +40,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_0.class,
|
MIExpressionsNonStopTest_7_0.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_0.class,
|
GDBPatternMatchingExpressionsTest_7_0.class,
|
||||||
MIMemoryTest_7_0.class,
|
MIMemoryTest_7_0.class,
|
||||||
MIBreakpointsTest_7_0.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_0.class,
|
MICatchpointsTest_7_0.class,
|
||||||
MIDisassemblyTest_7_0.class,
|
MIDisassemblyTest_7_0.class,
|
||||||
GDBProcessesTest_7_0.class,
|
GDBProcessesTest_7_0.class,
|
||||||
|
|
|
@ -16,6 +16,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_0;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -41,7 +42,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_0.class,
|
MIExpressionsNonStopTest_7_0.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_0.class,
|
GDBPatternMatchingExpressionsTest_7_0.class,
|
||||||
MIMemoryTest_7_0.class,
|
MIMemoryTest_7_0.class,
|
||||||
MIBreakpointsTest_7_0.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_0.class,
|
MICatchpointsTest_7_0.class,
|
||||||
MIDisassemblyTest_7_0.class,
|
MIDisassemblyTest_7_0.class,
|
||||||
GDBProcessesTest_7_0.class,
|
GDBProcessesTest_7_0.class,
|
||||||
|
|
|
@ -1,24 +0,0 @@
|
||||||
/*******************************************************************************
|
|
||||||
* Copyright (c) 2010, 2012 Ericsson and others.
|
|
||||||
* All rights reserved. This program and the accompanying materials
|
|
||||||
* are made available under the terms of the Eclipse Public License v1.0
|
|
||||||
* which accompanies this distribution, and is available at
|
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
|
||||||
*
|
|
||||||
* Contributors:
|
|
||||||
* Ericsson - Initial Implementation
|
|
||||||
*******************************************************************************/
|
|
||||||
package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_1;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BackgroundRunner;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_0.MIBreakpointsTest_7_0;
|
|
||||||
import org.junit.runner.RunWith;
|
|
||||||
|
|
||||||
@RunWith(BackgroundRunner.class)
|
|
||||||
public class MIBreakpointsTest_7_1 extends MIBreakpointsTest_7_0 {
|
|
||||||
@Override
|
|
||||||
protected void setGdbVersion() {
|
|
||||||
setGdbProgramNamesLaunchAttributes(ITestConstants.SUFFIX_GDB_7_1);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -15,6 +15,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_1;
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -39,7 +40,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_1.class,
|
MIExpressionsNonStopTest_7_1.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_1.class,
|
GDBPatternMatchingExpressionsTest_7_1.class,
|
||||||
MIMemoryTest_7_1.class,
|
MIMemoryTest_7_1.class,
|
||||||
MIBreakpointsTest_7_1.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_1.class,
|
MICatchpointsTest_7_1.class,
|
||||||
MIDisassemblyTest_7_1.class,
|
MIDisassemblyTest_7_1.class,
|
||||||
GDBProcessesTest_7_1.class,
|
GDBProcessesTest_7_1.class,
|
||||||
|
|
|
@ -16,6 +16,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_1;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -41,7 +42,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_1.class,
|
MIExpressionsNonStopTest_7_1.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_1.class,
|
GDBPatternMatchingExpressionsTest_7_1.class,
|
||||||
MIMemoryTest_7_1.class,
|
MIMemoryTest_7_1.class,
|
||||||
MIBreakpointsTest_7_1.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_1.class,
|
MICatchpointsTest_7_1.class,
|
||||||
MIDisassemblyTest_7_1.class,
|
MIDisassemblyTest_7_1.class,
|
||||||
GDBProcessesTest_7_1.class,
|
GDBProcessesTest_7_1.class,
|
||||||
|
|
|
@ -1,24 +0,0 @@
|
||||||
/*******************************************************************************
|
|
||||||
* Copyright (c) 2015 Ericsson and others.
|
|
||||||
* All rights reserved. This program and the accompanying materials
|
|
||||||
* are made available under the terms of the Eclipse Public License v1.0
|
|
||||||
* which accompanies this distribution, and is available at
|
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
|
||||||
*
|
|
||||||
* Contributors:
|
|
||||||
* Marc Khouzam (Ericsson) - Initial implementation of Test cases
|
|
||||||
*******************************************************************************/
|
|
||||||
package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_10;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BackgroundRunner;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_9.MIBreakpointsTest_7_9;
|
|
||||||
import org.junit.runner.RunWith;
|
|
||||||
|
|
||||||
@RunWith(BackgroundRunner.class)
|
|
||||||
public class MIBreakpointsTest_7_10 extends MIBreakpointsTest_7_9 {
|
|
||||||
@Override
|
|
||||||
protected void setGdbVersion() {
|
|
||||||
setGdbProgramNamesLaunchAttributes(ITestConstants.SUFFIX_GDB_7_10);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -14,6 +14,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_10;
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -38,7 +39,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_10.class,
|
MIExpressionsNonStopTest_7_10.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_10.class,
|
GDBPatternMatchingExpressionsTest_7_10.class,
|
||||||
MIMemoryTest_7_10.class,
|
MIMemoryTest_7_10.class,
|
||||||
MIBreakpointsTest_7_10.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_10.class,
|
MICatchpointsTest_7_10.class,
|
||||||
MIDisassemblyTest_7_10.class,
|
MIDisassemblyTest_7_10.class,
|
||||||
GDBProcessesTest_7_10.class,
|
GDBProcessesTest_7_10.class,
|
||||||
|
|
|
@ -15,6 +15,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_10;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -41,7 +42,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_10.class,
|
MIExpressionsNonStopTest_7_10.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_10.class,
|
GDBPatternMatchingExpressionsTest_7_10.class,
|
||||||
MIMemoryTest_7_10.class,
|
MIMemoryTest_7_10.class,
|
||||||
MIBreakpointsTest_7_10.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_10.class,
|
MICatchpointsTest_7_10.class,
|
||||||
MIDisassemblyTest_7_10.class,
|
MIDisassemblyTest_7_10.class,
|
||||||
GDBProcessesTest_7_10.class,
|
GDBProcessesTest_7_10.class,
|
||||||
|
|
|
@ -1,21 +0,0 @@
|
||||||
/*******************************************************************************
|
|
||||||
* Copyright (c) 2015 Ericsson and others.
|
|
||||||
* All rights reserved. This program and the accompanying materials
|
|
||||||
* are made available under the terms of the Eclipse Public License v1.0
|
|
||||||
* which accompanies this distribution, and is available at
|
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
|
||||||
*******************************************************************************/
|
|
||||||
package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BackgroundRunner;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_10.MIBreakpointsTest_7_10;
|
|
||||||
import org.junit.runner.RunWith;
|
|
||||||
|
|
||||||
@RunWith(BackgroundRunner.class)
|
|
||||||
public class MIBreakpointsTest_7_11 extends MIBreakpointsTest_7_10 {
|
|
||||||
@Override
|
|
||||||
protected void setGdbVersion() {
|
|
||||||
setGdbProgramNamesLaunchAttributes(ITestConstants.SUFFIX_GDB_7_11);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -9,6 +9,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11;
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -33,7 +34,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_11.class,
|
MIExpressionsNonStopTest_7_11.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_11.class,
|
GDBPatternMatchingExpressionsTest_7_11.class,
|
||||||
MIMemoryTest_7_11.class,
|
MIMemoryTest_7_11.class,
|
||||||
MIBreakpointsTest_7_11.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_11.class,
|
MICatchpointsTest_7_11.class,
|
||||||
MIDisassemblyTest_7_11.class,
|
MIDisassemblyTest_7_11.class,
|
||||||
GDBProcessesTest_7_11.class,
|
GDBProcessesTest_7_11.class,
|
||||||
|
|
|
@ -10,6 +10,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_11;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -36,7 +37,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_11.class,
|
MIExpressionsNonStopTest_7_11.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_11.class,
|
GDBPatternMatchingExpressionsTest_7_11.class,
|
||||||
MIMemoryTest_7_11.class,
|
MIMemoryTest_7_11.class,
|
||||||
MIBreakpointsTest_7_11.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_11.class,
|
MICatchpointsTest_7_11.class,
|
||||||
MIDisassemblyTest_7_11.class,
|
MIDisassemblyTest_7_11.class,
|
||||||
GDBProcessesTest_7_11.class,
|
GDBProcessesTest_7_11.class,
|
||||||
|
|
|
@ -1,24 +0,0 @@
|
||||||
/*******************************************************************************
|
|
||||||
* Copyright (c) 2010, 2012 Ericsson and others.
|
|
||||||
* All rights reserved. This program and the accompanying materials
|
|
||||||
* are made available under the terms of the Eclipse Public License v1.0
|
|
||||||
* which accompanies this distribution, and is available at
|
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
|
||||||
*
|
|
||||||
* Contributors:
|
|
||||||
* Ericsson - Initial Implementation
|
|
||||||
*******************************************************************************/
|
|
||||||
package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_2;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BackgroundRunner;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_1.MIBreakpointsTest_7_1;
|
|
||||||
import org.junit.runner.RunWith;
|
|
||||||
|
|
||||||
@RunWith(BackgroundRunner.class)
|
|
||||||
public class MIBreakpointsTest_7_2 extends MIBreakpointsTest_7_1 {
|
|
||||||
@Override
|
|
||||||
protected void setGdbVersion() {
|
|
||||||
setGdbProgramNamesLaunchAttributes(ITestConstants.SUFFIX_GDB_7_2);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -15,6 +15,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_2;
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -39,7 +40,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_2.class,
|
MIExpressionsNonStopTest_7_2.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_2.class,
|
GDBPatternMatchingExpressionsTest_7_2.class,
|
||||||
MIMemoryTest_7_2.class,
|
MIMemoryTest_7_2.class,
|
||||||
MIBreakpointsTest_7_2.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_2.class,
|
MICatchpointsTest_7_2.class,
|
||||||
MIDisassemblyTest_7_2.class,
|
MIDisassemblyTest_7_2.class,
|
||||||
GDBProcessesTest_7_2.class,
|
GDBProcessesTest_7_2.class,
|
||||||
|
|
|
@ -16,6 +16,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_2;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -41,7 +42,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_2.class,
|
MIExpressionsNonStopTest_7_2.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_2.class,
|
GDBPatternMatchingExpressionsTest_7_2.class,
|
||||||
MIMemoryTest_7_2.class,
|
MIMemoryTest_7_2.class,
|
||||||
MIBreakpointsTest_7_2.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_2.class,
|
MICatchpointsTest_7_2.class,
|
||||||
MIDisassemblyTest_7_2.class,
|
MIDisassemblyTest_7_2.class,
|
||||||
GDBProcessesTest_7_2.class,
|
GDBProcessesTest_7_2.class,
|
||||||
|
|
|
@ -1,24 +0,0 @@
|
||||||
/*******************************************************************************
|
|
||||||
* Copyright (c) 2011, 2012 Ericsson and others.
|
|
||||||
* All rights reserved. This program and the accompanying materials
|
|
||||||
* are made available under the terms of the Eclipse Public License v1.0
|
|
||||||
* which accompanies this distribution, and is available at
|
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
|
||||||
*
|
|
||||||
* Contributors:
|
|
||||||
* Ericsson - Initial Implementation
|
|
||||||
*******************************************************************************/
|
|
||||||
package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_3;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BackgroundRunner;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_2.MIBreakpointsTest_7_2;
|
|
||||||
import org.junit.runner.RunWith;
|
|
||||||
|
|
||||||
@RunWith(BackgroundRunner.class)
|
|
||||||
public class MIBreakpointsTest_7_3 extends MIBreakpointsTest_7_2 {
|
|
||||||
@Override
|
|
||||||
protected void setGdbVersion() {
|
|
||||||
setGdbProgramNamesLaunchAttributes(ITestConstants.SUFFIX_GDB_7_3);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -15,6 +15,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_3;
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -39,7 +40,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_3.class,
|
MIExpressionsNonStopTest_7_3.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_3.class,
|
GDBPatternMatchingExpressionsTest_7_3.class,
|
||||||
MIMemoryTest_7_3.class,
|
MIMemoryTest_7_3.class,
|
||||||
MIBreakpointsTest_7_3.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_3.class,
|
MICatchpointsTest_7_3.class,
|
||||||
MIDisassemblyTest_7_3.class,
|
MIDisassemblyTest_7_3.class,
|
||||||
GDBProcessesTest_7_3.class,
|
GDBProcessesTest_7_3.class,
|
||||||
|
|
|
@ -16,6 +16,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_3;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -41,7 +42,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_3.class,
|
MIExpressionsNonStopTest_7_3.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_3.class,
|
GDBPatternMatchingExpressionsTest_7_3.class,
|
||||||
MIMemoryTest_7_3.class,
|
MIMemoryTest_7_3.class,
|
||||||
MIBreakpointsTest_7_3.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_3.class,
|
MICatchpointsTest_7_3.class,
|
||||||
MIDisassemblyTest_7_3.class,
|
MIDisassemblyTest_7_3.class,
|
||||||
GDBProcessesTest_7_3.class,
|
GDBProcessesTest_7_3.class,
|
||||||
|
|
|
@ -1,75 +0,0 @@
|
||||||
/*******************************************************************************
|
|
||||||
* Copyright (c) 2012, 2015 Ericsson and others.
|
|
||||||
* All rights reserved. This program and the accompanying materials
|
|
||||||
* are made available under the terms of the Eclipse Public License v1.0
|
|
||||||
* which accompanies this distribution, and is available at
|
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
|
||||||
*
|
|
||||||
* Contributors:
|
|
||||||
* Marc Khouzam (Ericsson) - Initial implementation of Test cases
|
|
||||||
*******************************************************************************/
|
|
||||||
package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_4;
|
|
||||||
|
|
||||||
import static org.junit.Assert.assertTrue;
|
|
||||||
|
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.dsf.debug.service.IBreakpoints.IBreakpointDMContext;
|
|
||||||
import org.eclipse.cdt.dsf.mi.service.MIBreakpointDMData;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BackgroundRunner;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_3.MIBreakpointsTest_7_3;
|
|
||||||
import org.junit.Test;
|
|
||||||
import org.junit.runner.RunWith;
|
|
||||||
|
|
||||||
@RunWith(BackgroundRunner.class)
|
|
||||||
public class MIBreakpointsTest_7_4 extends MIBreakpointsTest_7_3 {
|
|
||||||
@Override
|
|
||||||
protected void setGdbVersion() {
|
|
||||||
setGdbProgramNamesLaunchAttributes(ITestConstants.SUFFIX_GDB_7_4);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Starting with GDB 7.4, breakpoints at invalid lines succeed and become
|
|
||||||
* pending breakpoints. This is because the invalid line for one file,
|
|
||||||
* may be valid for another file with the same name.
|
|
||||||
* One could argue that line 0 is an exception, but GDB does not make
|
|
||||||
* a difference.
|
|
||||||
* @see org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest#insertBreakpoint_InvalidLineNumber()
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
@Test
|
|
||||||
public void insertBreakpoint_InvalidLineNumber() throws Throwable {
|
|
||||||
|
|
||||||
// Create a line breakpoint
|
|
||||||
Map<String, Object> breakpoint = new HashMap<String, Object>();
|
|
||||||
breakpoint.put(BREAKPOINT_TYPE_TAG, BREAKPOINT_TAG);
|
|
||||||
breakpoint.put(FILE_NAME_TAG, SOURCE_NAME);
|
|
||||||
breakpoint.put(LINE_NUMBER_TAG, 0);
|
|
||||||
|
|
||||||
// Perform the test
|
|
||||||
IBreakpointDMContext ref = insertBreakpoint(fBreakpointsDmc, breakpoint);
|
|
||||||
assertTrue(fWait.getMessage(), fWait.isOK());
|
|
||||||
|
|
||||||
// Ensure that no BreakpointEvent was received
|
|
||||||
assertTrue("BreakpointEvent problem: expected " + 1 + " BREAKPOINT event(s), received "
|
|
||||||
+ fBreakpointEventCount, fBreakpointEventCount == 1);
|
|
||||||
|
|
||||||
MIBreakpointDMData bpData = (MIBreakpointDMData) getBreakpoint(ref);
|
|
||||||
assertTrue("Breakpoint should be pending", bpData.isPending());
|
|
||||||
assertTrue("Breakpoint mismatch should be enabled", bpData.isEnabled());
|
|
||||||
}
|
|
||||||
|
|
||||||
// Re-enabled this test since it needs breakpoint synchronization
|
|
||||||
// with the gdb console, which is available starting with GDB 7.4
|
|
||||||
// We still leave the test in the base class MIBreakpointsTest because
|
|
||||||
// the test could be written differently and made to work for older
|
|
||||||
// gdb versions
|
|
||||||
@Override
|
|
||||||
@Test
|
|
||||||
public void updateBreakpoint_AfterRestart() throws Throwable {
|
|
||||||
super.updateBreakpoint_AfterRestart();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -15,6 +15,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_4;
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -39,7 +40,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_4.class,
|
MIExpressionsNonStopTest_7_4.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_4.class,
|
GDBPatternMatchingExpressionsTest_7_4.class,
|
||||||
MIMemoryTest_7_4.class,
|
MIMemoryTest_7_4.class,
|
||||||
MIBreakpointsTest_7_4.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_4.class,
|
MICatchpointsTest_7_4.class,
|
||||||
MIDisassemblyTest_7_4.class,
|
MIDisassemblyTest_7_4.class,
|
||||||
GDBProcessesTest_7_4.class,
|
GDBProcessesTest_7_4.class,
|
||||||
|
|
|
@ -16,6 +16,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_4;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -41,7 +42,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_4.class,
|
MIExpressionsNonStopTest_7_4.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_4.class,
|
GDBPatternMatchingExpressionsTest_7_4.class,
|
||||||
MIMemoryTest_7_4.class,
|
MIMemoryTest_7_4.class,
|
||||||
MIBreakpointsTest_7_4.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_4.class,
|
MICatchpointsTest_7_4.class,
|
||||||
MIDisassemblyTest_7_4.class,
|
MIDisassemblyTest_7_4.class,
|
||||||
GDBProcessesTest_7_4.class,
|
GDBProcessesTest_7_4.class,
|
||||||
|
|
|
@ -1,24 +0,0 @@
|
||||||
/*******************************************************************************
|
|
||||||
* Copyright (c) 2012 Ericsson and others.
|
|
||||||
* All rights reserved. This program and the accompanying materials
|
|
||||||
* are made available under the terms of the Eclipse Public License v1.0
|
|
||||||
* which accompanies this distribution, and is available at
|
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
|
||||||
*
|
|
||||||
* Contributors:
|
|
||||||
* Marc Khouzam (Ericsson) - Initial implementation of Test cases
|
|
||||||
*******************************************************************************/
|
|
||||||
package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_5;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BackgroundRunner;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_4.MIBreakpointsTest_7_4;
|
|
||||||
import org.junit.runner.RunWith;
|
|
||||||
|
|
||||||
@RunWith(BackgroundRunner.class)
|
|
||||||
public class MIBreakpointsTest_7_5 extends MIBreakpointsTest_7_4 {
|
|
||||||
@Override
|
|
||||||
protected void setGdbVersion() {
|
|
||||||
setGdbProgramNamesLaunchAttributes(ITestConstants.SUFFIX_GDB_7_5);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -15,6 +15,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_5;
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -40,7 +41,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_5.class,
|
MIExpressionsNonStopTest_7_5.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_5.class,
|
GDBPatternMatchingExpressionsTest_7_5.class,
|
||||||
MIMemoryTest_7_5.class,
|
MIMemoryTest_7_5.class,
|
||||||
MIBreakpointsTest_7_5.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_5.class,
|
MICatchpointsTest_7_5.class,
|
||||||
MIDisassemblyTest_7_5.class,
|
MIDisassemblyTest_7_5.class,
|
||||||
GDBProcessesTest_7_5.class,
|
GDBProcessesTest_7_5.class,
|
||||||
|
|
|
@ -16,6 +16,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_5;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -41,7 +42,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_5.class,
|
MIExpressionsNonStopTest_7_5.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_5.class,
|
GDBPatternMatchingExpressionsTest_7_5.class,
|
||||||
MIMemoryTest_7_5.class,
|
MIMemoryTest_7_5.class,
|
||||||
MIBreakpointsTest_7_5.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_5.class,
|
MICatchpointsTest_7_5.class,
|
||||||
MIDisassemblyTest_7_5.class,
|
MIDisassemblyTest_7_5.class,
|
||||||
GDBProcessesTest_7_5.class,
|
GDBProcessesTest_7_5.class,
|
||||||
|
|
|
@ -1,24 +0,0 @@
|
||||||
/*******************************************************************************
|
|
||||||
* Copyright (c) 2012, 2013 Ericsson and others.
|
|
||||||
* All rights reserved. This program and the accompanying materials
|
|
||||||
* are made available under the terms of the Eclipse Public License v1.0
|
|
||||||
* which accompanies this distribution, and is available at
|
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
|
||||||
*
|
|
||||||
* Contributors:
|
|
||||||
* Marc Khouzam (Ericsson) - Initial implementation of Test cases
|
|
||||||
*******************************************************************************/
|
|
||||||
package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_6;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BackgroundRunner;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_5.MIBreakpointsTest_7_5;
|
|
||||||
import org.junit.runner.RunWith;
|
|
||||||
|
|
||||||
@RunWith(BackgroundRunner.class)
|
|
||||||
public class MIBreakpointsTest_7_6 extends MIBreakpointsTest_7_5 {
|
|
||||||
@Override
|
|
||||||
protected void setGdbVersion() {
|
|
||||||
setGdbProgramNamesLaunchAttributes(ITestConstants.SUFFIX_GDB_7_6);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -15,6 +15,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_6;
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -39,7 +40,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_6.class,
|
MIExpressionsNonStopTest_7_6.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_6.class,
|
GDBPatternMatchingExpressionsTest_7_6.class,
|
||||||
MIMemoryTest_7_6.class,
|
MIMemoryTest_7_6.class,
|
||||||
MIBreakpointsTest_7_6.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_6.class,
|
MICatchpointsTest_7_6.class,
|
||||||
MIDisassemblyTest_7_6.class,
|
MIDisassemblyTest_7_6.class,
|
||||||
GDBProcessesTest_7_6.class,
|
GDBProcessesTest_7_6.class,
|
||||||
|
|
|
@ -16,6 +16,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_6;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -42,7 +43,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_6.class,
|
MIExpressionsNonStopTest_7_6.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_6.class,
|
GDBPatternMatchingExpressionsTest_7_6.class,
|
||||||
MIMemoryTest_7_6.class,
|
MIMemoryTest_7_6.class,
|
||||||
MIBreakpointsTest_7_6.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_6.class,
|
MICatchpointsTest_7_6.class,
|
||||||
MIDisassemblyTest_7_6.class,
|
MIDisassemblyTest_7_6.class,
|
||||||
GDBProcessesTest_7_6.class,
|
GDBProcessesTest_7_6.class,
|
||||||
|
|
|
@ -1,24 +0,0 @@
|
||||||
/*******************************************************************************
|
|
||||||
* Copyright (c) 2014 Ericsson and others.
|
|
||||||
* All rights reserved. This program and the accompanying materials
|
|
||||||
* are made available under the terms of the Eclipse Public License v1.0
|
|
||||||
* which accompanies this distribution, and is available at
|
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
|
||||||
*
|
|
||||||
* Contributors:
|
|
||||||
* Marc Khouzam (Ericsson) - Initial implementation of Test cases
|
|
||||||
*******************************************************************************/
|
|
||||||
package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_7;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BackgroundRunner;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_6.MIBreakpointsTest_7_6;
|
|
||||||
import org.junit.runner.RunWith;
|
|
||||||
|
|
||||||
@RunWith(BackgroundRunner.class)
|
|
||||||
public class MIBreakpointsTest_7_7 extends MIBreakpointsTest_7_6 {
|
|
||||||
@Override
|
|
||||||
protected void setGdbVersion() {
|
|
||||||
setGdbProgramNamesLaunchAttributes(ITestConstants.SUFFIX_GDB_7_7);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -15,6 +15,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_7;
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -39,7 +40,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_7.class,
|
MIExpressionsNonStopTest_7_7.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_7.class,
|
GDBPatternMatchingExpressionsTest_7_7.class,
|
||||||
MIMemoryTest_7_7.class,
|
MIMemoryTest_7_7.class,
|
||||||
MIBreakpointsTest_7_7.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_7.class,
|
MICatchpointsTest_7_7.class,
|
||||||
MIDisassemblyTest_7_7.class,
|
MIDisassemblyTest_7_7.class,
|
||||||
GDBProcessesTest_7_7.class,
|
GDBProcessesTest_7_7.class,
|
||||||
|
|
|
@ -16,6 +16,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_7;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -42,7 +43,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_7.class,
|
MIExpressionsNonStopTest_7_7.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_7.class,
|
GDBPatternMatchingExpressionsTest_7_7.class,
|
||||||
MIMemoryTest_7_7.class,
|
MIMemoryTest_7_7.class,
|
||||||
MIBreakpointsTest_7_7.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_7.class,
|
MICatchpointsTest_7_7.class,
|
||||||
MIDisassemblyTest_7_7.class,
|
MIDisassemblyTest_7_7.class,
|
||||||
GDBProcessesTest_7_7.class,
|
GDBProcessesTest_7_7.class,
|
||||||
|
|
|
@ -1,24 +0,0 @@
|
||||||
/*******************************************************************************
|
|
||||||
* Copyright (c) 2014 Ericsson and others.
|
|
||||||
* All rights reserved. This program and the accompanying materials
|
|
||||||
* are made available under the terms of the Eclipse Public License v1.0
|
|
||||||
* which accompanies this distribution, and is available at
|
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
|
||||||
*
|
|
||||||
* Contributors:
|
|
||||||
* Marc Khouzam (Ericsson) - Initial implementation of Test cases
|
|
||||||
*******************************************************************************/
|
|
||||||
package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_8;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BackgroundRunner;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_7.MIBreakpointsTest_7_7;
|
|
||||||
import org.junit.runner.RunWith;
|
|
||||||
|
|
||||||
@RunWith(BackgroundRunner.class)
|
|
||||||
public class MIBreakpointsTest_7_8 extends MIBreakpointsTest_7_7 {
|
|
||||||
@Override
|
|
||||||
protected void setGdbVersion() {
|
|
||||||
setGdbProgramNamesLaunchAttributes(ITestConstants.SUFFIX_GDB_7_8);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -15,6 +15,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_8;
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -39,7 +40,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_8.class,
|
MIExpressionsNonStopTest_7_8.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_8.class,
|
GDBPatternMatchingExpressionsTest_7_8.class,
|
||||||
MIMemoryTest_7_8.class,
|
MIMemoryTest_7_8.class,
|
||||||
MIBreakpointsTest_7_8.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_8.class,
|
MICatchpointsTest_7_8.class,
|
||||||
MIDisassemblyTest_7_8.class,
|
MIDisassemblyTest_7_8.class,
|
||||||
GDBProcessesTest_7_8.class,
|
GDBProcessesTest_7_8.class,
|
||||||
|
|
|
@ -16,6 +16,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_8;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -42,7 +43,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_8.class,
|
MIExpressionsNonStopTest_7_8.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_8.class,
|
GDBPatternMatchingExpressionsTest_7_8.class,
|
||||||
MIMemoryTest_7_8.class,
|
MIMemoryTest_7_8.class,
|
||||||
MIBreakpointsTest_7_8.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_8.class,
|
MICatchpointsTest_7_8.class,
|
||||||
MIDisassemblyTest_7_8.class,
|
MIDisassemblyTest_7_8.class,
|
||||||
GDBProcessesTest_7_8.class,
|
GDBProcessesTest_7_8.class,
|
||||||
|
|
|
@ -1,24 +0,0 @@
|
||||||
/*******************************************************************************
|
|
||||||
* Copyright (c) 2014 Ericsson and others.
|
|
||||||
* All rights reserved. This program and the accompanying materials
|
|
||||||
* are made available under the terms of the Eclipse Public License v1.0
|
|
||||||
* which accompanies this distribution, and is available at
|
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
|
||||||
*
|
|
||||||
* Contributors:
|
|
||||||
* Marc Khouzam (Ericsson) - Initial implementation of Test cases
|
|
||||||
*******************************************************************************/
|
|
||||||
package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_9;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BackgroundRunner;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_8.MIBreakpointsTest_7_8;
|
|
||||||
import org.junit.runner.RunWith;
|
|
||||||
|
|
||||||
@RunWith(BackgroundRunner.class)
|
|
||||||
public class MIBreakpointsTest_7_9 extends MIBreakpointsTest_7_8 {
|
|
||||||
@Override
|
|
||||||
protected void setGdbVersion() {
|
|
||||||
setGdbProgramNamesLaunchAttributes(ITestConstants.SUFFIX_GDB_7_9);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -14,6 +14,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_9;
|
||||||
|
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -38,7 +39,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_9.class,
|
MIExpressionsNonStopTest_7_9.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_9.class,
|
GDBPatternMatchingExpressionsTest_7_9.class,
|
||||||
MIMemoryTest_7_9.class,
|
MIMemoryTest_7_9.class,
|
||||||
MIBreakpointsTest_7_9.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_9.class,
|
MICatchpointsTest_7_9.class,
|
||||||
MIDisassemblyTest_7_9.class,
|
MIDisassemblyTest_7_9.class,
|
||||||
GDBProcessesTest_7_9.class,
|
GDBProcessesTest_7_9.class,
|
||||||
|
|
|
@ -15,6 +15,7 @@ package org.eclipse.cdt.tests.dsf.gdb.tests.tests_7_9;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseRemoteSuite;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
import org.eclipse.cdt.tests.dsf.gdb.framework.BaseTestCase;
|
||||||
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
import org.eclipse.cdt.tests.dsf.gdb.tests.ITestConstants;
|
||||||
|
import org.eclipse.cdt.tests.dsf.gdb.tests.MIBreakpointsTest;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.junit.runners.Suite;
|
import org.junit.runners.Suite;
|
||||||
|
@ -41,7 +42,7 @@ import org.junit.runners.Suite;
|
||||||
MIExpressionsNonStopTest_7_9.class,
|
MIExpressionsNonStopTest_7_9.class,
|
||||||
GDBPatternMatchingExpressionsTest_7_9.class,
|
GDBPatternMatchingExpressionsTest_7_9.class,
|
||||||
MIMemoryTest_7_9.class,
|
MIMemoryTest_7_9.class,
|
||||||
MIBreakpointsTest_7_9.class,
|
MIBreakpointsTest.class,
|
||||||
MICatchpointsTest_7_9.class,
|
MICatchpointsTest_7_9.class,
|
||||||
MIDisassemblyTest_7_9.class,
|
MIDisassemblyTest_7_9.class,
|
||||||
GDBProcessesTest_7_9.class,
|
GDBProcessesTest_7_9.class,
|
||||||
|
|
Loading…
Add table
Reference in a new issue