1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-08-31 20:23:26 +02:00
Commit graph

377 commits

Author SHA1 Message Date
Jonah Graham
03b701c9a5 Bug 494246: prepare command line arguments properly for Windows GDB
Includes splitting out and expanding CommandLineArgsTest
from LaunchConfigurationAndRestartTest.

Change-Id: I19fa97a847d908c1c780ca767cf688f26a51d684
Signed-off-by: Jonah Graham <jonah@kichwacoders.com>
2016-11-15 16:59:57 -04:00
Marc Khouzam
334777eb6e Update version to 9.2.0
Change-Id: I36ad4218b20b8ea70584c89f5be45c757bf4c714
2016-11-14 23:50:05 -05:00
Marc Dumais
dc6e3a06ff bug 498782 - [debug] synchronize selection between the DV and GDB
This adds a new service, GDBFocusSynchronizer, that helps keep the
internal GDB selection and the Debug View selection synchronized.

Change-Id: I021b3f65d61e82f6971bdb9232369b6fdf58ea5b
2016-11-10 11:35:27 -05:00
Alvaro Sanchez-Leon
ce2b583716 Update dsf-gdb test suite to run GDB 7.12
Change-Id: I6a870b443d667b0ecb393c338c826200dcff0cff
2016-10-12 08:37:49 -04:00
Alvaro Sanchez-Leon
bd2fc5fc6a Adding GDB 7.12 to the download-build-gdb.sh script
Change-Id: Iac977f0ab83429cc931f413664c7789bb9c9e913
2016-10-11 10:15:59 -04:00
Alvaro Sanchez-Leon
c19640498d Bug 499784 - A lot of timeouts in dsf-gdb tests are too optimistic
The bug mentioned above mentions a couple of problems,
1) The use of TestsPlugin.massageTimeout() is not used consistently in
tests.dsf.gdb
2) The timout values are too optimistic

This first change addresses item 1.

Change-Id: I99162bbfaa099bbc4123594fbda51f8e11be9d10
2016-09-21 14:59:24 -04:00
Marc Khouzam
cd559dafaf Update version to 9.1.0
This commit used the script releng/scripts/ChangeFeaturesVersion.sh

Change-Id: I8274a6e8dd5c0f1e450f07952e138b265a441a62
2016-08-17 10:11:57 -04:00
Jonah Graham
d8a3896101 Bug 498882: Add test for UI deadlock on terminating multiple launches
This is the test for bug 494650.

If the test fails it leaves the JVM unterminated so the whole test run
timesout.

Change-Id: I4e50acde1654995efcf0f723d6552b68af177503
Signed-off-by: Jonah Graham <jonah@kichwacoders.com>
2016-07-30 07:43:03 +01:00
Jonah Graham
4289aa7b0d Bug 494650: Refactor BaseTestCase to allow multiple launches per test
Bug 494650 has an issues when multiple launches are terminated, at
present the test infrastructure makes it very difficult to launch
multiple launches within one test. This commit refactors the base test
case to enable launching additional tests with doLaunchInner.

Change-Id: I501edf4e485c304b0a00c18f1d5e3813011a0491
Signed-off-by: Jonah Graham <jonah@kichwacoders.com>
2016-07-28 13:30:03 -04:00
Alvaro Sanchez-Leon
39007977fa Adding GDB 7.11.1 to the download-build-gdb.sh script
Change-Id: Ic22f35bb5bac2c3ac1fb394073b168d48259f4f6
2016-06-01 15:54:26 -04:00
Alex Blewitt
2356a29c70 Bug 492200 - Replace StringBuffer with StringBuilder
There are many opportunities for replacing `StringBuffer` with
`StringBuilder` provided that the type isn't visible from the
public API and is used only in internal methods. Replace these
where appropriate.

Change-Id: Ic2f50c5b6f3c3a4eae301bb3b40fb6faed235f79
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
2016-04-21 22:17:03 -05:00
Alex Blewitt
2114f6b108 Bug 491984 - Replace .equals("") with .isEmpty()
In many cases a String's empty status is tested with `.equals("")`.
However, Java 1.6 added `.isEmpty()` which can be more efficient since
it compares the internal length parameter only for testing. Replace
code using the `.isEmpty()` variant instead.

Some tests for `"".equals(expr)` can be replaced with `expr.isEmpty()`
where it is already known that the `expr` is not null; however,
these have to be reviewed on a case-by-case basis.

