(List (= scope= flags=0 words=[] bindings=[('test_description', {[SQ ]})]) (Com {[LIT_CHARS .]} {[LIT_CHARS ./test-lib.sh]}) (FunctionDef mark [] (Com {[LIT_CHARS echo]} {[DQ [VarSub 1]]} < (FilenameRedirectNode filename={[LIT_CHARS mark]} "> 1), > ) ) (FunctionDef update_repo [] (Subshell (AndOr OP_AND_IF (Com {[LIT_CHARS cd]} {[VarSub 1]}) (AndOr OP_AND_IF (Com {[LIT_CHARS echo]} {[LIT_CHARS content]} < (FilenameRedirectNode filename={[LIT_CHARS file]} >"> 1), > ) (AndOr OP_AND_IF (Com {[LIT_CHARS git]} {[LIT_CHARS add]} {[LIT_CHARS file]}) (Com {[LIT_CHARS git]} {[LIT_CHARS commit]} {[LIT_CHARS -F]} {[LIT_CHARS ../mark]}) ) ) ) ) ) (FunctionDef update_repos [] (AndOr OP_AND_IF (Com {[LIT_CHARS update_repo]} {[LIT_CHARS one]} {[VarSub 1]}) (Com {[LIT_CHARS update_repo]} {[LIT_CHARS two]} {[VarSub 1]}) ) ) (FunctionDef repo_fetched [] (List (If (Com {[LIT_CHARS test]} {[DQ [ComSub (Com {[LIT_CHARS git]} {[LIT_CHARS log]} {[LIT_CHARS -1]} {[LIT_CHARS --pretty] [LIT_OTHER "="] [LIT_CHARS format] [LIT_OTHER ":"] [LIT_OTHER "%"] [LIT_CHARS s]} {[VarSub 1]} {[LIT_CHARS --]})]]} {[LIT_OTHER "="]} {[DQ [ComSub (Com {[LIT_CHARS cat]} {[LIT_CHARS mark]})]]}) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "repo was fetched: "][VarSub 1]]} < (DescriptorRedirectNode target={[LIT_CHARS 2]} &"> 1), > ) (Com {[LIT_CHARS return]} {[LIT_CHARS 0]}) ) ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "repo was not fetched: "][VarSub 1]]} < (DescriptorRedirectNode target={[LIT_CHARS 2]} &"> 1), > ) (Com {[LIT_CHARS return]} {[LIT_CHARS 1]}) ) ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_done]}) )