(List (= scope= flags=0 words=[] bindings=[('test_description', {[SQ ]})]) (Com {[LIT_CHARS .]} {[LIT_CHARS ./test-lib.sh]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (FunctionDef canned_test_1 [] (Com {[LIT_CHARS test_expect_] [VarSub 1]} {[DQ [VarSub 2]]} {[DQ [LIT_CHARS "\n"][LIT_CHARS "\t\tgit log "][VarSub 2][LIT_CHARS " >actual &&\n"][LIT_CHARS "\t\ttest_cmp "][\ LIT_ESCAPED_CHAR "\\\""][\ LIT_ESCAPED_CHAR "\\$"][LIT_CHARS TEST_DIRECTORY][\ LIT_ESCAPED_CHAR "\\\""][LIT_CHARS /t4211/expect.][VarSub 3][LIT_CHARS " actual\n"][LIT_CHARS "\t"]]}) ) (FunctionDef canned_test [] (Com {[LIT_CHARS canned_test_1]} {[LIT_CHARS success]} {[DQ [VarSub @]]}) ) (FunctionDef canned_test_failure [] (Com {[LIT_CHARS canned_test_1]} {[LIT_CHARS failure]} {[DQ [VarSub @]]}) ) (FunctionDef test_bad_opts [] (Com {[LIT_CHARS test_expect_success]} {[DQ [LIT_CHARS "invalid args: "][VarSub 1]]} {[DQ [LIT_CHARS "\n"][LIT_CHARS "\t\ttest_must_fail git log "][VarSub 1][LIT_CHARS " 2>errors &&\n"][LIT_CHARS "\t\tgrep '"][VarSub 2][LIT_CHARS "' errors\n"][LIT_CHARS "\t"]]}) ) (Com {[LIT_CHARS canned_test]} {[DQ [LIT_CHARS "-L 4,12:a.c simple"]]} {[LIT_CHARS simple-f]}) (Com {[LIT_CHARS canned_test]} {[DQ [LIT_CHARS "-L 4,+9:a.c simple"]]} {[LIT_CHARS simple-f]}) (Com {[LIT_CHARS canned_test]} {[DQ [LIT_CHARS "-L '/long f/,/^}/:a.c' simple"]]} {[LIT_CHARS simple-f]}) (Com {[LIT_CHARS canned_test]} {[DQ [LIT_CHARS "-L :f:a.c simple"]]} {[LIT_CHARS simple-f-to-main]}) (Com {[LIT_CHARS canned_test]} {[DQ [LIT_CHARS "-L '/main/,/^}/:a.c' simple"]]} {[LIT_CHARS simple-main]}) (Com {[LIT_CHARS canned_test]} {[DQ [LIT_CHARS "-L :main:a.c simple"]]} {[LIT_CHARS simple-main-to-end]}) (Com {[LIT_CHARS canned_test]} {[DQ [LIT_CHARS "-L 1,+4:a.c simple"]]} {[LIT_CHARS beginning-of-file]}) (Com {[LIT_CHARS canned_test]} {[DQ [LIT_CHARS "-L 20:a.c simple"]]} {[LIT_CHARS end-of-file]}) (Com {[LIT_CHARS canned_test]} {[DQ [LIT_CHARS "-L '/long f/',/^}/:a.c -L /main/,/^}/:a.c simple"]]} {[LIT_CHARS two-ranges]}) (Com {[LIT_CHARS canned_test]} {[DQ [LIT_CHARS "-L 24,+1:a.c simple"]]} {[LIT_CHARS vanishes-early]}) (Com {[LIT_CHARS canned_test]} {[DQ [LIT_CHARS "-M -L '/long f/,/^}/:b.c' move-support"]]} {[LIT_CHARS move-support-f]}) (Com {[LIT_CHARS canned_test]} {[DQ [LIT_CHARS "-M -L ':f:b.c' parallel-change"]]} {[LIT_CHARS parallel-change-f-to-main]}) (Com {[LIT_CHARS canned_test]} {[DQ [LIT_CHARS "-L 4,12:a.c -L :main:a.c simple"]]} {[LIT_CHARS multiple]}) (Com {[LIT_CHARS canned_test]} {[DQ [LIT_CHARS "-L 4,18:a.c -L ^:main:a.c simple"]]} {[LIT_CHARS multiple-overlapping]}) (Com {[LIT_CHARS canned_test]} {[DQ [LIT_CHARS "-L :main:a.c -L 4,18:a.c simple"]]} {[LIT_CHARS multiple-overlapping]}) (Com {[LIT_CHARS canned_test]} {[DQ [LIT_CHARS "-L 4:a.c -L 8,12:a.c simple"]]} {[LIT_CHARS multiple-superset]}) (Com {[LIT_CHARS canned_test]} {[DQ [LIT_CHARS "-L 8,12:a.c -L 4:a.c simple"]]} {[LIT_CHARS multiple-superset]}) (Com {[LIT_CHARS test_bad_opts]} {[DQ [LIT_CHARS -L]]} {[DQ [LIT_CHARS "switch.*requires a value"]]}) (Com {[LIT_CHARS test_bad_opts]} {[DQ [LIT_CHARS "-L b.c"]]} {[DQ [LIT_CHARS "argument not .start,end:file"]]}) (Com {[LIT_CHARS test_bad_opts]} {[DQ [LIT_CHARS "-L 1:"]]} {[DQ [LIT_CHARS "argument not .start,end:file"]]}) (Com {[LIT_CHARS test_bad_opts]} {[DQ [LIT_CHARS "-L 1:nonexistent"]]} {[DQ [LIT_CHARS "There is no path"]]}) (Com {[LIT_CHARS test_bad_opts]} {[DQ [LIT_CHARS "-L 1:simple"]]} {[DQ [LIT_CHARS "There is no path"]]}) (Com {[LIT_CHARS test_bad_opts]} {[DQ [LIT_CHARS "-L '/foo:b.c'"]]} {[DQ [LIT_CHARS "argument not .start,end:file"]]}) (Com {[LIT_CHARS test_bad_opts]} {[DQ [LIT_CHARS "-L 1000:b.c"]]} {[DQ [LIT_CHARS "has only.*lines"]]}) (Com {[LIT_CHARS test_bad_opts]} {[DQ [LIT_CHARS "-L 1,1000:b.c"]]} {[DQ [LIT_CHARS "has only.*lines"]]}) (Com {[LIT_CHARS test_bad_opts]} {[DQ [LIT_CHARS "-L :b.c"]]} {[DQ [LIT_CHARS "argument not .start,end:file"]]}) (Com {[LIT_CHARS test_bad_opts]} {[DQ [LIT_CHARS "-L :foo:b.c"]]} {[DQ [LIT_CHARS "no match"]]}) (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_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ output &&\n"> ]}) (Com {[LIT_CHARS test_done]}) )