git.toml 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203
  1. # The first Git repo: additions and modifications
  2. [[cmd]]
  3. name = "‘exa --git -l’ shows a Git status column"
  4. shell = "exa --git -l /testcases/git"
  5. stdout = { file = "outputs/git1_long.ansitxt" }
  6. stderr = { empty = true }
  7. status = 0
  8. tags = [ 'long', 'git' ]
  9. [[cmd]]
  10. name = "‘exa --git -lR’ shows a Git status column in every table"
  11. shell = "exa --git -lR /testcases/git"
  12. stdout = { file = "outputs/git1_long_recurse.ansitxt" }
  13. stderr = { empty = true }
  14. status = 0
  15. tags = [ 'long', 'git' ]
  16. [[cmd]]
  17. name = "‘exa --git -lT’ shows a Git status column alongside the tree"
  18. shell = "exa --git -lT /testcases/git"
  19. stdout = { file = "outputs/git1_long_tree.ansitxt" }
  20. stderr = { empty = true }
  21. status = 0
  22. tags = [ 'long', 'git' ]
  23. [[cmd]]
  24. name = "‘exa --git -l’ with a directory argument shows the combined Git status column"
  25. shell = "exa --git -l /testcases/git/moves/thither"
  26. stdout = { file = "outputs/git1_long_moves.ansitxt" }
  27. stderr = { empty = true }
  28. status = 0
  29. tags = [ 'long', 'git' ]
  30. [[cmd]]
  31. name = "‘exa --git -l’ shows a Git status column containing new files"
  32. shell = "exa --git -l /testcases/git/additions"
  33. stdout = { file = "outputs/git1_long_additions.ansitxt" }
  34. stderr = { empty = true }
  35. status = 0
  36. tags = [ 'long', 'git' ]
  37. [[cmd]]
  38. name = "‘exa --git -l’ shows a Git status column containing modified files"
  39. shell = "exa --git -l /testcases/git/edits"
  40. stdout = { file = "outputs/git1_long_edits.ansitxt" }
  41. stderr = { empty = true }
  42. status = 0
  43. tags = [ 'long', 'git' ]
  44. [[cmd]]
  45. name = "‘exa --git -l’ shows a Git status column containing multiple statuses"
  46. shell = "exa --git -l /testcases/git/{additions,edits}"
  47. stdout = { file = "outputs/git1_long_multiple.ansitxt" }
  48. stderr = { empty = true }
  49. status = 0
  50. tags = [ 'long', 'git' ]
  51. [[cmd]]
  52. name = "‘exa --git -lGd’ with file arguments shows a Git status column"
  53. shell = "exa --git -lGd /testcases/git/**/* /testcases"
  54. environment = { COLUMNS = "150" }
  55. stdout = { file = "outputs/git1_paths_long_grid.ansitxt" }
  56. stderr = { empty = true }
  57. status = 0
  58. tags = [ 'long', 'grid', 'git', 'list-dirs' ]
  59. # The second Git repo: nested repositories and file ignoring
  60. [[cmd]]
  61. name = "‘exa --git -l’ shows a Git status column with ignored statuses"
  62. shell = "exa --git -l /testcases/git2"
  63. stdout = { file = "outputs/git2_long.ansitxt" }
  64. stderr = { empty = true }
  65. status = 0
  66. tags = [ 'long', 'git' ]
  67. [[cmd]]
  68. name = "‘exa --git -lR’ shows a Git status column in every table, handling ignored files and nested repositories"
  69. shell = "exa --git -lR /testcases/git2"
  70. stdout = { file = "outputs/git2_long_recurse.ansitxt" }
  71. stderr = { empty = true }
  72. status = 0
  73. tags = [ 'long', 'git' ]
  74. [[cmd]]
  75. name = "‘exa --git -lT’ shows a Git status column alongside the tree, handling ignored files and nested repositories"
  76. shell = "exa --git -lT /testcases/git2"
  77. stdout = { file = "outputs/git2_long_tree.ansitxt" }
  78. stderr = { empty = true }
  79. status = 0
  80. tags = [ 'long', 'git' ]
  81. [[cmd]]
  82. name = "‘exa --git -l’ with a directory argument shows ignored flags inside a directory"
  83. shell = "exa --git -l /testcases/git2/ignoreds"
  84. stdout = { file = "outputs/git2_long_ignorednested.ansitxt" }
  85. stderr = { empty = true }
  86. status = 0
  87. tags = [ 'long', 'git' ]
  88. [[cmd]]
  89. name = "‘exa --git -l’ with an ignored directory argument flags the contents as ignored"
  90. shell = "exa --git -l /testcases/git2/target"
  91. stdout = { file = "outputs/git2_long_ignoreddir.ansitxt" }
  92. stderr = { empty = true }
  93. status = 0
  94. tags = [ 'long', 'git' ]
  95. [[cmd]]
  96. name = "‘exa --git -l --list-dirs’ with a directory argument doesn’t flag it as ignored if only the content is"
  97. shell = "exa --git -l --list-dirs /testcases/git2/ignoreds/nested2"
  98. stdout = { file = "outputs/git2_long_ignoredcontent.ansitxt" }
  99. stderr = { empty = true }
  100. status = 0
  101. tags = [ 'long', 'git' ]
  102. [[cmd]]
  103. name = "‘exa --git -l’ with a nested repository argument uses the sub-repository rules"
  104. shell = "exa --git -l /testcases/git2/deeply/nested/repository"
  105. stdout = { file = "outputs/git2_long_nested.ansitxt" }
  106. stderr = { empty = true }
  107. status = 0
  108. tags = [ 'long', 'git' ]
  109. [[cmd]]
  110. name = "‘exa --git -l’ with multiple directory arguments still gets the flags correct"
  111. shell = "exa --git -l /testcases/git2/{deeply,ignoreds,target}"
  112. stdout = { file = "outputs/git2_long_multiple.ansitxt" }
  113. stderr = { empty = true }
  114. status = 0
  115. tags = [ 'long', 'git' ]
  116. # The third Git repo: broken symlinks
  117. [[cmd]]
  118. name = "‘exa --git -l’ handles broken symlinks in Git repositories"
  119. shell = "exa --git -l /testcases/git3"
  120. stdout = { file = "outputs/git3_long.ansitxt" }
  121. stderr = { empty = true }
  122. status = 0
  123. tags = [ 'long', 'git' ]
  124. # The forth Git repo: non UTF-8 file
  125. [[cmd]]
  126. name = "‘exa --git -l’ handles non UTF8 file in Git repositories"
  127. shell = "exa --git -l /testcases/git4"
  128. stdout = { file = "outputs/git4_long.ansitxt" }
  129. stderr = { empty = true }
  130. status = 0
  131. tags = [ 'long', 'git' ]
  132. # Both repositories 1 and 2 at once
  133. [[cmd]]
  134. name = "‘exa --git -l’ shows a Git status column for multiple repositories"
  135. shell = "exa --git -l /testcases/git /testcases/git2"
  136. stdout = { file = "outputs/git1+2_long.ansitxt" }
  137. stderr = { empty = true }
  138. status = 0
  139. tags = [ 'long', 'git' ]
  140. [[cmd]]
  141. name = "‘exa --git -l’ shows a Git status column for multiple repositories across multiple directories"
  142. shell = "exa --git -l /testcases/{git/additions,git2/deeply,git/edits,git2/deeply/nested}"
  143. stdout = { file = "outputs/git1+2_long_directories.ansitxt" }
  144. stderr = { empty = true }
  145. status = 0
  146. tags = [ 'long', 'git' ]
  147. [[cmd]]
  148. name = "‘exa --git -l’ shows a Git status column for multiple repositories across multiple directories 2"
  149. shell = "exa --git -l /testcases/{git2/deeply/nested/directory,git/edits,git2/target,git2/deeply,git}"
  150. stdout = { file = "outputs/git1+2_long_nested.ansitxt" }
  151. stderr = { empty = true }
  152. status = 0
  153. tags = [ 'long', 'git' ]
  154. # No repository present
  155. [[cmd]]
  156. name = "‘exa --git -l’ shows an empty status for no repository"
  157. shell = "exa --git -l /testcases/files"
  158. stdout = { file = "outputs/files_long.ansitxt" }
  159. stderr = { empty = true }
  160. status = 0
  161. tags = [ 'long', 'git' ]
  162. [[cmd]]
  163. name = "‘exa --git -lG’ shows an empty status for no repository"
  164. shell = "exa --git -lG /testcases/files"
  165. environment = { COLUMNS = "40" }
  166. stdout = { file = "outputs/files_long_grid_1col.ansitxt" }
  167. stderr = { empty = true }
  168. status = 0
  169. tags = [ 'env', 'long', 'grid', 'git' ]