(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:test_description)
          op: Equal
          rhs: {(SQ <"ask merge-recursive to merge binary files">)}
          spids: [4]
        )
      ]
      spids: [4]
    )
    (C {(.)} {(./test-lib.sh)})
    (C {(test_expect_success)} {(setup)} 
      {
        (SQ <"\n"> <"\n"> <"\tcat \"$TEST_DIRECTORY\"/test-binary-1.png >m &&\n"> <"\tgit add m &&\n"> 
          <"\tgit ls-files -s | sed -e \"s/ 0\t/ 1\t/\" >E1 &&\n"> <"\ttest_tick &&\n"> <"\tgit commit -m \"initial\" &&\n"> <"\n"> <"\tgit branch side &&\n"> 
          <"\techo frotz >a &&\n"> <"\tgit add a &&\n"> <"\techo nitfol >>m &&\n"> <"\tgit add a m &&\n"> <"\tgit ls-files -s a >E0 &&\n"> 
          <"\tgit ls-files -s m | sed -e \"s/ 0\t/ 3\t/\" >E3 &&\n"> <"\ttest_tick &&\n"> <"\tgit commit -m \"master adds some\" &&\n"> <"\n"> <"\tgit checkout side &&\n"> 
          <"\techo rezrov >>m &&\n"> <"\tgit add m &&\n"> <"\tgit ls-files -s m | sed -e \"s/ 0\t/ 2\t/\" >E2 &&\n"> <"\ttest_tick &&\n"> 
          <"\tgit commit -m \"side modifies\" &&\n"> <"\n"> <"\tgit tag anchor &&\n"> <"\n"> <"\tcat E0 E1 E2 E3 >expect\n">
        )
      }
    )
    (C {(test_expect_success)} {(resolve)} 
      {
        (SQ <"\n"> <"\n"> <"\trm -f a* m* &&\n"> <"\tgit reset --hard anchor &&\n"> <"\n"> 
          <"\tif git merge -s resolve master\n"> <"\tthen\n"> <"\t\techo Oops, should not have succeeded\n"> <"\t\tfalse\n"> <"\telse\n"> 
          <"\t\tgit ls-files -s >current\n"> <"\t\ttest_cmp current expect\n"> <"\tfi\n">
        )
      }
    )
    (C {(test_expect_success)} {(recursive)} 
      {
        (SQ <"\n"> <"\n"> <"\trm -f a* m* &&\n"> <"\tgit reset --hard anchor &&\n"> <"\n"> 
          <"\tif git merge -s recursive master\n"> <"\tthen\n"> <"\t\techo Oops, should not have succeeded\n"> <"\t\tfalse\n"> <"\telse\n"> 
          <"\t\tgit ls-files -s >current\n"> <"\t\ttest_cmp current expect\n"> <"\tfi\n">
        )
      }
    )
    (C {(test_done)})
  ]
)