tests-clar/resources


Log

Author Commit Date CI Message
Russell Belfer 99d32707 2013-05-11T06:42:25 Fix refdb iteration early termination bug There was a problem found in the Rugged test suite where the refdb_fs_backend__next function could exit too early in some very specific hashing patterns for packed refs. This ports the Rugged test to libgit2 and then fixes the bug.
Jeff King 7edb9071 2013-05-02T11:07:20 refdb_fs: do not require peeled packed refs to be tags Older versions of git would only write peeled entries for items under refs/tags/. Newer versions will write them for all refs, and we should be prepared to handle that.
Edward Thomson bec65a5e 2013-04-01T22:16:21 merge!
nulltoken 24cb87e2 2013-03-31T13:27:43 tag: Fix parsing when no tagger nor message
Sven Strickroth b8acb775 2013-03-07T22:15:40 Added some tests for issue #1397 Signed-off-by: Sven Strickroth <email@cs-ware.de>
Russell Belfer 65025cb8 2013-03-18T17:24:13 Three submodule status bug fixes 1. Fix sort order problem with submodules where "mod" was sorting after "mod-plus" because they were being sorted as "mod/" and "mod-plus/". This involved pushing the "contains a .git entry" test significantly lower in the stack. 2. Reinstate behavior that a directory which contains a .git entry will be treated as a submodule during iteration even if it is not yet added to the .gitmodules. 3. Now that any directory containing .git is reported as submodule, we have to be more careful checking for GIT_EEXISTS when we do a submodule lookup, because that is the error code that is returned by git_submodule_lookup when you try to look up a directory containing .git that has no record in gitmodules or the index.
Russell Belfer 169dc616 2013-03-05T16:10:05 Make iterator APIs consistent with standards The iterator APIs are not currently consistent with the parameter ordering of the rest of the codebase. This rearranges the order of parameters, simplifies the naming of a number of functions, and makes somewhat better use of macros internally to clean up the iterator code. This also expands the test coverage of iterator functionality, making sure that case sensitive range-limited iteration works correctly.
Vicent Martí b72f5d40 2013-03-05T15:35:28 Merge pull request #1369 from arrbee/repo-init-template-hooks More tests (and fixes) for initializing repo from template
Vicent Martí e68e33f3 2013-02-27T14:50:32 Merge pull request #1233 from arrbee/file-similarity-metric Add file similarity scoring to diff rename/copy detection
Russell Belfer 3c42e4ef 2013-02-26T11:43:14 Fix initialization of repo directories When PR #1359 removed the hooks from the test resources/template directory, it made me realize that the tests for git_repository_init_ext using templates must be pretty shabby because we could not have been testing if the hooks were getting created correctly. So, this started with me recreating a couple of hooks, including a sample and symlink, and adding tests that they got created correctly in the various circumstances, including with the SHARED modes, etc. Unfortunately this uncovered some issues with how directories and symlinks were copied and chmod'ed. Also, there was a FIXME in the code related to the chmod behavior as well. Going back over the directory creation logic for setting up a repository, I found it was a little difficult to read and could result in creating and/or chmod'ing directories that the user almost certainly didn't intend. So that let to this work which makes repo initialization much more careful (and hopefully easier to follow). It required a couple of extensions / changes to core fileops utilities, but I also think those are for the better, at least for git_futils_cp_r in terms of being careful about what actions it takes.
Martin Woodward fc6c5b50 2013-02-25T17:03:05 Remove sample hook files Getting rid of sample hook files from test repos as they just take up space with no value.
Russell Belfer d4b747c1 2013-02-21T16:44:44 Add diff rename tests with partial similarity This adds some new tests that actually exercise the similarity metric between files to detect renames, copies, and split modified files that are too heavily modified. There is still more testing to do - these tests are just partially covering the cases. There is also one bug fix in this where a change set with only MODIFY being broken into ADD/DELETE (due to low self-similarity) without any additional RENAMED entries would end up not processing the split requests (because the num_rewrites counter got reset).
Vicent Martí fcd7733d 2013-02-14T12:49:46 Merge pull request #1318 from nulltoken/topic/diff-tree-coverage Topic/diff tree coverage
Russell Belfer c2c0874d 2013-02-11T14:44:56 More diff tests with binary data
nulltoken f093cd62 2012-08-15T18:49:01 Add unsymlinked.git test repository
Scott J. Goldman cb35094b 2013-01-22T15:49:51 Allow peeled references without trailing newline at end of file Also ammends one of the tag tests to make sure it's working.
Edward Thomson 271680d7 2013-01-17T18:18:44 add a git config, don't run crlf tests on non-win32
Edward Thomson 6e959708 2013-01-17T13:11:57 cache should contain on-disk (filtered) file size
Sebastian Bauer 72719e73 2013-01-13T12:21:52 Altered the description of the template. Before, it was identical to the default template making it difficult to check, if the proper template was copied an external template test.
Philip Kelley 359316b5 2013-01-11T17:16:55 Merge pull request #1215 from phkelley/binaryunicode Add a failing test for CRLF filters
Philip Kelley dd6367e3 2013-01-11T19:00:19 Fix up binaryunicode test repo
Philip Kelley fcc48d1f 2013-01-09T12:37:22 Add a failing test for autocrlf filters
Michael Schubert abeefbbe 2012-12-26T19:16:23 push: properly handle tags Currently, push doesn't really handle tags when queueing objects. Fix it.
Carlos Martín Nieto f1c75b94 2012-12-07T15:16:41 tree: relax the filemode parser There are many different broken filemodes in the wild so we need to protect against them and give something useful up the chain. Don't fail when reading a tree from the ODB but normalize the mode as best we can. As 664 is no longer a mode that we consider to be valid and gets normalized to 644, we can stop accepting it in the treebuilder. The library won't expose it to the user, so any invalid modes are a bug.
Russell Belfer f684970a 2012-11-29T22:53:34 Merge pull request #1108 from libgit2/ahead-behind-count Add API to calculate ahead/behind count
Vicent Martí f1e5c506 2012-11-29T12:18:05 Merge pull request #1110 from libgit2/features/push_rebased Push! By schu, phkelley, and congyiwu
Philip Kelley 36c730da 2012-11-29T10:34:16 Remove more sample hooks from test repo for push
Philip Kelley 3238ee3e 2012-11-29T08:37:32 Remove sample hooks from test repo for push
Scott J. Goldman 0d9e0323 2012-11-27T23:27:41 Add the ahead/behind test that Carlos suggested Adds a repo with a more complex topology to test the ahead-behind count.
nulltoken 37849a8e 2012-11-17T22:09:55 tracking: fix retrieval of the tracking ref of branch with empty merge and/or remote entry
Philip Kelley 613d5eb9 2012-11-28T11:42:37 Push! By schu, phkelley, and congyiwu, et al
Carlos Martín Nieto 47db054d 2012-11-13T13:41:01 config: distinguish between a lone variable name and one without rhs '[section] variable' and '[section] variable =' behave differently when parsed as booleans, so we need to store that distinction internally.
Vicent Marti 19c044a1 2012-11-12T14:23:17 Merge remote-tracking branch 'ben/local-transport' into development
Ben Straub 11fabe73 2012-11-08T20:18:19 Local fetch: add tests
delanne bcad677b 2012-11-08T12:28:21 - Update 'tests-clar/resources/config/config11' in order to reproduce the invalidread with the unittest (just added some \n at the end of the file) - Fix config_file.c
Vicent Martí 8ff2b0c7 2012-11-07T16:30:55 Merge pull request #1039 from erikvanzijst/erik/tag_without_message Correctly parse tags lacking a description
nulltoken a2a61894 2012-11-05T07:49:37 remote: Add malformed remote load test
Erik van Zijst 6bb9fea1 2012-11-02T10:28:17 tags: Fixed the tag parser to correctly treat the message field as optional. This fix makes libgit2 capable of parsing annotated tag objects that lack the optional message/description field. Previously, libgit2 treated this field as mandatory and raised a tag_error on such tags. However, the message field is optional. An example of such a tag is refs/tags/v2.6.16.31-rc1 in Linux: $ git cat-file tag refs/tags/v2.6.16.31-rc1 object afaa018cefb6af63befef1df7d8febaae904434f type commit tag v2.6.16.31-rc1 tagger Adrian Bunk <bunk@stusta.de> 1162716505 +0100 $
Vicent Martí 1362a983 2012-11-02T10:00:28 Merge pull request #1014 from arrbee/diff-rename-detection Initial implementation of diff rename detection
Edward Thomson f45ec1a0 2012-10-29T20:04:21 index refactoring
Russell Belfer b4f5bb07 2012-10-23T16:40:51 Initial implementation of diff rename detection This implements the basis for diff rename and copy detection, although it is based on simple SHA comparison right now instead of using a matching algortihm. Just as `git_diff_merge` can be used as a post-pass on diffs to emulate certain command line behaviors, there is a new API `git_diff_detect` which will update a diff list in-place, adjusting some deltas to RENAMED or COPIED state (and also, eventually, splitting MODIFIED deltas where the change is too large into DELETED/ADDED pairs). This also adds a new test repo that will hold rename/copy/split scenarios. Right now, it just has exact-match rename and copy, but the tests are written to use tree diffs, so we should be able to add new test scenarios easily without breaking tests.
yorah a1abe66a 2012-09-10T12:11:02 Add config level support in the config API Added `struct git_config_entry`: a git_config_entry contains the key, the value, and the config file level from which a config element was found. Added `git_config_open_level`: build a single-level focused config object from a multi-level one. We are now storing `git_config_entry`s in the khash of the config_file
yorah f8ede948 2012-09-18T14:10:40 Fix adding variable to config file with no trailing newline This can occur after a manual modification of a config file.
Russell Belfer 4c47a8bc 2012-10-17T14:14:51 Merge pull request #968 from arrbee/diff-support-typechange Support TYPECHANGE records in status and adjust checkout accordingly
Russell Belfer 52032ae5 2012-10-15T12:48:43 Fix single-file ignore checks To answer if a single given file should be ignored, the path to that file has to be processed progressively checking that there are no intermediate ignored directories in getting to the file in question. This enables that, fixing the broken old behavior, and adds tests to exercise various ignore situations.
Carlos Martín Nieto 47f44b6e 2012-10-15T13:51:25 refs: loosen the OID parsing We used to require loose references to contain only an OID (possibly after trimming the string). This is however not enough for letting us lookup FETCH_HEAD, which can have a lot of content after the initial OID. Change the parsing rules so that a loose refernce must e at least 40 bytes long and the 41st (if it's there) must be accepted by isspace(3). This makes the trim unnecessary, so only do it for symrefs. This fixes #977.
Russell Belfer 0d64bef9 2012-10-05T15:56:57 Add complex checkout test and then fix checkout This started as a complex new test for checkout going through the "typechanges" test repository, but that revealed numerous issues with checkout, including: * complete failure with submodules * failure to create blobs with exec bits * problems when replacing a tree with a blob because the tree "example/" sorts after the blob "example" so the delete was being processed after the single file blob was created This fixes most of those problems and includes a number of other minor changes that made it easier to do that, including improving the TYPECHANGE support in diff/status, etc.
Russell Belfer f3a04e0f 2012-10-02T16:13:17 Test data with lots of type changes
Michael Schubert 8060cdc9 2012-09-27T14:59:43 revwalk: fix off-by-one error Fixes #921.
Vicent Martí 31d22037 2012-09-25T14:52:24 Merge pull request #944 from scunz/list_tags Tags: teach git_tag_list not to include the 'refs/tags/' prefix
nulltoken 77e06d7e 2012-09-17T07:11:32 refs: introduce git_reference_is_valid_name()
Sascha Cunz 7604ddbf 2012-09-21T00:57:21 Tests: Add 3 tags to resources/testrepo. Adjusts refs::list test (including the comments) Adjusts objects::tags::list test
Vicent Martí d973a5af 2012-09-13T14:20:43 Merge pull request #929 from arrbee/diff-iter-fixes Fix problems in diff iterator record chaining
nulltoken e16fc07f 2012-09-13T22:22:40 refspec: No remote tracking ref from a fetchspec-less remote
Russell Belfer 49d34c1c 2012-09-13T13:17:38 Fix problems in diff iterator record chaining There is a bug in building the linked list of line records in the diff iterator and also an off by one element error in the hunk counts. This fixes both of these, adds some test data with more complex sets of hunk and line diffs to exercise this code better.
Vicent Marti 2e4a9ea9 2012-09-06T10:08:14 Merge remote-tracking branch 'arrbee/diff-iterator' into development
Russell Belfer fed886d9 2012-09-05T15:54:32 Test for gitmodules only submodule def This should confirm that issue #835 is fixed where a submodule that is only declared in the .gitmodules file was not accessible via the submodule APIs.
Russell Belfer f335ecd6 2012-08-30T14:24:16 Diff iterators This refactors the diff output code so that an iterator object can be used to traverse and generate the diffs, instead of just the `foreach()` style with callbacks. The code has been rearranged so that the two styles can still share most functions. This also replaces `GIT_REVWALKOVER` with `GIT_ITEROVER` and uses that as a common error code for marking the end of iteration when using a iterator style of object.
Russell Belfer decff7b4 2012-07-18T14:30:15 New submodule test data
Russell Belfer ca1b6e54 2012-07-31T17:02:54 Add template dir and set gid to repo init This extends git_repository_init_ext further with support for initializing the repository from an external template directory and with support for the "create shared" type flags that make a set GID repository directory. This also adds tests for much of the new functionality to the existing `repo/init.c` test suite. Also, this adds a bunch of new utility functions including a very general purpose `git_futils_mkdir` (with the ability to make paths and to chmod the paths post-creation) and a file tree copying function `git_futils_cp_r`. Also, this includes some new path functions that were useful to keep the code simple.
nulltoken a7e3bd9b 2012-08-16T11:53:24 Add deprecated-mode.git test repository
Vicent Martí f98c32f3 2012-08-19T01:26:06 Merge pull request #778 from ben/clone Clone
Russell Belfer a1ecddf0 2012-08-12T07:59:30 Fix config parser boundary logic The config file parser was not working right if there was no whitespace between the value name and the equals sign. This fixes that.
Joshua Peek e60af904 2012-08-09T14:39:43 Test trailing space after ref oid
Joshua Peek 6ab68290 2012-08-09T12:39:09 Parse ref oids without trailing newline
Ben Straub 8e4aae1a 2012-07-31T10:44:42 Checkout: handle file modes properly. Global file mode override now works properly with the file mode stored in the tree node.
Ben Straub b31667fb 2012-07-27T20:29:06 Checkout: add head- and ref-centric checkouts. Renamed git_checkout_index to what it really was, and removed duplicate code from clone.c. Added git_checkout_ref, which updates HEAD and hands off to git_checkout_head. Added tests for the options the caller can pass to git_checkout_*.
Ben Straub a4827a5b 2012-07-27T11:17:21 Merge remote-tracking branch 'upstream/development' into test-merge
Vicent Marti b41a30bd 2012-07-27T18:45:55 Merge remote-tracking branch 'nulltoken/topic/branch-rework' into development
Sascha Cunz 8689a69d 2012-07-25T01:59:23 Tests: Test remote's pushurl
nulltoken fb910281 2012-07-20T16:38:54 branch: introduce git_branch_tracking()
Ben Straub bfc65634 2012-07-17T08:08:34 Merge branch 'development' into clone
Ben Straub 1d68fcd0 2012-07-16T16:16:11 Checkout: handle symlinks. Includes unfinished win32 implementation.
nulltoken b0f15338 2012-07-15T00:45:20 revparse: add reflog test data
Ben Straub 280c7bbf 2012-07-13T15:52:27 Add checkout test suite. Removed 'bare' option from test repository to allow checkout tests.
nulltoken 5b071115 2012-07-04T14:00:19 tests: add test commit with angle brackets in the author name
yorah 29f9186d 2012-07-02T11:18:01 diff: make inter-hunk-context default value git-compliant Default in git core is 0, not 3
Vicent Marti b93688d0 2012-06-19T02:33:03 Merge remote-tracking branch 'yorah/fix/notes-creation' into development Conflicts: src/notes.c
Russell Belfer 0abd7244 2012-06-04T16:17:41 Fix filemode comparison in diffs File modes were both not being ignored properly on platforms where they should be ignored, nor be diffed consistently on platforms where they are supported. This change adds a number of diff and status filemode change tests. This also makes sure that filemode-only changes are included in the diff output when they occur and that filemode changes are ignored successfully when core.filemode is false. There is no code that automatically toggles core.filemode based on the capabilities of the current platform, so the user still needs to be careful in their .git/config file.
yorah 454cc829 2012-05-29T13:28:26 notes: add test resource with faked two-level fanout
Vicent Martí b9ebcc59 2012-06-07T12:29:31 Merge pull request #684 from benstraub/rev-parse Rev parse
Adam Roben 8e60c712 2012-06-07T09:50:19 Fix git_status_file for files that start with a character > 0x7f git_status_file would always return GIT_ENOTFOUND for these files. The underlying bug was that git__strcmp_cb, which is used by git_path_with_stat_cmp to sort entries in the working directory, compares strings based on unsigned chars (this is confirmed by the strcmp(3) manpage), while git__prefixcmp, which is used by workdir_iterator__entry_cmp to search for a path in the working directory, compares strings based on char. So the sort puts this path at the end of the list, while the search expects it to be at the beginning. The fix was simply to make git__prefixcmp compare using unsigned chars, just like strcmp(3). The rest of the change is just adding/updating tests.
Ben Straub 56a5000d 2012-06-05T12:52:44 Merge branch 'development' into rev-parse Conflicts: src/util.h tests-clar/refs/branches/listall.c
Russell Belfer bd4ca902 2012-05-16T17:02:06 Fix status for files under ignored dirs There was a bug where tracked files inside directories that were inside ignored directories where not being found by status. To make that a little clearer, if you have a .gitignore with: ignore/ And then have the following files: ignore/dir/tracked <-- actually a tracked file ignore/dir/untracked <-- should be ignored Then we would show the tracked file as being removed (because when we got the to contained item "dir/" inside the ignored directory, we decided it was safe to skip -- bzzt, wrong!). This update is much more careful about checking that we are not skipping over any prefix of a tracked item, regardless of whether it is ignored or not. As documented in diff.c, this commit does create behavior that still differs from core git with regards to the handling of untracked files contained inside ignored directories. With libgit2, those files will just not show up in status or diff. With core git, those files don't show up in status or diff either *unless* they are explicitly ignored by a .gitignore pattern in which case they show up as ignored files. Needless to say, this is a local behavior difference only, so it should not be important and (to me) the libgit2 behavior seems more consistent.
Han-Wen Nienhuys 24634c6f 2012-05-12T15:01:39 Handle duplicate objects from different backends in git_odb_read_prefix().
Ben Straub 92ad5a5c 2012-05-11T11:50:54 Rebasing onto libgit2/development: cleanup.
Ben Straub a6346302 2012-05-03T13:58:46 Rev-parse: "ref@{upstream}" syntax. Added tracking configuration to the test repo's config to support unit tests.
nulltoken cfe25b13 2012-05-03T16:11:40 tests: add two binary blobs to attr test repository - edf3dce -> assets.github.com/images/icons/emoji/alien.png?v5 - de863bf -> assets.github.com/images/icons/emoji/heart.png?v5
Russell Belfer 3ec1fa5e 2012-05-04T13:55:07 Fixing issue with test data
Russell Belfer f917481e 2012-05-03T16:37:25 Support reading attributes from index Depending on the operation, we need to consider gitattributes in both the work dir and the index. This adds a parameter to all of the gitattributes related functions that allows user control of attribute reading behavior (i.e. prefer workdir, prefer index, only use index). This fix also covers allowing us to check attributes (and hence do diff and status) on bare repositories. This was a somewhat larger change that I hoped because it had to change the cache key used for gitattributes files.
Vicent Martí a1d08025 2012-05-02T16:33:26 Backport more test data
Vicent Martí 8c83fead 2012-05-02T16:18:55 Move test resources
Vicent Martí 40879fac 2012-05-02T15:59:02 Merge branch 'new-error-handling' into development Conflicts: .travis.yml include/git2/diff.h src/config_file.c src/diff.c src/diff_output.c src/mwindow.c src/path.c tests-clar/clar_helpers.c tests-clar/object/tree/frompath.c tests/t00-core.c tests/t03-objwrite.c tests/t08-tag.c tests/t10-refs.c tests/t12-repo.c tests/t18-status.c tests/test_helpers.c tests/test_main.c
Ben Straub fd29cd13 2012-03-31T16:10:01 Moved testing resources to clar, and removed old tests directory. Removed the BUILD_CLAR CMake flag, and updated the readme.