libgit2/tests
Edward Thomson bf99390eef config: examine whole file when writing
Previously we would try to be clever when writing the configuration
file and try to stop parsing (and simply copy the rest of the old
file) when we either found the value we were trying to write,
or when we left the section that value was in, the assumption being
that there was no more work to do.

Regrettably, you can have another section with the same name later
in the file, and we must cope with that gracefully, thus we read the
whole file in order to write a new file.

Now, writing a file looks even more than reading.  Pull the config
parsing out into its own function that can be used by both reading
and writing the configuration.
2015-05-04 07:41:33 -05:00
..
attr Improvements to ignore performance on Windows. 2015-04-28 14:24:58 -04:00
blame Factor 40 and 41 constants from source. 2014-09-16 13:07:04 +02:00
buf buf test: cleanup memory leak 2015-02-13 09:28:12 -05:00
checkout Merge pull request #3032 from jfultz/index-file-modes 2015-04-23 10:54:08 -04:00
cherrypick Renamed git_merge_options 'flags' to 'tree_flags' 2015-03-16 09:53:27 +02:00
clar clar: use a custom temp directory name 2014-10-24 10:50:57 -04:00
clone clone: add failing test for local transport with a tag 2015-03-17 20:50:39 +01:00
commit Remove the signature from ref-modifying functions 2015-03-03 14:40:50 +01:00
config config: examine whole file when writing 2015-05-04 07:41:33 -05:00
core git_path_diriter: next shouldn't take path ptr 2015-05-01 12:31:29 -04:00
date Added RFC2822 date format test cases 2014-04-11 21:55:36 +02:00
describe describe: only abort without tags if fallback is not allowed. 2015-04-07 17:32:56 +02:00
diff git_path_dirload: use git_path_diriter 2015-05-01 12:31:09 -04:00
fetchhead Remove the signature from ref-modifying functions 2015-03-03 14:40:50 +01:00
filter squash some leaks 2015-03-24 20:58:00 +00:00
graph Added a no path test for git_graph_descendant_of 2014-04-08 16:32:06 +02:00
index Fix index-adding functions to know when to trust filemodes. 2015-04-21 02:17:23 -05:00
merge Collapse whitespace flags into git_merge_file_flags_t 2015-03-16 09:53:27 +02:00
network Fix for Issue #3023 tests fail with no network 2015-04-21 20:02:24 -04:00
notes note: use a git_buf to return the default namespace 2015-03-17 20:50:02 +01:00
object Plug a couple of leaks 2015-01-04 17:39:43 +00:00
odb odb: git_odb_object contents are never NULL 2014-11-21 14:09:53 +01:00
online Merge pull request #3059 from libgit2/cmn/negotiation-notify 2015-05-01 11:28:54 -04:00
pack Silence unused return value warning 2014-09-26 12:12:09 +02:00
path win32: further cleanups for 8.3 disabling 2015-02-03 20:01:24 -05:00
perf repository: remove log message override for switching the active branch 2015-03-03 14:40:50 +01:00
rebase Fixed unused warning in tests/rebase/merge.c 2015-04-30 14:17:05 +02:00
refs Add tests for the annotated versions of ref-modifying functions 2015-03-16 16:57:30 +01:00
repo Merge remote-tracking branch 'ethomson/submodule_8dot3' 2015-03-18 04:59:16 +01:00
reset Add tests for the annotated versions of ref-modifying functions 2015-03-16 16:57:30 +01:00
resources Specify mock config file content in test. 2015-04-21 14:21:52 -04:00
revert Renamed git_merge_options 'flags' to 'tree_flags' 2015-03-16 09:53:27 +02:00
revwalk revwalk: add failing test for hiding and then pushing a commit 2015-04-08 23:42:36 +02:00
stash Merge pull request #2913 from ethomson/stash_fixup 2015-03-03 10:08:28 -05:00
status ignore: fix negative ignores without wildcards. 2015-04-17 09:59:16 +02:00
stress Use p_snprintf also in tests 2014-08-05 20:51:59 +02:00
submodule Implement git_submodule_set_branch. 2015-04-12 10:51:08 +02:00
threads Remove the signature from ref-modifying functions 2015-03-03 14:40:50 +01:00
trace Provide mechanism to let CLAR globally setup git_trace() 2015-03-02 08:20:27 -05:00
transport Clean up some leaks in the test suite 2014-09-17 03:19:40 +02:00
clar_libgit2_timer.c Converted cl_perf_timer to use git__timer internally. 2015-03-03 09:57:50 -05:00
clar_libgit2_timer.h Converted cl_perf_timer to use git__timer internally. 2015-03-03 09:57:50 -05:00
clar_libgit2_trace.c Added cl_perf_timer. Updated global trace to include timers. 2015-03-02 09:21:55 -05:00
clar_libgit2_trace.h Provide mechanism to let CLAR globally setup git_trace() 2015-03-02 08:20:27 -05:00
clar_libgit2.c win32: further cleanups for 8.3 disabling 2015-02-03 20:01:24 -05:00
clar_libgit2.h win32: further cleanups for 8.3 disabling 2015-02-03 20:01:24 -05:00
clar.c clar: update to 08f434d 2015-03-17 19:04:48 -04:00
clar.h Update to clar 2b73f5e 2015-02-27 00:30:50 -05:00
generate.py Update clar to e3985dd 2014-12-07 22:09:00 +08:00
main.c Add MSVC CRTDBG memory leak reporting. 2015-04-15 10:25:09 -04:00
README.md Rename tests-clar to tests 2013-11-14 14:05:52 -08:00
valgrind-supp-mac.txt Test cancel from indexer progress callback 2013-12-11 15:02:20 -08:00

Writing Clar tests for libgit2

For information on the Clar testing framework and a detailed introduction please visit:

https://github.com/vmg/clar

  • Write your modules and tests. Use good, meaningful names.

  • Make sure you actually build the tests by setting:

      cmake -DBUILD_CLAR=ON build/
    
  • Test:

      ./build/libgit2_clar
    
  • Make sure everything is fine.

  • Send your pull request. That's it.