launchable 1.87.1__tar.gz → 1.87.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (327) hide show
  1. {launchable-1.87.1 → launchable-1.87.2}/.github/workflows/bazel-test.yml +1 -1
  2. {launchable-1.87.1 → launchable-1.87.2}/.github/workflows/python-package.yml +1 -1
  3. {launchable-1.87.1 → launchable-1.87.2}/.github/workflows/python-publish.yml +1 -1
  4. {launchable-1.87.1 → launchable-1.87.2}/PKG-INFO +1 -1
  5. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/launchable.py +28 -24
  6. launchable-1.87.2/launchable/test_runners/minitest.py +33 -0
  7. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/nunit.py +1 -13
  8. {launchable-1.87.1 → launchable-1.87.2}/launchable.egg-info/PKG-INFO +1 -1
  9. {launchable-1.87.1 → launchable-1.87.2}/tests/data/minitest/record_test_result.json +28 -2
  10. {launchable-1.87.1 → launchable-1.87.2}/tests/data/minitest/record_test_result_chunk1.json +10 -5
  11. {launchable-1.87.1 → launchable-1.87.2}/tests/data/minitest/record_test_result_chunk2.json +6 -3
  12. {launchable-1.87.1 → launchable-1.87.2}/tests/test_runners/test_minitest.py +21 -0
  13. launchable-1.87.1/launchable/test_runners/minitest.py +0 -5
  14. {launchable-1.87.1 → launchable-1.87.2}/.bazelrc +0 -0
  15. {launchable-1.87.1 → launchable-1.87.2}/.bazelversion +0 -0
  16. {launchable-1.87.1 → launchable-1.87.2}/.editorconfig +0 -0
  17. {launchable-1.87.1 → launchable-1.87.2}/.github/release.yml +0 -0
  18. {launchable-1.87.1 → launchable-1.87.2}/.github/workflows/e2e.yml +0 -0
  19. {launchable-1.87.1 → launchable-1.87.2}/.github/workflows/update_maven_install_json.yml +0 -0
  20. {launchable-1.87.1 → launchable-1.87.2}/.gitignore +0 -0
  21. {launchable-1.87.1 → launchable-1.87.2}/.pre-commit-config.yaml +0 -0
  22. {launchable-1.87.1 → launchable-1.87.2}/.python-version +0 -0
  23. {launchable-1.87.1 → launchable-1.87.2}/.tagpr +0 -0
  24. {launchable-1.87.1 → launchable-1.87.2}/CONTRIBUTING.md +0 -0
  25. {launchable-1.87.1 → launchable-1.87.2}/Dockerfile +0 -0
  26. {launchable-1.87.1 → launchable-1.87.2}/LICENSE.txt +0 -0
  27. {launchable-1.87.1 → launchable-1.87.2}/Pipfile +0 -0
  28. {launchable-1.87.1 → launchable-1.87.2}/README.md +0 -0
  29. {launchable-1.87.1 → launchable-1.87.2}/WORKSPACE +0 -0
  30. {launchable-1.87.1 → launchable-1.87.2}/launchable/__init__.py +0 -0
  31. {launchable-1.87.1 → launchable-1.87.2}/launchable/__main__.py +0 -0
  32. {launchable-1.87.1 → launchable-1.87.2}/launchable/app.py +0 -0
  33. {launchable-1.87.1 → launchable-1.87.2}/launchable/commands/__init__.py +0 -0
  34. {launchable-1.87.1 → launchable-1.87.2}/launchable/commands/helper.py +0 -0
  35. {launchable-1.87.1 → launchable-1.87.2}/launchable/commands/inspect/__init__.py +0 -0
  36. {launchable-1.87.1 → launchable-1.87.2}/launchable/commands/inspect/subset.py +0 -0
  37. {launchable-1.87.1 → launchable-1.87.2}/launchable/commands/inspect/tests.py +0 -0
  38. {launchable-1.87.1 → launchable-1.87.2}/launchable/commands/record/__init__.py +0 -0
  39. {launchable-1.87.1 → launchable-1.87.2}/launchable/commands/record/attachment.py +0 -0
  40. {launchable-1.87.1 → launchable-1.87.2}/launchable/commands/record/build.py +0 -0
  41. {launchable-1.87.1 → launchable-1.87.2}/launchable/commands/record/case_event.py +0 -0
  42. {launchable-1.87.1 → launchable-1.87.2}/launchable/commands/record/commit.py +0 -0
  43. {launchable-1.87.1 → launchable-1.87.2}/launchable/commands/record/session.py +0 -0
  44. {launchable-1.87.1 → launchable-1.87.2}/launchable/commands/record/tests.py +0 -0
  45. {launchable-1.87.1 → launchable-1.87.2}/launchable/commands/split_subset.py +0 -0
  46. {launchable-1.87.1 → launchable-1.87.2}/launchable/commands/stats/__init__.py +0 -0
  47. {launchable-1.87.1 → launchable-1.87.2}/launchable/commands/stats/test_sessions.py +0 -0
  48. {launchable-1.87.1 → launchable-1.87.2}/launchable/commands/subset.py +0 -0
  49. {launchable-1.87.1 → launchable-1.87.2}/launchable/commands/test_path_writer.py +0 -0
  50. {launchable-1.87.1 → launchable-1.87.2}/launchable/commands/verify.py +0 -0
  51. {launchable-1.87.1 → launchable-1.87.2}/launchable/jar/exe_deploy.jar +0 -0
  52. {launchable-1.87.1 → launchable-1.87.2}/launchable/plugins/__init__.py +0 -0
  53. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/__init__.py +0 -0
  54. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/adb.py +0 -0
  55. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/ant.py +0 -0
  56. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/bazel.py +0 -0
  57. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/behave.py +0 -0
  58. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/ctest.py +0 -0
  59. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/cts.py +0 -0
  60. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/cucumber.py +0 -0
  61. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/cypress.py +0 -0
  62. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/dotnet.py +0 -0
  63. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/file.py +0 -0
  64. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/go_test.py +0 -0
  65. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/googletest.py +0 -0
  66. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/gradle.py +0 -0
  67. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/jest.py +0 -0
  68. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/maven.py +0 -0
  69. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/playwright.py +0 -0
  70. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/prove.py +0 -0
  71. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/pytest.py +0 -0
  72. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/raw.py +0 -0
  73. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/robot.py +0 -0
  74. {launchable-1.87.1 → launchable-1.87.2}/launchable/test_runners/rspec.py +0 -0
  75. {launchable-1.87.1 → launchable-1.87.2}/launchable/testpath.py +0 -0
  76. {launchable-1.87.1 → launchable-1.87.2}/launchable/utils/__init__.py +0 -0
  77. {launchable-1.87.1 → launchable-1.87.2}/launchable/utils/authentication.py +0 -0
  78. {launchable-1.87.1 → launchable-1.87.2}/launchable/utils/ci_provider.py +0 -0
  79. {launchable-1.87.1 → launchable-1.87.2}/launchable/utils/click.py +0 -0
  80. {launchable-1.87.1 → launchable-1.87.2}/launchable/utils/commit_ingester.py +0 -0
  81. {launchable-1.87.1 → launchable-1.87.2}/launchable/utils/env_keys.py +0 -0
  82. {launchable-1.87.1 → launchable-1.87.2}/launchable/utils/exceptions.py +0 -0
  83. {launchable-1.87.1 → launchable-1.87.2}/launchable/utils/file_name_pattern.py +0 -0
  84. {launchable-1.87.1 → launchable-1.87.2}/launchable/utils/git_log_parser.py +0 -0
  85. {launchable-1.87.1 → launchable-1.87.2}/launchable/utils/glob.py +0 -0
  86. {launchable-1.87.1 → launchable-1.87.2}/launchable/utils/gzipgen.py +0 -0
  87. {launchable-1.87.1 → launchable-1.87.2}/launchable/utils/http_client.py +0 -0
  88. {launchable-1.87.1 → launchable-1.87.2}/launchable/utils/java.py +0 -0
  89. {launchable-1.87.1 → launchable-1.87.2}/launchable/utils/key_value_type.py +0 -0
  90. {launchable-1.87.1 → launchable-1.87.2}/launchable/utils/launchable_client.py +0 -0
  91. {launchable-1.87.1 → launchable-1.87.2}/launchable/utils/link.py +0 -0
  92. {launchable-1.87.1 → launchable-1.87.2}/launchable/utils/logger.py +0 -0
  93. {launchable-1.87.1 → launchable-1.87.2}/launchable/utils/no_build.py +0 -0
  94. {launchable-1.87.1 → launchable-1.87.2}/launchable/utils/sax.py +0 -0
  95. {launchable-1.87.1 → launchable-1.87.2}/launchable/utils/session.py +0 -0
  96. {launchable-1.87.1 → launchable-1.87.2}/launchable/utils/subprocess.py +0 -0
  97. {launchable-1.87.1 → launchable-1.87.2}/launchable/utils/tracking.py +0 -0
  98. {launchable-1.87.1 → launchable-1.87.2}/launchable/version.py +0 -0
  99. {launchable-1.87.1 → launchable-1.87.2}/launchable.egg-info/SOURCES.txt +0 -0
  100. {launchable-1.87.1 → launchable-1.87.2}/launchable.egg-info/dependency_links.txt +0 -0
  101. {launchable-1.87.1 → launchable-1.87.2}/launchable.egg-info/entry_points.txt +0 -0
  102. {launchable-1.87.1 → launchable-1.87.2}/launchable.egg-info/requires.txt +0 -0
  103. {launchable-1.87.1 → launchable-1.87.2}/launchable.egg-info/top_level.txt +0 -0
  104. {launchable-1.87.1 → launchable-1.87.2}/pyproject.toml +0 -0
  105. {launchable-1.87.1 → launchable-1.87.2}/renovate.json +0 -0
  106. {launchable-1.87.1 → launchable-1.87.2}/setup.cfg +0 -0
  107. {launchable-1.87.1 → launchable-1.87.2}/setup.py +0 -0
  108. {launchable-1.87.1 → launchable-1.87.2}/src/BUILD +0 -0
  109. {launchable-1.87.1 → launchable-1.87.2}/src/main/java/com/launchableinc/ingest/commits/Authenticator.java +0 -0
  110. {launchable-1.87.1 → launchable-1.87.2}/src/main/java/com/launchableinc/ingest/commits/BUILD +0 -0
  111. {launchable-1.87.1 → launchable-1.87.2}/src/main/java/com/launchableinc/ingest/commits/CommitGraphCollector.java +0 -0
  112. {launchable-1.87.1 → launchable-1.87.2}/src/main/java/com/launchableinc/ingest/commits/CommitIngester.java +0 -0
  113. {launchable-1.87.1 → launchable-1.87.2}/src/main/java/com/launchableinc/ingest/commits/CountingDiffFormatter.java +0 -0
  114. {launchable-1.87.1 → launchable-1.87.2}/src/main/java/com/launchableinc/ingest/commits/GitHubActionsAuthenticator.java +0 -0
  115. {launchable-1.87.1 → launchable-1.87.2}/src/main/java/com/launchableinc/ingest/commits/GitHubIdTokenAuthenticator.java +0 -0
  116. {launchable-1.87.1 → launchable-1.87.2}/src/main/java/com/launchableinc/ingest/commits/JSCommit.java +0 -0
  117. {launchable-1.87.1 → launchable-1.87.2}/src/main/java/com/launchableinc/ingest/commits/JSFileChange.java +0 -0
  118. {launchable-1.87.1 → launchable-1.87.2}/src/main/java/com/launchableinc/ingest/commits/ObjectRevFilter.java +0 -0
  119. {launchable-1.87.1 → launchable-1.87.2}/src/main/java/com/launchableinc/ingest/commits/SSLBypass.java +0 -0
  120. {launchable-1.87.1 → launchable-1.87.2}/src/main/java/com/launchableinc/ingest/commits/TokenAuthenticator.java +0 -0
  121. {launchable-1.87.1 → launchable-1.87.2}/src/maven_install.json +0 -0
  122. {launchable-1.87.1 → launchable-1.87.2}/src/test/java/com/launchableinc/ingest/commits/AllTests.java +0 -0
  123. {launchable-1.87.1 → launchable-1.87.2}/src/test/java/com/launchableinc/ingest/commits/BUILD +0 -0
  124. {launchable-1.87.1 → launchable-1.87.2}/src/test/java/com/launchableinc/ingest/commits/CommitGraphCollectorTest.java +0 -0
  125. {launchable-1.87.1 → launchable-1.87.2}/src/test/java/com/launchableinc/ingest/commits/CommitIngesterTest.java +0 -0
  126. {launchable-1.87.1 → launchable-1.87.2}/src/test/java/com/launchableinc/ingest/commits/SSLBypassTest.java +0 -0
  127. {launchable-1.87.1 → launchable-1.87.2}/src/test/java/com/launchableinc/ingest/commits/java8-compat.sh +0 -0
  128. {launchable-1.87.1 → launchable-1.87.2}/test-runner/__main__.py +0 -0
  129. {launchable-1.87.1 → launchable-1.87.2}/tests/__init__.py +0 -0
  130. {launchable-1.87.1 → launchable-1.87.2}/tests/cli_test_case.py +0 -0
  131. {launchable-1.87.1 → launchable-1.87.2}/tests/commands/__init__.py +0 -0
  132. {launchable-1.87.1 → launchable-1.87.2}/tests/commands/inspect/__init__.py +0 -0
  133. {launchable-1.87.1 → launchable-1.87.2}/tests/commands/inspect/test_subset.py +0 -0
  134. {launchable-1.87.1 → launchable-1.87.2}/tests/commands/inspect/test_tests.py +0 -0
  135. {launchable-1.87.1 → launchable-1.87.2}/tests/commands/record/__init__.py +0 -0
  136. {launchable-1.87.1 → launchable-1.87.2}/tests/commands/record/test_attachment.py +0 -0
  137. {launchable-1.87.1 → launchable-1.87.2}/tests/commands/record/test_build.py +0 -0
  138. {launchable-1.87.1 → launchable-1.87.2}/tests/commands/record/test_commit.py +0 -0
  139. {launchable-1.87.1 → launchable-1.87.2}/tests/commands/record/test_session.py +0 -0
  140. {launchable-1.87.1 → launchable-1.87.2}/tests/commands/record/test_tests.py +0 -0
  141. {launchable-1.87.1 → launchable-1.87.2}/tests/commands/test_api_error.py +0 -0
  142. {launchable-1.87.1 → launchable-1.87.2}/tests/commands/test_helper.py +0 -0
  143. {launchable-1.87.1 → launchable-1.87.2}/tests/commands/test_split_subset.py +0 -0
  144. {launchable-1.87.1 → launchable-1.87.2}/tests/commands/test_subset.py +0 -0
  145. {launchable-1.87.1 → launchable-1.87.2}/tests/commands/test_verify.py +0 -0
  146. {launchable-1.87.1 → launchable-1.87.2}/tests/data/adb/subset_result.json +0 -0
  147. {launchable-1.87.1 → launchable-1.87.2}/tests/data/ant/junitreport/TEST-com.launchable.HelloWorldTest.xml +0 -0
  148. {launchable-1.87.1 → launchable-1.87.2}/tests/data/ant/junitreport/TEST-com.launchable.library.CacheTest.xml +0 -0
  149. {launchable-1.87.1 → launchable-1.87.2}/tests/data/ant/junitreport/TESTS-TestSuites.xml +0 -0
  150. {launchable-1.87.1 → launchable-1.87.2}/tests/data/ant/record_test_result.json +0 -0
  151. {launchable-1.87.1 → launchable-1.87.2}/tests/data/ant/src/com/launchable/HelloWorld.java +0 -0
  152. {launchable-1.87.1 → launchable-1.87.2}/tests/data/ant/src/com/launchable/HelloWorldTest.java +0 -0
  153. {launchable-1.87.1 → launchable-1.87.2}/tests/data/ant/src/com/launchable/library/Cache.java +0 -0
  154. {launchable-1.87.1 → launchable-1.87.2}/tests/data/ant/src/com/launchable/library/CacheTest.java +0 -0
  155. {launchable-1.87.1 → launchable-1.87.2}/tests/data/ant/subset_result.json +0 -0
  156. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test1/test.cache_status +0 -0
  157. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test1/test.xml +0 -0
  158. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test2/test.cache_status +0 -0
  159. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test2/test.xml +0 -0
  160. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test3/test.cache_status +0 -0
  161. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test3/test.xml +0 -0
  162. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test4/test.cache_status +0 -0
  163. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test4/test.xml +0 -0
  164. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test5/test.cache_status +0 -0
  165. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test5/test.xml +0 -0
  166. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test6/test.cache_status +0 -0
  167. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test6/test.xml +0 -0
  168. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test7/test.cache_status +0 -0
  169. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test7/test.xml +0 -0
  170. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test8/test.cache_status +0 -0
  171. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test8/test.xml +0 -0
  172. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test9/test.cache_status +0 -0
  173. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/bazel-testlogs/src/test/java/com/ninjinkun/mylib_test9/test.xml +0 -0
  174. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/build_event.json +0 -0
  175. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/build_event_rest.json +0 -0
  176. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/record_test_result.json +0 -0
  177. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/record_test_with_build_event_json_result.json +0 -0
  178. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/record_test_with_multiple_build_event_json_result.json +0 -0
  179. {launchable-1.87.1 → launchable-1.87.2}/tests/data/bazel/subset_result.json +0 -0
  180. {launchable-1.87.1 → launchable-1.87.2}/tests/data/behave/record_test_result.json +0 -0
  181. {launchable-1.87.1 → launchable-1.87.2}/tests/data/behave/reports/report.xml +0 -0
  182. {launchable-1.87.1 → launchable-1.87.2}/tests/data/behave/subset_result.json +0 -0
  183. {launchable-1.87.1 → launchable-1.87.2}/tests/data/broken_xml/broken.xml +0 -0
  184. {launchable-1.87.1 → launchable-1.87.2}/tests/data/broken_xml/normal.xml +0 -0
  185. {launchable-1.87.1 → launchable-1.87.2}/tests/data/ctest/Testing/latest/Test.xml +0 -0
  186. {launchable-1.87.1 → launchable-1.87.2}/tests/data/ctest/ctest_list.json +0 -0
  187. {launchable-1.87.1 → launchable-1.87.2}/tests/data/ctest/record_test_result.json +0 -0
  188. {launchable-1.87.1 → launchable-1.87.2}/tests/data/ctest/subset_result.json +0 -0
  189. {launchable-1.87.1 → launchable-1.87.2}/tests/data/cts/record_test_result.json +0 -0
  190. {launchable-1.87.1 → launchable-1.87.2}/tests/data/cts/subset_result.json +0 -0
  191. {launchable-1.87.1 → launchable-1.87.2}/tests/data/cts/test_result.xml +0 -0
  192. {launchable-1.87.1 → launchable-1.87.2}/tests/data/cucumber/features/foo/bar.feature +0 -0
  193. {launchable-1.87.1 → launchable-1.87.2}/tests/data/cucumber/features/foo/is_it_friday_yet.feature +0 -0
  194. {launchable-1.87.1 → launchable-1.87.2}/tests/data/cucumber/features/foo-bar.feature +0 -0
  195. {launchable-1.87.1 → launchable-1.87.2}/tests/data/cucumber/features/is_it_friday_yet.feature +0 -0
  196. {launchable-1.87.1 → launchable-1.87.2}/tests/data/cucumber/record_test_json_result.json +0 -0
  197. {launchable-1.87.1 → launchable-1.87.2}/tests/data/cucumber/record_test_result.json +0 -0
  198. {launchable-1.87.1 → launchable-1.87.2}/tests/data/cucumber/report/TEST-features-foo-bar.xml +0 -0
  199. {launchable-1.87.1 → launchable-1.87.2}/tests/data/cucumber/report/TEST-features-foo-is_it_friday_yet.xml +0 -0
  200. {launchable-1.87.1 → launchable-1.87.2}/tests/data/cucumber/report/TEST-features-is_it_friday_yet.xml +0 -0
  201. {launchable-1.87.1 → launchable-1.87.2}/tests/data/cucumber/report/dummy.xml +0 -0
  202. {launchable-1.87.1 → launchable-1.87.2}/tests/data/cucumber/report/result.json +0 -0
  203. {launchable-1.87.1 → launchable-1.87.2}/tests/data/cypress/empty.json +0 -0
  204. {launchable-1.87.1 → launchable-1.87.2}/tests/data/cypress/empty.xml +0 -0
  205. {launchable-1.87.1 → launchable-1.87.2}/tests/data/cypress/record_test_result.json +0 -0
  206. {launchable-1.87.1 → launchable-1.87.2}/tests/data/cypress/subset_result.json +0 -0
  207. {launchable-1.87.1 → launchable-1.87.2}/tests/data/cypress/test-result.xml +0 -0
  208. {launchable-1.87.1 → launchable-1.87.2}/tests/data/dotnet/record_test_result.json +0 -0
  209. {launchable-1.87.1 → launchable-1.87.2}/tests/data/dotnet/test-result.xml +0 -0
  210. {launchable-1.87.1 → launchable-1.87.2}/tests/data/git_log_ingest/sample.out +0 -0
  211. {launchable-1.87.1 → launchable-1.87.2}/tests/data/go_test/record_test_result.json +0 -0
  212. {launchable-1.87.1 → launchable-1.87.2}/tests/data/go_test/reportv1/reportv1.xml +0 -0
  213. {launchable-1.87.1 → launchable-1.87.2}/tests/data/go_test/reportv2/reportv2.xml +0 -0
  214. {launchable-1.87.1 → launchable-1.87.2}/tests/data/go_test/subset_result.json +0 -0
  215. {launchable-1.87.1 → launchable-1.87.2}/tests/data/googletest/fail/output.xml +0 -0
  216. {launchable-1.87.1 → launchable-1.87.2}/tests/data/googletest/fail/record_test_result.json +0 -0
  217. {launchable-1.87.1 → launchable-1.87.2}/tests/data/googletest/output_a.xml +0 -0
  218. {launchable-1.87.1 → launchable-1.87.2}/tests/data/googletest/output_b.xml +0 -0
  219. {launchable-1.87.1 → launchable-1.87.2}/tests/data/googletest/record_test_result.json +0 -0
  220. {launchable-1.87.1 → launchable-1.87.2}/tests/data/googletest/subset_result.json +0 -0
  221. {launchable-1.87.1 → launchable-1.87.2}/tests/data/gradle/java/app/src/test/java/com/launchableinc/rocket_car_gradle/App2Test.java +0 -0
  222. {launchable-1.87.1 → launchable-1.87.2}/tests/data/gradle/java/app/src/test/java/com/launchableinc/rocket_car_gradle/AppTest.java +0 -0
  223. {launchable-1.87.1 → launchable-1.87.2}/tests/data/gradle/java/app/src/test/java/com/launchableinc/rocket_car_gradle/sub/App3Test.java +0 -0
  224. {launchable-1.87.1 → launchable-1.87.2}/tests/data/gradle/recursion/expected.json +0 -0
  225. {launchable-1.87.1 → launchable-1.87.2}/tests/data/gradle/recursion/foo/bar/reports/1.xml +0 -0
  226. {launchable-1.87.1 → launchable-1.87.2}/tests/data/jest/junit.xml +0 -0
  227. {launchable-1.87.1 → launchable-1.87.2}/tests/data/jest/record_test_result.json +0 -0
  228. {launchable-1.87.1 → launchable-1.87.2}/tests/data/jest/subset_result.json +0 -0
  229. {launchable-1.87.1 → launchable-1.87.2}/tests/data/maven/createdFile_1.lst +0 -0
  230. {launchable-1.87.1 → launchable-1.87.2}/tests/data/maven/createdFile_2.lst +0 -0
  231. {launchable-1.87.1 → launchable-1.87.2}/tests/data/maven/java/test/src/java/com/launchableinc/rocket_car_maven/App2Test.java +0 -0
  232. {launchable-1.87.1 → launchable-1.87.2}/tests/data/maven/java/test/src/java/com/launchableinc/rocket_car_maven/AppTest.java +0 -0
  233. {launchable-1.87.1 → launchable-1.87.2}/tests/data/maven/list.lst +0 -0
  234. {launchable-1.87.1 → launchable-1.87.2}/tests/data/maven/record_test_result.json +0 -0
  235. {launchable-1.87.1 → launchable-1.87.2}/tests/data/maven/reports/TEST-1.xml +0 -0
  236. {launchable-1.87.1 → launchable-1.87.2}/tests/data/maven/reports/TEST-2.xml +0 -0
  237. {launchable-1.87.1 → launchable-1.87.2}/tests/data/maven/reports/dummy.xml +0 -0
  238. {launchable-1.87.1 → launchable-1.87.2}/tests/data/maven/subset_by_absolute_time_result.json +0 -0
  239. {launchable-1.87.1 → launchable-1.87.2}/tests/data/maven/subset_by_confidence_result.json +0 -0
  240. {launchable-1.87.1 → launchable-1.87.2}/tests/data/maven/subset_from_file_result.json +0 -0
  241. {launchable-1.87.1 → launchable-1.87.2}/tests/data/maven/subset_result.json +0 -0
  242. {launchable-1.87.1 → launchable-1.87.2}/tests/data/minitest/TEST-Admin_UserTest.xml +0 -0
  243. {launchable-1.87.1 → launchable-1.87.2}/tests/data/minitest/TEST-Admin_UserTest_ChildlenTest.xml +0 -0
  244. {launchable-1.87.1 → launchable-1.87.2}/tests/data/minitest/TEST-UserControllerTest.xml +0 -0
  245. {launchable-1.87.1 → launchable-1.87.2}/tests/data/minitest/TEST-UserCopyTest.xml +0 -0
  246. {launchable-1.87.1 → launchable-1.87.2}/tests/data/minitest/TEST-UserTest.xml +0 -0
  247. {launchable-1.87.1 → launchable-1.87.2}/tests/data/minitest/subset_result.json +0 -0
  248. {launchable-1.87.1 → launchable-1.87.2}/tests/data/minitest/test/example_test.rb +0 -0
  249. {launchable-1.87.1 → launchable-1.87.2}/tests/data/nunit/list.xml +0 -0
  250. {launchable-1.87.1 → launchable-1.87.2}/tests/data/nunit/nunit-reporter-bug-with-nested-type.json +0 -0
  251. {launchable-1.87.1 → launchable-1.87.2}/tests/data/nunit/nunit-reporter-bug-with-nested-type.xml +0 -0
  252. {launchable-1.87.1 → launchable-1.87.2}/tests/data/nunit/output-linux.xml +0 -0
  253. {launchable-1.87.1 → launchable-1.87.2}/tests/data/nunit/output-windows.xml +0 -0
  254. {launchable-1.87.1 → launchable-1.87.2}/tests/data/nunit/record_test_result-linux.json +0 -0
  255. {launchable-1.87.1 → launchable-1.87.2}/tests/data/nunit/record_test_result-windows.json +0 -0
  256. {launchable-1.87.1 → launchable-1.87.2}/tests/data/nunit/src/.gitignore +0 -0
  257. {launchable-1.87.1 → launchable-1.87.2}/tests/data/nunit/src/Program.cs +0 -0
  258. {launchable-1.87.1 → launchable-1.87.2}/tests/data/nunit/src/README.md +0 -0
  259. {launchable-1.87.1 → launchable-1.87.2}/tests/data/nunit/src/Test.cs +0 -0
  260. {launchable-1.87.1 → launchable-1.87.2}/tests/data/nunit/src/calc.csproj +0 -0
  261. {launchable-1.87.1 → launchable-1.87.2}/tests/data/nunit/subset_result.json +0 -0
  262. {launchable-1.87.1 → launchable-1.87.2}/tests/data/playwright/record_test_result.json +0 -0
  263. {launchable-1.87.1 → launchable-1.87.2}/tests/data/playwright/record_test_result_with_json.json +0 -0
  264. {launchable-1.87.1 → launchable-1.87.2}/tests/data/playwright/report.json +0 -0
  265. {launchable-1.87.1 → launchable-1.87.2}/tests/data/playwright/report.xml +0 -0
  266. {launchable-1.87.1 → launchable-1.87.2}/tests/data/prove/record_test_result.json +0 -0
  267. {launchable-1.87.1 → launchable-1.87.2}/tests/data/prove/report.xml +0 -0
  268. {launchable-1.87.1 → launchable-1.87.2}/tests/data/pytest/record_test_result.json +0 -0
  269. {launchable-1.87.1 → launchable-1.87.2}/tests/data/pytest/record_test_result_json.json +0 -0
  270. {launchable-1.87.1 → launchable-1.87.2}/tests/data/pytest/report.json +0 -0
  271. {launchable-1.87.1 → launchable-1.87.2}/tests/data/pytest/report.xml +0 -0
  272. {launchable-1.87.1 → launchable-1.87.2}/tests/data/pytest/subset_result.json +0 -0
  273. {launchable-1.87.1 → launchable-1.87.2}/tests/data/pytest/tests/conftest.py +0 -0
  274. {launchable-1.87.1 → launchable-1.87.2}/tests/data/pytest/tests/fooo/__init__.py +0 -0
  275. {launchable-1.87.1 → launchable-1.87.2}/tests/data/pytest/tests/fooo/filenameonly_test.py +0 -0
  276. {launchable-1.87.1 → launchable-1.87.2}/tests/data/pytest/tests/fooo/func4_test.py +0 -0
  277. {launchable-1.87.1 → launchable-1.87.2}/tests/data/pytest/tests/funcs3_test.py +0 -0
  278. {launchable-1.87.1 → launchable-1.87.2}/tests/data/pytest/tests/test_funcs1.py +0 -0
  279. {launchable-1.87.1 → launchable-1.87.2}/tests/data/pytest/tests/test_funcs2.py +0 -0
  280. {launchable-1.87.1 → launchable-1.87.2}/tests/data/robot/dryrun.xml +0 -0
  281. {launchable-1.87.1 → launchable-1.87.2}/tests/data/robot/output.xml +0 -0
  282. {launchable-1.87.1 → launchable-1.87.2}/tests/data/robot/record_test_executed_only_one_file_result.json +0 -0
  283. {launchable-1.87.1 → launchable-1.87.2}/tests/data/robot/record_test_result.json +0 -0
  284. {launchable-1.87.1 → launchable-1.87.2}/tests/data/robot/single-output.xml +0 -0
  285. {launchable-1.87.1 → launchable-1.87.2}/tests/data/robot/subset_result.json +0 -0
  286. {launchable-1.87.1 → launchable-1.87.2}/tests/data/rspec/record_test_result.json +0 -0
  287. {launchable-1.87.1 → launchable-1.87.2}/tests/data/rspec/rspec.xml +0 -0
  288. {launchable-1.87.1 → launchable-1.87.2}/tests/helper.py +0 -0
  289. {launchable-1.87.1 → launchable-1.87.2}/tests/plugins/foo.py +0 -0
  290. {launchable-1.87.1 → launchable-1.87.2}/tests/test_cli_test_case.py +0 -0
  291. {launchable-1.87.1 → launchable-1.87.2}/tests/test_plugin.py +0 -0
  292. {launchable-1.87.1 → launchable-1.87.2}/tests/test_runners/__init__.py +0 -0
  293. {launchable-1.87.1 → launchable-1.87.2}/tests/test_runners/test_adb.py +0 -0
  294. {launchable-1.87.1 → launchable-1.87.2}/tests/test_runners/test_ant.py +0 -0
  295. {launchable-1.87.1 → launchable-1.87.2}/tests/test_runners/test_bazel.py +0 -0
  296. {launchable-1.87.1 → launchable-1.87.2}/tests/test_runners/test_behave.py +0 -0
  297. {launchable-1.87.1 → launchable-1.87.2}/tests/test_runners/test_ctest.py +0 -0
  298. {launchable-1.87.1 → launchable-1.87.2}/tests/test_runners/test_cts.py +0 -0
  299. {launchable-1.87.1 → launchable-1.87.2}/tests/test_runners/test_cucumber.py +0 -0
  300. {launchable-1.87.1 → launchable-1.87.2}/tests/test_runners/test_cypress.py +0 -0
  301. {launchable-1.87.1 → launchable-1.87.2}/tests/test_runners/test_dotnet.py +0 -0
  302. {launchable-1.87.1 → launchable-1.87.2}/tests/test_runners/test_go_test.py +0 -0
  303. {launchable-1.87.1 → launchable-1.87.2}/tests/test_runners/test_googletest.py +0 -0
  304. {launchable-1.87.1 → launchable-1.87.2}/tests/test_runners/test_gradle.py +0 -0
  305. {launchable-1.87.1 → launchable-1.87.2}/tests/test_runners/test_jest.py +0 -0
  306. {launchable-1.87.1 → launchable-1.87.2}/tests/test_runners/test_maven.py +0 -0
  307. {launchable-1.87.1 → launchable-1.87.2}/tests/test_runners/test_nunit.py +0 -0
  308. {launchable-1.87.1 → launchable-1.87.2}/tests/test_runners/test_playwright.py +0 -0
  309. {launchable-1.87.1 → launchable-1.87.2}/tests/test_runners/test_prove.py +0 -0
  310. {launchable-1.87.1 → launchable-1.87.2}/tests/test_runners/test_pytest.py +0 -0
  311. {launchable-1.87.1 → launchable-1.87.2}/tests/test_runners/test_raw.py +0 -0
  312. {launchable-1.87.1 → launchable-1.87.2}/tests/test_runners/test_robot.py +0 -0
  313. {launchable-1.87.1 → launchable-1.87.2}/tests/test_runners/test_rspec.py +0 -0
  314. {launchable-1.87.1 → launchable-1.87.2}/tests/test_session.py +0 -0
  315. {launchable-1.87.1 → launchable-1.87.2}/tests/test_testpath.py +0 -0
  316. {launchable-1.87.1 → launchable-1.87.2}/tests/test_version.py +0 -0
  317. {launchable-1.87.1 → launchable-1.87.2}/tests/utils/__init__.py +0 -0
  318. {launchable-1.87.1 → launchable-1.87.2}/tests/utils/test_authentication.py +0 -0
  319. {launchable-1.87.1 → launchable-1.87.2}/tests/utils/test_click.py +0 -0
  320. {launchable-1.87.1 → launchable-1.87.2}/tests/utils/test_file_name_pattern.py +0 -0
  321. {launchable-1.87.1 → launchable-1.87.2}/tests/utils/test_git_log_parser.py +0 -0
  322. {launchable-1.87.1 → launchable-1.87.2}/tests/utils/test_glob.py +0 -0
  323. {launchable-1.87.1 → launchable-1.87.2}/tests/utils/test_gzipgen.py +0 -0
  324. {launchable-1.87.1 → launchable-1.87.2}/tests/utils/test_http_client.py +0 -0
  325. {launchable-1.87.1 → launchable-1.87.2}/tests/utils/test_key_value_type.py +0 -0
  326. {launchable-1.87.1 → launchable-1.87.2}/tests/utils/test_link.py +0 -0
  327. {launchable-1.87.1 → launchable-1.87.2}/tests/utils/test_logger.py +0 -0
