(CommandList children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:test_description) op: Equal rhs: {(SQ <"git apply with weird postimage filenames">)} spids: [4] ) ] spids: [4] ) (C {(.)} {(./test-lib.sh)}) (C {(test_expect_success)} {(SQ <setup>)} { (SQ <"\n"> <"\tvector=$TEST_DIRECTORY/t4135 &&\n"> <"\n"> <"\ttest_tick &&\n"> <"\tgit commit --allow-empty -m preimage &&\n"> <"\tgit tag preimage &&\n"> <"\n"> <"\treset_preimage() {\n"> <"\t\tgit checkout -f preimage^0 &&\n"> <"\t\tgit read-tree -u --reset HEAD &&\n"> <"\t\tgit update-index --refresh\n"> <"\t} &&\n"> <"\n"> <"\ttest_when_finished \"rm -f \\\"tab\tembedded.txt\\\"\" &&\n"> <"\ttest_when_finished \"rm -f "> ) (EscapedLiteralPart token:<Lit_EscapedChar "\\'">) (SQ <"\\\"quoteembedded\\\".txt">) (EscapedLiteralPart token:<Lit_EscapedChar "\\'">) (SQ <"\" &&\n"> <"\tif test_have_prereq !MINGW &&\n"> <"\t\ttouch -- \"tab\tembedded.txt\" ">) (EscapedLiteralPart token:<Lit_EscapedChar "\\'">) (SQ <"\"quoteembedded\".txt">) (EscapedLiteralPart token:<Lit_EscapedChar "\\'">) (SQ <"\n"> <"\tthen\n"> <"\t\ttest_set_prereq FUNNYNAMES\n"> <"\tfi\n">) } ) (FuncDef name: try_filename body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:desc) op: Equal rhs: {($ VSub_Number "$1")} spids: [68] ) ] spids: [68] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:postimage) op: Equal rhs: {($ VSub_Number "$2")} spids: [72] ) ] spids: [72] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:prereq) op: Equal rhs: { (BracedVarSub token: <VSub_Number 3> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{}) spids: [77 80] ) } spids: [76] ) ] spids: [76] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:exp1) op: Equal rhs: { (BracedVarSub token: <VSub_Number 4> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(success)}) spids: [84 88] ) } spids: [83] ) ] spids: [83] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:exp2) op: Equal rhs: { (BracedVarSub token: <VSub_Number 5> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(success)}) spids: [92 96] ) } spids: [91] ) ] spids: [91] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:exp3) op: Equal rhs: { (BracedVarSub token: <VSub_Number 6> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(success)}) spids: [100 104] ) } spids: [99] ) ] spids: [99] ) (C {(test_expect_) ($ VSub_Name "$exp1")} {($ VSub_Name "$prereq")} {(DQ ($ VSub_Name "$desc") (", git-style file creation patch"))} { (DQ ("\n") ("\t\techo postimage >expected &&\n") ("\t\treset_preimage &&\n") ("\t\trm -f '") ($ VSub_Name "$postimage") ("' &&\n") ("\t\tgit apply -v ") (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) (EscapedLiteralPart token:<Lit_EscapedChar "\\$">) (vector) (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) ("/'git-") ($ VSub_Name "$desc") (".diff' &&\n") ("\t\ttest_cmp expected '") ($ VSub_Name "$postimage") ("'\n") ("\t") ) } ) (C {(test_expect_) ($ VSub_Name "$exp2")} {($ VSub_Name "$prereq")} {(DQ ($ VSub_Name "$desc") (", traditional patch"))} { (DQ ("\n") ("\t\techo postimage >expected &&\n") ("\t\treset_preimage &&\n") ("\t\techo preimage >'") ($ VSub_Name "$postimage") ("' &&\n") ("\t\tgit apply -v ") (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) (EscapedLiteralPart token:<Lit_EscapedChar "\\$">) (vector) (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) ("/'diff-") ($ VSub_Name "$desc") (".diff' &&\n") ("\t\ttest_cmp expected '") ($ VSub_Name "$postimage") ("'\n") ("\t") ) } ) (C {(test_expect_) ($ VSub_Name "$exp3")} {($ VSub_Name "$prereq")} {(DQ ($ VSub_Name "$desc") (", traditional file creation patch"))} { (DQ ("\n") ("\t\techo postimage >expected &&\n") ("\t\treset_preimage &&\n") ("\t\trm -f '") ($ VSub_Name "$postimage") ("' &&\n") ("\t\tgit apply -v ") (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) (EscapedLiteralPart token:<Lit_EscapedChar "\\$">) (vector) (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) ("/'add-") ($ VSub_Name "$desc") (".diff' &&\n") ("\t\ttest_cmp expected '") ($ VSub_Name "$postimage") ("'\n") ("\t") ) } ) ] spids: [65] ) spids: [61 64] ) (C {(try_filename)} {(SQ <plain>)} {(SQ <postimage.txt>)}) (C {(try_filename)} {(SQ <"with spaces">)} {(SQ <"post image.txt">)}) (C {(try_filename)} {(SQ <"with tab">)} {(SQ <"post\timage.txt">)} {(FUNNYNAMES)}) (C {(try_filename)} {(SQ <"with backslash">)} {(SQ <"post\\image.txt">)} {(BSLASHPSPEC)}) (C {(try_filename)} {(SQ <"with quote">)} {(SQ <"\"postimage\".txt">)} {(FUNNYNAMES)} {(success)} {(failure)} {(success)} ) (C {(test_expect_success)} {(SQ <"whitespace-damaged traditional patch">)} { (SQ <"\n"> <"\techo postimage >expected &&\n"> <"\treset_preimage &&\n"> <"\trm -f postimage.txt &&\n"> <"\tgit apply -v \"$vector/damaged.diff\" &&\n"> <"\ttest_cmp expected postimage.txt\n"> ) } ) (C {(test_expect_success)} {(SQ <"traditional patch with colon in timezone">)} { (SQ <"\n"> <"\techo postimage >expected &&\n"> <"\treset_preimage &&\n"> <"\trm -f \"post image.txt\" &&\n"> <"\tgit apply \"$vector/funny-tz.diff\" &&\n"> <"\ttest_cmp expected \"post image.txt\"\n"> ) } ) (C {(test_expect_success)} {(SQ <"traditional, whitespace-damaged, colon in timezone">)} { (SQ <"\n"> <"\techo postimage >expected &&\n"> <"\treset_preimage &&\n"> <"\trm -f \"post image.txt\" &&\n"> <"\tgit apply \"$vector/damaged-tz.diff\" &&\n"> <"\ttest_cmp expected \"post image.txt\"\n"> ) } ) (C {(test_done)}) ] )