aboutsummaryrefslogtreecommitdiff
path: root/test-checkout.sh
diff options
context:
space:
mode:
Diffstat (limited to 'test-checkout.sh')
-rwxr-xr-xtest-checkout.sh28
1 files changed, 18 insertions, 10 deletions
diff --git a/test-checkout.sh b/test-checkout.sh
index fb6876e..7ac901b 100755
--- a/test-checkout.sh
+++ b/test-checkout.sh
@@ -358,6 +358,22 @@ do_test()
fi
}
+scan_for_skip_tag()
+{
+ local start=$1
+ local end=$2
+ local regexp=$3
+ local i
+
+ for i in $(git -C "$ABE_PATH" rev-list "$start..$end"); do
+ if git -C "$ABE_PATH" show --format=%B --no-patch "$i" | grep -q "$regexp"; then
+ echo true
+ return
+ fi
+ done
+ echo false
+}
+
NUM_FAIL=0
NUM_PASS=0
NUM_TESTS=0
@@ -383,16 +399,8 @@ mkdir -p "$PREV_TEST_SNAPSHOTS"
# do tests for comparison of manifests with previous version.
for configs in gcc4_9 gcc5 gcc6 gcc7; do
CONFDIR=$ABE_PATH/config/$configs
- if git -C "$ABE_PATH" show --format=%B --no-patch | grep -q "^\[ABE_PREV_MANIFEST_\(${configs^^}\|ALL\)\]"; then
- SKIP_PREV_MANI=true
- else
- SKIP_PREV_MANI=false
- fi
- if git -C "$ABE_PATH" show --format=%B --no-patch | grep -q "^\[ABE_PREV_CMD_\(${configs^^}\|ALL\)\]"; then
- SKIP_PREV_CMD=true
- else
- SKIP_PREV_CMD=false
- fi
+ SKIP_PREV_MANI=$(scan_for_skip_tag "$PREV_ABE_REVISION" HEAD "\[ABE_PREV_MANIFEST_\(${configs^^}\|ALL\)\]")
+ SKIP_PREV_CMD=$(scan_for_skip_tag "$PREV_ABE_REVISION" HEAD "\[ABE_PREV_CMD_\(${configs^^}\|ALL\)\]")
do_test previous_abe_manifest_$configs test_previous_abe_manifest "$SKIP_PREV_MANI" --extraconfigdir "$CONFDIR" --snapshots "$PREV_TEST_SNAPSHOTS"
do_test previous_abe_cmd_line_$configs test_previous_abe_cmd_line "$SKIP_PREV_CMD" --extraconfigdir "$CONFDIR" --snapshots "$PREV_TEST_SNAPSHOTS"
done