imap-send: use parse options API to determine verbosity
[gitweb.git] / t / t5541-http-push-smart.sh
index 24926a4a42b57ac81a5784d59433a3f8d1fdb108..d2c681ebfde39fcccef190c3a242dfae9d8af2f2 100755 (executable)
@@ -324,6 +324,21 @@ test_expect_success 'push into half-auth-complete requires password' '
        test_cmp expect actual
 '
 
+run_with_limited_cmdline () {
+       (ulimit -s 128 && "$@")
+}
+
+test_lazy_prereq CMDLINE_LIMIT 'run_with_limited_cmdline true'
+
+test_expect_success CMDLINE_LIMIT 'push 2000 tags over http' '
+       sha1=$(git rev-parse HEAD) &&
+       test_seq 2000 |
+         sort |
+         sed "s|.*|$sha1 refs/tags/really-long-tag-name-&|" \
+         >.git/packed-refs &&
+       run_with_limited_cmdline git push --mirror
+'
+
 test_expect_success GPG 'push with post-receive to inspect certificate' '
        (
                cd "$HTTPD_DOCUMENT_ROOT_PATH"/test_repo.git &&
@@ -340,21 +355,26 @@ test_expect_success GPG 'push with post-receive to inspect certificate' '
                SIGNER=${GIT_PUSH_CERT_SIGNER-nobody}
                KEY=${GIT_PUSH_CERT_KEY-nokey}
                STATUS=${GIT_PUSH_CERT_STATUS-nostatus}
+               NONCE_STATUS=${GIT_PUSH_CERT_NONCE_STATUS-nononcestatus}
+               NONCE=${GIT_PUSH_CERT_NONCE-nononce}
                E_O_F
                EOF
 
-               git config receive.certnonceseed sekrit
+               git config receive.certnonceseed sekrit &&
+               git config receive.certnonceslop 30
        ) &&
        cd "$ROOT_PATH/test_repo_clone" &&
        test_commit cert-test &&
        git push --signed "$HTTPD_URL/smart/test_repo.git" &&
        (
                cd "$HTTPD_DOCUMENT_ROOT_PATH" &&
-               cat <<-\EOF
+               cat <<-\EOF &&
                SIGNER=C O Mitter <committer@example.com>
                KEY=13B6F51ECDDE430D
                STATUS=G
+               NONCE_STATUS=OK
                EOF
+               sed -n -e "s/^nonce /NONCE=/p" -e "/^$/q" push-cert
        ) >expect &&
        test_cmp expect "$HTTPD_DOCUMENT_ROOT_PATH/push-cert-status"
 '