@@ -16,7 +16,7 @@ jobs:
16
16
  test:
17
17
  runs-on: ubuntu-latest
18
18
  steps:
19
- - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
19
+ - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
20
20
  - name: Set up JDK 8
21
21
  uses: actions/setup-java@99b8673ff64fbf99d8d325f52d9a5bdedb8483e9 # v4.2.1
22
22
  with:
@@ -39,7 +39,7 @@ jobs:
39
39
  python-version: [3.6, 3.7, 3.8, 3.9, "3.10", "3.11", "3.12"]
40
40
 
41
41
  steps:
42
- - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
42
+ - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
43
43
  with:
44
44
  fetch-depth: 0
45
45
  - name: Set up Python ${{ matrix.python-version }}
@@ -19,7 +19,7 @@ jobs:
19
19
  outputs:
20
20
  tag: ${{ steps.run-tagpr.outputs.tag }}
21
21
  steps:
22
- - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
22
+ - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
23
23
  - id: run-tagpr
24
24
  uses: Songmu/tagpr@4c8e0c433614e5915a7049413885246b854dfd4e # v1.2.0
25
25
  env:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: launchable
3
- Version: 1.87.1
3
+ Version: 1.87.2
4
4
  Summary: Launchable CLI
5
5
  Home-page: https://launchableinc.com/
