#!/bin/sh

test_description='test handling of --alternate-refs traversal'
. ./test-lib.sh

# Avoid test_commit because we want a specific and known set of refs:
#
#  base -- one
#      \      \
#       two -- merged
#
# where "one" and "two" are on separate refs, and "merged" is available only in
# the dependent child repository.
test_expect_success 'set up local refs' '
	git checkout -b one &&
	test_tick &&
	git commit --allow-empty -m base &&
	test_tick &&
	git commit --allow-empty -m one &&
	git checkout -b two HEAD^ &&
	test_tick &&
	git commit --allow-empty -m two
'

# We'll enter the child repository after it's set up since that's where
# all of the subsequent tests will want to run (and it's easy to forget a
# "-C child" and get nonsense results).
test_expect_success 'set up shared clone' '
	git clone -s . child &&
	cd child &&
	git merge origin/one
'

test_expect_success 'rev-list --alternate-refs' '
	git rev-list --remotes=origin >expect &&
	git rev-list --alternate-refs >actual &&
	test_cmp expect actual
'

test_expect_success 'rev-list --not --alternate-refs' '
	git rev-parse HEAD >expect &&
	git rev-list HEAD --not --alternate-refs >actual &&
	test_cmp expect actual
'

test_expect_success 'limiting with alternateRefsPrefixes' '
	test_config core.alternateRefsPrefixes refs/heads/one &&
	git rev-list origin/one >expect &&
	git rev-list --alternate-refs >actual &&
	test_cmp expect actual
'

test_expect_success 'log --source shows .alternate marker' '
	git log --oneline --source --remotes=origin >expect.orig &&
	sed "s/origin.* /.alternate /" <expect.orig >expect &&
	git log --oneline --source --alternate-refs >actual &&
	test_cmp expect actual
'

test_done
