git/t/helper
Johannes Schindelin be5d88e112 test-tool run-command: learn to run (parts of) the testsuite
Git for Windows jumps through hoops to provide a development environment
that allows to build Git and to run its test suite. To that end, an
entire MSYS2 system, including GNU make and GCC is offered as "the Git
for Windows SDK". It does come at a price: an initial download of said
SDK weighs in with several hundreds of megabytes, and the unpacked SDK
occupies ~2GB of disk space.

A much more native development environment on Windows is Visual Studio.
To help contributors use that environment, we already have a Makefile
target `vcxproj` that generates a commit with project files (and other
generated files), and Git for Windows' `vs/master` branch is
continuously re-generated using that target.

The idea is to allow building Git in Visual Studio, and to run
individual tests using a Portable Git.

The one missing thing is a way to run the entire test suite: neither
`make` nor `prove` are required to run Git, therefore Git for Windows
does not support those commands in the Portable Git.

To help with that, add a simple test helper that exercises the
`run_processes_parallel()` function to allow for running test scripts in
parallel (which is really necessary, especially on Windows, as Git's
test suite takes such a long time to run).

This will also come in handy for the upcoming change to our Azure
Pipeline: we will use this helper in a Portable Git to test the Visual
Studio build of Git.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2019-10-06 09:07:44 +09:00
..
.gitignore Merge branch 'sb/test-helper-excludes' 2017-12-27 11:16:29 -08:00
test-chmtime.c Merge branch 'ps/test-chmtime-get' 2018-04-25 13:29:00 +09:00
test-config.c t/helper: merge test-config into test-tool 2018-03-27 08:45:47 -07:00
test-ctype.c t/helper: merge test-ctype into test-tool 2018-03-27 08:45:47 -07:00
test-date.c test-date: drop unused "now" parameter from parse_dates() 2019-03-20 18:34:09 +09:00
test-delta.c test-delta: read input into a heap buffer 2018-08-30 10:30:21 -07:00
test-drop-caches.c handle lower case drive letters on Windows 2018-07-12 12:11:05 -07:00
test-dump-cache-tree.c convert "oidcmp() != 0" to "!oideq()" 2018-08-29 11:32:49 -07:00
test-dump-fsmonitor.c cache.h: flip NO_THE_INDEX_COMPATIBILITY_MACROS switch 2019-01-24 11:55:06 -08:00
test-dump-split-index.c Update struct index_state to use struct object_id 2018-05-02 13:59:50 +09:00
test-dump-untracked-cache.c cache.h: flip NO_THE_INDEX_COMPATIBILITY_MACROS switch 2019-01-24 11:55:06 -08:00
test-example-decorate.c object: convert lookup_unknown_object() to use object_id 2019-06-20 10:06:19 -07:00
test-fake-ssh.c
test-genrandom.c t/helper: merge test-genrandom into test-tool 2018-03-27 08:45:47 -07:00
test-genzeros.c tests: teach the test-tool to generate NUL bytes and use it 2019-02-19 10:22:21 -08:00
test-hash-speed.c t/helper: add a test helper to compute hash speed 2018-11-14 16:54:52 +09:00
test-hash.c t: make the sha1 test-tool helper generic 2018-11-14 16:54:52 +09:00
test-hashmap.c t/helper: merge test-hashmap into test-tool 2018-03-27 08:45:47 -07:00
test-index-version.c t/helper: merge test-index-version into test-tool 2018-03-27 08:45:47 -07:00
test-json-writer.c json_writer: new routines to create JSON data 2018-07-16 13:55:39 -07:00
test-lazy-init-name-hash.c t/helper: merge test-lazy-init-name-hash into test-tool 2018-03-27 08:45:47 -07:00
test-line-buffer.c
test-match-trees.c t/helper: merge (unused) test-match-trees into test-tool 2018-03-27 08:45:47 -07:00
test-mergesort.c t/helper: merge (unused) test-mergesort into test-tool 2018-03-27 08:45:47 -07:00
test-mktemp.c t/helper: merge test-mktemp into test-tool 2018-03-27 08:45:47 -07:00
test-online-cpus.c t/helper: merge test-online-cpus into test-tool 2018-03-27 08:45:47 -07:00
test-parse-options.c parse-options: don't emit "ambiguous option" for aliases 2019-05-07 12:23:22 +09:00
test-path-utils.c ci: parallelize testing on Windows 2019-01-29 09:26:47 -08:00
test-pkt-line.c t/helper: merge test-pkt-line into test-tool 2018-09-11 10:54:19 -07:00
test-prio-queue.c test-prio-queue: use xmalloc 2019-04-12 13:34:17 +09:00
test-reach.c test-reach: test get_reachable_subset 2018-11-03 00:12:06 +09:00
test-read-cache.c fsmonitor: demonstrate that it is not refreshed after discard_index() 2019-05-08 11:58:12 +09:00
test-read-midx.c multi-pack-index: store local property 2018-08-20 15:31:39 -07:00
test-ref-store.c Merge branch 'cc/test-ref-store-typofix' 2019-02-05 14:26:13 -08:00
test-regex.c t/helper: merge test-regex into test-tool 2018-03-27 08:45:47 -07:00
test-repository.c t/helper/test-repository: celebrate independence from the_repository 2018-12-28 10:06:33 -08:00
test-revision-walking.c revision.c: remove implicit dependency on the_index 2018-09-21 09:51:19 -07:00
test-run-command.c test-tool run-command: learn to run (parts of) the testsuite 2019-10-06 09:07:44 +09:00
test-scrap-cache-tree.c Merge branch 'ma/lockfile-cleanup' 2018-05-30 14:04:05 +09:00
test-serve-v2.c Turn git serve into a test helper 2019-04-19 14:03:24 +09:00
test-sha1-array.c t/helper: merge test-sha1-array into test-tool 2018-03-27 08:45:47 -07:00
test-sha1.c t: make the sha1 test-tool helper generic 2018-11-14 16:54:52 +09:00
test-sha1.sh t/helper: merge test-sha1 into test-tool 2018-03-27 08:45:47 -07:00
test-sha256.c Add a base implementation of SHA-256 support 2018-11-14 16:54:53 +09:00
test-sigchain.c style: the opening '{' of a function is in a separate line 2018-12-10 15:41:09 +09:00
test-strcmp-offset.c t/helper: merge test-strcmp-offset into test-tool 2018-03-27 08:45:47 -07:00
test-string-list.c t/helper: merge test-string-list into test-tool 2018-03-27 08:45:47 -07:00
test-submodule-config.c Merge branch 'sb/submodule-move-nested' 2018-05-08 15:59:17 +09:00
test-submodule-nested-repo-config.c repository: repo_submodule_init to take a submodule struct 2018-12-05 11:42:32 +09:00
test-subprocess.c t/helper: merge test-subprocess into test-tool 2018-03-27 08:45:47 -07:00
test-svn-fe.c
test-tool.c Merge branch 'js/misc-doc-fixes' 2019-05-09 00:37:27 +09:00
test-tool.h Merge branch 'js/misc-doc-fixes' 2019-05-09 00:37:27 +09:00
test-trace2.c trace2: t/helper/test-trace2, t0210.sh, t0211.sh, t0212.sh 2019-02-22 15:28:22 -08:00
test-urlmatch-normalization.c t/helper: merge test-urlmatch-normalization into test-tool 2018-03-27 08:45:47 -07:00
test-wildmatch.c t/helper: merge test-wildmatch into test-tool 2018-03-27 08:45:47 -07:00
test-windows-named-pipe.c t0051: test GIT_TRACE to a windows named pipe 2018-09-11 13:54:25 -07:00
test-write-cache.c Merge branch 'ma/lockfile-cleanup' 2018-05-30 14:04:05 +09:00
test-xml-encode.c tests: optionally write results as JUnit-style .xml 2019-01-29 09:26:46 -08:00