libgit2/tests-clar
Russell Belfer 219d345732 Initial iconv hookup for precomposed unicode
This hooks up git_path_direach and git_path_dirload so that they
will take a flag indicating if directory entry names should be
tested and converted from decomposed unicode to precomposed form.
This code will only come into play on the Apple platform and even
then, only when certain types of filesystems are used.

This involved adding a flag to these functions which involved
changing a lot of places in the code.

This was an opportunity to do a bit of code cleanup here and there,
for example, getting rid of the git_futils_cleanupdir_r function in
favor of a simple flag to git_futils_rmdir_r to not remove the top
level entry.  That ended up adding depth tracking during rmdir_r
which led to a safety check for infinite directory recursion.  Yay.

This hasn't actually been tested on the Mac filesystems where the
issue occurs.  I still need to get test environment for that.
2013-10-03 10:44:13 -07:00
..
attr Add attributes to filters and fix registry 2013-09-17 09:31:44 -07:00
buf buf: introduce git_buf_splice() 2012-10-25 17:42:35 +02:00
checkout More filtering tests including order 2013-09-17 09:31:46 -07:00
clar Update clar 2013-09-04 16:23:00 -07:00
clone Initial iconv hookup for precomposed unicode 2013-10-03 10:44:13 -07:00
commit commit: Introduce git_commit_message_raw() 2013-10-03 07:59:55 +02:00
config Add negative test cases for config header with invalid characters 2013-10-01 09:56:59 +08:00
core Initial iconv hookup for precomposed unicode 2013-10-03 10:44:13 -07:00
date Omit failing test on 32-bit machines. 2012-06-06 12:39:29 -07:00
diff Fix incorrect return code in crlf filter 2013-09-24 10:11:20 -07:00
fetchhead Reorganize diff and add basic diff driver 2013-06-10 10:10:39 -07:00
filter Bug fixes and cleanups 2013-09-17 09:31:46 -07:00
index Fix incorrect return code in crlf filter 2013-09-24 10:11:20 -07:00
merge Initial iconv hookup for precomposed unicode 2013-10-03 10:44:13 -07:00
network HTTP: handle "relative" redirects 2013-10-02 14:45:57 -07:00
notes added missing free for git_note in clar tests 2013-03-06 22:51:20 +01:00
object Port tests from PR 1683 2013-09-17 09:31:45 -07:00
odb odb: Error when streaming in too [few|many] bytes 2013-09-07 23:00:20 +02:00
online Style tweaks and changes for code review feedback 2013-10-03 09:51:21 -04:00
pack indexer: kill git_indexer 2013-03-03 15:19:21 +01:00
refs No such thing as an orphan branch 2013-09-17 09:50:30 +02:00
repo Add check if we need to precompose unicode on Mac 2013-10-03 10:44:13 -07:00
reset No such thing as an orphan branch 2013-09-17 09:50:30 +02:00
resources Add test case to test ']' and '\\' characters in config subsection 2013-10-01 09:56:59 +08:00
revwalk merge: reverse array and length parameter order 2013-09-22 05:59:35 +02:00
stash Ensure submodule repos and indices are freed 2013-09-30 14:47:56 -07:00
status Initial iconv hookup for precomposed unicode 2013-10-03 10:44:13 -07:00
stress Add clar helper to create new commit from index 2013-09-17 09:31:46 -07:00
submodule Rearrange clar submodule cleanup code 2013-09-17 09:31:45 -07:00
threads Fix typo _delete -> _free 2013-08-29 13:22:44 +02:00
trace Fix trailing whitespaces 2013-05-15 22:41:30 +02:00
clar_libgit2.c Initial iconv hookup for precomposed unicode 2013-10-03 10:44:13 -07:00
clar_libgit2.h Fix warnings 2013-09-26 20:44:43 +02:00
clar.c clar: Fix clar__assert_equal error message formating 2013-09-12 13:54:22 +02:00
clar.h Update clar and recreate cl_assert_equal_sz 2013-09-17 09:31:46 -07:00
generate.py Update to latest Clar 2013-03-22 14:23:18 -07:00
main.c clar: haha 2013-01-04 20:02:01 +01:00
README.md Update README because vmg is @vmg. 2012-10-19 14:05:55 -07:00
valgrind-supp-mac.txt Suppress noise from running Valgrind on OSX 10.8 2013-09-19 10:30:43 -07: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.