Commit Graph

343 Commits

Author SHA1 Message Date
Juan RP
9ae3638429 Stop converting relative symlinks to absolute.
There's no reason to make them absolute, simply store in the metadata
the target file as is. This vastly simplifies the code and makes all
test pass correctly.
2015-02-19 11:04:34 +01:00
Juan RP
69e3a50e75 xbps-create: handle correctly another case of relative symlinks. 2015-02-19 09:44:09 +01:00
Juan RP
45f624eae2 tests: another test case to verify removal of dangling symlinks. 2015-02-18 16:46:45 +01:00
Juan RP
c4acbbe698 tests: more test cases to verify removal of symlinks. 2015-02-18 16:10:08 +01:00
Juan RP
3c34c300d1 xbps-create(8): record target file or relative symlinks correctly. 2015-02-18 14:55:54 +01:00
Juan RP
1403826fa6 libxbps: detect and remove properly symlinks with relative targets.
Close #78
2015-02-17 11:59:05 +01:00
Juan RP
38e71e8e1c xbps-checkvers: more fixes and new test cases.
- This now checks for vars that have refs to other vars:

	pkgname=${_myvar}

- This now checks for unwanted garbage before assignment:

	. ./source/file
	pkgname=${_myvar}

- Misc tweaks to use my coding style.
2015-02-17 10:20:59 +01:00
Juan RP
7cdba2ed14 xbps-checkvers(8): fixed segfaults with missing vars on templates. 2015-02-16 18:53:45 +01:00
Juan RP
07d5e93bb0 tests/xbps-checkvers: new tests to detect incorrect behaviour. 2015-02-16 17:25:37 +01:00
Juan RP
1cf8646a2d tests: two new test cases for downgrading vpkg providers. 2015-02-08 10:41:50 +01:00
Juan RP
c0d7d930de libxbps: make sure that revdeps of vpkg providers are always resolved.
Added new test cases to verify its correctness in upgrades and removals.
2015-02-05 10:04:42 +01:00
Juan RP
d607655371 libxbps: globally check for unresolved reverse dependencies.
Close #46. See NEWS for more information.
2015-02-03 10:20:13 +01:00
Juan RP
7d23a7e69c tests: remove: three new test cases to verify pkg removal of revdeps. 2015-02-03 09:58:24 +01:00
Juan RP
88fe064e36 tests: remove: add a test case to verify revdeps with xbps-remove(8). 2015-02-02 09:38:05 +01:00
Juan RP
076b3f8c44 libxbps: add pkgs on hold mode to the transaction, but ignore them.
Those are there mostly to be shown by the clients and notify that
there's an update in repos that is being ignored.

Idea by @chneukirchen.
2015-01-28 12:07:47 +01:00
Juan RP
1e0b005482 tests: another test to verify moving files to dependency without replaces. 2015-01-28 08:27:40 +01:00
Juan RP
571d96fa92 libxbps: make sure to remove pkg metadata file on upgrades with skip-obsoletes.
This fixes the following case:

 - A-1.0_1 is installed and owns bin/foo.
 - A-1.1_1 is in the transaction and depends on B-1.0_1 that owns bin/foo.
 - B-1.0_1 is in the transaction and replaces A<1.1_1.
 - A-1.1_1 in the transaction now has "skip-obsoletes".
 - A is updated to 1.1_1, its metadata file (<pkgname>-files.plist) wasn't removed.

