(List (= scope= flags=0 words=[] bindings=[('test_description', {[SQ ]})]) (Com {[LIT_CHARS .]} {[LIT_CHARS ./test-lib.sh]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ sub/foo &&\n"> anothersub/foo\n">]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[DQ [LIT_CHARS "\n"][LIT_CHARS "\tcat >expected <<-EOF &&\n"][LIT_CHARS "\tadd 'anothersub/foo'\n"][LIT_CHARS "\tadd 'expected'\n"][LIT_CHARS "\tadd 'sub/actual'\n"][LIT_CHARS "\tadd 'sub/foo'\n"][LIT_CHARS "\tEOF\n"][LIT_CHARS "\t(cd sub && git add -n :/ >actual) &&\n"][LIT_CHARS "\ttest_cmp expected sub/actual\n"]]} ) (Com {[LIT_CHARS cat]} < (FilenameRedirectNode filename={[LIT_CHARS expected]} "> 1), (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "add 'anothersub/foo'\n"]]} 0), > ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ actual) &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]} ) (Com {[LIT_CHARS cat]} < (FilenameRedirectNode filename={[LIT_CHARS expected]} "> 1), (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "add 'sub/foo'\n"]]} 0), > ) (If (Com {[LIT_CHARS mkdir]} {[DQ [LIT_CHARS ":"]]} < (FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2), > ) (Com {[LIT_CHARS test_set_prereq]} {[LIT_CHARS COLON_DIR]} ) ) (Com {[LIT_CHARS test_expect_success]} {[LIT_CHARS COLON_DIR]} {[SQ ]} {[SQ \":(icase)ha\" &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[LIT_CHARS COLON_DIR]} {[SQ ]} {[SQ \":/bar\" &&\n"> ]} ) (Com {[LIT_CHARS test_done]} ) )