diff options
author | Petr Rockai <prockai@redhat.com> | 2014-10-01 11:28:15 +0200 |
---|---|---|
committer | Petr Rockai <prockai@redhat.com> | 2015-02-05 13:51:06 +0100 |
commit | d8983d4bd4c76381c8bd9149c942b83cd8d013b4 (patch) | |
tree | f7502ddcbbba9e6d2fc1d2c30ca84cbc3aa487bb | |
parent | c96e42006d3bbbcc21cf952c96bf1fc7b15f1bd0 (diff) | |
download | lvm2-d8983d4bd4c76381c8bd9149c942b83cd8d013b4.tar.gz |
test: Properly detect warnings from testcases.
-rw-r--r-- | test/lib/brick-shelltest.h | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/test/lib/brick-shelltest.h b/test/lib/brick-shelltest.h index 71194cfc3..7a2b8f0db 100644 --- a/test/lib/brick-shelltest.h +++ b/test/lib/brick-shelltest.h @@ -543,8 +543,22 @@ struct KMsg : Source { }; struct Observer : Sink { - Observer() {} - void push( std::string ) {} + TimedBuffer stream; + + bool warnings; + Observer() : warnings( false ) {} + + void push( std::string s ) { + stream.push( s ); + } + + void sync( bool force ) { + while ( !stream.empty( force ) ) { + TimedBuffer::Line line = stream.shift( force ); + if ( line.second.find( "TEST WARNING" ) != std::string::npos ) + warnings = true; + } + } }; struct IO : Sink { @@ -850,6 +864,9 @@ struct TestCase { else r = Journal::FAILED; + if ( r == Journal::PASSED && io.observer().warnings ) + r = Journal::WARNED; + io.close(); if ( iobuf && ( r == Journal::FAILED || r == Journal::TIMEOUT ) ) |