(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:test_description) op: assign_op.Equal rhs: {(SQ (Token id:Id.Lit_Chars val:'i18n settings and format-patch | am pipe' span_id:15))} spids: [13] ) ] ) (C {(.)} {(./test-lib.sh)}) (command.ShFunction name: check_encoding body: (command.BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:cnt) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [36] ) (assign_pair lhs: (sh_lhs_expr.Name name:header) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$2'))} spids: [41] ) (assign_pair lhs: (sh_lhs_expr.Name name:i) op: assign_op.Equal rhs: {(1)} spids: [46] ) (assign_pair lhs: (sh_lhs_expr.Name name:j) op: assign_op.Equal rhs: {(0)} spids: [49] ) ] ) (command.WhileUntil keyword: (Token id:Id.KW_While val:while span_id:53) cond: [ (C {(test)} {(DQ ($ Id.VSub_DollarName '$i'))} {(-le)} {($ Id.VSub_DollarName '$cnt')}) ] body: (command.DoGroup children: [ (command.AndOr ops: [Id.Op_DAmp Id.Op_DPipe] children: [ (command.Pipeline children: [ (C {(git)} {(format-patch)} {(--encoding) (Id.Lit_Equals '=') (UTF-8)} {(--stdout)} {(HEAD) (Id.Lit_TildeLike '~') ($ Id.VSub_DollarName '$i') (..HEAD) (Id.Lit_TildeLike '~') ($ Id.VSub_DollarName '$j') } ) (C {(grep)} {(DQ ('^From: =?UTF-8?q?=C3=81=C3=A9=C3=AD=20=C3=B3=C3=BA?='))}) ] negated: F ) (command.Pipeline children: [ (C {(git)} {(cat-file)} {(commit)} {(HEAD) (Id.Lit_TildeLike '~') ($ Id.VSub_DollarName '$j')} ) (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$header'))} arms: [ (case_arm pat_list: [{(8859)}] action: [(C {(grep)} {(DQ ('^encoding ISO8859-1'))})] spids: [120 121 130 -1] ) (case_arm pat_list: [{(Id.Lit_Star '*')}] action: [ (command.Sentence child: (C {(grep)} {(DQ ('^encoding ISO8859-1'))}) terminator: (Token id:Id.Op_Semi val:';' span_id:142) ) (C {(test)} {(DQ ($ Id.VSub_QMark '$?'))} {(Id.KW_Bang '!') (Id.Lit_Equals '=')} {(0)} ) ] spids: [133 134 155 -1] ) ] ) ] negated: F ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:162) arg_word: {(1)} ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:j) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$i')} spids: [167] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:i) op: assign_op.Equal rhs: { (word_part.ArithSub anode: (arith_expr.Binary op_id: Id.Arith_Plus left: (arith_expr.ArithWord w:{($ Id.VSub_DollarName '$i')}) right: (arith_expr.ArithWord w:{(Id.Lit_Digits 1)}) ) ) } spids: [171] ) ] ) ] ) ) ] ) ) (C {(test_expect_success)} {(setup)} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:190) (Token id: Id.Lit_Chars val: '\tgit config i18n.commitencoding UTF-8 &&\n' span_id: 191 ) (Token id:Id.Lit_Chars val:'\n' span_id:192) (Token id: Id.Lit_Chars val: '\t# use UTF-8 in author and committer name to match the\n' span_id: 193 ) (Token id:Id.Lit_Chars val:'\t# i18n.commitencoding settings\n' span_id:194) (Token id: Id.Lit_Chars val: '\t. "$TEST_DIRECTORY"/t3901-utf8.txt &&\n' span_id: 195 ) (Token id:Id.Lit_Chars val:'\n' span_id:196) (Token id:Id.Lit_Chars val:'\ttest_tick &&\n' span_id:197) (Token id:Id.Lit_Chars val:'\techo "$GIT_AUTHOR_NAME" >mine &&\n' span_id:198) (Token id:Id.Lit_Chars val:'\tgit add mine &&\n' span_id:199) (Token id:Id.Lit_Chars val:'\tgit commit -s -m "Initial commit" &&\n' span_id:200) (Token id:Id.Lit_Chars val:'\n' span_id:201) (Token id:Id.Lit_Chars val:'\ttest_tick &&\n' span_id:202) (Token id:Id.Lit_Chars val:'\techo Hello world >mine &&\n' span_id:203) (Token id:Id.Lit_Chars val:'\tgit add mine &&\n' span_id:204) (Token id: Id.Lit_Chars val: '\tgit commit -s -m "Second on main" &&\n' span_id: 205 ) (Token id:Id.Lit_Chars val:'\n' span_id:206) (Token id: Id.Lit_Chars val: '\t# the first commit on the side branch is UTF-8\n' span_id: 207 ) (Token id:Id.Lit_Chars val:'\ttest_tick &&\n' span_id:208) (Token id:Id.Lit_Chars val:'\tgit checkout -b side master^ &&\n' span_id:209) (Token id:Id.Lit_Chars val:'\techo Another file >yours &&\n' span_id:210) (Token id:Id.Lit_Chars val:'\tgit add yours &&\n' span_id:211) (Token id:Id.Lit_Chars val:'\tgit commit -s -m "Second on side" &&\n' span_id:212) (Token id:Id.Lit_Chars val:'\n' span_id:213) (Token id:Id.Lit_Chars val:'\tif test_have_prereq !MINGW\n' span_id:214) (Token id:Id.Lit_Chars val:'\tthen\n' span_id:215) (Token id:Id.Lit_Chars val:'\t\t# the second one on the side branch is ISO-8859-1\n' span_id:216) (Token id: Id.Lit_Chars val: '\t\tgit config i18n.commitencoding ISO8859-1 &&\n' span_id: 217 ) (Token id: Id.Lit_Chars val: '\t\t# use author and committer name in ISO-8859-1 to match it.\n' span_id: 218 ) (Token id:Id.Lit_Chars val:'\t\t. "$TEST_DIRECTORY"/t3901-8859-1.txt\n' span_id:219) (Token id:Id.Lit_Chars val:'\tfi &&\n' span_id:220) (Token id:Id.Lit_Chars val:'\ttest_tick &&\n' span_id:221) (Token id:Id.Lit_Chars val:'\techo Yet another >theirs &&\n' span_id:222) (Token id:Id.Lit_Chars val:'\tgit add theirs &&\n' span_id:223) (Token id:Id.Lit_Chars val:'\tgit commit -s -m "Third on side" &&\n' span_id:224) (Token id:Id.Lit_Chars val:'\n' span_id:225) (Token id:Id.Lit_Chars val:'\t# Back to default\n' span_id:226) (Token id:Id.Lit_Chars val:'\tgit config i18n.commitencoding UTF-8\n' span_id:227) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'format-patch output (ISO-8859-1)' span_id:234))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:238) (Token id: Id.Lit_Chars val: '\tgit config i18n.logoutputencoding ISO8859-1 &&\n' span_id: 239 ) (Token id:Id.Lit_Chars val:'\n' span_id:240) (Token id: Id.Lit_Chars val: '\tgit format-patch --stdout master..HEAD^ >out-l1 &&\n' span_id: 241 ) (Token id:Id.Lit_Chars val:'\tgit format-patch --stdout HEAD^ >out-l2 &&\n' span_id:242) (Token id: Id.Lit_Chars val: '\tgrep "^Content-Type: text/plain; charset=ISO8859-1" out-l1 &&\n' span_id: 243 ) (Token id: Id.Lit_Chars val: '\tgrep "^From: =?ISO8859-1?q?=C1=E9=ED=20=F3=FA?=" out-l1 &&\n' span_id: 244 ) (Token id: Id.Lit_Chars val: '\tgrep "^Content-Type: text/plain; charset=ISO8859-1" out-l2 &&\n' span_id: 245 ) (Token id:Id.Lit_Chars val:'\tgrep "^From: =?ISO8859-1?q?=C1=E9=ED=20=F3=FA?=" out-l2\n' span_id:246) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'format-patch output (UTF-8)' span_id:253))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:257) (Token id: Id.Lit_Chars val: '\tgit config i18n.logoutputencoding UTF-8 &&\n' span_id: 258 ) (Token id:Id.Lit_Chars val:'\n' span_id:259) (Token id: Id.Lit_Chars val: '\tgit format-patch --stdout master..HEAD^ >out-u1 &&\n' span_id: 260 ) (Token id:Id.Lit_Chars val:'\tgit format-patch --stdout HEAD^ >out-u2 &&\n' span_id:261) (Token id: Id.Lit_Chars val: '\tgrep "^Content-Type: text/plain; charset=UTF-8" out-u1 &&\n' span_id: 262 ) (Token id: Id.Lit_Chars val: '\tgrep "^From: =?UTF-8?q?=C3=81=C3=A9=C3=AD=20=C3=B3=C3=BA?=" out-u1 &&\n' span_id: 263 ) (Token id: Id.Lit_Chars val: '\tgrep "^Content-Type: text/plain; charset=UTF-8" out-u2 &&\n' span_id: 264 ) (Token id: Id.Lit_Chars val: '\tgrep "^From: =?UTF-8?q?=C3=81=C3=A9=C3=AD=20=C3=B3=C3=BA?=" out-u2\n' span_id: 265 ) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'rebase (U/U)' span_id:272))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:276) (Token id: Id.Lit_Chars val: '\t# We want the result of rebase in UTF-8\n' span_id: 277 ) (Token id:Id.Lit_Chars val:'\tgit config i18n.commitencoding UTF-8 &&\n' span_id:278) (Token id:Id.Lit_Chars val:'\n' span_id:279) (Token id:Id.Lit_Chars val:'\t# The test is about logoutputencoding not affecting the\n' span_id:280) (Token id: Id.Lit_Chars val: '\t# final outcome -- it is used internally to generate the\n' span_id: 281 ) (Token id:Id.Lit_Chars val:'\t# patch and the log.\n' span_id:282) (Token id:Id.Lit_Chars val:'\n' span_id:283) (Token id:Id.Lit_Chars val:'\tgit config i18n.logoutputencoding UTF-8 &&\n' span_id:284) (Token id:Id.Lit_Chars val:'\n' span_id:285) (Token id:Id.Lit_Chars val:'\t# The result will be committed by GIT_COMMITTER_NAME --\n' span_id:286) (Token id:Id.Lit_Chars val:'\t# we want UTF-8 encoded name.\n' span_id:287) (Token id:Id.Lit_Chars val:'\t. "$TEST_DIRECTORY"/t3901-utf8.txt &&\n' span_id:288) (Token id:Id.Lit_Chars val:'\tgit checkout -b test &&\n' span_id:289) (Token id:Id.Lit_Chars val:'\tgit rebase master &&\n' span_id:290) (Token id:Id.Lit_Chars val:'\n' span_id:291) (Token id:Id.Lit_Chars val:'\tcheck_encoding 2\n' span_id:292) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'rebase (U/L)' span_id:299))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:303) (Token id: Id.Lit_Chars val: '\tgit config i18n.commitencoding UTF-8 &&\n' span_id: 304 ) (Token id:Id.Lit_Chars val:'\tgit config i18n.logoutputencoding ISO8859-1 &&\n' span_id:305) (Token id: Id.Lit_Chars val: '\t. "$TEST_DIRECTORY"/t3901-utf8.txt &&\n' span_id: 306 ) (Token id:Id.Lit_Chars val:'\n' span_id:307) (Token id:Id.Lit_Chars val:'\tgit reset --hard side &&\n' span_id:308) (Token id:Id.Lit_Chars val:'\tgit rebase master &&\n' span_id:309) (Token id:Id.Lit_Chars val:'\n' span_id:310) (Token id:Id.Lit_Chars val:'\tcheck_encoding 2\n' span_id:311) ) } ) (C {(test_expect_success)} {(Id.KW_Bang '!') (MINGW)} {(SQ (Token id:Id.Lit_Chars val:'rebase (L/L)' span_id:321))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:325) (Token id: Id.Lit_Chars val: '\t# In this test we want ISO-8859-1 encoded commits as the result\n' span_id: 326 ) (Token id:Id.Lit_Chars val:'\tgit config i18n.commitencoding ISO8859-1 &&\n' span_id:327) (Token id: Id.Lit_Chars val: '\tgit config i18n.logoutputencoding ISO8859-1 &&\n' span_id: 328 ) (Token id:Id.Lit_Chars val:'\t. "$TEST_DIRECTORY"/t3901-8859-1.txt &&\n' span_id:329) (Token id:Id.Lit_Chars val:'\n' span_id:330) (Token id:Id.Lit_Chars val:'\tgit reset --hard side &&\n' span_id:331) (Token id:Id.Lit_Chars val:'\tgit rebase master &&\n' span_id:332) (Token id:Id.Lit_Chars val:'\n' span_id:333) (Token id:Id.Lit_Chars val:'\tcheck_encoding 2 8859\n' span_id:334) ) } ) (C {(test_expect_success)} {(Id.KW_Bang '!') (MINGW)} {(SQ (Token id:Id.Lit_Chars val:'rebase (L/U)' span_id:344))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:348) (Token id: Id.Lit_Chars val: '\t# This is pathological -- use UTF-8 as intermediate form\n' span_id: 349 ) (Token id:Id.Lit_Chars val:'\t# to get ISO-8859-1 results.\n' span_id:350) (Token id: Id.Lit_Chars val: '\tgit config i18n.commitencoding ISO8859-1 &&\n' span_id: 351 ) (Token id:Id.Lit_Chars val:'\tgit config i18n.logoutputencoding UTF-8 &&\n' span_id:352) (Token id: Id.Lit_Chars val: '\t. "$TEST_DIRECTORY"/t3901-8859-1.txt &&\n' span_id: 353 ) (Token id:Id.Lit_Chars val:'\n' span_id:354) (Token id:Id.Lit_Chars val:'\tgit reset --hard side &&\n' span_id:355) (Token id:Id.Lit_Chars val:'\tgit rebase master &&\n' span_id:356) (Token id:Id.Lit_Chars val:'\n' span_id:357) (Token id:Id.Lit_Chars val:'\tcheck_encoding 2 8859\n' span_id:358) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'cherry-pick(U/U)' span_id:365))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:369) (Token id: Id.Lit_Chars val: '\t# Both the commitencoding and logoutputencoding is set to UTF-8.\n' span_id: 370 ) (Token id:Id.Lit_Chars val:'\n' span_id:371) (Token id: Id.Lit_Chars val: '\tgit config i18n.commitencoding UTF-8 &&\n' span_id: 372 ) (Token id:Id.Lit_Chars val:'\tgit config i18n.logoutputencoding UTF-8 &&\n' span_id:373) (Token id: Id.Lit_Chars val: '\t. "$TEST_DIRECTORY"/t3901-utf8.txt &&\n' span_id: 374 ) (Token id:Id.Lit_Chars val:'\n' span_id:375) (Token id:Id.Lit_Chars val:'\tgit reset --hard master &&\n' span_id:376) (Token id:Id.Lit_Chars val:'\tgit cherry-pick side^ &&\n' span_id:377) (Token id:Id.Lit_Chars val:'\tgit cherry-pick side &&\n' span_id:378) (Token id:Id.Lit_Chars val:'\tgit revert HEAD &&\n' span_id:379) (Token id:Id.Lit_Chars val:'\n' span_id:380) (Token id:Id.Lit_Chars val:'\tcheck_encoding 3\n' span_id:381) ) } ) (C {(test_expect_success)} {(Id.KW_Bang '!') (MINGW)} {(SQ (Token id:Id.Lit_Chars val:'cherry-pick(L/L)' span_id:391))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:395) (Token id: Id.Lit_Chars val: '\t# Both the commitencoding and logoutputencoding is set to ISO-8859-1\n' span_id: 396 ) (Token id:Id.Lit_Chars val:'\n' span_id:397) (Token id: Id.Lit_Chars val: '\tgit config i18n.commitencoding ISO8859-1 &&\n' span_id: 398 ) (Token id:Id.Lit_Chars val:'\tgit config i18n.logoutputencoding ISO8859-1 &&\n' span_id:399) (Token id: Id.Lit_Chars val: '\t. "$TEST_DIRECTORY"/t3901-8859-1.txt &&\n' span_id: 400 ) (Token id:Id.Lit_Chars val:'\n' span_id:401) (Token id:Id.Lit_Chars val:'\tgit reset --hard master &&\n' span_id:402) (Token id:Id.Lit_Chars val:'\tgit cherry-pick side^ &&\n' span_id:403) (Token id:Id.Lit_Chars val:'\tgit cherry-pick side &&\n' span_id:404) (Token id:Id.Lit_Chars val:'\tgit revert HEAD &&\n' span_id:405) (Token id:Id.Lit_Chars val:'\n' span_id:406) (Token id:Id.Lit_Chars val:'\tcheck_encoding 3 8859\n' span_id:407) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'cherry-pick(U/L)' span_id:414))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:418) (Token id: Id.Lit_Chars val: '\t# Commitencoding is set to UTF-8 but logoutputencoding is ISO-8859-1\n' span_id: 419 ) (Token id:Id.Lit_Chars val:'\n' span_id:420) (Token id: Id.Lit_Chars val: '\tgit config i18n.commitencoding UTF-8 &&\n' span_id: 421 ) (Token id:Id.Lit_Chars val:'\tgit config i18n.logoutputencoding ISO8859-1 &&\n' span_id:422) (Token id: Id.Lit_Chars val: '\t. "$TEST_DIRECTORY"/t3901-utf8.txt &&\n' span_id: 423 ) (Token id:Id.Lit_Chars val:'\n' span_id:424) (Token id:Id.Lit_Chars val:'\tgit reset --hard master &&\n' span_id:425) (Token id:Id.Lit_Chars val:'\tgit cherry-pick side^ &&\n' span_id:426) (Token id:Id.Lit_Chars val:'\tgit cherry-pick side &&\n' span_id:427) (Token id:Id.Lit_Chars val:'\tgit revert HEAD &&\n' span_id:428) (Token id:Id.Lit_Chars val:'\n' span_id:429) (Token id:Id.Lit_Chars val:'\tcheck_encoding 3\n' span_id:430) ) } ) (C {(test_expect_success)} {(Id.KW_Bang '!') (MINGW)} {(SQ (Token id:Id.Lit_Chars val:'cherry-pick(L/U)' span_id:440))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:444) (Token id: Id.Lit_Chars val: '\t# Again, the commitencoding is set to ISO-8859-1 but\n' span_id: 445 ) (Token id:Id.Lit_Chars val:'\t# logoutputencoding is set to UTF-8.\n' span_id:446) (Token id:Id.Lit_Chars val:'\n' span_id:447) (Token id:Id.Lit_Chars val:'\tgit config i18n.commitencoding ISO8859-1 &&\n' span_id:448) (Token id: Id.Lit_Chars val: '\tgit config i18n.logoutputencoding UTF-8 &&\n' span_id: 449 ) (Token id:Id.Lit_Chars val:'\t. "$TEST_DIRECTORY"/t3901-8859-1.txt &&\n' span_id:450) (Token id:Id.Lit_Chars val:'\n' span_id:451) (Token id:Id.Lit_Chars val:'\tgit reset --hard master &&\n' span_id:452) (Token id:Id.Lit_Chars val:'\tgit cherry-pick side^ &&\n' span_id:453) (Token id:Id.Lit_Chars val:'\tgit cherry-pick side &&\n' span_id:454) (Token id:Id.Lit_Chars val:'\tgit revert HEAD &&\n' span_id:455) (Token id:Id.Lit_Chars val:'\n' span_id:456) (Token id:Id.Lit_Chars val:'\tcheck_encoding 3 8859\n' span_id:457) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'rebase --merge (U/U)' span_id:464))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:468) (Token id: Id.Lit_Chars val: '\tgit config i18n.commitencoding UTF-8 &&\n' span_id: 469 ) (Token id:Id.Lit_Chars val:'\tgit config i18n.logoutputencoding UTF-8 &&\n' span_id:470) (Token id: Id.Lit_Chars val: '\t. "$TEST_DIRECTORY"/t3901-utf8.txt &&\n' span_id: 471 ) (Token id:Id.Lit_Chars val:'\n' span_id:472) (Token id:Id.Lit_Chars val:'\tgit reset --hard side &&\n' span_id:473) (Token id:Id.Lit_Chars val:'\tgit rebase --merge master &&\n' span_id:474) (Token id:Id.Lit_Chars val:'\n' span_id:475) (Token id:Id.Lit_Chars val:'\tcheck_encoding 2\n' span_id:476) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'rebase --merge (U/L)' span_id:483))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:487) (Token id: Id.Lit_Chars val: '\tgit config i18n.commitencoding UTF-8 &&\n' span_id: 488 ) (Token id:Id.Lit_Chars val:'\tgit config i18n.logoutputencoding ISO8859-1 &&\n' span_id:489) (Token id: Id.Lit_Chars val: '\t. "$TEST_DIRECTORY"/t3901-utf8.txt &&\n' span_id: 490 ) (Token id:Id.Lit_Chars val:'\n' span_id:491) (Token id:Id.Lit_Chars val:'\tgit reset --hard side &&\n' span_id:492) (Token id:Id.Lit_Chars val:'\tgit rebase --merge master &&\n' span_id:493) (Token id:Id.Lit_Chars val:'\n' span_id:494) (Token id:Id.Lit_Chars val:'\tcheck_encoding 2\n' span_id:495) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'rebase --merge (L/L)' span_id:502))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:506) (Token id: Id.Lit_Chars val: '\t# In this test we want ISO-8859-1 encoded commits as the result\n' span_id: 507 ) (Token id:Id.Lit_Chars val:'\tgit config i18n.commitencoding ISO8859-1 &&\n' span_id:508) (Token id: Id.Lit_Chars val: '\tgit config i18n.logoutputencoding ISO8859-1 &&\n' span_id: 509 ) (Token id:Id.Lit_Chars val:'\t. "$TEST_DIRECTORY"/t3901-8859-1.txt &&\n' span_id:510) (Token id:Id.Lit_Chars val:'\n' span_id:511) (Token id:Id.Lit_Chars val:'\tgit reset --hard side &&\n' span_id:512) (Token id:Id.Lit_Chars val:'\tgit rebase --merge master &&\n' span_id:513) (Token id:Id.Lit_Chars val:'\n' span_id:514) (Token id:Id.Lit_Chars val:'\tcheck_encoding 2 8859\n' span_id:515) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'rebase --merge (L/U)' span_id:522))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:526) (Token id: Id.Lit_Chars val: '\t# This is pathological -- use UTF-8 as intermediate form\n' span_id: 527 ) (Token id:Id.Lit_Chars val:'\t# to get ISO-8859-1 results.\n' span_id:528) (Token id: Id.Lit_Chars val: '\tgit config i18n.commitencoding ISO8859-1 &&\n' span_id: 529 ) (Token id:Id.Lit_Chars val:'\tgit config i18n.logoutputencoding UTF-8 &&\n' span_id:530) (Token id: Id.Lit_Chars val: '\t. "$TEST_DIRECTORY"/t3901-8859-1.txt &&\n' span_id: 531 ) (Token id:Id.Lit_Chars val:'\n' span_id:532) (Token id:Id.Lit_Chars val:'\tgit reset --hard side &&\n' span_id:533) (Token id:Id.Lit_Chars val:'\tgit rebase --merge master &&\n' span_id:534) (Token id:Id.Lit_Chars val:'\n' span_id:535) (Token id:Id.Lit_Chars val:'\tcheck_encoding 2 8859\n' span_id:536) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'am (U/U)' span_id:543))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:547) (Token id: Id.Lit_Chars val: '\t# Apply UTF-8 patches with UTF-8 commitencoding\n' span_id: 548 ) (Token id:Id.Lit_Chars val:'\tgit config i18n.commitencoding UTF-8 &&\n' span_id:549) (Token id: Id.Lit_Chars val: '\t. "$TEST_DIRECTORY"/t3901-utf8.txt &&\n' span_id: 550 ) (Token id:Id.Lit_Chars val:'\n' span_id:551) (Token id:Id.Lit_Chars val:'\tgit reset --hard master &&\n' span_id:552) (Token id:Id.Lit_Chars val:'\tgit am out-u1 out-u2 &&\n' span_id:553) (Token id:Id.Lit_Chars val:'\n' span_id:554) (Token id:Id.Lit_Chars val:'\tcheck_encoding 2\n' span_id:555) ) } ) (C {(test_expect_success)} {(Id.KW_Bang '!') (MINGW)} {(SQ (Token id:Id.Lit_Chars val:'am (L/L)' span_id:565))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:569) (Token id: Id.Lit_Chars val: '\t# Apply ISO-8859-1 patches with ISO-8859-1 commitencoding\n' span_id: 570 ) (Token id:Id.Lit_Chars val:'\tgit config i18n.commitencoding ISO8859-1 &&\n' span_id:571) (Token id: Id.Lit_Chars val: '\t. "$TEST_DIRECTORY"/t3901-8859-1.txt &&\n' span_id: 572 ) (Token id:Id.Lit_Chars val:'\n' span_id:573) (Token id:Id.Lit_Chars val:'\tgit reset --hard master &&\n' span_id:574) (Token id:Id.Lit_Chars val:'\tgit am out-l1 out-l2 &&\n' span_id:575) (Token id:Id.Lit_Chars val:'\n' span_id:576) (Token id:Id.Lit_Chars val:'\tcheck_encoding 2 8859\n' span_id:577) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'am (U/L)' span_id:584))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:588) (Token id: Id.Lit_Chars val: '\t# Apply ISO-8859-1 patches with UTF-8 commitencoding\n' span_id: 589 ) (Token id:Id.Lit_Chars val:'\tgit config i18n.commitencoding UTF-8 &&\n' span_id:590) (Token id: Id.Lit_Chars val: '\t. "$TEST_DIRECTORY"/t3901-utf8.txt &&\n' span_id: 591 ) (Token id:Id.Lit_Chars val:'\tgit reset --hard master &&\n' span_id:592) (Token id:Id.Lit_Chars val:'\n' span_id:593) (Token id:Id.Lit_Chars val:'\t# am specifies --utf8 by default.\n' span_id:594) (Token id:Id.Lit_Chars val:'\tgit am out-l1 out-l2 &&\n' span_id:595) (Token id:Id.Lit_Chars val:'\n' span_id:596) (Token id:Id.Lit_Chars val:'\tcheck_encoding 2\n' span_id:597) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'am --no-utf8 (U/L)' span_id:604))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:608) (Token id: Id.Lit_Chars val: '\t# Apply ISO-8859-1 patches with UTF-8 commitencoding\n' span_id: 609 ) (Token id:Id.Lit_Chars val:'\tgit config i18n.commitencoding UTF-8 &&\n' span_id:610) (Token id: Id.Lit_Chars val: '\t. "$TEST_DIRECTORY"/t3901-utf8.txt &&\n' span_id: 611 ) (Token id:Id.Lit_Chars val:'\n' span_id:612) (Token id:Id.Lit_Chars val:'\tgit reset --hard master &&\n' span_id:613) (Token id:Id.Lit_Chars val:'\tgit am --no-utf8 out-l1 out-l2 2>err &&\n' span_id:614) (Token id:Id.Lit_Chars val:'\n' span_id:615) (Token id: Id.Lit_Chars val: '\t# commit-tree will warn that the commit message does not contain valid UTF-8\n' span_id: 616 ) (Token id:Id.Lit_Chars val:'\t# as mailinfo did not convert it\n' span_id:617) (Token id: Id.Lit_Chars val: '\ttest_i18ngrep "did not conform" err &&\n' span_id: 618 ) (Token id:Id.Lit_Chars val:'\n' span_id:619) (Token id:Id.Lit_Chars val:'\tcheck_encoding 2\n' span_id:620) ) } ) (C {(test_expect_success)} {(Id.KW_Bang '!') (MINGW)} {(SQ (Token id:Id.Lit_Chars val:'am (L/U)' span_id:630))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:634) (Token id: Id.Lit_Chars val: '\t# Apply UTF-8 patches with ISO-8859-1 commitencoding\n' span_id: 635 ) (Token id:Id.Lit_Chars val:'\tgit config i18n.commitencoding ISO8859-1 &&\n' span_id:636) (Token id: Id.Lit_Chars val: '\t. "$TEST_DIRECTORY"/t3901-8859-1.txt &&\n' span_id: 637 ) (Token id:Id.Lit_Chars val:'\n' span_id:638) (Token id:Id.Lit_Chars val:'\tgit reset --hard master &&\n' span_id:639) (Token id: Id.Lit_Chars val: '\t# mailinfo will re-code the commit message to the charset specified by\n' span_id: 640 ) (Token id:Id.Lit_Chars val:'\t# i18n.commitencoding\n' span_id:641) (Token id:Id.Lit_Chars val:'\tgit am out-u1 out-u2 &&\n' span_id:642) (Token id:Id.Lit_Chars val:'\n' span_id:643) (Token id:Id.Lit_Chars val:'\tcheck_encoding 2 8859\n' span_id:644) ) } ) (C {(test_done)}) ] )