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>
Allow to easily run only Supported or Unsupported tests
Only run Supported versions in test suites
Change-Id: I0d628c8aea28dad77df7943b8b1ee18df5bb6bcf
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
in preparation for the introduction of thread groups syntax in GDB,
thread id needs to be handled as a String.
Change-Id: I379a92de9755ba0532265519ee70d1e199de811b
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>
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>
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
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>
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>
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>
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>
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>
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
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>
- Fix getModelDataForRegisterDataValueInDifferentNumberFormats failure
Nothing seems to set the register we use to do the test to a particular
value. The value happened to be 0. This broke the octal test, because
it assumes that the result starts with a 0, but has characters after
that 0. This is not true when the result is 0. The fix is to set the
register to a know value beforehand (0x1234).
- Fix compareRegisterForMultipleExecutionContexts for slow targets by
adding missing massageTimeout.
Change-Id: I681acdeb08f8e3c2fdaf8dc9cf60801584da4423
Signed-off-by: Simon Marchi <simon.marchi@polymtl.ca>
With gdbserver 7.5, detaching from a process leaves gdbserver hanging
which prevents the next testcase from running.
We therefore disable the two detach testcases for version 7.5 only.
Note that we cannot simply @ignore the testcases since we want to run
them for the local case, even for version 7.5.
Change-Id: Id4b69420abd1218be5eaf2c54a9f44349283edc2
Signed-off-by: Marc Khouzam <marc.khouzam@ericsson.com>
Instead of modifying the source files of the documentation, it's cleaner
to replace the invocation to makeinfo to invoke "true". This will skip
building of all the docs.
Change-Id: I33a8ba7e1932433de48ab98d6cda3fda0bb09143
Signed-off-by: Simon Marchi <simon.marchi@polymtl.ca>
As a safety net, fail if a line tag is defined more than once.
Also, allow calling resolveLineTagLocations more than once for a single
test.
Change-Id: I0832d3d28c4d688c38fd33dfc668b0ec6b8c4ffa
Signed-off-by: Simon Marchi <simon.marchi@polymtl.ca>
The try/catch doesn't add anything. If getStackTrace throws, the test
will fail and will show the useful stack trace.
Change-Id: Icf453ff2ca6c10a32f264fece0f0db9af8049612
Signed-off-by: Simon Marchi <simon.marchi@polymtl.ca>