6
6
  Author: Launchable, Inc.
@@ -104,33 +104,37 @@ class CommonRecordTestImpls:
104
104
 
105
105
  @click.argument('source_roots', required=True, nargs=-1)
106
106
  def record_tests(client, source_roots):
107
- # client type: RecordTests in def launchable.commands.record.tests.tests
108
- # Accept both file names and GLOB patterns
109
- # Simple globs like '*.xml' can be dealt with by shell, but
110
- # not all shells consistently deal with advanced GLOBS like '**'
111
- # so it's worth supporting it here.
112
- for root in source_roots:
113
- match = False
114
- for t in glob.iglob(root, recursive=True):
115
- match = True
116
- if os.path.isdir(t):
117
- client.scan(t, file_mask)
118
- else:
119
- client.report(t)
120
-
121
- if not match:
122
- # By following the shell convention, if the file doesn't exist or GLOB doesn't match anything,
123
- # raise it as an error. Note this can happen for reasons other than a configuration error.
124
- # For example, if a build catastrophically failed and no
125
- # tests got run.
126
- click.echo("No matches found: {}".format(root), err=True)
127
- # intentionally exiting with zero
128
- return
129
-
130
- client.run()
107
+ CommonRecordTestImpls.load_report_files(client=client, source_roots=source_roots, file_mask=file_mask)
131
108
 
