#!/bin/bash

test_description='git rebase - test patch id computation'

. ./test-lib.sh

test_set_prereq NOT_EXPENSIVE
test -n "$GIT_PATCHID_TIMING_TESTS" && test_set_prereq EXPENSIVE
test -x /usr/bin/time && test_set_prereq USR_BIN_TIME

count()
{
	i=0
	while test $i -lt $1
	do
		echo "$i"
		i=$(($i+1))
	done
}

scramble()
{
	i=0
	while read x
	do
		if test $i -ne 0
		then
			echo "$x"
		fi
		i=$(((i+1) % 10))
	done < "$1" > "$1.new"
	mv -f "$1.new" "$1"
}

run()
{
	echo \$ "$@"
	/usr/bin/time "$@" >/dev/null
}

test_expect_success 'setup' '
	git commit --allow-empty -m initial
	git tag root
'

do_tests()
{
	pr=$1
	nlines=$2

	test_expect_success $pr "setup: $nlines lines" "
		rm -f .gitattributes &&
		git checkout -q -f master &&
		git reset --hard root &&
		count $nlines >file &&
		git add file &&
		git commit -q -m initial &&
		git branch -f other &&

		scramble file &&
		git add file &&
		git commit -q -m 'change big file' &&

		git checkout -q other &&
		: >newfile &&
		git add newfile &&
		git commit -q -m 'add small file' &&

		git cherry-pick master >/dev/null 2>&1
	"

	test_debug "
		run git diff master^\!
	"

	test_expect_success $pr 'setup attributes' "
		echo 'file binary' >.gitattributes
	"

	test_debug "
		run git format-patch --stdout master &&
		run git format-patch --stdout --ignore-if-in-upstream master
	"

	test_expect_success $pr 'detect upstream patch' "
		git checkout -q master &&
		scramble file &&
		git add file &&
		git commit -q -m 'change big file again' &&
		git checkout -q other^{} &&
		git rebase master &&
		test_must_fail test -n \"\$(git rev-list master...HEAD~)\"
	"

	test_expect_success $pr 'do not drop patch' "
		git branch -f squashed master &&
		git checkout -q -f squashed &&
		git reset -q --soft HEAD~2 &&
		git commit -q -m squashed &&
		git checkout -q other^{} &&
		test_must_fail git rebase squashed &&
		rm -rf .git/rebase-apply
	"
}

do_tests NOT_EXPENSIVE 500
do_tests EXPENSIVE 50000

test_done
