(CommandList children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:test_description) op: Equal rhs: {(SQ <'git reset should cull empty subdirs'>)} spids: [13] ) ] spids: [13] ) (C {(.)} {(./test-lib.sh)}) (C {(test_expect_success)} {(SQ <'creating initial files'>)} { (SQ <'mkdir path0 &&\n'> <' cp "$TEST_DIRECTORY"/../COPYING path0/COPYING &&\n'> <' git add path0/COPYING &&\n'> <' git commit -m add -a'> ) } ) (C {(test_expect_success)} {(SQ <'creating second files'>)} { (SQ <'mkdir path1 &&\n'> <' mkdir path1/path2 &&\n'> <' cp "$TEST_DIRECTORY"/../COPYING path1/path2/COPYING &&\n'> <' cp "$TEST_DIRECTORY"/../COPYING path1/COPYING &&\n'> <' cp "$TEST_DIRECTORY"/../COPYING COPYING &&\n'> <' cp "$TEST_DIRECTORY"/../COPYING path0/COPYING-TOO &&\n'> <' git add path1/path2/COPYING &&\n'> <' git add path1/COPYING &&\n'> <' git add COPYING &&\n'> <' git add path0/COPYING-TOO &&\n'> <' git commit -m change -a'> ) } ) (C {(test_expect_success)} {(SQ <'resetting tree HEAD^'>)} {(SQ <'git reset --hard HEAD^'>)}) (C {(test_expect_success)} {(SQ <'checking initial files exist after rewind'>)} {(SQ <'test -d path0 &&\n'> <' test -f path0/COPYING'>)} ) (C {(test_expect_success)} {(SQ <'checking lack of path1/path2/COPYING'>)} {(SQ <'! test -f path1/path2/COPYING'>)} ) (C {(test_expect_success)} {(SQ <'checking lack of path1/COPYING'>)} {(SQ <'! test -f path1/COPYING'>)} ) (C {(test_expect_success)} {(SQ <'checking lack of COPYING'>)} {(SQ <'! test -f COPYING'>)}) (C {(test_expect_success)} {(SQ <'checking checking lack of path1/COPYING-TOO'>)} {(SQ <'! test -f path0/COPYING-TOO'>)} ) (C {(test_expect_success)} {(SQ <'checking lack of path1/path2'>)} {(SQ <'! test -d path1/path2'>)}) (C {(test_expect_success)} {(SQ <'checking lack of path1'>)} {(SQ <'! test -d path1'>)}) (C {(test_done)}) ] )