Change-Id: I3c6af4d8b7638e757435914ac76cb3a67899a5fd
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
2016-04-19 13:35:54 -04:00
Alex Blewitt
fc07efa909 Bug 491825 - Remove primitive wrapper creation
Using `new Integer` and other wrapper types such as `new Character` results in
potential extra heap utilisation as the values are not cached. The built-in
`Integer.valueOf` will perform caching on numbers in the range -128..127 (at
least) using a flyweight pattern. In addition, parsing `int` values can be done
with `Integer.parseInt` which avoids object construction.

Adjust tests such as `"true".equals(expr)` to `Boolean.parseBoolean(expr)`.

Change-Id: I0408a5c69afc4ca6ede71acaf6cc4abd67538006
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
2016-04-16 12:17:48 -04:00
Jonah Graham
6f249f12c1 Bug 472765: Restore test comments post refactoring
During the testsuite refactoring that significantly improved the DSF
suite (Commit 528de33113) some info
was lost from the code. This resurrects those comments.

Change-Id: I0a11dee2dcabb0800306880fc7c6217374bc337a
Signed-off-by: Jonah Graham <jonah@kichwacoders.com>
2016-04-13 11:41:28 -04:00
Marc Khouzam
f9d3a184aa Replace hard-coded versions with constants
Change-Id: I8653157bd1d351eb07f58b4b404edfdaaa0e756e
2016-04-07 15:44:44 -04:00
Marc Khouzam
ddf2dea0aa Provide Supported and Unsupported lists of GDB versions
Allow to easily run only Supported or Unsupported tests

Only run Supported versions in test suites

Change-Id: I0d628c8aea28dad77df7943b8b1ee18df5bb6bcf
2016-04-07 15:40:26 -04:00
Marc Khouzam
9781f7bfa8 Don't require gdbserver to be present for local tests to pass
The TraceFileTest.java file has three tests which depend on each other.
Inter-dependency between tests is not good.  This commit removes it.

Change-Id: Id910a5cea741c85959679e4b0a6981f603f19d13
2016-03-22 16:16:11 -04:00
Alvaro Sanchez-Leon
ba6eb9e0f0 Bug 489777 - [API] Replace thread id type from int to String
in preparation for the introduction of thread groups syntax in GDB,
thread id needs to be handled as a String.

Change-Id: I379a92de9755ba0532265519ee70d1e199de811b
2016-03-19 21:03:51 -04:00
Jonah Graham
a56abb4783 Bug 472765: use Strings for backend path in Map Entries
Preserve the user supplied backend path as a string so that it matches
what GDB (backend) later reports as a file name to resolve.

Condensed history:

Traditionally in source mapping container, the backend path was stored
as an IPath and that was used to compare against the debug information
being returned by GDB. This worked well when the platform compiled for
matched the platform run on, but when there was Windows/Linux together
that did not work. So as part of Bug 393791 a workaround was done to try
and use hand crafted MapEntrySourceContainer.createPath() instead of
Path constructor to preserve some of the differences. This solution had
its limitations too as UNC paths still could not be represented, See
open Bug 386675.

Change-Id: I4c8f62114a2c6019dc9d07ce446ac424be8b230c
Signed-off-by: Jonah Graham <jonah@kichwacoders.com>
2016-03-19 19:44:19 -04:00
Marc Dumais
c0109d378d Bug 489683 - Change the breakpoint "number" from an int to a String
Change-Id: I33a8ca95f6894c360c95260433945cdf1b529bc3
2016-03-18 22:21:21 -05:00
Alena Laskavaia
1cb7faae95 Support -Dcdt.tests.dsf.gdb.versions=all for gdb tests
Change-Id: I7b0921f3dfc41e75f2f32b270712c0eda7fc96a4
2016-03-18 22:31:20 -04:00
Jonah Graham
25023542e8 Fix version range check in SourceLookupTest
Change-Id: Ief38312449c67073c6a6503f27807b455fa4066c
Signed-off-by: Jonah Graham <jonah@kichwacoders.com>
2016-03-18 22:30:33 -04:00
Alena Laskavaia
528de33113 Flattening rest of gdb tests
this commit removes and merges rest of gdb tests in favor of using
parametrized tests

Change-Id: I352545c2ea3d76154c8079f8efa9aa5d4a3e0032
2016-03-18 09:39:45 -04:00
Marc Khouzam
e977bb4953 Bug 472765: Add extra sourceLookup test
Change-Id: I98c11a2f4e231d6bc0e0bb53ea1e0b3465c9a976
2016-03-18 06:30:41 -04:00
Alena Laskavaia
6aefe76491 gdb catchpoints registers tests cleanup
Change-Id: Ibea6071b9b8e07f63508e177fabf8e60da5c0a08
2016-03-17 09:24:39 -04:00
Jonah Graham
6283890715 Bug 472765: Use gdb's "set substitute-path from to"
Add support for gdb's "set substitute-path from to" by adding a new
service called GDBSourceLookup that uses GDB to perform the path
mapping.