Added two new test cases to verify moving files from/to a dependency.
2015-01-27 17:53:37 +01:00
Juan RP
f324ea5352 tests: another test case to verify that moving files between pkgs work. 2015-01-27 11:26:34 +01:00
Juan RP
9d8e2d0250 tests: issue31: test should fail with ENOTEMPTY rather than 0. 2015-01-18 10:06:46 +01:00
Juan RP
94e9754fb1 tests: another test to verify revdeps with unknown shlib providers. 2015-01-17 06:10:49 +01:00
Juan RP
bb3c404d5f tests: update_shlibs: improve two tests and fix descr for another one. 2015-01-17 05:54:55 +01:00
Juan RP
757d1bda68 tests: add test for another kind of versioned soname bump.
This fails currently... working in a solution that works globally.
2015-01-17 03:19:45 +01:00
Juan RP
7b3a500139 libxbps: the provides obj now expects exact pkgver strings.
This reduces extra allocs and simplifies the code, which was just
there to workaround some broken pkgs anyway.
2015-01-10 07:26:23 +01:00
Juan RP
1f6a5c0e47 libxbps: detection of orphaned packages is now 66% faster. 2015-01-10 05:43:35 +01:00
Juan RP
9d582abe0f Fixed a regression with virtual packages declared via xbps.d(5).
Added a new test case to verify its correctness. Somehow virtual packages
declared via xbps.d(5) were not working correctly for dependencies.

This now works as expected with vpkgs declared with and without a version
component.
2015-01-05 16:04:22 +01:00
Juan RP
eee895c6d8 Fixed a regression in vpkgs and improve xbps.d(5) virtualpkg declarations.
See the NEWS file for more information.
2014-12-31 08:51:45 +01:00
Juan RP
89d11e871f xbps-{install,query}: added -i to ignore repos defined in xbps.d.
See the NEWS file for more information.
2014-11-21 10:56:41 +01:00
Juan RP
428a747fad Fix #69 (No way to set globally a custom architecture)
The "architecture" configuration keyword is now available to override
the native machine architecture returned by (uname(2)).

The XBPS_ARCH environment variable still has preference.
2014-11-19 11:36:09 +01:00
Juan RP
b2bc7af66e Fix #68 (xbps_binpkg_arch() asserts if arch contains a dash) 2014-11-19 11:14:37 +01:00
Juan RP
3afb9d709d Get rid of repodata index-files; the archive is now 8x smaller.
See the NEWS file for more information.
2014-11-13 17:09:43 +01:00
Juan RP
805cabc1c4 tests: add another test case to verify pkg files are replaced correctly. 2014-11-13 11:20:06 +01:00
Juan RP
e81a71129c tests: new test case to verify pkg files are replaced correctly. 2014-11-13 09:21:24 +01:00
Juan RP
039a155918 xbps-create(8): fix #64 "incorrect installed-size with hardlinks" 2014-11-12 12:37:35 +01:00
Juan RP
53f13d579e Added the "bestmatching" configuration keyword to enable pkg best matching.
See the NEWS file for more information.
2014-11-07 10:07:51 +01:00
Juan RP
759f7e7fba tests: use abs path to repodir in xbps-rindex. 2014-11-06 11:21:32 +01:00
Juan RP
5183b0a7e7 tests: enable debugging in xbps-rindex (2/2). 2014-11-06 11:02:14 +01:00
Juan RP
4086c0a4c6 tests: enable debugging in xbps-rindex to see what's going on. 2014-11-06 10:56:15 +01:00
Juan RP
5b522109f7 Replaced config/system {repo,preserve,virtualpkg}.d with a single directory.
See the NEWS file for more information.
2014-11-06 09:58:04 +01:00
Juan RP
595136704e Get rid of system virtualpkg.d support (<prefix>/share/xbps/virtualpkg.d).
Binary packages do not need to provide those virtualpkg configuration files
anymore; all vpkg info is now collected from pkgdb.
2014-11-04 11:17:27 +01:00
Juan RP
5fe3594cb5 Make sure that modified symlinks are preserved.
When removing a package, symlinks owned by this package that have been
modified should be preserved, unless the force flag is set via xbps-remove(8).
2014-10-25 06:43:30 +02:00
Juan RP
627a5afaaf Make sure that automatic/manual installation modes are set as expected. 2014-10-20 07:59:06 +02:00
Juan RP
231582e671 libxbps: make sure to not add dups in transaction for remove. 2014-10-19 11:22:17 +02:00
Juan RP
fb868454b2 libxbps: make sure to not add dups in transaction for install/update. 2014-10-19 11:00:40 +02:00
Juan RP
ff189fd210 Replaced redundant dependency sorting code with a simpler implementation.
This fixes the issue found by "xbps-src bootstrap" when a package
without "provides" was declared as a virtual package.
2014-10-18 12:35:47 +02:00
Juan RP
5b5a948f15 tests: xbps-rindex/add: set rootdir to not use host repo.d 2014-10-17 10:14:58 +02:00
Juan RP
5c8c7b1172 tests: xbps-rindex/add: rework some tests to use xbps-query -s rather than -Ro. 2014-10-17 10:08:59 +02:00
Juan RP
d7633e88e0 Fix #62 (Dup replaced pkgs in transaction) 2014-10-17 09:52:32 +02:00
Juan RP
1a3982bb57 tests: libxbps/shell: fix tests that use ln(1) -r on travis-ci. 2014-10-06 14:24:42 +02:00
Juan RP
1546e44e70 tests: libxbps/issue20: do not use ln(1) -r; fails with travis-ci. 2014-10-06 14:20:52 +02:00
Juan RP
01781b3b7e Added support to run tests in place.
- ./configure --enable-tests && make
	- kyua test -k tests/xbps/Kyuafile
