Skip two more attach tests when testing against stub-like targets

Message ID 1421263457-21784-1-git-send-email-donb@codesourcery.com
State New, archived
Headers

Commit Message

Don Breazeal Jan. 14, 2015, 7:24 p.m. UTC
  On 1/14/2015 1:40 AM, Pedro Alves wrote:
> Could you make the tests use spawn_wait_for_attach too?

Sure, updated patch below.
--Don

-------------------

This patch updates two attach tests to use utility procs
for checking if the attach test should run and for 
launching the program to be attached, as follows:

1) Use can_spawn_for_attach instead of is_remote target
2) Use spawn_wait_for_attach instead of exec/sleep

Tested (1) with i686-mingw32 host and i686-pc-linux-gnu build/target
and both with x86_64 Ubuntu.


gdb/testsuite/
2015-01-14  Don Breazeal  <donb@codesourcery.com>

	* gdb.base/attach-pie-noexec.exp: Use can_spawn_for_attach
	instead of checking whether the target board is remote and
	use spawn_wait_for_attach instead of exec/sleep.
	* gdb.base/attach-twice.exp: Likewise.

---
 gdb/testsuite/gdb.base/attach-pie-noexec.exp | 9 +++++----
 gdb/testsuite/gdb.base/attach-twice.exp      | 9 +++++----
 2 files changed, 10 insertions(+), 8 deletions(-)
  

Comments

Pedro Alves Jan. 15, 2015, 8:54 a.m. UTC | #1
On 01/14/2015 07:24 PM, Don Breazeal wrote:
> On 1/14/2015 1:40 AM, Pedro Alves wrote:
>> Could you make the tests use spawn_wait_for_attach too?
> 
> Sure, updated patch below.

OK.

Thanks,
Pedro Alves
  
Don Breazeal Jan. 15, 2015, 7:04 p.m. UTC | #2
On 1/15/2015 12:54 AM, Pedro Alves wrote:
> On 01/14/2015 07:24 PM, Don Breazeal wrote:
>> On 1/14/2015 1:40 AM, Pedro Alves wrote:
>>> Could you make the tests use spawn_wait_for_attach too?
>>
>> Sure, updated patch below.
> 
> OK.
> 
> Thanks,
> Pedro Alves
> 
This has been pushed.
Thanks
--Don
  

Patch

diff --git a/gdb/testsuite/gdb.base/attach-pie-noexec.exp b/gdb/testsuite/gdb.base/attach-pie-noexec.exp
index f6aa1c8..30a2f4d 100644
--- a/gdb/testsuite/gdb.base/attach-pie-noexec.exp
+++ b/gdb/testsuite/gdb.base/attach-pie-noexec.exp
@@ -13,8 +13,7 @@ 
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-# Manipulation with PID on target is not supported.
-if [is_remote target] then {
+if {![can_spawn_for_attach]} {
     return 0
 }
 
@@ -53,8 +52,10 @@  if {$arch == ""} {
     return 0
 }
 
-set testpid [eval exec $binfile &]
-exec sleep 2
+# Start the program running and then wait for a bit, to be sure
+# that it can be attached to.
+
+set testpid [spawn_wait_for_attach $binfile]
 
 gdb_start
 file delete -- $binfile
diff --git a/gdb/testsuite/gdb.base/attach-twice.exp b/gdb/testsuite/gdb.base/attach-twice.exp
index 654ceca..f6a9eb6 100644
--- a/gdb/testsuite/gdb.base/attach-twice.exp
+++ b/gdb/testsuite/gdb.base/attach-twice.exp
@@ -13,8 +13,7 @@ 
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-# Manipulation with PID on target is not supported.
-if [is_remote target] then {
+if {![can_spawn_for_attach]} {
     return 0
 }
 
@@ -25,8 +24,10 @@  if { [prepare_for_testing ${testfile}.exp $executable] } {
     return -1
 }
 
-set testpid [eval exec $binfile &]
-exec sleep 2
+# Start the program running and then wait for a bit, to be sure
+# that it can be attached to.
+
+set testpid [spawn_wait_for_attach $binfile]
 
 set parentpid 0