]> gitweb.ps.run Git - ps-cgit/blobdiff - tests/setup.sh
git: update to v2.45.0
[ps-cgit] / tests / setup.sh
index 5476cedde9580dcd7d2bdfe3403796ae6e7c0025..8db810ff114f21c0b437c800b69297c0874c6aac 100755 (executable)
@@ -58,6 +58,14 @@ else
        PATH="$(pwd)/../..:$PATH"
 fi
 
+FILTER_DIRECTORY=$(cd ../filters && pwd)
+
+if cgit --version | grep -F -q "[+] Lua scripting"; then
+       export CGIT_HAS_LUA=1
+else
+       export CGIT_HAS_LUA=0
+fi
+
 mkrepo() {
        name=$1
        count=$2
@@ -72,13 +80,17 @@ mkrepo() {
                        git commit -m "commit $n"
                        n=$(expr $n + 1)
                done
-               if test "$3" = "testplus"
-               then
+               case "$3" in
+               testplus)
                        echo "hello" >a+b
                        git add a+b
                        git commit -m "add a+b"
                        git branch "1+2"
-               fi
+                       ;;
+               commit-graph)
+                       git commit-graph write
+                       ;;
+               esac
        )
 }
 
@@ -87,21 +99,23 @@ setup_repos()
        rm -rf cache
        mkdir -p cache
        mkrepo repos/foo 5 >/dev/null
-       mkrepo repos/bar 50 >/dev/null
+       mkrepo repos/bar 50 commit-graph >/dev/null
        mkrepo repos/foo+bar 10 testplus >/dev/null
        mkrepo "repos/with space" 2 >/dev/null
+       mkrepo repos/filter 5 testplus >/dev/null
        cat >cgitrc <<EOF
 virtual-root=/
 cache-root=$PWD/cache
 
 cache-size=1021
-snapshots=tar.gz tar.bz zip
+snapshots=tar.gz tar.bz tar.lz tar.xz tar.zst zip
 enable-log-filecount=1
 enable-log-linecount=1
 summary-log=5
 summary-branches=5
 summary-tags=5
 clone-url=git://example.org/\$CGIT_REPO_URL.git
+enable-filter-overrides=1
 
 repo.url=foo
 repo.path=$PWD/repos/foo/.git
@@ -120,7 +134,29 @@ repo.desc=the foo+bar repo
 repo.url=with space
 repo.path=$PWD/repos/with space/.git
 repo.desc=spaced repo
+
+repo.url=filter-exec
+repo.path=$PWD/repos/filter/.git
+repo.desc=filtered repo
+repo.about-filter=exec:$FILTER_DIRECTORY/dump.sh
+repo.commit-filter=exec:$FILTER_DIRECTORY/dump.sh
+repo.email-filter=exec:$FILTER_DIRECTORY/dump.sh
+repo.source-filter=exec:$FILTER_DIRECTORY/dump.sh
+repo.readme=master:a+b
+EOF
+
+       if [ $CGIT_HAS_LUA -eq 1 ]; then
+               cat >>cgitrc <<EOF
+repo.url=filter-lua
+repo.path=$PWD/repos/filter/.git
+repo.desc=filtered repo
+repo.about-filter=lua:$FILTER_DIRECTORY/dump.lua
+repo.commit-filter=lua:$FILTER_DIRECTORY/dump.lua
+repo.email-filter=lua:$FILTER_DIRECTORY/dump.lua
+repo.source-filter=lua:$FILTER_DIRECTORY/dump.lua
+repo.readme=master:a+b
 EOF
+       fi
 }
 
 cgit_query()
@@ -133,7 +169,7 @@ cgit_url()
        CGIT_CONFIG="$PWD/cgitrc" QUERY_STRING="url=$1" cgit
 }
 
-strip_headers () {
+strip_headers() {
        while read -r line
        do
                test -z "$line" && break