(CommandList children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:test_description) op: Equal rhs: {(SQ <'git cat-file textconv support'>)} spids: [4] ) ] spids: [4] ) (C {(.)} {(./test-lib.sh)}) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:16777215 arg_word:{(helper)} spids:[16]) (HereDoc op_id: Redir_DLess fd: 16777215 body: {('#!/bin/sh\n') ( 'grep -q \'^bin: \' "$1" || { echo "E: $1 is not \\"binary\\" file" 1>&2; exit 1; }\n' ) ('sed \'s/^bin: /converted: /\' "$1"\n') } do_expansion: False here_end: EOF was_filled: T spids: [19] ) ] ) (C {(chmod)} {(Lit_Other '+') (x)} {(helper)}) (C {(test_expect_success)} {(SQ <'setup '>)} { (SQ <'\n'> <'\techo "bin: test" >one.bin &&\n'> <'\ttest_ln_s_add one.bin symlink.bin &&\n'> <'\tgit add . &&\n'> <'\tGIT_AUTHOR_NAME=Number1 git commit -a -m First --date="2010-01-01 18:00:00" &&\n'> <'\techo "bin: test version 2" >one.bin &&\n'> <'\tGIT_AUTHOR_NAME=Number2 git commit -a -m Second --date="2010-01-01 20:00:00"\n'> ) } ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:16777215 arg_word:{(expected)} spids:[51]) (HereDoc op_id: Redir_DLess fd: 16777215 body: {(DQ ('bin: test version 2\n'))} do_expansion: True here_end: EOF was_filled: T spids: [54] ) ] ) (C {(test_expect_success)} {(SQ <'no filter specified'>)} { (SQ <'\n'> <'\tgit cat-file --textconv :one.bin >result &&\n'> <'\ttest_cmp expected result\n'>) } ) (C {(test_expect_success)} {(SQ <'setup textconv filters'>)} { (SQ <'\n'> <'\techo "*.bin diff=test" >.gitattributes &&\n'> <'\tgit config diff.test.textconv ./helper &&\n'> <'\tgit config diff.test.cachetextconv false\n'> ) } ) (C {(test_expect_success)} {(SQ <'cat-file without --textconv'>)} {(SQ <'\n'> <'\tgit cat-file blob :one.bin >result &&\n'> <'\ttest_cmp expected result\n'>)} ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:16777215 arg_word:{(expected)} spids:[102]) (HereDoc op_id: Redir_DLess fd: 16777215 body: {(DQ ('bin: test\n'))} do_expansion: True here_end: EOF was_filled: T spids: [105] ) ] ) (C {(test_expect_success)} {(SQ <'cat-file without --textconv on previous commit'>)} {(SQ <'\n'> <'\tgit cat-file -p HEAD^:one.bin >result &&\n'> <'\ttest_cmp expected result\n'>)} ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:16777215 arg_word:{(expected)} spids:[126]) (HereDoc op_id: Redir_DLess fd: 16777215 body: {(DQ ('converted: test version 2\n'))} do_expansion: True here_end: EOF was_filled: T spids: [129] ) ] ) (C {(test_expect_success)} {(SQ <'cat-file --textconv on last commit'>)} { (SQ <'\n'> <'\tgit cat-file --textconv :one.bin >result &&\n'> <'\ttest_cmp expected result\n'>) } ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:16777215 arg_word:{(expected)} spids:[150]) (HereDoc op_id: Redir_DLess fd: 16777215 body: {(DQ ('converted: test\n'))} do_expansion: True here_end: EOF was_filled: T spids: [153] ) ] ) (C {(test_expect_success)} {(SQ <'cat-file --textconv on previous commit'>)} { (SQ <'\n'> <'\tgit cat-file --textconv HEAD^:one.bin >result &&\n'> <'\ttest_cmp expected result\n'> ) } ) (C {(test_expect_success)} {(SQ <'cat-file without --textconv (symlink)'>)} { (SQ <'\n'> <'\tprintf "%s" "one.bin" >expected &&\n'> <'\tgit cat-file blob :symlink.bin >result &&\n'> <'\ttest_cmp expected result\n'> ) } ) (C {(test_expect_success)} {(SQ <'cat-file --textconv on index (symlink)'>)} { (SQ <'\n'> <'\tgit cat-file --textconv :symlink.bin >result &&\n'> <'\ttest_cmp expected result\n'> ) } ) (C {(test_expect_success)} {(SQ <'cat-file --textconv on HEAD (symlink)'>)} { (SQ <'\n'> <'\tgit cat-file --textconv HEAD:symlink.bin >result &&\n'> <'\ttest_cmp expected result\n'> ) } ) (C {(test_done)}) ] )