2014-10-06 11:59:16 +02:00
Juan RP
691cd26482 tests: use xbps-install -d in two test cases. 2014-10-05 08:55:57 +02:00
Juan RP
43b450d6fb tests: new test to verify another shlibs revdep case (currently it fails). 2014-09-29 14:56:32 +02:00
Enno Boland
0c27c66d2a tests: correct test description. 2014-09-29 08:57:12 +02:00
Enno Boland
06cc3600f4 tests: remove useless LD_PRELOAD= 2014-09-29 08:52:35 +02:00
Enno Boland
f50a5df3c2 tests: add test case for reverts which simulates a full workflow. 2014-09-28 22:22:56 +02:00
Juan RP
2a89552375 tests: new test to verify pkg files removal with files that only have read bit set.
This currently fails but will be fixed in an upcoming change.
2014-09-28 13:28:56 +02:00
Juan RP
2dc92ab966 tests: enable xbps-checkvers tests added by @Gottox. 2014-09-27 22:57:44 +02:00
Enno Boland
4fda229efb xbps-checkvers: add tests. 2014-09-27 20:51:21 +02:00
Enno Boland
4467518329 bin/xbps-rindex: add unit tests to test rindex behavior for adding packages with reverts. 2014-09-23 19:17:31 +02:00
Enno Boland
511fdc4215 xbps_pkg_reverts: add unit tests to test this functionality. 2014-09-23 18:26:03 +02:00
Juan RP
68bb09bc58 tests: two new tests to verify pkg install/update with no files. 2014-09-14 18:03:29 +02:00
Juan RP
c36c641350 tests/libxbps/replace: another test case for replaces and vpkgs. 2014-09-14 12:49:38 +02:00
Juan RP
842a91149d tests/libxbps/replace: add more debugging to see what's going on. 2014-09-13 12:21:24 +02:00
Juan RP
60e9bbac3d tests/libxbps/replace: check that pkgs were configured too.
These two tests currently fail.
2014-09-13 12:11:24 +02:00
Juan RP
39aca1bbc9 Implement shlib checks for all pkg revdeps in the transaction.
Added three new test cases to verify its correctness.
2014-09-12 11:49:34 +02:00
Juan RP
01dbb968dd Welcome pkgdb-0.38. 2014-09-11 00:12:12 +02:00
Juan RP
d0a4cc5b9d tests: install_with_vpkg_deps: fix order. 2014-09-04 10:11:46 +02:00
Juan RP
bc92b387cb Really fix #53 this time: with or without -n. 2014-08-23 16:25:51 +02:00
Juan RP
4c14785480 Fix #53 (xbps-install with multiple arguments shouldn't fail if one is already installed). 2014-08-23 08:02:40 +02:00
Juan RP
7cef93ce07 Added support to replace vpkgs when the real pkgname matches any installed vpkg. 2014-08-22 12:44:18 +02:00
Juan RP
f8d8f91a08 Implement support to "preserve" existent on-disk files.
See NEWS for more information. Fix #51
2014-08-01 15:09:51 +02:00
Juan RP
cc6f9901f1 Fix #50 (Existent files on disk might be overwritten by packages with conf_files). 2014-07-30 16:18:57 +02:00
Juan RP
f5fe2c35c7 tests: new test for vpkgs to reproduce awk/base-system-busybox fallout.
This test currently fails and must be fixed.
2014-07-12 09:40:36 +02:00
Juan RP
1857672e14 tests: add another test case for GH issue #45.
The test passes completely and cannot be make to segfault in any provided case.