The new GDBSourceLookup service uses the new GdbSourceLookupDirector to
get the set of paths that need mapping using GDB's "set
substitute-path" and the director resolves compilation path differently
so as to leave the GDB backend to handle the local path to compile path
resolution.

The MappingSourceContainer has been enhanced to allow a per mapping
container override of the new behaviour. This is a fallback as the
default behaviour when using GDB is to use "set substitute-path".

The MappingSourceContainerDialog exposes the new option in
MappingSourceContainer as a checkbox at the bottom of the path mapping
dialog in a backend agnostic way.

The new code is tested in methods called "sourceSubstitute*" and
mirror the same tests for the now non-backend handled version
which are "sourceMapping*". Note that
doMappingAndLaunch/doSubstituteAndLaunch have been updated to explicitly
check or uncheck the setIsMappingWithBackendEnabled setting

Change-Id: I122d7c597cd461d8e38c4f82522ccfdf9e51a5ba
Signed-off-by: Jonah Graham <jonah@kichwacoders.com>
2016-03-16 22:30:51 -04:00
Alena Laskavaia
b3f03996de 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
2016-03-16 16:51:17 -04:00
Alena Laskavaia
76c4c117c4 adding repeater to some intermittent tests
Change-Id: Idd1610e9c753951a974e336a65441b752e667e00
2016-03-15 14:32:01 -04:00
Alena Laskavaia
2cf32973cc InterimittentRule generic junit rule
Change-Id: I375ed04cb6c44f6c923d048523c008b28883700d
2016-03-14 09:32:00 -04:00
Marc Khouzam
39f31d42a3 Remove unnecessary setting of GDB version for non-stop tests.
Non-stop tests inherit from their all-stop counterpart which already
sets the GDB version.

Change-Id: I7444372971a9a74536745279fddac32842c46c03
2016-02-25 11:18:23 -05:00
Marc Khouzam
79e0972413 Add Inferior exit code test
Simple test to verify that the exit code of a process is properly set
for the console to read.

Change-Id: Ib7dca7a86732ad119dd57bb2681120d4a6222e5c
2016-02-25 09:09:25 -05:00
Marc Khouzam
c28c12b353 Create DSF-GDB tests for GDB 7.11
Change-Id: Ib46fc78a9f9167c21898b925b7fe9f614adea289
2016-02-25 09:06:43 -05:00
Marc Khouzam
8c0ea6af0b Update script for GDB 7.11
Change-Id: Ia127aadc5fdf0989b7ac4f213c3596da141a2e79
2016-02-24 16:14:51 -05:00
Jonah Graham
84d92dce1f Bug 472765: Fix occasional exception during test
There was a race condition between commandTimedOutDuringSession
finishing and the next test starting that checked for unterminated
launches (in BaseTestCase removeTeminatedLaunchesBeforeTest).

While commandTimedOutDuringSession did wait for the shutdown to be
received (ICommandControlShutdownDMEvent), that can happen a few ms
before the launch is fully terminated (fLaunch.isTerminated() == true)

Change-Id: Ib4e6655938f6b0e3ab3ce89fd06528f1b72ee04d
Signed-off-by: Jonah Graham <jonah@kichwacoders.com>
2016-02-24 13:19:42 -05:00
Marc Dumais
8ab12fa4e2 Bug 487762 - [tests] MIRegistersTests # frameSpecificValues() - fix
platform-dependent failure

Change-Id: I7bfe1b952ac97615f93ee63770f33b66a5cb9d3e
2016-02-15 10:01:41 -05:00
Marc Khouzam
2ad68f7f80 Update copyright dates
Change-Id: I94ac38c37657e270f62db9bbd2859c2c6de40e5f
2016-02-11 01:50:14 -05:00
Marc-Andre Laperle
cc71fc2723 dsf-gdb: Disable non-stop tests for targets that do not support it
Change-Id: I4430ba20a56551e4d4de57d8849790761967995a
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
2016-02-08 17:21:29 -05:00
Marc Khouzam
766f66c0ab Missing copyright header.
Copyright assigned to company of the committer
who did the first commit of the file.

Change-Id: Ia133694018c798f9558258810982f5276737a0b0
2016-02-01 12:47:41 -05:00
Jonah Graham
6d5d0be628 Bug 472765: change from easymock to mockito
Due to improvements in target platform in 12843ef it is now possible to
use mockito instead of easymock. This commit does that switch.

