(List (= scope= flags=0 words=[] bindings=[('test_description', {[SQ .\n"> ]})]) (Com {[LIT_CHARS .]} {[LIT_CHARS ./test-lib.sh]} ) (Com {[LIT_CHARS .]} {[DQ [VarSub TEST_DIRECTORY]] [LIT_CHARS /lib-read-tree.sh]} ) (FunctionDef read_tree_twoway [] (AndOr OP_AND_IF (Com {[LIT_CHARS git]} {[LIT_CHARS read-tree]} {[LIT_CHARS -m]} {[DQ [VarSub 1]]} {[DQ [VarSub 2]]} ) (Com {[LIT_CHARS git]} {[LIT_CHARS ls-files]} {[LIT_CHARS --stage]} ) ) ) (FunctionDef compare_change [] (List (Com {[LIT_CHARS sed]} {[LIT_CHARS -n]} {[LIT_CHARS -e]} {[SQ ]} {[LIT_CHARS -e]} {[SQ ] [DQ [VarSub _x40]] [SQ ]} {[DQ [VarSub 1]]} < (FilenameRedirectNode filename={[LIT_CHARS current]} "> 1), > ) (Com {[LIT_CHARS test_cmp]} {[LIT_CHARS expected]} {[LIT_CHARS current]} ) ) ) (FunctionDef check_cache_at [] (List (= scope= flags=0 words=[] bindings=[('clean_if_empty', {[ComSub (Com {[LIT_CHARS git]} {[LIT_CHARS diff-files]} {[LIT_CHARS --]} {[DQ [VarSub 1]]})]})]) (Case to_match={[DQ [VarSub clean_if_empty]]}, pat_word_list=[[{[SQ ]}], [{[LIT_OTHER "?"] [LIT_OTHER "*"]}]] (Com {[LIT_CHARS echo]} {[DQ [VarSub 1][LIT_CHARS ": clean"]]} ) (Com {[LIT_CHARS echo]} {[DQ [VarSub 1][LIT_CHARS ": dirty"]]} ) ) (Case to_match={[DQ [VarSub 2][LIT_CHARS ","][VarSub clean_if_empty]]}, pat_word_list=[[{[LIT_CHARS clean] [LIT_COMMA ","]}], [{[LIT_CHARS clean] [LIT_COMMA ","] [LIT_OTHER "?"] [LIT_OTHER "*"]}], [{[LIT_CHARS dirty] [LIT_COMMA ","]}], [{[LIT_CHARS dirty] [LIT_COMMA ","] [LIT_OTHER "?"] [LIT_OTHER "*"]}]] (Com {[LIT_OTHER ":"]} ) (Com {[LIT_CHARS false]} ) (Com {[LIT_CHARS false]} ) (Com {[LIT_OTHER ":"]} ) ) ) ) (Com {[LIT_CHARS cat]} < (FilenameRedirectNode filename={[LIT_CHARS bozbar-old]} "> 1), (HereDocRedirectNode here_end='EOF' do_expansion=False body_word={[LIT_CHARS "This is a sample file used in two-way fast-forward merge\n"] [LIT_CHARS "tests. Its second line ends with a magic word bozbar\n"] [LIT_CHARS "which will be modified by the merged head to gnusto.\n"] [LIT_CHARS "It has some extra lines so that external tools can\n"] [LIT_CHARS "successfully merge independent changes made to later\n"] [LIT_CHARS "lines (such as this one), avoiding line conflicts.\n"]} 0), > ) (Com {[LIT_CHARS sed]} {[LIT_CHARS -e]} {[SQ ]} {[LIT_CHARS bozbar-old]} < (FilenameRedirectNode filename={[LIT_CHARS bozbar-new]} "> 1), > ) (Com {[LIT_CHARS test_expect_success]} {[LIT_CHARS setup]} {[SQ frotz &&\n"> nitfol &&\n"> bozbar &&\n"> rezrov &&\n"> yomin &&\n"> bozbar &&\n"> M.out &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ 1-3.out &&\n"> ]} ) (Com {[LIT_CHARS echo]} {[SQ ]} < (FilenameRedirectNode filename={[LIT_CHARS expected]} "> 1), > ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ 4.out &&\n"> 4diff.out &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ yomin &&\n"> yomin &&\n"> 5.out &&\n"> 5diff.out &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ 6.out &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ frotz &&\n"> frotz &&\n"> 7.out &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ frotz &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ frotz &&\n"> frotz &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ rezrov &&\n"> 10.out &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ rezrov &&\n"> rezrov &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ rezrov &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ rezrov &&\n"> rezrov &&\n"> ]} ) (Com {[LIT_CHARS cat]} < (FilenameRedirectNode filename={[LIT_CHARS expected]} "> 1), (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "-100644 X 0\tnitfol\n"][LIT_CHARS "+100644 X 0\tnitfol\n"]]} 0), > ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ nitfol &&\n"> 14.out &&\n"> 14diff.out &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ nitfol &&\n"> nitfol &&\n"> 15.out &&\n"> 15diff.out &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ bozbar &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ bozbar &&\n"> bozbar &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ bozbar &&\n"> 18.out &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ bozbar &&\n"> bozbar &&\n"> 19.out &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ bozbar &&\n"> 20.out &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ bozbar &&\n"> bozbar &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ bozbar &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ DF &&\n"> DF/DF &&\n"> DFDF.out">]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ DF &&\n"> DFDFcheck.out &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ a &&\n"> treeM.out &&\n"> a/b &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ a &&\n"> c/d &&\n"> treeM.out &&\n"> a/b &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ treeMcheck.out &&\n"> ]} ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ file-a &&\n"> file-b &&\n"> file-b &&\n"> file-a &&\n"> expect &&\n"> actual &&\n"> ]} ) (Com {[LIT_CHARS test_done]} ) )