I'll continue investigating...
2014-07-08 16:34:47 +02:00
Juan RP
21f32a75c5 Fixed a new issue with vpkgs replacing the same vpkg they are providing.
Added a new testcase to verify its correctness.
2014-07-01 15:35:55 +02:00
Juan RP
0953980d25 tests/xbps/xbps-rindex: explicitly set rootdir to unbreak tests. 2014-05-31 06:31:01 +02:00
Enno Boland
e903731718 adding test for globbing nonexistent files. 2014-05-29 10:00:20 +02:00
Juan RP
61a1d33995 xbps-install(8): implemented single pkg updates without -u, --update.
The -u, --update is now only necessary to perform full system updates.

Close #35 (https://github.com/voidlinux/xbps/issues/35)
2014-05-27 11:33:45 +02:00
Juan RP
e1e5310428 tests: installmode: use -d to inspect stderr. 2014-05-27 11:15:40 +02:00
Juan RP
1c26b2ef95 tests: new tests to verify pkg install order with real and virtual pkgs. 2014-05-22 13:44:35 +02:00
Juan RP
e2b0de8859 tests/xbps/libxbps/shell/remove_test.sh: use -d arg to see what's going on. 2014-05-22 10:49:17 +02:00
Juan RP
db0b69b397 tests/xbps/libxbps/config: fix clang warning: strncat() needs an additional byte for NUL. 2014-05-16 09:51:58 +02:00
Juan RP
869466278b Fixed a new issue with virtual packages, as reported by Gottox. 2014-05-15 22:07:10 +02:00
Juan RP
7a4e6862cd tests: recurse into the new config tests. 2014-05-13 12:14:34 +02:00
Enno Boland
f369c24e90 tests: use right name in copyright. 2014-05-13 11:47:57 +02:00
Enno Boland
93e6aada54 tests: remove unneccassary test script 2014-05-13 11:46:47 +02:00
Enno Boland
f4c0ecdcbf using config_ prefix instead of xbps_conf_ for tests 2014-05-13 11:41:40 +02:00
Enno Boland
152ec0354f libxbps: file including in xbps.conf supports relative paths. 2014-05-13 11:37:09 +02:00
Juan RP
6c8a073fb2 tests: new test for xbps-query(8) -Rf when binpkg is not available. 2014-05-06 11:16:00 +02:00
Juan RP
c992db2bc0 New test cases to detect pkgs with dependencies on itself. 2014-04-20 18:19:12 +02:00
Juan RP
bb491e2667 libxbps: detect and ignore incorrect deps of a pkg if those are virtual pkgs. 2014-04-20 16:54:50 +02:00
Juan RP
4530c79bb2 Make sure that root symlinks in void are never removed or detected as obsoletes.
Added/improved test cases to detect those conditions work as expected.
2014-03-31 10:16:18 +02:00
Juan RP
ef3b6278a6 Added support to pass native machine architecture to pkg scripts (6th arg). 2014-03-12 10:16:37 +01:00
Juan RP
9101241b20 Fix pkg symlink removal introduced in the two phase package removal feature. 2014-02-26 10:05:19 +01:00
Juan RP
8c47021ec3 Fix #31 and add new test case to reproduce it. 2014-02-25 22:55:39 +01:00
Juan RP
2fa0d56658 Fixed a xbps_pkgpattern_name() crash and a test to reproduce it (found by Gottox). 2014-02-15 01:26:42 +01:00
Juan RP
835812df2c tests: pass -v flag to xbps-install(8). 2014-01-15 21:51:20 +01:00
Juan RP
36adf15c6b tests: new test to verify obsolete files code works in updates and reinstalls. 2014-01-15 20:59:49 +01:00
Juan RP
5176ca05e8 tests: libxbps: use unexistent xbps.conf to only use local repo. 2014-01-15 20:59:05 +01:00
Juan RP
19b248d57d tests: issue18: remove useless cleanup. 2014-01-15 17:55:29 +01:00
Juan RP
98a3723902 Respect installation mode also on reinstall (and downgrade). 2014-01-15 16:17:41 +01:00
Juan RP
292be5c420 Make sure that all symlinks in a package are removed, not just dangling symlinks. 2014-01-12 17:10:07 +01:00
Juan RP
a57fe48709 tests/xbps/libxbps/shell/remove_test.sh: use full path for local repo. 2014-01-03 10:08:32 +01:00
Juan RP
152212a9ab Update tests for new API. 2013-12-16 11:55:51 +01:00
Juan RP
2ab90bdc09 Fixed issue #26 (Replacing an installed pkg multiple times). 2013-12-12 18:24:24 +01:00
Juan RP
87dbf3d25b tests/replace: fix path to the private repo. 2013-12-12 17:33:04 +01:00
Juan RP
da848cb0ea Fix shebang in last test-case committed. 2013-12-12 17:24:43 +01:00
Juan RP
90351bef08 Added a new test case to reproduce an issue while replacing a pkg multiple times.
The test case currently fails; will be fixed shortly in an upcoming commit.
2013-12-12 17:21:57 +01:00
Juan RP
eba8ca0319 tests/xbps/xbps-rindex: fix tests after 4403caa (only use test repo). 2013-12-08 08:04:39 +01:00
Juan RP
7c57918950 xbps-rindex(8): fix #24 and added an ATF test case. 2013-11-29 17:30:45 +01:00
Juan RP
dce26db1de libxbps: pkg remove: never remove base symlinks in the root directory.
The /bin, /sbin, /lib, /lib32, /lib64, /var/run symlinks should never be removed
in Void, so be safe and ignore the removal of them.

