mirror of
https://github.com/git/git.git
synced 2024-11-23 01:46:13 +08:00
8bc5d33bd8
Wire up the clar unit testing framework by introducing a new "unit-tests" executable. In contrast to the existing framework, this will result in a single executable for all test suites. The ability to pick specific tests to execute is retained via functionality built into the clar itself. Note that we need to be a bit careful about how we need to invalidate our Makefile rules. While we obviously have to regenerate the clar suite when our test suites change, we also have to invalidate it in case any of the test suites gets removed. We do so by using our typical pattern of creating a `GIT-TEST-SUITES` file that gets updated whenever the set of test suites changes, so that we can easily depend on that file. Another specialty is that we generate a "clar-decls.h" file. The test functions are neither static, nor do they have external declarations. This is because they are getting parsed via "generate.py", which then creates the external generations that get populated into an array. These declarations are only seen by the main function though. The consequence is that we will get a bunch of "missing prototypes" errors from our compiler for each of these test functions. To fix those errors, we extract the `extern` declarations from "clar.suite" and put them into a standalone header that then gets included by each of our unit tests. This gets rid of compiler warnings for every function which has been extracted by "generate.py". More importantly though, it does _not_ get rid of warnings in case a function really isn't being used by anything. Thus, it would cause a compiler error if a function name was mistyped and thus not picked up by "generate.py". The test driver "unit-test.c" is an empty stub for now. It will get implemented in the next commit. Signed-off-by: Patrick Steinhardt <ps@pks.im> Signed-off-by: Junio C Hamano <gitster@pobox.com>
252 lines
3.5 KiB
Plaintext
252 lines
3.5 KiB
Plaintext
/fuzz_corpora
|
|
/GIT-BUILD-DIR
|
|
/GIT-BUILD-OPTIONS
|
|
/GIT-CFLAGS
|
|
/GIT-LDFLAGS
|
|
/GIT-PREFIX
|
|
/GIT-PERL-DEFINES
|
|
/GIT-PERL-HEADER
|
|
/GIT-PYTHON-VARS
|
|
/GIT-SCRIPT-DEFINES
|
|
/GIT-SPATCH-DEFINES
|
|
/GIT-TEST-SUITES
|
|
/GIT-USER-AGENT
|
|
/GIT-VERSION-FILE
|
|
/bin-wrappers/
|
|
/git
|
|
/git-add
|
|
/git-am
|
|
/git-annotate
|
|
/git-apply
|
|
/git-archimport
|
|
/git-archive
|
|
/git-bisect
|
|
/git-blame
|
|
/git-branch
|
|
/git-bugreport
|
|
/git-bundle
|
|
/git-cat-file
|
|
/git-check-attr
|
|
/git-check-ignore
|
|
/git-check-mailmap
|
|
/git-check-ref-format
|
|
/git-checkout
|
|
/git-checkout--worker
|
|
/git-checkout-index
|
|
/git-cherry
|
|
/git-cherry-pick
|
|
/git-clean
|
|
/git-clone
|
|
/git-column
|
|
/git-commit
|
|
/git-commit-graph
|
|
/git-commit-tree
|
|
/git-config
|
|
/git-count-objects
|
|
/git-credential
|
|
/git-credential-cache
|
|
/git-credential-cache--daemon
|
|
/git-credential-store
|
|
/git-cvsexportcommit
|
|
/git-cvsimport
|
|
/git-cvsserver
|
|
/git-daemon
|
|
/git-diagnose
|
|
/git-diff
|
|
/git-diff-files
|
|
/git-diff-index
|
|
/git-diff-tree
|
|
/git-difftool
|
|
/git-difftool--helper
|
|
/git-describe
|
|
/git-fast-export
|
|
/git-fast-import
|
|
/git-fetch
|
|
/git-fetch-pack
|
|
/git-filter-branch
|
|
/git-fmt-merge-msg
|
|
/git-for-each-ref
|
|
/git-for-each-repo
|
|
/git-format-patch
|
|
/git-fsck
|
|
/git-fsck-objects
|
|
/git-fsmonitor--daemon
|
|
/git-gc
|
|
/git-get-tar-commit-id
|
|
/git-grep
|
|
/git-hash-object
|
|
/git-help
|
|
/git-hook
|
|
/git-http-backend
|
|
/git-http-fetch
|
|
/git-http-push
|
|
/git-imap-send
|
|
/git-index-pack
|
|
/git-init
|
|
/git-init-db
|
|
/git-interpret-trailers
|
|
/git-instaweb
|
|
/git-log
|
|
/git-ls-files
|
|
/git-ls-remote
|
|
/git-ls-tree
|
|
/git-mailinfo
|
|
/git-mailsplit
|
|
/git-maintenance
|
|
/git-merge
|
|
/git-merge-base
|
|
/git-merge-index
|
|
/git-merge-file
|
|
/git-merge-tree
|
|
/git-merge-octopus
|
|
/git-merge-one-file
|
|
/git-merge-ours
|
|
/git-merge-recursive
|
|
/git-merge-resolve
|
|
/git-merge-subtree
|
|
/git-mergetool
|
|
/git-mergetool--lib
|
|
/git-mktag
|
|
/git-mktree
|
|
/git-multi-pack-index
|
|
/git-mv
|
|
/git-name-rev
|
|
/git-notes
|
|
/git-p4
|
|
/git-pack-redundant
|
|
/git-pack-objects
|
|
/git-pack-refs
|
|
/git-patch-id
|
|
/git-prune
|
|
/git-prune-packed
|
|
/git-pull
|
|
/git-push
|
|
/git-quiltimport
|
|
/git-range-diff
|
|
/git-read-tree
|
|
/git-rebase
|
|
/git-receive-pack
|
|
/git-reflog
|
|
/git-refs
|
|
/git-remote
|
|
/git-remote-http
|
|
/git-remote-https
|
|
/git-remote-ftp
|
|
/git-remote-ftps
|
|
/git-remote-fd
|
|
/git-remote-ext
|
|
/git-repack
|
|
/git-replace
|
|
/git-replay
|
|
/git-request-pull
|
|
/git-rerere
|
|
/git-reset
|
|
/git-restore
|
|
/git-rev-list
|
|
/git-rev-parse
|
|
/git-revert
|
|
/git-rm
|
|
/git-send-email
|
|
/git-send-pack
|
|
/git-sh-i18n
|
|
/git-sh-i18n--envsubst
|
|
/git-sh-setup
|
|
/git-shell
|
|
/git-shortlog
|
|
/git-show
|
|
/git-show-branch
|
|
/git-show-index
|
|
/git-show-ref
|
|
/git-sparse-checkout
|
|
/git-stage
|
|
/git-stash
|
|
/git-status
|
|
/git-stripspace
|
|
/git-submodule
|
|
/git-submodule--helper
|
|
/git-subtree
|
|
/git-svn
|
|
/git-switch
|
|
/git-symbolic-ref
|
|
/git-tag
|
|
/git-unpack-file
|
|
/git-unpack-objects
|
|
/git-update-index
|
|
/git-update-ref
|
|
/git-update-server-info
|
|
/git-upload-archive
|
|
/git-upload-pack
|
|
/git-var
|
|
/git-verify-commit
|
|
/git-verify-pack
|
|
/git-verify-tag
|
|
/git-version
|
|
/git-web--browse
|
|
/git-whatchanged
|
|
/git-worktree
|
|
/git-write-tree
|
|
/scalar
|
|
/git-core-*/?*
|
|
/git.res
|
|
/gitweb/GITWEB-BUILD-OPTIONS
|
|
/gitweb/gitweb.cgi
|
|
/gitweb/static/gitweb.js
|
|
/gitweb/static/gitweb.min.*
|
|
/config-list.h
|
|
/command-list.h
|
|
/hook-list.h
|
|
*.tar.gz
|
|
*.dsc
|
|
*.deb
|
|
/git.spec
|
|
*.exe
|
|
*.[aos]
|
|
*.o.json
|
|
*.py[co]
|
|
.build/
|
|
.depend/
|
|
*.gcda
|
|
*.gcno
|
|
*.gcov
|
|
/coverage-untested-functions
|
|
/cover_db/
|
|
/cover_db_html/
|
|
*+
|
|
/config.mak
|
|
/autom4te.cache
|
|
/config.cache
|
|
/config.log
|
|
/config.status
|
|
/config.mak.autogen
|
|
/config.mak.append
|
|
/configure
|
|
/.vscode/
|
|
/tags
|
|
/TAGS
|
|
/cscope*
|
|
/compile_commands.json
|
|
/.cache/
|
|
*.hcc
|
|
*.obj
|
|
*.lib
|
|
*.sln
|
|
*.sp
|
|
*.suo
|
|
*.ncb
|
|
*.vcproj
|
|
*.user
|
|
*.idb
|
|
*.pdb
|
|
*.ilk
|
|
*.iobj
|
|
*.ipdb
|
|
*.dll
|
|
.vs/
|
|
Debug/
|
|
Release/
|
|
/UpgradeLog*.htm
|
|
/git.VC.VC.opendb
|
|
/git.VC.db
|
|
*.dSYM
|
|
/contrib/buildsystems/out
|