ARM port of testsuite and general testsuite fixes

Quentin Barnes qbarnes@urbana.css.mot.com
Wed Jun 6 21:35:00 GMT 2007


>Well, you've improved things, but you're still missing the "Pass 4" 
>output line.

That's because of another bug in the expect script.  (I've fixed a
dozen of these bugs now so I'm rather disappointed with myself that
I missed this one until now.)

Patched attached.  With the patch, systemtap.base/cache.exp passes
all 18 tests just fine now.  I had to bump the timeout up too.
I added a "timeout" condition to be complete.


As an aside, any reason that spaces are escaped in these regular
expressions?  I didn't change it in this patch, but why are the
regular expressions written like this:
  -re {^Pass\ [1234]:[^\r]*\ in\ [^\r]*\ ms\.\r\n} {exp_continue}
  -re {^Pass\ [34]: using cached [^\r\n]+\r\n} {incr cached 1; exp_continue}

And not like this?:
  -re {^Pass [1234]:[^\r]* in [^\r]* ms\.\r\n} {exp_continue}
  -re {^Pass [34]: using cached [^\r\n]+\r\n}  {incr cached 1; exp_continue}
 
Quentin


Index: systemtap.base/cache.exp
===================================================================
--- systemtap.base/cache.exp	(revision 211)
+++ systemtap.base/cache.exp	(working copy)
@@ -27,12 +27,14 @@
     set cached 0
     set compile_errors 0
     expect {
-	-re {^Pass\ [1234]:[^\r]*\ in\ .*\ ms\.\r\n} {exp_continue}
+	-timeout 90
+	-re {^Pass\ [1234]:[^\r]*\ in\ [^\r]*\ ms\.\r\n} {exp_continue}
 	-re {^Pass\ [34]: using cached [^\r\n]+\r\n} {incr cached 1; exp_continue}
         # pass-4 output
 	-re {^/[^\r\n]+\.ko\r\n} {exp_continue}
 	-re "compilation failed" {incr compile_errors 1; exp_continue}
 	-re "semantic error:" {incr compile_errors 1; exp_continue}
+	timeout { fail "$test (timeout)" }
     }
     catch close
     wait



More information about the Systemtap mailing list