|
From: <sv...@va...> - 2009-07-24 05:16:47
|
Author: njn
Date: 2009-07-24 06:16:31 +0100 (Fri, 24 Jul 2009)
New Revision: 10573
Log:
In r10465 --time-stamp=yes got slightly broken -- the space between the time
and the PID was removed. This commit adds it back in. It also adds a basic
test that would have detected this regression, and also the breakage in bug
200990.
Added:
trunk/none/tests/filter_timestamp
trunk/none/tests/timestamp.c
trunk/none/tests/timestamp.stderr.exp
trunk/none/tests/timestamp.vgtest
Modified:
trunk/none/tests/Makefile.am
Modified: trunk/none/tests/Makefile.am
===================================================================
--- trunk/none/tests/Makefile.am 2009-07-24 04:47:04 UTC (rev 10572)
+++ trunk/none/tests/Makefile.am 2009-07-24 05:16:31 UTC (rev 10573)
@@ -33,8 +33,12 @@
DIST_SUBDIRS = x86 amd64 ppc32 ppc64 linux darwin x86-linux .
dist_noinst_SCRIPTS = \
- filter_cmdline0 filter_linenos \
- filter_fdleak filter_none_discards filter_stderr
+ filter_cmdline0 \
+ filter_linenos \
+ filter_fdleak \
+ filter_none_discards \
+ filter_stderr \
+ filter_timestamp
noinst_HEADERS = fdleak.h
@@ -131,6 +135,7 @@
threaded-fork.stderr.exp threaded-fork.stdout.exp threaded-fork.vgtest \
threadederrno.stderr.exp threadederrno.stdout.exp \
threadederrno.vgtest \
+ timestamp.stderr.exp timestamp.vgtest \
tls.vgtest tls.stderr.exp tls.stdout.exp \
vgprintf.stderr.exp vgprintf.stdout.exp vgprintf.vgtest
@@ -157,9 +162,15 @@
syscall-restart1 syscall-restart2 \
syslog \
system \
- threaded-fork threadederrno \
- tls tls.so tls2.so vgprintf \
- coolo_sigaction gxx304
+ threaded-fork \
+ threadederrno \
+ timestamp \
+ tls \
+ tls.so \
+ tls2.so \
+ vgprintf \
+ coolo_sigaction \
+ gxx304
# DDD:
# - manythreads and thread-exits have lots of this:
Added: trunk/none/tests/filter_timestamp
===================================================================
--- trunk/none/tests/filter_timestamp (rev 0)
+++ trunk/none/tests/filter_timestamp 2009-07-24 05:16:31 UTC (rev 10573)
@@ -0,0 +1,26 @@
+#! /bin/sh
+
+dir=`dirname $0`
+
+sed "s/^==//" |
+
+perl -p -e "s/ [0-9]{1,7}==//" |
+
+# Have to strip the header ourselves, because the timestamp means the
+# default stripping doesn't work.
+sed "/ Nulgrind.*$/ d" |
+sed "/ Copyright.*$/ d" |
+sed "/ Using Valgrind.*$/ d" |
+
+$dir/filter_stderr |
+
+# At this point there are two lines left which look something like this:
+# 00:00:00:00.000
+# 00:00:00:01.107
+# We replace the last 5 numbers to allow for a wide range of possible times.
+# It's not a great test, but it will catch some breakage (eg. if the times
+# don't start near 0, as happened in bug 200990, or if the space following
+# the time is omitted, as happend in r10465).
+#
+perl -p -e "s/^00:00:00:\d\d\.\d\d\d $/00:00:00:XX:YYY/"
+
Property changes on: trunk/none/tests/filter_timestamp
___________________________________________________________________
Name: svn:executable
+ *
Added: trunk/none/tests/timestamp.c
===================================================================
--- trunk/none/tests/timestamp.c (rev 0)
+++ trunk/none/tests/timestamp.c 2009-07-24 05:16:31 UTC (rev 10573)
@@ -0,0 +1,15 @@
+#include <stdlib.h>
+#include <unistd.h>
+
+int main(void)
+{
+ int y = 0;
+ int* x = calloc(1,sizeof(int));
+ free(x);
+
+ y += x[0];
+ sleep(1);
+ y += x[0];
+
+ return y;
+}
Added: trunk/none/tests/timestamp.stderr.exp
===================================================================
--- trunk/none/tests/timestamp.stderr.exp (rev 0)
+++ trunk/none/tests/timestamp.stderr.exp 2009-07-24 05:16:31 UTC (rev 10573)
@@ -0,0 +1,2 @@
+00:00:00:XX:YYY
+00:00:00:XX:YYY
Added: trunk/none/tests/timestamp.vgtest
===================================================================
--- trunk/none/tests/timestamp.vgtest (rev 0)
+++ trunk/none/tests/timestamp.vgtest 2009-07-24 05:16:31 UTC (rev 10573)
@@ -0,0 +1,3 @@
+prog: timestamp
+vgopts: --time-stamp=yes
+stderr_filter: filter_timestamp
|