changeset 5331:3c5bcb8ecf3a stable

packaging: move check-compat-strings.sh to tests/testlib/ Since we're not including contrib/ in pip packages, this test failed when trying to run not from evolve repo.
author Anton Shestakov <av6@dwimlabs.net>
date Thu, 21 May 2020 09:51:24 +0800
parents a6e2bb90db24
children e9d187e87678 f4d991ac2cd6
files contrib/check-compat-strings.sh tests/test-check-compat-strings.t tests/testlib/check-compat-strings.sh
diffstat 3 files changed, 33 insertions(+), 33 deletions(-) [+]
line wrap: on
line diff
--- a/contrib/check-compat-strings.sh	Sat May 16 16:44:29 2020 +0800
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-#!/usr/bin/env bash
-set -euo pipefail
-
-unset GREP_OPTIONS
-
-# This script finds compatibility-related comments with a node hash specified
-# in all files in a given directory (. by default) and looks up the hash in a
-# repo (~/hg by default) to determine if each of the comments is correct and,
-# if not, it suggests the correct release. This can prevent accidentally
-# removing a piece of code that was misattributed to a different (earlier)
-# release of core hg.
-
-# Usage: $0 WDIR HGREPO where WDIR is usually evolve/hgext3rd/ and HGREPO is
-# the place with core Mercurial repo (not just checkout). Said repo has to be
-# sufficiently up-to-date, otherwise this script may not work correctly.
-
-workdir=${1:-'.'}
-hgdir=${2:-~/hg}
-grep -Ern 'hg <= [0-9.]+ \([0-9a-f+]+\)' "$workdir" | while read -r line; do
-    bashre='hg <= ([0-9.]+) \(([0-9a-f+]+)\)'
-    if [[ $line =~ $bashre ]]; then
-        expected=${BASH_REMATCH[1]}
-        revset=${BASH_REMATCH[2]}
-        tagrevset="max(tag('re:^[0-9]\\.[0-9]$') - ($revset)::)"
-        lastrel=$(HGPLAIN=1 hg --cwd "$hgdir" log -r "$tagrevset" -T '{tags}')
-        if [[ "$lastrel" != "$expected" ]]; then
-            echo "$line"
-            echo "actual last major release without $revset is $lastrel"
-            echo
-        fi
-    fi
-done
--- a/tests/test-check-compat-strings.t	Sat May 16 16:44:29 2020 +0800
+++ b/tests/test-check-compat-strings.t	Thu May 21 09:51:24 2020 +0800
@@ -5,4 +5,4 @@
   > evolution = all
   > EOF
 
-  $ $TESTDIR/../contrib/check-compat-strings.sh "$TESTDIR/../hgext3rd/" "$RUNTESTDIR/.."
+  $ $TESTDIR/testlib/check-compat-strings.sh "$TESTDIR/../hgext3rd/" "$RUNTESTDIR/.."
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/testlib/check-compat-strings.sh	Thu May 21 09:51:24 2020 +0800
@@ -0,0 +1,32 @@
+#!/usr/bin/env bash
+set -euo pipefail
+
+unset GREP_OPTIONS
+
+# This script finds compatibility-related comments with a node hash specified
+# in all files in a given directory (. by default) and looks up the hash in a
+# repo (~/hg by default) to determine if each of the comments is correct and,
+# if not, it suggests the correct release. This can prevent accidentally
+# removing a piece of code that was misattributed to a different (earlier)
+# release of core hg.
+
+# Usage: $0 WDIR HGREPO where WDIR is usually evolve/hgext3rd/ and HGREPO is
+# the place with core Mercurial repo (not just checkout). Said repo has to be
+# sufficiently up-to-date, otherwise this script may not work correctly.
+
+workdir=${1:-'.'}
+hgdir=${2:-~/hg}
+grep -Ern 'hg <= [0-9.]+ \([0-9a-f+]+\)' "$workdir" | while read -r line; do
+    bashre='hg <= ([0-9.]+) \(([0-9a-f+]+)\)'
+    if [[ $line =~ $bashre ]]; then
+        expected=${BASH_REMATCH[1]}
+        revset=${BASH_REMATCH[2]}
+        tagrevset="max(tag('re:^[0-9]\\.[0-9]$') - ($revset)::)"
+        lastrel=$(HGPLAIN=1 hg --cwd "$hgdir" log -r "$tagrevset" -T '{tags}')
+        if [[ "$lastrel" != "$expected" ]]; then
+            echo "$line"
+            echo "actual last major release without $revset is $lastrel"
+            echo
+        fi
+    fi
+done