t / t9805-skip-submit-edit.shon commit Merge branch 'jc/pull-signed-tag' (eb8aa3d)
   1#!/bin/sh
   2
   3test_description='git-p4 skipSubmitEdit config variables'
   4
   5. ./lib-git-p4.sh
   6
   7test_expect_success 'start p4d' '
   8        start_p4d
   9'
  10
  11test_expect_success 'init depot' '
  12        (
  13                cd "$cli" &&
  14                echo file1 >file1 &&
  15                p4 add file1 &&
  16                p4 submit -d "change 1"
  17        )
  18'
  19
  20# this works because EDITOR is set to :
  21test_expect_success 'no config, unedited, say yes' '
  22        "$GITP4" clone --dest="$git" //depot &&
  23        test_when_finished cleanup_git &&
  24        (
  25                cd "$git" &&
  26                echo line >>file1 &&
  27                git commit -a -m "change 2" &&
  28                echo y | "$GITP4" submit &&
  29                p4 changes //depot/... >wc &&
  30                test_line_count = 2 wc
  31        )
  32'
  33
  34test_expect_success 'no config, unedited, say no' '
  35        "$GITP4" clone --dest="$git" //depot &&
  36        test_when_finished cleanup_git &&
  37        (
  38                cd "$git" &&
  39                echo line >>file1 &&
  40                git commit -a -m "change 3 (not really)" &&
  41                printf "bad response\nn\n" | "$GITP4" submit
  42                p4 changes //depot/... >wc &&
  43                test_line_count = 2 wc
  44        )
  45'
  46
  47test_expect_success 'skipSubmitEdit' '
  48        "$GITP4" clone --dest="$git" //depot &&
  49        test_when_finished cleanup_git &&
  50        (
  51                cd "$git" &&
  52                git config git-p4.skipSubmitEdit true &&
  53                # will fail if editor is even invoked
  54                git config core.editor /bin/false &&
  55                echo line >>file1 &&
  56                git commit -a -m "change 3" &&
  57                "$GITP4" submit &&
  58                p4 changes //depot/... >wc &&
  59                test_line_count = 3 wc
  60        )
  61'
  62
  63test_expect_success 'skipSubmitEditCheck' '
  64        "$GITP4" clone --dest="$git" //depot &&
  65        test_when_finished cleanup_git &&
  66        (
  67                cd "$git" &&
  68                git config git-p4.skipSubmitEditCheck true &&
  69                echo line >>file1 &&
  70                git commit -a -m "change 4" &&
  71                "$GITP4" submit &&
  72                p4 changes //depot/... >wc &&
  73                test_line_count = 4 wc
  74        )
  75'
  76
  77
  78test_expect_success 'kill p4d' '
  79        kill_p4d
  80'
  81
  82test_done