tests


Log

Author Commit Date CI Message
Edward Thomson adcdeb36 2014-08-01T13:06:37 online::clone::credentials support default credentials
Edward Thomson e003f83a 2014-07-31T15:14:56 Introduce git_buf_decode_base64 Decode base64-encoded text into a git_buf
Edward Thomson f96e7e6c 2014-08-15T11:10:27 Free references during push validation
Edward Thomson 0f29e967 2014-08-01T13:43:46 Remove the refs/notes/commits that we push in test The online::push::notes test pushes a note but leaves it hanging around for other tests to stumble across when they're validating that they're seeing the refs they expect to see. Clean it up on exit.
Edward Thomson aea67633 2014-07-31T17:59:03 Don't run the ssh clone tests against http remotes
Vicent Marti fb48a51c 2014-08-14T17:01:02 Merge pull request #2469 from ethomson/transport2 Custom transport: minor cleanups
Edward Thomson c180c065 2014-07-09T17:58:39 Custom transport: minor cleanups * Move the transport registration mechanisms into a new header under 'sys/' because this is advanced stuff. * Remove the 'priority' argument from the registration as it adds unnecessary complexity. (Since transports cannot decline to operate, only the highest priority transport is ever executed.) Users who require per-priority transports can implement that in their custom transport themselves. * Simplify registration further by taking a scheme (eg "http") instead of a prefix (eg "http://").
Edward Thomson c8402334 2014-08-13T17:23:07 Don't include the unreadable tests on win32
Carlos Martín Nieto 9dac1f95 2014-08-09T10:56:50 config: a multiline var can start immediately In the check for multiline, we traverse the backslashes from the end backwards and int the end assert that we haven't gone past the beginning of the line. We make sure of this in the loop condition, but we also check in the return value. However, for certain configurations, a line in a multiline variable might be empty to aid formatting. In that case, 'end' == 'start', since we ended up looking at the first char which made it a multiline. There is no need for the (end > start) check in the return, since the loop guarantees we won't go further back than the first char in the line, and we do accept the first char to be the final backslash. This fixes #2483.
Russell Belfer f18234fa 2014-08-08T13:17:50 Don't report status on named pipes Git skips entries in directories that are not S_ISDIR, S_ISREG, or S_ISLNK, so let's make libgit2 do the same thing.
Vicent Marti 8f759ac0 2014-08-07T18:00:57 Merge pull request #2471 from jacquesg/compatibility-cleanup Compatibility/Portability cleanup
Jacques Germishuys c7dd0a56 2014-07-12T14:44:58 Use p_snprintf also in tests
Vicent Marti 243db06c 2014-07-23T07:57:20 Merge pull request #2484 from libgit2/fix-git-status-list-new-unreadable-folder Fix git status list new unreadable folder
Edward Thomson 0ba4dca5 2014-07-22T10:40:23 git_cherry_pick -> git_cherrypick
Alan Rogers 7d0ab0fa 2014-07-22T15:08:24 Merge remote-tracking branch 'origin/master' into fix-git-status-list-new-unreadable-folder
Vicent Marti ec813d83 2014-07-16T13:07:17 Merge pull request #2476 from linquize/config-lf-eof When adding new config section, handle config file not ending with LF
Vicent Marti ed99e0b5 2014-07-16T13:00:15 Merge pull request #2467 from ethomson/win_local_clone Handle local file:/// paths on Windows
Linquize 69374869 2014-07-16T21:54:53 Add unit test to test add section without lf at EOF
Edward Thomson 3d997dc2 2014-07-15T10:00:46 Switch description and path reporting
Edward Thomson 529fd30d 2014-07-08T15:45:50 Handle local file:/// paths on Windows Windows can't handle a path like `/c:/foo`; when turning file:/// URIs into local paths, we must strip the leading slash.
Vicent Marti 44cfb6f3 2014-07-11T16:49:23 Merge pull request #2463 from libgit2/cmn/ssh-factory-for-paths ssh: provide a factory function for setting ssh paths
Alan Rogers 4edd1a03 2014-07-10T19:17:34 Merge remote-tracking branch 'origin/development' into fix-git-status-list-new-unreadable-folder
Carlos Martín Nieto d4256ed5 2014-07-04T10:00:39 ssh: provide a factory function for setting ssh paths git allows you to set which paths to use for the git server programs when connecting over ssh; and we want to provide something similar. We do this by providing a factory function which can be set as the remote's transport callback which will set the given paths upon creation.
Carlos Martín Nieto f5287fa6 2014-07-04T17:17:23 refspec: support asterisks in the middle of a pattern We used to assume a refspec would only have an asterisk in the middle of their respective pattern. This has not been a valid assumption for some time now with git. Instead of assuming where the asterisk is going to be, change the logic to treat each pattern as having two halves with a replacement bit in the middle, where the asterisk is.
Vicent Marti b0ed61f8 2014-07-03T15:30:38 Merge pull request #2460 from libgit2/cmn/sched-yield Move yield to the tests and enable for FreeBSD
Carlos Martín Nieto 905fb592 2014-07-03T05:47:34 Move yield to the tests and enable for FreeBSD Move the definition of git_thread_yield() to the test which needs it and add the correct definition for it for FreeBSD and derivatives. Original patch adding FreeBSD and derivatives by @jacquesg.
Vicent Marti 193fe9cb 2014-07-03T02:41:10 Merge pull request #2459 from libgit2/cmn/http-url-path netops: error out on url without a path
Carlos Martín Nieto 1380e7c6 2014-07-03T02:34:32 netops: error out on url without a path In order to connect to a remote server, we need to provide a path to the repository we're interested in. Consider the lack of path in the url an error.
Vicent Marti c1bf2942 2014-07-02T15:29:25 Merge pull request #2455 from ethomson/equal_oid Introduce `cl_assert_equal_oid`
Vicent Marti 4df4ebd7 2014-07-02T15:29:14 Merge pull request #2453 from ethomson/checkout_index git_checkout_index: checkout other indexes
Vicent Marti b0ca1b18 2014-07-02T15:29:05 Merge pull request #2452 from libgit2/cmn/clone-custom-repo Provide a callback to customize the repository on clone
Carlos Martín Nieto 6812afaf 2014-06-30T21:36:38 clone: remote git_clone_into{,_local} from the public API As git_clone now has callbacks to configure the details of the repository and remote, remove the lower-level functions from the public API, as they lack some of the logic from git_clone proper.
Edward Thomson 967f5a76 2014-05-23T14:50:51 git_checkout_index: checkout other indexes git_checkout_index can now check out other git_index's (that are not necessarily the repository index). This allows checkout_index to use the repository's index for stat cache information instead of the index data being checked out. git_merge and friends now check out their indexes directly instead of trying to blend it into the running index.
Edward Thomson 9879fee1 2014-07-01T14:11:14 revwalk::simplify test should test The revwalk::simplify test was not actually tested the values from the revwalk against the expected. (Further, the expected had two IDs transposed.)
Edward Thomson 0cee70eb 2014-07-01T14:09:01 Introduce cl_assert_equal_oid
Russell Belfer 5fa8cda9 2014-06-30T12:05:25 Round up pool alloc sizes for alignment To make sure that items returned from pool allocations are aligned on nice boundaries, this rounds up all pool allocation sizes to a multiple of 8. This adds a small amount of overhead to each item. The rounding up could be made optional with an extra parameter to the pool initialization that turned on rounding only for pools where item alignment actually matters, but I think for the extra code and complexity that would be involved, that it makes sense just to burn a little bit of extra memory and enable this all the time.
Vicent Marti dcdb8500 2014-06-30T17:35:42 Merge pull request #2440 from phkelley/transports Improvements to git_transport extensibility
Philip Kelley 1697cd6f 2014-06-25T13:20:27 Improvements to git_transport extensibility git_remote_set_transport now takes a transport factory rather than a transport git_clone_options now allows the caller to specify a remote creation callback
Edward Thomson f4046267 2014-06-26T09:16:12 checkout::conflict tests: only test owner mode The checkout::conflict type conflict tests were failing because they were overly assertive about the resultant mode, testing group & other bits, which failed miserably for people who had a umask less restrictive than 022. Only test the resultant owner bits.
Edward Thomson d412165f 2014-06-18T16:54:32 Update text=auto / core.autocrlf=false behavior Git for Windows 1.9.4 changed the behavior when the text=auto attribute is specified and core.autocrlf=false. Previous observed behavior would *not* filter files when going into the working directory, the new behavior *does* filter. Update our behavior to match.
Carlos Martín Nieto 3ddd0d92 2014-06-24T17:55:15 Merge remote-tracking branch 'upstream/cmn/mixed-eol-passthrough'
Carlos Martín Nieto 5e37874d 2014-06-24T17:51:45 Merge remote-tracking branch 'upstream/cmn/treebuilder-perf'
Carlos Martín Nieto 5a76ad35 2014-06-19T11:45:46 crlf: pass-through mixed EOL buffers from LF->CRLF When checking out files, we're performing conversion into the user's native line endings, but we only want to do it for files which have consistent line endings. Refuse to perform the conversion for mixed-EOL files. The CRLF->LF filter is left as-is, as that conversion is considered to be normalization by git and should force a conversion of the line endings.
Carlos Martín Nieto b3b66c57 2014-06-18T17:13:12 Share packs across repository instances Opening the same repository multiple times will currently open the same file multiple times, as well as map the same region of the file multiple times. This is not necessary, as the packfile data is immutable. Instead of opening and closing packfiles directly, introduce an indirection and allocate packfiles globally. This does mean locking on each packfile open, but we already use this lock for the global mwindow list so it doesn't introduce a new contention point.
Carlos Martín Nieto 09561d33 2014-06-13T22:27:46 test: remove assembla clone test The assembla failure we were seeing referred to a private repository, which is not what is there at the moment. This reverts 1fd21b0342f
Carlos Martín Nieto 3382d8b1 2014-06-13T22:24:43 test: use read-only account Don't write in plaintext the password of an account which has full control over the repository. Instead use an account with read-only access.
Carlos Martín Nieto 4d3f1f97 2014-06-09T04:38:22 treebuilder: use a map instead of vector to store the entries Finding a filename in a vector means we need to resort it every time we want to read from it, which includes every time we want to write to it as well, as we want to find duplicate keys. A hash-map fits what we want to do much more accurately, as we do not care about sorting, but just the particular filename. We still keep removed entries around, as the interface let you assume they were going to be around until the treebuilder is cleared or freed, but in this case that involves an append to a vector in the filter case, which can now fail. The only time we care about sorting is when we write out the tree, so let's make that the only time we do any sorting.
Vicent Marti ce5e6617 2014-06-08T16:44:32 Merge pull request #2407 from libgit2/cmn/remote-rename-more More remote rename fixes
Philip Kelley fb591767 2014-06-07T12:51:48 Win32: Fix object::cache::threadmania test on x64
Philip Kelley daf2a648 2014-06-07T12:18:56 Win32: Fix diff::workdir::submodules test #2361
Philip Kelley 6d1b0438 2014-06-07T12:18:24 Win32: Fix failing clone_mirror test
Carlos Martín Nieto 231f350d 2014-06-06T22:55:34 remote: don't free the remote on delete This was a bad idea. Don't free except in the free function.
Carlos Martín Nieto eb6aa791 2014-06-06T22:01:35 remote: failing test for renaming with a symref
Carlos Martín Nieto 72bca13e 2014-06-06T16:33:54 remote: return problem refspecs instead of using a callback There is no reason why we need to use a callback here. A string array fits better with the usage, as this is not an event and we don't need anything from the user.
Carlos Martín Nieto fe3b9d07 2014-06-06T00:54:11 remote: failing test for rename When there is a reference in the target namespace, we should overwrite it. Instead it gets a different name under the current code.
Alan Rogers dc49e1b5 2014-06-04T15:36:28 Merge remote-tracking branch 'origin/development' into fix-git-status-list-new-unreadable-folder Conflicts: include/git2/diff.h
Alan Rogers a576a342 2014-06-04T14:47:44 Add another test for unreadable and not included.
Alan Rogers 79d5b5c9 2014-06-03T17:42:52 Add GIT_STATUS_OPT_INCLUDE_UNREADABLE_AS_UNTRACKED and a (failing) test for it.
Russell Belfer dfcba09e 2014-06-03T13:05:20 Merge pull request #2395 from libgit2/cmn/ref-iter-concurrent Concurrent ref iterator access
Vicent Marti bccb36eb 2014-06-03T17:25:59 Merge pull request #2389 from arthurschreiber/arthur/set-error-when-no-remote-found Remote: Set an error when a remote cannot be found.
Carlos Martín Nieto 69a1a691 2014-06-03T16:18:08 Plug a leak in the tests
Carlos Martín Nieto 4ee2543c 2014-06-02T16:46:47 refs: failing test for concurrent ref access If we remove a reference while we're iterating through the packed refs, the position in the iterator will be off.
Alan Rogers 523553f9 2014-05-30T16:22:26 Fix the no permissions test.
Alan Rogers 59fcebaa 2014-05-30T16:22:13 Use 'X' for unreadable status.
Arthur Schreiber d723dbed 2014-05-30T19:26:49 Remote: Set an error when a remote cannot be found. Inside `git_remote_load`, the calls to `get_optional_config` use `giterr_clear` to unset any errors that are set due to missing config keys. If neither a fetch nor a push url config was found for a remote, we should set an error again.
Edward Thomson 49837fd4 2014-05-30T11:30:53 Ignore core.safecrlf=warn until we have a warn infrastructure
Arthur Schreiber 9d6c3d28 2014-05-30T15:15:54 Refs: Extend unicode test for branch creation. This adds another assertion to ensure that the reference name inside the git_reference struct returned by `git_branch_create` is returned as precomposed if `core.precomposeunicode` is enabled.
Arthur Schreiber 1a90b1e3 2014-05-30T14:53:28 Refs: Add a unicode test for git_branch_move. This tests that decomposed branch names are correctly precomposed when passed to `git_branch_move` and `core.precomposeunicode` is enabled.
Vicent Marti 31c55152 2014-05-29T14:50:57 Merge pull request #2011 from libgit2/cmn/clone-local Local clone
Carlos Martín Nieto bc9f67fa 2014-05-29T10:03:04 clone: more explicit local tests Assert the exact amount of links we expect. While there, check that a plain git_clone() automatically chooses to link.
Carlos Martín Nieto 2614819c 2014-05-28T11:28:57 clone: allow for linking in local clone If requested, git_clone_local_into() will try to link the object files instead of copying them. This only works on non-Windows (since it doesn't have this) when both are on the same filesystem (which are unix semantics).
Carlos Martín Nieto 94f742ba 2014-05-28T10:18:05 fileops: allow linking files when copying directory structures When passed the LINK_FILES flag, the recursive copy will hardlink files instead of copying them.
Carlos Martín Nieto c1dbfcbb 2014-05-28T10:07:23 clone: add flag not to link
Carlos Martín Nieto 121b2673 2013-12-23T11:12:31 clone: add flags to override whether to perform a local clone
Vicent Marti 5d91bea2 2014-05-28T13:55:57 Merge pull request #2380 from libgit2/cmn/index-add-modes index: check for valid filemodes on add
Vicent Marti ab882e21 2014-05-28T13:49:38 Merge pull request #2385 from karipe/development Fix compile error on Visual Studio
Edward Thomson eff531e1 2014-05-27T20:58:20 Modify GIT_MERGE_CONFIG -> GIT_MERGE_PREFERENCE
Edward Thomson a3622ba6 2014-05-16T13:54:40 Move GIT_MERGE_CONFIG_* to its own enum
Edward Thomson d362093f 2014-05-08T15:41:36 Introduce GIT_MERGE_CONFIG_* for merge.ff settings git_merge_analysis will now return GIT_MERGE_CONFIG_NO_FASTFORWARD when merge.ff=false and GIT_MERGE_CONFIG_FASTFORWARD_ONLY when merge.ff=true
Cha, Hojeong 3ac1ff42 2014-05-27T23:32:38 Fix compile error on Visual Studio
Alan Rogers c3252c11 2014-05-23T00:29:04 We do expect the foo path in the nopermissions test
Carlos Martín Nieto 052a2ffd 2014-05-22T16:01:02 index: check for valid filemodes on add
Alan Rogers 6580b11c 2014-05-22T19:26:55 Remove errant newline
Vicent Marti a5982644 2014-05-22T02:28:42 Merge pull request #2376 from libgit2/cmn/remote-symref Add support for the symref extension
Vicent Marti 7ee233a9 2014-05-22T02:27:33 Merge pull request #2375 from libgit2/rb/safecrlf-on-lf-platform Make core.safecrlf not generate an error on LF-ending platforms
Alan Rogers 9532edc0 2014-05-21T23:13:46 Simplify the no permission test.
Carlos Martín Nieto d22db24f 2014-05-21T09:32:35 remote: add api to guess the remote's default branch If the remote supports the symref protocol extension, then we return that, otherwise we guess with git's rules.
Carlos Martín Nieto 306475eb 2014-05-20T09:55:26 remote: expose the remote's symref mappings Add a symref_target field to git_remote_head to expose the symref mappings to the user.
Carlos Martín Nieto 430866d2 2014-05-20T08:29:51 Fix a leak in the tests
Russell Belfer 16798d08 2014-05-19T14:57:09 Make core.safecrlf work on LF-ending platforms If you enabled core.safecrlf on an LF-ending platform, we would error even for files with all LFs. We should only be warning on irreversible mappings, I think.
Vicent Marti 124a45ea 2014-05-19T15:00:50 Merge pull request #2354 from libgit2/cmn/clone-into-mirror Allow mirror-clone via `git_clone_into()`
Carlos Martín Nieto b2067248 2014-05-15T09:03:30 clone: add failing test for a mirror-clone with clone_into Show a failure to perform a mirror-clone from a repository, both local and remote.
Carlos Martín Nieto 49e369b2 2014-05-18T10:06:49 message: don't assume the comment char The comment char is configurable and we need to provide a way for the user to specify which comment char they chose for their message.
Philip Kelley d7a29463 2014-05-17T16:58:09 Fix a bug in the pack::packbuilder suite
Vicent Marti 191ff936 2014-05-17T02:37:13 Merge pull request #2362 from libgit2/rb/update-4k-to-8k Test and fix Git diff binary detection compatibility
Russell Belfer 8af4966d 2014-05-16T16:30:58 Git binary check compat tests A variety of data patterns for diffs verified to match the behavior of binary detection with Git on the command line.
Vicent Marti 228272ef 2014-05-16T11:56:37 Merge pull request #2313 from libgit2/cmn/remote-delete Remote deletion
Carlos Martín Nieto ec8a949a 2014-04-30T09:20:03 remote: remove remote-tracking branches on delete When we delete a remote, we also need to go through its fetch refspecs and remove the references they create locally.
Russell Belfer 8487e237 2014-05-15T10:56:28 Better search path sandboxing There are a number of tests that modify the global or system search paths during the tests. This adds a helper function to make it easier to restore those paths and makes sure that they are getting restored in a manner that preserves test isolation.
Alan Rogers dc4906f1 2014-05-15T17:40:28 Skip unreadable files for now.