(List (= scope= flags=0 words=[] bindings=[('test_description', {[DQ [LIT_CHARS "git hash-object"]]})]) (Com {[LIT_CHARS .]} {[LIT_CHARS ./test-lib.sh]}) (FunctionDef echo_without_newline [] (Com {[LIT_CHARS printf]} {[SQ ]} {[DQ [VarSub *]]}) ) (FunctionDef test_blob_does_not_exist [] (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[DQ [LIT_CHARS "\n"][LIT_CHARS "\t\ttest_must_fail git cat-file blob "][VarSub 1][LIT_CHARS "\n"][LIT_CHARS "\t"]]}) ) (FunctionDef test_blob_exists [] (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[DQ [LIT_CHARS "\n"][LIT_CHARS "\t\tgit cat-file blob "][VarSub 1][LIT_CHARS "\n"][LIT_CHARS "\t"]]}) ) (= scope= flags=0 words=[] bindings=[('hello_content', {[DQ [LIT_CHARS "Hello World"]]})]) (= scope= flags=0 words=[] bindings=[('hello_sha1', {[LIT_CHARS 5e1c309dae7f45e0f39b1bf3ac3cd9db12e7d689]})]) (= scope= flags=0 words=[] bindings=[('example_content', {[DQ [LIT_CHARS "This is an example"]]})]) (= scope= flags=0 words=[] bindings=[('example_sha1', {[LIT_CHARS ddd3f836d3e3fbb7ae289aa9ae83536f76956399]})]) (FunctionDef setup_repo [] (List (Com {[LIT_CHARS echo_without_newline]} {[DQ [VarSub hello_content]]} < (FilenameRedirectNode filename={[LIT_CHARS hello]} "> 1), > ) (Com {[LIT_CHARS echo_without_newline]} {[DQ [VarSub example_content]]} < (FilenameRedirectNode filename={[LIT_CHARS example]} "> 1), > ) ) ) (= scope= flags=0 words=[] bindings=[('test_repo', {[LIT_CHARS test]})]) (FunctionDef push_repo [] (List (Com {[LIT_CHARS test_create_repo]} {[VarSub test_repo]}) (Com {[LIT_CHARS cd]} {[VarSub test_repo]}) (Com {[LIT_CHARS setup_repo]}) ) ) (FunctionDef pop_repo [] (List (Com {[LIT_CHARS cd]} {[LIT_CHARS ..]}) (Com {[LIT_CHARS rm]} {[LIT_CHARS -rf]} {[VarSub test_repo]}) ) ) (Com {[LIT_CHARS setup_repo]}) (Com {[LIT_CHARS test_expect_success]} {[DQ [LIT_CHARS "multiple '--stdin's are rejected"]]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[DQ [LIT_CHARS "Can't use --stdin and --stdin-paths together"]]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[DQ [LIT_CHARS "Can't pass filenames as arguments with --stdin-paths"]]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[DQ [LIT_CHARS "Can't use --path with --stdin-paths"]]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[DQ [LIT_CHARS "Can't use --path with --no-filters"]]} {[SQ ]}) (Com {[LIT_CHARS push_repo]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_blob_does_not_exist]} {[VarSub hello_sha1]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_blob_does_not_exist]} {[VarSub example_sha1]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_blob_exists]} {[VarSub hello_sha1]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ file1 &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ file0 &&\n"> .gitattributes &&\n"> >.gitattributes &&\n"> ]}) (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 pop_repo]}) (For args [{[DQ [LIT_CHARS "-w --stdin"]]}, {[DQ [LIT_CHARS "--stdin -w"]]}]) (List (Com {[LIT_CHARS push_repo]}) (Com {[LIT_CHARS test_expect_success]} {[DQ [LIT_CHARS "hash from stdin and write to database ("][VarSub args][LIT_CHARS ")"]]} {[SQ ]}) (Com {[LIT_CHARS test_blob_exists]} {[VarSub example_sha1]}) (Com {[LIT_CHARS pop_repo]}) ) ) (= scope= flags=0 words=[] bindings=[('filenames', {[DQ [LIT_CHARS "hello\n"][LIT_CHARS example]]})]) (= scope= flags=0 words=[] bindings=[('sha1s', {[DQ [VarSub hello_sha1][LIT_CHARS "\n"][VarSub example_sha1]]})]) (Com {[LIT_CHARS test_expect_success]} {[DQ [LIT_CHARS "hash two files with names on stdin"]]} {[SQ ]}) (For args [{[DQ [LIT_CHARS "-w --stdin-paths"]]}, {[DQ [LIT_CHARS "--stdin-paths -w"]]}]) (List (Com {[LIT_CHARS push_repo]}) (Com {[LIT_CHARS test_expect_success]} {[DQ [LIT_CHARS "hash two files with names on stdin and write to database ("][VarSub args][LIT_CHARS ")"]]} {[SQ ]}) (Com {[LIT_CHARS test_blob_exists]} {[VarSub hello_sha1]}) (Com {[LIT_CHARS test_blob_exists]} {[VarSub example_sha1]}) (Com {[LIT_CHARS pop_repo]}) ) ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ malformed-tree &&\n"> err &&\n"> ]}) (FunctionDef hex2oct [] (Com {[LIT_CHARS perl]} {[LIT_CHARS -ne]} {[SQ ]}) ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ tree-with-malformed-mode &&\n"> err &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ tree-with-empty-filename &&\n"> err &&\n"> ]}) (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]}) )