diff options
Diffstat (limited to 'third_party/git/t/gitweb-lib.sh')
-rw-r--r-- | third_party/git/t/gitweb-lib.sh | 123 |
1 files changed, 0 insertions, 123 deletions
diff --git a/third_party/git/t/gitweb-lib.sh b/third_party/git/t/gitweb-lib.sh deleted file mode 100644 index 1f32ca66ea51..000000000000 --- a/third_party/git/t/gitweb-lib.sh +++ /dev/null @@ -1,123 +0,0 @@ -# Initialization and helpers for Gitweb tests, which source this -# shell library instead of test-lib.sh. -# -# Copyright (c) 2007 Jakub Narebski -# - -gitweb_init () { - safe_pwd="$(perl -MPOSIX=getcwd -e 'print quotemeta(getcwd)')" - cat >gitweb_config.perl <<EOF -#!/usr/bin/perl - -# gitweb configuration for tests - -our \$version = 'current'; -our \$GIT = 'git'; -our \$projectroot = "$safe_pwd"; -our \$project_maxdepth = 8; -our \$home_link_str = 'projects'; -our \$site_name = '[localhost]'; -our \$site_html_head_string = ''; -our \$site_header = ''; -our \$site_footer = ''; -our \$home_text = 'indextext.html'; -our @stylesheets = ('file:///$GIT_BUILD_DIR/gitweb/static/gitweb.css'); -our \$logo = 'file:///$GIT_BUILD_DIR/gitweb/static/git-logo.png'; -our \$favicon = 'file:///$GIT_BUILD_DIR/gitweb/static/git-favicon.png'; -our \$projects_list = ''; -our \$export_ok = ''; -our \$strict_export = ''; -our \$maxload = undef; - -EOF - - cat >.git/description <<EOF -$0 test repository -EOF - - # You can set the GITWEB_TEST_INSTALLED environment variable to - # the gitwebdir (the directory where gitweb is installed / deployed to) - # of an existing gitweb installation to test that installation, - # or simply to pathname of installed gitweb script. - if test -n "$GITWEB_TEST_INSTALLED" ; then - if test -d $GITWEB_TEST_INSTALLED; then - SCRIPT_NAME="$GITWEB_TEST_INSTALLED/gitweb.cgi" - else - SCRIPT_NAME="$GITWEB_TEST_INSTALLED" - fi - test -f "$SCRIPT_NAME" || - error "Cannot find gitweb at $GITWEB_TEST_INSTALLED." - say "# Testing $SCRIPT_NAME" - else # normal case, use source version of gitweb - SCRIPT_NAME="$GIT_BUILD_DIR/gitweb/gitweb.perl" - fi - export SCRIPT_NAME -} - -gitweb_run () { - GATEWAY_INTERFACE='CGI/1.1' - HTTP_ACCEPT='*/*' - REQUEST_METHOD='GET' - QUERY_STRING=$1 - PATH_INFO=$2 - REQUEST_URI=/gitweb.cgi$PATH_INFO - export GATEWAY_INTERFACE HTTP_ACCEPT REQUEST_METHOD \ - QUERY_STRING PATH_INFO REQUEST_URI - - GITWEB_CONFIG=$(pwd)/gitweb_config.perl - export GITWEB_CONFIG - - # some of git commands write to STDERR on error, but this is not - # written to web server logs, so we are not interested in that: - # we are interested only in properly formatted errors/warnings - rm -f gitweb.log && - perl -- "$SCRIPT_NAME" \ - >gitweb.output 2>gitweb.log && - perl -w -e ' - open O, ">gitweb.headers"; - while (<>) { - print O; - last if (/^\r$/ || /^$/); - } - open O, ">gitweb.body"; - while (<>) { - print O; - } - close O; - ' gitweb.output && - if grep '^[[]' gitweb.log >/dev/null 2>&1; then - test_debug 'cat gitweb.log >&2' && - false - else - true - fi - - # gitweb.log is left for debugging - # gitweb.output is used to parse HTTP output - # gitweb.headers contains only HTTP headers - # gitweb.body contains body of message, without headers -} - -. ./test-lib.sh - -if ! test_have_prereq PERL; then - skip_all='skipping gitweb tests, perl not available' - test_done -fi - -perl -MEncode -e '$e="";decode_utf8($e, Encode::FB_CROAK)' >/dev/null 2>&1 || { - skip_all='skipping gitweb tests, perl version is too old' - test_done -} - -perl -MCGI -MCGI::Util -MCGI::Carp -e 0 >/dev/null 2>&1 || { - skip_all='skipping gitweb tests, CGI & CGI::Util & CGI::Carp modules not available' - test_done -} - -perl -mTime::HiRes -e 0 >/dev/null 2>&1 || { - skip_all='skipping gitweb tests, Time::HiRes module not available' - test_done -} - -gitweb_init |