xbps-install: added --reproducible long option.
If set, enables reproducible mode in pkgdb. Added a new test case.
This commit is contained in:
@@ -58,7 +58,51 @@ update_existent_body() {
|
||||
atf_check_equal $? 0
|
||||
}
|
||||
|
||||
atf_test_case reproducible
|
||||
|
||||
reproducible_head() {
|
||||
atf_set "descr" "xbps-install(1): test --reproducible"
|
||||
}
|
||||
|
||||
reproducible_body() {
|
||||
mkdir -p repo pkg_A
|
||||
touch pkg_A/file
|
||||
cd repo
|
||||
xbps-create -A noarch -n A-1.0_1 -s "A pkg" ../pkg_A
|
||||
atf_check_equal $? 0
|
||||
xbps-rindex -d -a $PWD/*.xbps
|
||||
atf_check_equal $? 0
|
||||
cd ..
|
||||
xbps-install -r root-1 --repo=$PWD/repo --repro -y A
|
||||
atf_check_equal $? 0
|
||||
xbps-install -r root-2 --repo=$PWD/repo --repro -y A
|
||||
atf_check_equal $? 0
|
||||
|
||||
# Compare pkgdb in both rootdirs
|
||||
cmp root-1/var/db/xbps/pkgdb-0.38.plist root-2/var/db/xbps/pkgdb-0.38.plist
|
||||
atf_check_equal $? 0
|
||||
# compare pkgdb meta files in both rootdirs
|
||||
cmp root-1/var/db/xbps/.A-files.plist root-2/var/db/xbps/.A-files.plist
|
||||
atf_check_equal $? 0
|
||||
|
||||
# Now check without --reproducible
|
||||
rm -rf root-1 root-2
|
||||
|
||||
xbps-install -r root-1 --repo=$PWD/repo --repro -y A
|
||||
atf_check_equal $? 0
|
||||
xbps-install -r root-2 --repo=$PWD/repo -y A
|
||||
atf_check_equal $? 0
|
||||
|
||||
# Compare pkgdb in both rootdirs
|
||||
cmp root-1/var/db/xbps/pkgdb-0.38.plist root-2/var/db/xbps/pkgdb-0.38.plist
|
||||
atf_check_equal $? 1
|
||||
# compare pkgdb meta files in both rootdirs
|
||||
cmp root-1/var/db/xbps/.A-files.plist root-2/var/db/xbps/.A-files.plist
|
||||
atf_check_equal $? 0
|
||||
}
|
||||
|
||||
atf_init_test_cases() {
|
||||
atf_add_test_case install_existent
|
||||
atf_add_test_case update_existent
|
||||
atf_add_test_case reproducible
|
||||
}
|
||||
|
Reference in New Issue
Block a user