(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:test_description)
          op: assign_op.Equal
          rhs: 
            {
              (SQ 
                (Token
                  id: Id.Lit_Chars
                  val: 'Clone repositories and store files in Mock LFS'
                  span_id: 6
                )
              )
            }
          spids: [4]
        )
      ]
    )
    (C {(.)} {(./lib-git-p4.sh)})
    (command.ShFunction
      name: test_file_is_not_in_mock_lfs
      body: 
        (command.BraceGroup
          children: [
            (command.AndOr
              ops: [Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp]
              children: [
                (command.ShAssignment
                  pairs: [
                    (assign_pair
                      lhs: (sh_lhs_expr.Name name:FILE)
                      op: assign_op.Equal
                      rhs: {(DQ ($ Id.VSub_Number '$1'))}
                      spids: [23]
                    )
                  ]
                )
                (command.ShAssignment
                  pairs: [
                    (assign_pair
                      lhs: (sh_lhs_expr.Name name:CONTENT)
                      op: assign_op.Equal
                      rhs: {(DQ ($ Id.VSub_Number '$2'))}
                      spids: [31]
                    )
                  ]
                )
                (command.Simple
                  words: [{(echo)} {(DQ ($ Id.VSub_DollarName '$CONTENT'))}]
                  redirects: [
                    (redir.Redir
                      op: (Token id:Id.Redir_Great val:'>' span_id:45)
                      fd: -1
                      arg_word: {(expect_content)}
                    )
                  ]
                )
                (C {(test_path_is_file)} {(DQ ($ Id.VSub_DollarName '$FILE'))})
                (C {(test_cmp)} {(expect_content)} {(DQ ($ Id.VSub_DollarName '$FILE'))})
              ]
            )
          ]
        )
    )
    (command.ShFunction
      name: test_file_is_in_mock_lfs
      body: 
        (command.BraceGroup
          children: [
            (command.AndOr
              ops: [
                Id.Op_DAmp
                Id.Op_DAmp
                Id.Op_DAmp
                Id.Op_DAmp
                Id.Op_DAmp
                Id.Op_DAmp
                Id.Op_DAmp
                Id.Op_DAmp
                Id.Op_DAmp
                Id.Op_DAmp
                Id.Op_DAmp
              ]
              children: [
                (command.ShAssignment
                  pairs: [
                    (assign_pair
                      lhs: (sh_lhs_expr.Name name:FILE)
                      op: assign_op.Equal
                      rhs: {(DQ ($ Id.VSub_Number '$1'))}
                      spids: [79]
                    )
                  ]
                )
                (command.ShAssignment
                  pairs: [
                    (assign_pair
                      lhs: (sh_lhs_expr.Name name:CONTENT)
                      op: assign_op.Equal
                      rhs: {(DQ ($ Id.VSub_Number '$2'))}
                      spids: [87]
                    )
                  ]
                )
                (command.ShAssignment
                  pairs: [
                    (assign_pair
                      lhs: (sh_lhs_expr.Name name:LOCAL_STORAGE)
                      op: assign_op.Equal
                      rhs: {(DQ (.git/mock-storage/local/) ($ Id.VSub_DollarName '$CONTENT'))}
                      spids: [95]
                    )
                  ]
                )
                (command.ShAssignment
                  pairs: [
                    (assign_pair
                      lhs: (sh_lhs_expr.Name name:SERVER_STORAGE)
                      op: assign_op.Equal
                      rhs: {(DQ (.git/mock-storage/remote/) ($ Id.VSub_DollarName '$CONTENT'))}
                      spids: [104]
                    )
                  ]
                )
                (command.Simple
                  words: [{(echo)} {(DQ (pointer-) ($ Id.VSub_DollarName '$CONTENT'))}]
                  redirects: [
                    (redir.Redir
                      op: (Token id:Id.Redir_Great val:'>' span_id:120)
                      fd: -1
                      arg_word: {(expect_pointer)}
                    )
                  ]
                )
                (command.Simple
                  words: [{(echo)} {(DQ ($ Id.VSub_DollarName '$CONTENT'))}]
                  redirects: [
                    (redir.Redir
                      op: (Token id:Id.Redir_Great val:'>' span_id:132)
                      fd: -1
                      arg_word: {(expect_content)}
                    )
                  ]
                )
                (C {(test_path_is_file)} {(DQ ($ Id.VSub_DollarName '$FILE'))})
                (C {(test_path_is_file)} {(DQ ($ Id.VSub_DollarName '$LOCAL_STORAGE'))})
                (C {(test_path_is_file)} {(DQ ($ Id.VSub_DollarName '$SERVER_STORAGE'))})
                (C {(test_cmp)} {(expect_pointer)} {(DQ ($ Id.VSub_DollarName '$FILE'))})
                (C {(test_cmp)} {(expect_content)} {(DQ ($ Id.VSub_DollarName '$LOCAL_STORAGE'))})
                (C {(test_cmp)} {(expect_content)} {(DQ ($ Id.VSub_DollarName '$SERVER_STORAGE'))})
              ]
            )
          ]
        )
    )
    (command.ShFunction
      name: test_file_is_deleted_in_mock_lfs
      body: 
        (command.BraceGroup
          children: [
            (command.AndOr
              ops: [
                Id.Op_DAmp
                Id.Op_DAmp
                Id.Op_DAmp
                Id.Op_DAmp
                Id.Op_DAmp
                Id.Op_DAmp
                Id.Op_DAmp
                Id.Op_DAmp
                Id.Op_DAmp
                Id.Op_DAmp
              ]
              children: [
                (command.ShAssignment
                  pairs: [
                    (assign_pair
                      lhs: (sh_lhs_expr.Name name:FILE)
                      op: assign_op.Equal
                      rhs: {(DQ ($ Id.VSub_Number '$1'))}
                      spids: [206]
                    )
                  ]
                )
                (command.ShAssignment
                  pairs: [
                    (assign_pair
                      lhs: (sh_lhs_expr.Name name:CONTENT)
                      op: assign_op.Equal
                      rhs: {(DQ ($ Id.VSub_Number '$2'))}
                      spids: [214]
                    )
                  ]
                )
                (command.ShAssignment
                  pairs: [
                    (assign_pair
                      lhs: (sh_lhs_expr.Name name:LOCAL_STORAGE)
                      op: assign_op.Equal
                      rhs: {(DQ (.git/mock-storage/local/) ($ Id.VSub_DollarName '$CONTENT'))}
                      spids: [222]
                    )
                  ]
                )
                (command.ShAssignment
                  pairs: [
                    (assign_pair
                      lhs: (sh_lhs_expr.Name name:SERVER_STORAGE)
                      op: assign_op.Equal
                      rhs: {(DQ (.git/mock-storage/remote/) ($ Id.VSub_DollarName '$CONTENT'))}
                      spids: [231]
                    )
                  ]
                )
                (command.Simple
                  words: [{(echo)} {(DQ (pointer-) ($ Id.VSub_DollarName '$CONTENT'))}]
                  redirects: [
                    (redir.Redir
                      op: (Token id:Id.Redir_Great val:'>' span_id:247)
                      fd: -1
                      arg_word: {(expect_pointer)}
                    )
                  ]
                )
                (command.Simple
                  words: [{(echo)} {(DQ ($ Id.VSub_DollarName '$CONTENT'))}]
                  redirects: [
                    (redir.Redir
                      op: (Token id:Id.Redir_Great val:'>' span_id:259)
                      fd: -1
                      arg_word: {(expect_content)}
                    )
                  ]
                )
                (C {(test_path_is_missing)} {(DQ ($ Id.VSub_DollarName '$FILE'))})
                (C {(test_path_is_file)} {(DQ ($ Id.VSub_DollarName '$LOCAL_STORAGE'))})
                (C {(test_path_is_file)} {(DQ ($ Id.VSub_DollarName '$SERVER_STORAGE'))})
                (C {(test_cmp)} {(expect_content)} {(DQ ($ Id.VSub_DollarName '$LOCAL_STORAGE'))})
                (C {(test_cmp)} {(expect_content)} {(DQ ($ Id.VSub_DollarName '$SERVER_STORAGE'))})
              ]
            )
          ]
        )
    )
    (command.ShFunction
      name: test_file_count_in_dir
      body: 
        (command.BraceGroup
          children: [
            (command.AndOr
              ops: [Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp]
              children: [
                (command.ShAssignment
                  pairs: [
                    (assign_pair
                      lhs: (sh_lhs_expr.Name name:DIR)
                      op: assign_op.Equal
                      rhs: {(DQ ($ Id.VSub_Number '$1'))}
                      spids: [322]
                    )
                  ]
                )
                (command.ShAssignment
                  pairs: [
                    (assign_pair
                      lhs: (sh_lhs_expr.Name name:EXPECTED_COUNT)
                      op: assign_op.Equal
                      rhs: {(DQ ($ Id.VSub_Number '$2'))}
                      spids: [330]
                    )
                  ]
                )
                (command.Simple
                  words: [{(find)} {(DQ ($ Id.VSub_DollarName '$DIR'))} {(-type)} {(f)}]
                  redirects: [
                    (redir.Redir
                      op: (Token id:Id.Redir_Great val:'>' span_id:348)
                      fd: -1
                      arg_word: {(actual)}
                    )
                  ]
                )
                (C {(test_line_count)} {(Id.Lit_Equals '=')} {($ Id.VSub_DollarName '$EXPECTED_COUNT')} 
                  {(actual)}
                )
              ]
            )
          ]
        )
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'start p4d' span_id:368))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:372) 
          (Token id:Id.Lit_Chars val:'\tstart_p4d\n' span_id:373)
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'Create repo with binary files' span_id:380))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:384) 
          (Token
            id: Id.Lit_Chars
            val: '\tclient_view "//depot/... //client/..." &&\n'
            span_id: 385
          ) (Token id:Id.Lit_Chars val:'\t(\n' span_id:386) 
          (Token id:Id.Lit_Chars val:'\t\tcd "$cli" &&\n' span_id:387) (Token id:Id.Lit_Chars val:'\n' span_id:388) 
          (Token
            id: Id.Lit_Chars
            val: '\t\techo "content 1 txt 23 bytes" >file1.txt &&\n'
            span_id: 389
          ) (Token id:Id.Lit_Chars val:'\t\tp4 add file1.txt &&\n' span_id:390) 
          (Token
            id: Id.Lit_Chars
            val: '\t\techo "content 2-3 bin 25 bytes" >file2.dat &&\n'
            span_id: 391
          ) (Token id:Id.Lit_Chars val:'\t\tp4 add file2.dat &&\n' span_id:392) 
          (Token
            id: Id.Lit_Chars
            val: '\t\tp4 submit -d "Add text and binary file" &&\n'
            span_id: 393
          ) (Token id:Id.Lit_Chars val:'\n' span_id:394) 
          (Token id:Id.Lit_Chars val:'\t\tmkdir "path with spaces" &&\n' span_id:395) 
          (Token
            id: Id.Lit_Chars
            val: '\t\techo "content 2-3 bin 25 bytes" >"path with spaces/file3.bin" &&\n'
            span_id: 396
          ) (Token id:Id.Lit_Chars val:'\t\tp4 add "path with spaces/file3.bin" &&\n' span_id:397) 
          (Token
            id: Id.Lit_Chars
            val: 
'\t\tp4 submit -d "Add another binary file with same content and spaces in path" &&\n'
            span_id: 398
          ) (Token id:Id.Lit_Chars val:'\n' span_id:399) 
          (Token
            id: Id.Lit_Chars
            val: '\t\techo "content 4 bin 26 bytes XX" >file4.bin &&\n'
            span_id: 400
          ) (Token id:Id.Lit_Chars val:'\t\tp4 add file4.bin &&\n' span_id:401) 
          (Token
            id: Id.Lit_Chars
            val: '\t\tp4 submit -d "Add another binary file with different content"\n'
            span_id: 402
          ) (Token id:Id.Lit_Chars val:'\t)\n' span_id:403)
        )
      }
    )
    (C {(test_expect_success)} 
      {
        (SQ 
          (Token
            id: Id.Lit_Chars
            val: 'Store files in Mock LFS based on size (>24 bytes)'
            span_id: 410
          )
        )
      } 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:414) 
          (Token
            id: Id.Lit_Chars
            val: '\tclient_view "//depot/... //client/..." &&\n'
            span_id: 415
          ) (Token id:Id.Lit_Chars val:'\ttest_when_finished cleanup_git &&\n' span_id:416) 
          (Token id:Id.Lit_Chars val:'\t(\n' span_id:417) (Token id:Id.Lit_Chars val:'\t\tcd "$git" &&\n' span_id:418) 
          (Token id:Id.Lit_Chars val:'\t\tgit init . &&\n' span_id:419) (Token id:Id.Lit_Chars val:'\t\tgit config git-p4.useClientSpec true &&\n' span_id:420) 
          (Token
            id: Id.Lit_Chars
            val: '\t\tgit config git-p4.largeFileSystem MockLFS &&\n'
            span_id: 421
          ) (Token id:Id.Lit_Chars val:'\t\tgit config git-p4.largeFileThreshold 24 &&\n' span_id:422) 
          (Token
            id: Id.Lit_Chars
            val: '\t\tgit config git-p4.largeFilePush True &&\n'
            span_id: 423
          ) (Token id:Id.Lit_Chars val:'\t\tgit p4 clone --destination="$git" //depot@all &&\n' span_id:424) 
          (Token id:Id.Lit_Chars val:'\n' span_id:425) 
          (Token
            id: Id.Lit_Chars
            val: '\t\ttest_file_is_not_in_mock_lfs file1.txt "content 1 txt 23 bytes" &&\n'
            span_id: 426
          ) 
          (Token
            id: Id.Lit_Chars
            val: '\t\ttest_file_is_in_mock_lfs file2.dat "content 2-3 bin 25 bytes" &&\n'
            span_id: 427
          ) 
          (Token
            id: Id.Lit_Chars
            val: 
'\t\ttest_file_is_in_mock_lfs "path with spaces/file3.bin" "content 2-3 bin 25 bytes" &&\n'
            span_id: 428
          ) 
          (Token
            id: Id.Lit_Chars
            val: '\t\ttest_file_is_in_mock_lfs file4.bin "content 4 bin 26 bytes XX" &&\n'
            span_id: 429
          ) (Token id:Id.Lit_Chars val:'\n' span_id:430) 
          (Token
            id: Id.Lit_Chars
            val: '\t\ttest_file_count_in_dir ".git/mock-storage/local" 2 &&\n'
            span_id: 431
          ) (Token id:Id.Lit_Chars val:'\t\ttest_file_count_in_dir ".git/mock-storage/remote" 2\n' span_id:432) 
          (Token id:Id.Lit_Chars val:'\t)\n' span_id:433)
        )
      }
    )
    (C {(test_expect_success)} 
      {
        (SQ 
          (Token
            id: Id.Lit_Chars
            val: 'Store files in Mock LFS based on extension (dat)'
            span_id: 440
          )
        )
      } 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:444) 
          (Token
            id: Id.Lit_Chars
            val: '\tclient_view "//depot/... //client/..." &&\n'
            span_id: 445
          ) (Token id:Id.Lit_Chars val:'\ttest_when_finished cleanup_git &&\n' span_id:446) 
          (Token id:Id.Lit_Chars val:'\t(\n' span_id:447) (Token id:Id.Lit_Chars val:'\t\tcd "$git" &&\n' span_id:448) 
          (Token id:Id.Lit_Chars val:'\t\tgit init . &&\n' span_id:449) (Token id:Id.Lit_Chars val:'\t\tgit config git-p4.useClientSpec true &&\n' span_id:450) 
          (Token
            id: Id.Lit_Chars
            val: '\t\tgit config git-p4.largeFileSystem MockLFS &&\n'
            span_id: 451
          ) (Token id:Id.Lit_Chars val:'\t\tgit config git-p4.largeFileExtensions dat &&\n' span_id:452) 
          (Token
            id: Id.Lit_Chars
            val: '\t\tgit config git-p4.largeFilePush True &&\n'
            span_id: 453
          ) (Token id:Id.Lit_Chars val:'\t\tgit p4 clone --destination="$git" //depot@all &&\n' span_id:454) 
          (Token id:Id.Lit_Chars val:'\n' span_id:455) 
          (Token
            id: Id.Lit_Chars
            val: '\t\ttest_file_is_not_in_mock_lfs file1.txt "content 1 txt 23 bytes" &&\n'
            span_id: 456
          ) 
          (Token
            id: Id.Lit_Chars
            val: '\t\ttest_file_is_in_mock_lfs file2.dat "content 2-3 bin 25 bytes" &&\n'
            span_id: 457
          ) 
          (Token
            id: Id.Lit_Chars
            val: 
'\t\ttest_file_is_not_in_mock_lfs "path with spaces/file3.bin" "content 2-3 bin 25 bytes" &&\n'
            span_id: 458
          ) 
          (Token
            id: Id.Lit_Chars
            val: '\t\ttest_file_is_not_in_mock_lfs file4.bin "content 4 bin 26 bytes XX" &&\n'
            span_id: 459
          ) (Token id:Id.Lit_Chars val:'\n' span_id:460) 
          (Token
            id: Id.Lit_Chars
            val: '\t\ttest_file_count_in_dir ".git/mock-storage/local" 1 &&\n'
            span_id: 461
          ) (Token id:Id.Lit_Chars val:'\t\ttest_file_count_in_dir ".git/mock-storage/remote" 1\n' span_id:462) 
          (Token id:Id.Lit_Chars val:'\t)\n' span_id:463)
        )
      }
    )
    (C {(test_expect_success)} 
      {
        (SQ 
          (Token
            id: Id.Lit_Chars
            val: 
'Store files in Mock LFS based on extension (dat) and use git p4 sync and no client spec'
            span_id: 470
          )
        )
      } 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:474) 
          (Token id:Id.Lit_Chars val:'\ttest_when_finished cleanup_git &&\n' span_id:475) (Token id:Id.Lit_Chars val:'\t(\n' span_id:476) 
          (Token id:Id.Lit_Chars val:'\t\tcd "$git" &&\n' span_id:477) (Token id:Id.Lit_Chars val:'\t\tgit init &&\n' span_id:478) 
          (Token
            id: Id.Lit_Chars
            val: '\t\tgit config git-p4.useClientSpec true &&\n'
            span_id: 479
          ) (Token id:Id.Lit_Chars val:'\t\tgit config git-p4.largeFileSystem MockLFS &&\n' span_id:480) 
          (Token
            id: Id.Lit_Chars
            val: '\t\tgit config git-p4.largeFileExtensions dat &&\n'
            span_id: 481
          ) (Token id:Id.Lit_Chars val:'\t\tgit config git-p4.largeFilePush True &&\n' span_id:482) 
          (Token id:Id.Lit_Chars val:'\t\tgit p4 sync //depot &&\n' span_id:483) (Token id:Id.Lit_Chars val:'\t\tgit checkout p4/master &&\n' span_id:484) 
          (Token id:Id.Lit_Chars val:'\n' span_id:485) 
          (Token
            id: Id.Lit_Chars
            val: '\t\ttest_file_is_not_in_mock_lfs file1.txt "content 1 txt 23 bytes" &&\n'
            span_id: 486
          ) 
          (Token
            id: Id.Lit_Chars
            val: '\t\ttest_file_is_in_mock_lfs file2.dat "content 2-3 bin 25 bytes" &&\n'
            span_id: 487
          ) 
          (Token
            id: Id.Lit_Chars
            val: 
'\t\ttest_file_is_not_in_mock_lfs "path with spaces/file3.bin" "content 2-3 bin 25 bytes" &&\n'
            span_id: 488
          ) 
          (Token
            id: Id.Lit_Chars
            val: '\t\ttest_file_is_not_in_mock_lfs file4.bin "content 4 bin 26 bytes XX" &&\n'
            span_id: 489
          ) (Token id:Id.Lit_Chars val:'\n' span_id:490) 
          (Token
            id: Id.Lit_Chars
            val: '\t\ttest_file_count_in_dir ".git/mock-storage/local" 1 &&\n'
            span_id: 491
          ) (Token id:Id.Lit_Chars val:'\t\ttest_file_count_in_dir ".git/mock-storage/remote" 1\n' span_id:492) 
          (Token id:Id.Lit_Chars val:'\t)\n' span_id:493)
        )
      }
    )
    (C {(test_expect_success)} 
      {
        (SQ 
          (Token
            id: Id.Lit_Chars
            val: 'Remove file from repo and store files in Mock LFS based on size (>24 bytes)'
            span_id: 500
          )
        )
      } 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:504) 
          (Token
            id: Id.Lit_Chars
            val: '\tclient_view "//depot/... //client/..." &&\n'
            span_id: 505
          ) (Token id:Id.Lit_Chars val:'\t(\n' span_id:506) 
          (Token id:Id.Lit_Chars val:'\t\tcd "$cli" &&\n' span_id:507) (Token id:Id.Lit_Chars val:'\t\tp4 delete file4.bin &&\n' span_id:508) 
          (Token id:Id.Lit_Chars val:'\t\tp4 submit -d "Remove file"\n' span_id:509) (Token id:Id.Lit_Chars val:'\t) &&\n' span_id:510) (Token id:Id.Lit_Chars val:'\n' span_id:511) 
          (Token
            id: Id.Lit_Chars
            val: '\tclient_view "//depot/... //client/..." &&\n'
            span_id: 512
          ) (Token id:Id.Lit_Chars val:'\ttest_when_finished cleanup_git &&\n' span_id:513) 
          (Token id:Id.Lit_Chars val:'\t(\n' span_id:514) (Token id:Id.Lit_Chars val:'\t\tcd "$git" &&\n' span_id:515) 
          (Token id:Id.Lit_Chars val:'\t\tgit init . &&\n' span_id:516) (Token id:Id.Lit_Chars val:'\t\tgit config git-p4.useClientSpec true &&\n' span_id:517) 
          (Token
            id: Id.Lit_Chars
            val: '\t\tgit config git-p4.largeFileSystem MockLFS &&\n'
            span_id: 518
          ) (Token id:Id.Lit_Chars val:'\t\tgit config git-p4.largeFileThreshold 24 &&\n' span_id:519) 
          (Token
            id: Id.Lit_Chars
            val: '\t\tgit config git-p4.largeFilePush True &&\n'
            span_id: 520
          ) (Token id:Id.Lit_Chars val:'\t\tgit p4 clone --destination="$git" //depot@all &&\n' span_id:521) 
          (Token id:Id.Lit_Chars val:'\n' span_id:522) 
          (Token
            id: Id.Lit_Chars
            val: '\t\ttest_file_is_not_in_mock_lfs file1.txt "content 1 txt 23 bytes" &&\n'
            span_id: 523
          ) 
          (Token
            id: Id.Lit_Chars
            val: '\t\ttest_file_is_in_mock_lfs file2.dat "content 2-3 bin 25 bytes" &&\n'
            span_id: 524
          ) 
          (Token
            id: Id.Lit_Chars
            val: 
'\t\ttest_file_is_in_mock_lfs "path with spaces/file3.bin" "content 2-3 bin 25 bytes" &&\n'
            span_id: 525
          ) 
          (Token
            id: Id.Lit_Chars
            val: '\t\ttest_file_is_deleted_in_mock_lfs file4.bin "content 4 bin 26 bytes XX" &&\n'
            span_id: 526
          ) (Token id:Id.Lit_Chars val:'\n' span_id:527) 
          (Token
            id: Id.Lit_Chars
            val: '\t\ttest_file_count_in_dir ".git/mock-storage/local" 2 &&\n'
            span_id: 528
          ) (Token id:Id.Lit_Chars val:'\t\ttest_file_count_in_dir ".git/mock-storage/remote" 2\n' span_id:529) 
          (Token id:Id.Lit_Chars val:'\t)\n' span_id:530)
        )
      }
    )
    (C {(test_expect_success)} 
      {
        (SQ 
          (Token
            id: Id.Lit_Chars
            val: 'Run git p4 submit in repo configured with large file system'
            span_id: 537
          )
        )
      } 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:541) 
          (Token
            id: Id.Lit_Chars
            val: '\tclient_view "//depot/... //client/..." &&\n'
            span_id: 542
          ) (Token id:Id.Lit_Chars val:'\ttest_when_finished cleanup_git &&\n' span_id:543) 
          (Token id:Id.Lit_Chars val:'\t(\n' span_id:544) (Token id:Id.Lit_Chars val:'\t\tcd "$git" &&\n' span_id:545) 
          (Token id:Id.Lit_Chars val:'\t\tgit init . &&\n' span_id:546) (Token id:Id.Lit_Chars val:'\t\tgit config git-p4.useClientSpec true &&\n' span_id:547) 
          (Token
            id: Id.Lit_Chars
            val: '\t\tgit config git-p4.largeFileSystem MockLFS &&\n'
            span_id: 548
          ) (Token id:Id.Lit_Chars val:'\t\tgit config git-p4.largeFileThreshold 24 &&\n' span_id:549) 
          (Token
            id: Id.Lit_Chars
            val: '\t\tgit config git-p4.largeFilePush True &&\n'
            span_id: 550
          ) (Token id:Id.Lit_Chars val:'\t\tgit p4 clone --destination="$git" //depot@all &&\n' span_id:551) 
          (Token id:Id.Lit_Chars val:'\n' span_id:552) (Token id:Id.Lit_Chars val:'\t\ttest_must_fail git p4 submit\n' span_id:553) 
          (Token id:Id.Lit_Chars val:'\t)\n' span_id:554)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'kill p4d' span_id:561))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:565) 
          (Token id:Id.Lit_Chars val:'\tkill_p4d\n' span_id:566)
        )
      }
    )
    (C {(test_done)})
  ]
)