Note because of Bug 334540 we need to explicitly require the org.hamcrest
bundle so that it resolves. From the bug, Matthias Sohn says in Comment 1:
"I would just use Require-Bundle to get around this."

Change-Id: Ib49a767c826aa04f4daf1de0bf1b25a4f8ae07ba
Signed-off-by: Jonah Graham <jonah@kichwacoders.com>
2016-01-19 09:56:09 -05:00
Marc Khouzam
b745736775 Incremented CDT features version to 9.0.0
This includes bumping the standalone debugger to 9.0.0

Change-Id: I55fae1cec995b5f6865a5b174c004ed1b76e9bea
2016-01-18 16:37:47 -05:00
Jonah Graham
28b1830acf Bug 484911: Clean up source directors
Includes:
- CSourceLookupParticipant only did one useful thing (For DSF). When the
object being looked up is a String, as is the case when disassembly
view/editor is doing a lookup, the CSourceLookupParticipant would be the
one to do the resolution. Updated
DsfSourceLookupParticipant.getSourceName to be able to handle a String
- Changed super of DsfSourceLookupParticipant to
AbstractSourceLookupParticipant, saves duplicate code, and adds comment
about what is different about findSourceElements
- a previously missing test for an unusual case (no containers)
- Some of these methods that are only part of CDI have been
marked as such for eventual removal in Bug 484900

Change-Id: I9954b4469e9db9cb46eb117f3beba9e01634689b
Signed-off-by: Jonah Graham <jonah@kichwacoders.com>
2016-01-17 10:11:41 -05:00
Jonah Graham
cedcf7655b Bug 472765: more complete tests for source path mapping
Add some more tests for source path mappings to ensure that the upcoming
change of using gdb's set substitute-path does not regress any issues.

Change-Id: I9067c8859293c3332439679cb1f663e36a4cc34e
Signed-off-by: Jonah Graham <jonah@kichwacoders.com>
2016-01-06 12:46:20 -05:00
Marc Khouzam
f3ff649041 Fix copyright of all CDT plugins using the copyright tool from platform.
This commit does not add missing copyrights, just updates the date on
the existing ones.

Change-Id: I646f5afd533a1fcc539bdf2e0686b22f406ecf65
2016-01-03 20:38:31 -05:00
Marc Khouzam
5892f19747 Update GDB download script for 7.10.1
Also fix a bug where the script was
not ready for a two digit version.

Change-Id: Idd3322c46806705e33898a47c79d3ec3c9fc1685
2015-12-14 07:13:30 -05:00
Sergey Grant
8360f715eb Bug 474648 - Wrong arguments are passed to a program in debug mode
Change-Id: Ie9ab74e0142c10ad43891febf910e2fb49b2ec61
Signed-off-by: Sergey Grant <sergey.grant@me.com>
2015-12-03 14:43:31 -08:00
Marc Khouzam
ca2070f258 Modify properties to make them easier to use.
Also standardize properties names

Change-Id: I4b25f879d8c0b3b1e74b9590905b1a4b0cfe02ca
2015-10-30 13:45:23 -04:00
Marc-Andre Laperle
8b01ed9b2c Add dsf.gdb.tests.timeout.multiplier property to pom.xml
This allows specifying the multiplier on the command line and pass
it along to the tests.

Change-Id: I35cb764a6494a0eb98e5e2205a47522935c2b206
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
2015-10-26 15:43:10 -04:00
Jonah Graham
cc2099c4a0 Bug 478803 and Bug 478805: add tests for source lookup
Change-Id: If47f62a46164e4098e663f1eef1a0a8640a84009
Signed-off-by: Jonah Graham <jonah@kichwacoders.com>
2015-10-01 22:31:39 +01:00
Marc Khouzam
15935286c0 Replace hack to obtain full path
We can obtain the full path of the executable using
File#getAbsolutePath().  This is much better than the hack that was
actually doing a launch to ask GDB where the binary was.

I cannot explain why I didn't use this in the original implementation.

Change-Id: Ifa0d538919cd0c231547f1f3e9c4b72837df4257
2015-09-25 12:59:20 -04:00
Simon Marchi
74e4b6d504 Fix MIMemoryTest.java:asynchronousReadWrite for architectures with fWordSize > 1
Commit 84a53f8d80 broke this test for an
architecture with fWordSize == 2.  The buffer for writing a word went from
length fWordSize to 1, and the expected buffer size of a read as well.
This commit fixes it.

Change-Id: Ie50766031fc7dd8d480f126abc48a6dfd487b9e5
Signed-off-by: Simon Marchi <simon.marchi@polymtl.ca>
2015-09-16 09:44:01 -04:00