Added another test to the testsuite to verify its correctness.
2013-11-28 10:27:36 +01:00
Juan RP
172c84040c xbps-rindex: fix clean mode while removing obsolete entries on index-files with updates. 2013-11-25 10:16:38 +01:00
Juan RP
c9825feb29 util.c: add stricter checks for pkgver conformance (v2).
There was another case where it now was failing: "fs-utils-v1.00_1".

Previous code didn't take into account that a valid version might also
contain a non digit after '-'.

Added more tests to the testsuite to verify its correctness.
2013-11-17 12:25:02 +01:00
Juan RP
c44d7070a4 util.c: add stricter checks for pkgver conformance.
Make xbps_pkg_{name,version} return NULL if next character
after the last '-' character is not a digit, and if there's a digit
make sure that there exists a '_' character too.

Added more tests to the testsuite to catch this. With these changes
'python-e_dbus' is properly detected and validated.
2013-11-17 11:34:14 +01:00
Juan RP
6d9bb47fba unpack: make sure to remove only on-disk files if file type does not match.
Added another ATF test-case to make sure it works properly.
2013-11-09 08:59:02 +01:00
Juan RP
b7d91b490c Move libxbps shell tests to libxbps/shell and remove unused test-shell.mk. 2013-11-06 11:52:02 +01:00
Juan RP
6952144d60 Simplify tests/xbps/xbps-rindex structure. 2013-11-06 11:11:00 +01:00
Juan RP
8f36f8e638 Make sure that configuration files are properly kept or unpacked.
Added two new test cases to verify it works as advertised.
2013-11-06 10:45:33 +01:00
Juan RP
987d374ea9 Added an ATF test-case for #6 (close #6; this has been fixed previously). 2013-11-06 09:37:38 +01:00
Juan RP
c1fafcd339 Fix #20 and added an ATF test-case. 2013-11-05 09:56:36 +01:00
Juan RP
89c62c626c xbps-rindex: [clean] the filesclean test now passes successfully. 2013-11-03 11:15:56 +01:00
Juan RP
c06115af9a issue18_test: pass optional 2nd arg "cleanup" to atf_test_case(). 2013-11-03 10:53:26 +01:00
Juan RP
a8bfc4e9f8 xbps-rindex: add more test-cases and merge issue19 into the generic clean_test. 2013-11-03 10:52:32 +01:00
Juan RP
4d3a412d9e Reorganize tests and move all them under /usr/tests/xbps. 2013-11-03 09:30:57 +01:00
Juan RP
4e4e4a49d0 Added an ATF test-case for issue #19. 2013-11-02 11:44:54 +01:00
Juan RP
2b40d8ad54 issue18_test: use atf_check_equal() instead and cleanup stuff at the end. 2013-11-01 18:47:23 +01:00
Juan RP
c4a0568c08 Added an ATF test-case for issue #18 (in shell). 2013-11-01 18:35:25 +01:00
Juan RP
09e116b7f0 xbps_api.h -> xbps.h 2013-06-20 12:31:02 +02:00
Juan RP
5642ca6cfc Update tests to the new API. 2013-06-20 11:33:50 +02:00
Juan RP
430b224f58 Add new kyua tests for xbps_find_pkg_orphans(). 2013-03-11 12:59:31 +01:00
Juan RP
bc6aa52f33 Add some tests for pkgdb. 2013-03-10 10:08:58 +01:00
Juan RP
b976a45aed New code to find pkg obsolete files, with a proper kyua test.
Previous code incorrectly found obsolete files in this case:

