summaryrefslogtreecommitdiff
path: root/.config/zsh/plugins/zsh-syntax-highlighting/tests/tap-filter
diff options
context:
space:
mode:
Diffstat (limited to '.config/zsh/plugins/zsh-syntax-highlighting/tests/tap-filter')
-rwxr-xr-x.config/zsh/plugins/zsh-syntax-highlighting/tests/tap-filter47
1 files changed, 47 insertions, 0 deletions
diff --git a/.config/zsh/plugins/zsh-syntax-highlighting/tests/tap-filter b/.config/zsh/plugins/zsh-syntax-highlighting/tests/tap-filter
new file mode 100755
index 0000000..f9aa604
--- /dev/null
+++ b/.config/zsh/plugins/zsh-syntax-highlighting/tests/tap-filter
@@ -0,0 +1,47 @@
+#!/usr/bin/env perl
+# -------------------------------------------------------------------------------------------------
+# Copyright (c) 2015 zsh-syntax-highlighting contributors
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without modification, are permitted
+# provided that the following conditions are met:
+#
+# * Redistributions of source code must retain the above copyright notice, this list of conditions
+# and the following disclaimer.
+# * Redistributions in binary form must reproduce the above copyright notice, this list of
+# conditions and the following disclaimer in the documentation and/or other materials provided
+# with the distribution.
+# * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors
+# may be used to endorse or promote products derived from this software without specific prior
+# written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
+# FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
+# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
+# IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+# OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# -------------------------------------------------------------------------------------------------
+# vim: ft=perl sw=2 ts=2 et
+# -------------------------------------------------------------------------------------------------
+
+# This is a stdin-to-stdout filter that takes TAP output (such as 'make test')
+# on stdin and deletes lines pertaining to expected results.
+#
+# More specifically, if any of the test points in a test file either failed but
+# was expected to pass, or passed but was expected to fail, then emit that test
+# file's output; else, elide that test file's output.
+
+use v5.10.0;
+use warnings;
+use strict;
+
+undef $/; # slurp mode
+print for
+ grep { /^ok.*# TODO/m or /^not ok(?!.*# TODO)/m or /^Bail out!/m }
+ # Split on plan lines and remove them from the output. (To keep them,
+ # use the lookahead syntax, «(?=…)», to make the match zero-length.)
+ split /^\d+\.\.\d+$/m,
+ <STDIN>;