132
109
  return wrap(record_tests, record_tests_cmd, self.cmdname)
133
110
 
111
+ @classmethod
112
+ def load_report_files(cls, client, source_roots, file_mask="*.xml"):
113
+ # client type: RecordTests in def launchable.commands.record.tests.tests
114
+ # Accept both file names and GLOB patterns
115
+ # Simple globs like '*.xml' can be dealt with by shell, but
116
+ # not all shells consistently deal with advanced GLOBS like '**'
117
+ # so it's worth supporting it here.
118
+ for root in source_roots:
119
+ match = False
120
+ for t in glob.iglob(root, recursive=True):
121
+ match = True
122
+ if os.path.isdir(t):
123
+ client.scan(t, file_mask)
124
+ else:
125
+ client.report(t)
126
+
127
+ if not match:
128
+ # By following the shell convention, if the file doesn't exist or GLOB doesn't match anything,
129
+ # raise it as an error. Note this can happen for reasons other than a configuration error.
130
+ # For example, if a build catastrophically failed and no
131
+ # tests got run.
132
+ click.echo("No matches found: {}".format(root), err=True)
133
+ # intentionally exiting with zero
134
+ return
135
+
136
+ client.run()
137
+
134
138
 
135
139
  class CommonSplitSubsetImpls:
136
140
  def __init__(
@@ -0,0 +1,33 @@
1
+ import glob
2
+ import os
3
+ from . import launchable
4
+ from junitparser import TestCase, TestSuite # type: ignore
5
+ from ..testpath import TestPath
6
+ import click
7
+
8
+ subset = launchable.CommonSubsetImpls(__name__).scan_files('*_test.rb')
9
+ split_subset = launchable.CommonSplitSubsetImpls(__name__).split_subset()
10
+
11
+ TEST_PATH_ORDER = {"file": 1, "class": 2, "testcase": 3}
12
+
13
+
14
+ @click.argument('reports', required=True, nargs=-1)
15
+ @launchable.record.tests
16
+ def record_tests(client, reports):
17
+ default_path_builder = client.path_builder
18
+
19
+ def path_builder(case: TestCase, suite: TestSuite, report_file: str) -> TestPath:
20
+ test_path = default_path_builder(case, suite, report_file)
21
+ if not any(item.get("type") == "class" for item in test_path):
22
+ # mintiest-ci sets a class name in name attribute in testsuite tag.
23
+ # https://github.com/CircleCI-Public/minitest-ci/blob/v3.4.0/lib/minitest/ci_plugin.rb#L86-L87
24
+ # https://github.com/CircleCI-Public/minitest-ci/blob/v3.4.0/lib/minitest/ci_plugin.rb#L132
25
+ classname = suite._elem.attrib.get("name")
26
+ if classname:
27
+ test_path.append({"type": "class", "name": classname})
28
+ test_path = sorted(test_path, key=lambda x: TEST_PATH_ORDER[x["type"]])
29
+ return test_path
30
+
31
+ client.path_builder = path_builder
32
+
33
+ launchable.CommonRecordTestImpls.load_report_files(client=client, source_roots=reports)
@@ -154,20 +154,8 @@ split_subset = launchable.CommonSplitSubsetImpls(__name__, formatter=lambda x: '
154
154
  @click.argument('report_xml', required=True, nargs=-1)
155
155
  @launchable.record.tests
156
156
  def record_tests(client, report_xml):
157
- # TODO: copied from ctest -- promote this pattern
158
- for root in report_xml:
159
- match = False
160
- for t in glob.iglob(root, recursive=True):
161
- match = True
162
- if os.path.isdir(t):
163
- client.scan(t, "*.xml")
164
- else:
165
- client.report(t)
166
- if not match:
167
- click.echo("No matches found: {}".format(root), err=True)
168
-
169
157
  client.parse_func = nunit_parse_func
170
- client.run()
158
+ launchable.CommonRecordTestImpls.load_report_files(client=client, source_roots=report_xml)
171
159
 
172
160
 
173
161
  """
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: launchable
3
- Version: 1.87.1
3
+ Version: 1.87.2
4
4
  Summary: Launchable CLI
5
5
  Home-page: https://launchableinc.com/
6
6
  Author: Launchable, Inc.
@@ -7,6 +7,10 @@
7
7
  {
8
8
  "type": "testcase",
9
9
  "name": "test_should_save_user_with_name"
10
+ },
11
+ {
12
+ "type": "class",
13
+ "name": "UserCopyTest"
10
14
  }
11
15
  ],
12
16
  "duration": 1.602778,
@@ -22,6 +26,10 @@
22
26
  {
23
27
  "type": "testcase",
24
28
  "name": "test_should_not_save_user_without_name"
29
+ },
30
+ {
31
+ "type": "class",
32
+ "name": "UserCopyTest"
25
33
  }
26
34
  ],
27
35
  "duration": 1.606243,
@@ -37,6 +45,10 @@
37
45
  {
38
46
  "type": "testcase",
39
47
  "name": "test_should_not_save_user_without_name"
48
+ },
49
+ {
50
+ "type": "class",
51
+ "name": "Admin::UserTest"
40
52
  }
41
53
  ],
42
54
  "duration": 1.611738,
@@ -52,6 +64,10 @@
52
64
  {
53
65
  "type": "testcase",
54
66
  "name": "test_should_save_user_with_name"
67
+ },
68
+ {
69
+ "type": "class",
70
+ "name": "Admin::UserTest"
55
71
  }
56
72
  ],
57
73
  "duration": 1.607029,
@@ -67,6 +83,10 @@
67
83
  {
68
84
  "type": "testcase",
69
85
  "name": "test_should_not_save_user_without_name_2"
86
+ },
87
+ {
88
+ "type": "class",
89
+ "name": "UserTest"
70
90
  }
71
91
  ],
72
92
  "duration": 1.614255,
@@ -82,6 +102,10 @@
82
102
  {
83
103
  "type": "testcase",
84
104
  "name": "test_should_save_user_with_name"
105
+ },
106
+ {
107
+ "type": "class",
108
+ "name": "UserControllerTest"
85
109
  }
86
110
  ],
87
111
  "duration": 1.617726,
@@ -97,7 +121,8 @@
97
121
  {
98
122
  "type": "testcase",
99
123
  "name": "test_should_not_save_user_without_name"
100
- }
124
+ },
125
+ { "type": "class", "name": "UserControllerTest" }
101
126
  ],
102
127
  "duration": 1.611985,
103
128
  "status": 1,
@@ -109,7 +134,8 @@
109
134
  "type": "case",
110
135
  "testPath": [
111
136
  { "type": "file", "name": "test/models/admin/user_test.rb" },
112
- { "type": "testcase", "name": "test_child" }
137
+ { "type": "testcase", "name": "test_child" },
138
+ { "type": "class", "name": "Admin::UserTest::ChildlenTest" }
113
139
  ],
114
140
  "duration": 1.599567,
115
141
  "status": 1,
@@ -7,7 +7,8 @@
7
7
  {
8
8
  "type": "testcase",
9
9
  "name": "test_should_save_user_with_name"
10
- }
10
+ },
11
+ { "type": "class", "name": "UserCopyTest" }
11
12
  ],
12
13
  "duration": 1.602778,
13
14
  "status": 1,
@@ -23,7 +24,8 @@
23
24
  {
24
25
  "type": "testcase",
25
26
  "name": "test_should_not_save_user_without_name"
26
- }
27
+ },
28
+ { "type": "class", "name": "UserCopyTest" }
27
29
  ],
28
30
  "duration": 1.606243,
29
31
  "status": 1,
@@ -39,7 +41,8 @@
39
41
  {
40
42
  "type": "testcase",
41
43
  "name": "test_should_not_save_user_without_name"
42
- }
44
+ },
45
+ { "type": "class", "name": "Admin::UserTest" }
43
46
  ],
44
47
  "duration": 1.611738,
45
48
  "status": 1,
@@ -55,7 +58,8 @@
55
58
  {
56
59
  "type": "testcase",
57
60
  "name": "test_should_save_user_with_name"
58
- }
61
+ },
62
+ { "type": "class", "name": "Admin::UserTest" }
59
63
  ],
60
64
  "duration": 1.607029,
61
65
  "status": 1,
@@ -71,7 +75,8 @@
71
75
  {
72
76
  "type": "testcase",
73
77
  "name": "test_should_not_save_user_without_name_2"
74
- }
78
+ },
79
+ { "type": "class", "name": "UserTest" }
75
80
  ],
76
81
  "duration": 1.614255,
77
82
  "status": 1,
@@ -7,7 +7,8 @@
7
7
  {
8
8
  "type": "testcase",
9
9
  "name": "test_should_save_user_with_name"
10
- }
10
+ },
11
+ { "type": "class", "name": "UserControllerTest" }
11
12
  ],
12
13
  "duration": 1.617726,
13
14
  "status": 1,
@@ -23,7 +24,8 @@
23
24
  {
24
25
  "type": "testcase",
25
26
  "name": "test_should_not_save_user_without_name"
26
- }
27
+ },
28
+ { "type": "class", "name": "UserControllerTest" }
27
29
  ],
28
30
  "duration": 1.611985,
29
31
  "status": 1,
@@ -36,7 +38,8 @@
36
38
  "type": "case",
37
39
  "testPath": [
38
40
  { "type": "file", "name": "test/models/admin/user_test.rb" },
39
- { "type": "testcase", "name": "test_child" }
41
+ { "type": "testcase", "name": "test_child" },
42
+ { "type": "class", "name": "Admin::UserTest::ChildlenTest" }
40
43
  ],
41
44
  "duration": 1.599567,
42
45
  "status": 1,
@@ -20,6 +20,27 @@ class MinitestTest(CliTestCase):
20
20
  self.assert_success(result)
21
21
  self.assert_record_tests_payload('record_test_result.json')
22
22
 
23
+ # For testing https://github.com/launchableinc/cli/pull/846/files#r1591707246.
24
+ @responses.activate
25
+ @mock.patch.dict(os.environ, {"LAUNCHABLE_TOKEN": CliTestCase.launchable_token})
26
+ def test_record_test_minitest_test_path_order(self):
27
+ with tempfile.TemporaryDirectory() as tempdir:
28
+ test_path_file = os.path.join(tempdir, 'tests.xml')
29
+ with open(test_path_file, 'w') as f:
30
+ f.write("""<?xml version="1.0" encoding="UTF-8"?>
31
+ <testsuite time='1.614255' skipped='0' failures='0' errors='0' name="UserTest" assertions='1' tests='1' timestamp="2020-12-23T13:10:01+09:00">
32
+ <testcase time='1.614255' file="test/models/open_class_user_test.rb" name="test_should_not_save_user_without_name_2" assertions='1'>
33
+ </testcase>
34
+ </testsuite>""") # noqa: E501
35
+ result = self.cli('record', 'tests', '--session', self.session, 'minitest', test_path_file)
36
+ self.assert_success(result)
37
+ payload = json.loads(gzip.decompress(self.find_request('/events').request.body).decode())
38
+ self.assertEqual(
39
+ payload['events'][0]['testPath'],
40
+ [{'type': 'file', 'name': 'test/models/open_class_user_test.rb'},
41
+ {'type': 'class', 'name': 'UserTest'},
42
+ {'type': 'testcase', 'name': 'test_should_not_save_user_without_name_2'}])
43
+
23
44
  @responses.activate
24
45
  @mock.patch.dict(os.environ, {"LAUNCHABLE_TOKEN": CliTestCase.launchable_token})
25
46
  def test_record_test_minitest_chunked(self):
@@ -1,5 +0,0 @@
1
- from . import launchable
2
-
3
- subset = launchable.CommonSubsetImpls(__name__).scan_files('*_test.rb')
4
- split_subset = launchable.CommonSplitSubsetImpls(__name__).split_subset()
5
- record_tests = launchable.CommonRecordTestImpls(__name__).report_files()
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes