multipleprovider.sh
1 #! /usr/bin/env atf-sh 2 3 . $(atf_get_srcdir)/test_environment.sh 4 5 tests_init \ 6 multiple_providers 7 8 multiple_providers_body() { 9 touch file 10 11 atf_check -s exit:0 sh ${RESOURCEDIR}/test_subr.sh new_pkg pkg1 test1 1 12 cat << EOF >> pkg1.ucl 13 shlibs_provided [ 14 "lib1.so.6" 15 ] 16 files: { 17 ${TMPDIR}/file: "" 18 } 19 EOF 20 21 atf_check -s exit:0 sh ${RESOURCEDIR}/test_subr.sh new_pkg pkg2 dep 1 22 cat << EOF >> pkg2.ucl 23 shlibs_required [ 24 "lib1.so.6" 25 ] 26 deps: { 27 test1 { 28 origin: test 29 version: 1 30 } 31 } 32 EOF 33 34 for p in pkg1 pkg2; do 35 atf_check \ 36 -o match:".*Installing.*\.\.\.$" \ 37 -e empty \ 38 -s exit:0 \ 39 pkg register -M ${p}.ucl 40 done 41 42 atf_check -s exit:0 sh ${RESOURCEDIR}/test_subr.sh new_pkg pkg3 test1 1_0 43 cat << EOF >> pkg3.ucl 44 shlibs_provided [ 45 "lib1.so.6" 46 ] 47 files: { 48 ${TMPDIR}/file: "" 49 } 50 EOF 51 52 atf_check -s exit:0 sh ${RESOURCEDIR}/test_subr.sh new_pkg pkg4 test2 1 53 cat << EOF >> pkg4.ucl 54 shlibs_provided [ 55 "lib1.so.6" 56 ] 57 files: { 58 ${TMPDIR}/file: "" 59 } 60 EOF 61 62 atf_check -s exit:0 sh ${RESOURCEDIR}/test_subr.sh new_pkg pkg5 dep 1_1 63 cat << EOF >> pkg5.ucl 64 shlibs_required [ 65 "lib1.so.6" 66 ] 67 deps: { 68 test2 { 69 origin: test 70 version: 1 71 } 72 } 73 EOF 74 75 for p in pkg3 pkg4 pkg5; do 76 atf_check \ 77 -o ignore \ 78 -e empty \ 79 -s exit:0 \ 80 pkg create -M ./${p}.ucl 81 done 82 83 atf_check \ 84 -o inline:"Creating repository in .: done\nPacking files for repository: done\n" \ 85 -e empty \ 86 -s exit:0 \ 87 pkg repo . 88 89 mkdir reposconf 90 cat << EOF > reposconf/repo.conf 91 local: { 92 url: file:///$TMPDIR, 93 enabled: true 94 } 95 EOF 96 97 atf_check \ 98 -o ignore \ 99 -s exit:0 \ 100 pkg -o REPOS_DIR="$TMPDIR/reposconf" -o PKG_CACHEDIR="$TMPDIR" upgrade -y 101 } 102