libgit2/tests-clar
Russell Belfer 7784bcbbee Refactor git_repository_open with new options
Add a new command `git_repository_open_ext` with extended options
that control how searching for a repository will be done.  The
existing `git_repository_open` and `git_repository_discover` are
reimplemented on top of it.  We may want to change the default
behavior of `git_repository_open` but this commit does not do that.

Improve support for "gitdir" files where the work dir is separate
from the repo and support for the "separate-git-dir" config.  Also,
add support for opening repos created with `git-new-workdir` script
(although I have only confirmed that they can be opened, not that
all functions work correctly).

There are also a few minor changes that came up:

- Fix `git_path_prettify` to allow in-place prettifying.

- Fix `git_path_root` to support backslashes on Win32.  This fix
  should help many repo open/discover scenarios - it is the one
  function called when opening before prettifying the path.

- Tweak `git_config_get_string` to set the "out" pointer to NULL
  if the config value is not found.  Allows some other cleanup.

- Fix a couple places that should have been calling
  `git_repository_config__weakptr` and were not.

- Fix `cl_git_sandbox_init` clar helper to support bare repos.
2012-04-11 12:11:35 -07:00
..
attr Convert attr, ignore, mwindow, status to new errors 2012-03-16 15:56:01 -07:00
buf Rename the Clay test suite to Clar 2012-01-24 20:35:15 -08:00
commit commit: actually allow yet to be born update_ref 2012-02-15 13:07:41 +01:00
config error-handling: References 2012-03-06 00:43:10 +01:00
core Merge pull request #619 from nulltoken/topic/branches 2012-04-11 03:43:30 -07:00
diff Fix error in tree iterator when popping up trees 2012-03-25 21:26:48 -07:00
index Rename the Clay test suite to Clar 2012-01-24 20:35:15 -08:00
network transport/local: Fix peeling of nested tags 2012-04-10 21:39:01 +02:00
notes tests-clar/notes: init oid before using 2012-02-23 23:38:48 +01:00
object tag: Add git_tag_peel() which recursively peel a tag until a non tag git_object is met 2012-04-10 21:38:49 +02:00
odb Rename the Clay test suite to Clar 2012-01-24 20:35:15 -08:00
refs tests: Remove unused file 2012-04-11 19:17:21 +02:00
repo Refactor git_repository_open with new options 2012-04-11 12:11:35 -07:00
revwalk Simple test for pushing HEAD and hiding a branch 2012-02-27 22:46:45 +01:00
status Merge pull request #619 from nulltoken/topic/branches 2012-04-11 03:43:30 -07:00
clar Update to latest clar 2012-03-19 16:09:03 -07:00
clar_helpers.c Refactor git_repository_open with new options 2012-04-11 12:11:35 -07:00
clar_libgit2.h Refactor git_repository_open with new options 2012-04-11 12:11:35 -07:00
README.md Rename the Clay test suite to Clar 2012-01-24 20:35:15 -08:00

Writing Clar tests for libgit2

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

https://github.com/tanoku/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.