#!/usr/bin/perl # SPDX-License-Identifier: GPL-2.0 @regexps = @ARGV; $max_printed_lines = 20; $max_printed_lines = $ENV{TESTLOG_ERR_MSG_MAX_LINES} if (defined $ENV{TESTLOG_ERR_MSG_MAX_LINES}); $quiet = 1; $quiet = 0 if (defined $ENV{TESTLOG_VERBOSITY} && $ENV{TESTLOG_VERBOSITY} ge 2); $passed = 1; $lines_printed = 0; while () { s/\n//; $line_matched = 0; for $r (@regexps) { if (/$r/) { $line_matched = 1; last; } } unless ($line_matched) { if ($lines_printed++ < $max_printed_lines) { print "Line did not match any pattern: \"$_\"\n" unless $quiet; } $passed = 0; } } exit ($passed == 0);