#!/bin/sh test_description='basic branch output coloring' GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME . ./test-lib.sh test_expect_success 'set up some sample branches' ' test_commit foo && git update-ref refs/remotes/origin/main HEAD && git update-ref refs/heads/other HEAD ' # choose non-default colors to make sure config # is taking effect test_expect_success 'set up some color config' ' git config color.branch.local blue && git config color.branch.remote yellow && git config color.branch.current cyan ' test_expect_success 'regular output shows colors' ' cat >expect <<-\EOF && * main other remotes/origin/main EOF git branch --color -a >actual.raw && test_decode_color actual && test_cmp expect actual ' test_expect_success PREPARE_FOR_MAIN_BRANCH 'verbose output shows colors' ' oid=$(git rev-parse --short HEAD) && cat >expect <<-EOF && * main $oid foo other $oid foo remotes/origin/main $oid foo EOF git branch --color -v -a >actual.raw && test_decode_color actual && test_cmp expect actual ' test_done