(List (Com {[LIT_CHARS .]} {[LIT_CHARS ./test-lib.sh]}) (Com {[LIT_CHARS unset]} {[LIT_CHARS CVS_SERVER]}) (If (Pipeline! (Com {[LIT_CHARS type]} {[LIT_CHARS cvs]} < (FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 1), (DescriptorRedirectNode target={[LIT_CHARS 1]} &"> 2), > ) ) (List (= scope= flags=0 words=[] bindings=[('skip_all', {[SQ ]})]) (Com {[LIT_CHARS test_done]}) ) ) (= scope= flags=0 words=[] bindings=[('CVS', {[DQ [LIT_CHARS "cvs -f"]]})]) (= scope= flags=1 words=[{[LIT_CHARS CVS]}] bindings=[]) (= scope= flags=0 words=[] bindings=[('cvsps_version', {[ComSub (Pipeline (Com redirects=[(DescriptorRedirectNode target={[LIT_CHARS 1]} &"> 2)]{[LIT_CHARS cvsps]} {[LIT_CHARS -h]}) (Com {[LIT_CHARS sed]} {[LIT_CHARS -ne]} {[SQ ]}) )]})]) (Case to_match={[DQ [VarSub cvsps_version]]}, pat_word_list=[[{[LIT_CHARS 2.1]}, {[LIT_CHARS 2.2] [LIT_OTHER "*"]}], [{[SQ ]}], [{[LIT_OTHER "*"]}]] (ElseTrue) (List (= scope= flags=0 words=[] bindings=[('skip_all', {[SQ ]})]) (Com {[LIT_CHARS test_done]}) ) (List (= scope= flags=0 words=[] bindings=[('skip_all', {[SQ ]})]) (Com {[LIT_CHARS test_done]}) ) ) (FunctionDef setup_cvs_test_repository [] (AndOr OP_AND_IF (= scope= flags=0 words=[] bindings=[('CVSROOT', {[DQ [ComSub (Com {[LIT_CHARS pwd]})][LIT_CHARS /.cvsroot]]})]) (AndOr OP_AND_IF (Com {[LIT_CHARS cp]} {[LIT_CHARS -r]} {[DQ [VarSub TEST_DIRECTORY][LIT_CHARS /][VarSub 1][LIT_CHARS /cvsroot]]} {[DQ [VarSub CVSROOT]]}) (= scope= flags=1 words=[{[LIT_CHARS CVSROOT]}] bindings=[]) ) ) ) (FunctionDef test_cvs_co [] (List (Com {[LIT_CHARS rm]} {[LIT_CHARS -rf]} {[LIT_CHARS module-cvs-] [DQ [VarSub 1]]}) (If (Com {[LIT_OTHER "["]} {[DQ [VarSub 1]]} {[LIT_OTHER "="]} {[DQ [LIT_CHARS master]]} {[LIT_OTHER "]"]}) (Com {[VarSub CVS]} {[LIT_CHARS co]} {[LIT_CHARS -P]} {[LIT_CHARS -d]} {[LIT_CHARS module-cvs-] [DQ [VarSub 1]]} {[LIT_CHARS -A]} {[LIT_CHARS module]}) (ElseTrue) (Com {[VarSub CVS]} {[LIT_CHARS co]} {[LIT_CHARS -P]} {[LIT_CHARS -d]} {[LIT_CHARS module-cvs-] [DQ [VarSub 1]]} {[LIT_CHARS -r]} {[DQ [VarSub 1]]} {[LIT_CHARS module]}) ) ) ) (FunctionDef test_git_co [] (Subshell (AndOr OP_AND_IF (Com {[LIT_CHARS cd]} {[LIT_CHARS module-git]}) (Com {[LIT_CHARS git]} {[LIT_CHARS checkout]} {[DQ [VarSub 1]]}) ) ) ) (FunctionDef test_cmp_branch_file [] (Com {[LIT_CHARS test_cmp]} {[LIT_CHARS module-cvs-] [DQ [VarSub 1]] [LIT_CHARS /] [DQ [VarSub 2]]} {[LIT_CHARS module-git/] [DQ [VarSub 2]]}) ) (FunctionDef test_cmp_branch_tree [] (AndOr OP_AND_IF (Com {[LIT_CHARS test_cvs_co]} {[DQ [VarSub 1]]}) (AndOr OP_AND_IF (Com {[LIT_CHARS test_git_co]} {[DQ [VarSub 1]]}) (AndOr OP_AND_IF (Pipeline (Subshell (List (Com {[LIT_CHARS cd]} {[LIT_CHARS module-cvs-] [DQ [VarSub 1]]}) (Com {[LIT_CHARS find]} {[LIT_CHARS .]} {[LIT_CHARS -type]} {[LIT_CHARS d]} {[LIT_CHARS -name]} {[LIT_CHARS CVS]} {[LIT_CHARS -prune]} {[LIT_CHARS -o]} {[LIT_CHARS -type]} {[LIT_CHARS f]} {[LIT_CHARS -print]}) ) ) (Com {[LIT_CHARS sort]} < (FilenameRedirectNode filename={[LIT_CHARS module-cvs-] [DQ [VarSub 1]] [LIT_CHARS .list]} "> 1), > ) ) (AndOr OP_AND_IF (Pipeline (Subshell (List (Com {[LIT_CHARS cd]} {[LIT_CHARS module-git]}) (Com {[LIT_CHARS find]} {[LIT_CHARS .]} {[LIT_CHARS -type]} {[LIT_CHARS d]} {[LIT_CHARS -name]} {[LIT_CHARS .git]} {[LIT_CHARS -prune]} {[LIT_CHARS -o]} {[LIT_CHARS -type]} {[LIT_CHARS f]} {[LIT_CHARS -print]}) ) ) (Com {[LIT_CHARS sort]} < (FilenameRedirectNode filename={[LIT_CHARS module-git-] [DQ [VarSub 1]] [LIT_CHARS .list]} "> 1), > ) ) (AndOr OP_AND_IF (Com {[LIT_CHARS test_cmp]} {[LIT_CHARS module-cvs-] [DQ [VarSub 1]] [LIT_CHARS .list]} {[LIT_CHARS module-git-] [DQ [VarSub 1]] [LIT_CHARS .list]}) (Pipeline (Com {[LIT_CHARS cat]} {[LIT_CHARS module-cvs-] [DQ [VarSub 1]] [LIT_CHARS .list]}) (While (Com {[LIT_CHARS read]} {[LIT_CHARS f]}) (AndOr OP_OR_IF (Com {[LIT_CHARS test_cmp_branch_file]} {[DQ [VarSub 1]]} {[DQ [VarSub f]]}) (Com {[LIT_CHARS return]} {[LIT_CHARS 1]}) ) ) ) ) ) ) ) ) ) )