(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 file1 &&\n"> dummy &&\n"> ]}) (FunctionDef do_one_mode [] (List (= scope= flags=0 words=[] bindings=[('strategy', {[VarSub 1]})]) (= scope= flags=0 words=[] bindings=[('us', {[VarSub 2]})]) (= scope= flags=0 words=[] bindings=[('them', {[VarSub 3]})]) (Com {[LIT_CHARS test_expect_success]} {[DQ [LIT_CHARS "resolve single mode change ("][VarSub strategy][LIT_CHARS ", "][VarSub us][LIT_CHARS ")"]]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[LIT_CHARS FILEMODE]} {[DQ [LIT_CHARS "verify executable bit on file ("][VarSub strategy][LIT_CHARS ", "][VarSub us][LIT_CHARS ")"]]} {[SQ ]}) ) ) (Com {[LIT_CHARS do_one_mode]} {[LIT_CHARS recursive]} {[LIT_CHARS a1]} {[LIT_CHARS b1]}) (Com {[LIT_CHARS do_one_mode]} {[LIT_CHARS recursive]} {[LIT_CHARS b1]} {[LIT_CHARS a1]}) (Com {[LIT_CHARS do_one_mode]} {[LIT_CHARS resolve]} {[LIT_CHARS a1]} {[LIT_CHARS b1]}) (Com {[LIT_CHARS do_one_mode]} {[LIT_CHARS resolve]} {[LIT_CHARS b1]} {[LIT_CHARS a1]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ file2 &&\n"> file2 &&\n"> expect\n">]}) (FunctionDef do_both_modes [] (List (= scope= flags=0 words=[] bindings=[('strategy', {[VarSub 1]})]) (Com {[LIT_CHARS test_expect_success]} {[DQ [LIT_CHARS "detect conflict on double mode change ("][VarSub strategy][LIT_CHARS ")"]]} {[SQ actual &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[LIT_CHARS FILEMODE]} {[DQ [LIT_CHARS "verify executable bit on file ("][VarSub strategy][LIT_CHARS ")"]]} {[SQ ]}) ) ) (Com {[LIT_CHARS do_both_modes]} {[LIT_CHARS recursive]}) (Com {[LIT_CHARS do_both_modes]} {[LIT_CHARS resolve]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (FunctionDef do_delete_modechange [] (List (= scope= flags=0 words=[] bindings=[('strategy', {[VarSub 1]})]) (= scope= flags=0 words=[] bindings=[('us', {[VarSub 2]})]) (= scope= flags=0 words=[] bindings=[('them', {[VarSub 3]})]) (Com {[LIT_CHARS test_expect_success]} {[DQ [LIT_CHARS "detect delete/modechange conflict ("][VarSub strategy][LIT_CHARS ", "][VarSub us][LIT_CHARS ")"]]} {[SQ ]}) ) ) (Com {[LIT_CHARS do_delete_modechange]} {[LIT_CHARS recursive]} {[LIT_CHARS b1]} {[LIT_CHARS deletion]}) (Com {[LIT_CHARS do_delete_modechange]} {[LIT_CHARS recursive]} {[LIT_CHARS deletion]} {[LIT_CHARS b1]}) (Com {[LIT_CHARS do_delete_modechange]} {[LIT_CHARS resolve]} {[LIT_CHARS b1]} {[LIT_CHARS deletion]}) (Com {[LIT_CHARS do_delete_modechange]} {[LIT_CHARS resolve]} {[LIT_CHARS deletion]} {[LIT_CHARS b1]}) (Com {[LIT_CHARS test_done]}) )