(curpkg) - in files: /etc/foo.conf
(newpkg) - in conf_files: /etc/foo.conf

and removed this file because the code couldn't find it in the same
array. The new code fixes this case and compares the whole pkg filelist.
2013-03-09 13:30:56 +01:00
Juan RP
15b148fb51 tests: remove obsolete tests for 0.19 API. 2012-11-30 07:47:22 +01:00
Juan RP
d6735d5685 xbps_xasprintf: do not return NULL anymore; remove checks for this. 2012-11-11 09:37:27 +01:00
Juan RP
068cab8d20 libxbps: performance improvements by caching the most accessed paths.
1- We can cache the result of the first xbps_pkgdb_init() when it fails
   and avoid the malloc/free/access from it.
2- We cache the uname(2) result into a private var in xbps_handle and
   use it in xbps_pkg_arch_match().

This improves performance by ~5% approx and it's close as it was before
introducing the repository index format 1.5.
2012-06-15 15:33:11 +02:00
Juan RP
2c50346143 tests: update libxbp/find_pkg tests for new API changes. 2012-06-14 08:27:10 +02:00
Juan RP
c37026d4c6 libxbps: require an underscore in strings to detect correctly pkgname/version. 2012-06-05 10:58:39 +02:00
Juan RP
7289547432 Welcome "repository index format 1.5". See NEWS for information. 2012-05-31 16:29:56 +02:00
Juan RP
eea183bef4 Remove plist_find_virtualpkg_conf tests, supersed by find_pkg. 2012-03-13 11:34:45 +01:00
Juan RP
749e03aa29 Make xbps_find_virtualpkg_conf_in_xxx_by_xxx part of the API and add kyua tests. 2012-03-12 17:51:50 +01:00
Juan RP
715990a1e5 Make xbps_find_virtualpkg_in_dict_by_xxx part of the API and add kyua tests. 2012-03-12 16:36:46 +01:00
Juan RP
35db47eafd tests: drop trailing whitespaces. 2012-03-12 15:35:53 +01:00
Juan RP
d4f623e7e7 Commit Kyua/ATF test suite for libxbps. 2012-03-12 15:23:04 +01:00