@@ -56,6 +56,101 @@ tc1_body() {
5656
5757}
5858
59+
60+ atf_test_case tc2
61+
62+ tc2_head () {
63+ atf_set " descr" " Tests for pkg orphans: "
64+ }
65+
66+ tc2_body () {
67+ mkdir -p repo pkg
68+
69+ atf_expect_fail " orphans broken"
70+
71+ cd repo
72+ atf_check -o ignore -- xbps-create -A noarch -n A-1.0_1 -s " A pkg" ../pkg
73+ atf_check -o ignore -- xbps-create -A noarch -n B-1.0_1 -s " B pkg" -D " A>=0" ../pkg
74+ atf_check -o ignore -- xbps-create -A noarch -n C-1.0_1 -s " C pkg" -D " B>=0" ../pkg
75+ atf_check -o ignore -- xbps-create -A noarch -n D-1.0_1 -s " D pkg" -D " C>=0" ../pkg
76+ atf_check -o ignore -- xbps-create -A noarch -n X-1.0_1 -s " X pkg" -D " X1>=0" ../pkg
77+ atf_check -o ignore -- xbps-create -A noarch -n X1-1.0_1 -s " X pkg" -D " X2>=0 X2>=0" ../pkg
78+ atf_check -o ignore -- xbps-create -A noarch -n X2-1.0_1 -s " X pkg" -D " X3>=0 X3>=0" ../pkg
79+ atf_check -o ignore -- xbps-create -A noarch -n X3-1.0_1 -s " X pkg" -D " X3>=0 X1>=0 X4>=0 X5>=0" ../pkg
80+ atf_check -o ignore -- xbps-create -A noarch -n X4-1.0_1 -s " X pkg" -D " X4>=0" ../pkg
81+ atf_check -o ignore -- xbps-create -A noarch -n X5-1.0_1 -s " X pkg" -D " X3>=0" ../pkg
82+ atf_check -o ignore -e ignore -- xbps-rindex -d -a $PWD /* .xbps
83+ cd ..
84+
85+ atf_check -o ignore -e ignore -- xbps-install -r root -R repo -y A D X
86+ atf_check -o ignore -e ignore -- xbps-remove -r root -Rdy X1
87+ atf_check -o inline:" ii X-1.0_1 X pkg\n" -- xbps-query -r root -l
88+ }
89+
90+ atf_test_case tc3
91+
92+ tc3_head () {
93+ atf_set " descr" " Tests for pkg orphans: "
94+ }
95+
96+ tc3_body () {
97+ mkdir -p repo pkg
98+
99+ atf_expect_fail " orphans broken"
100+
101+ cd repo
102+ atf_check -o ignore -- xbps-create -A noarch -n A-1.0_1 -s " A pkg" ../pkg
103+ atf_check -o ignore -- xbps-create -A noarch -n B-1.0_1 -s " B pkg" -D " A>=0" ../pkg
104+ atf_check -o ignore -- xbps-create -A noarch -n C-1.0_1 -s " C pkg" -D " B>=0" ../pkg
105+ atf_check -o ignore -- xbps-create -A noarch -n D-1.0_1 -s " D pkg" -D " C>=0" ../pkg
106+ atf_check -o ignore -- xbps-create -A noarch -n X-1.0_1 -s " X pkg" -D " X1>=0" ../pkg
107+ atf_check -o ignore -- xbps-create -A noarch -n X1-1.0_1 -s " X pkg" -D " X2>=0 X2>=0" ../pkg
108+ atf_check -o ignore -- xbps-create -A noarch -n X2-1.0_1 -s " X pkg" -D " X3>=0 X3>=0" ../pkg
109+ atf_check -o ignore -- xbps-create -A noarch -n X3-1.0_1 -s " X pkg" -D " X3>=0 X1>=0 X4>=0 X5>=0" ../pkg
110+ atf_check -o ignore -- xbps-create -A noarch -n X4-1.0_1 -s " X pkg" -D " X4>=0" ../pkg
111+ atf_check -o ignore -- xbps-create -A noarch -n X5-1.0_1 -s " X pkg" -D " X3>=0" ../pkg
112+ atf_check -o ignore -e ignore -- xbps-rindex -d -a $PWD /* .xbps
113+ cd ..
114+
115+ atf_check -o ignore -e ignore -- xbps-install -r root -R repo -y A D X
116+ cat << -EOF >expect
117+ ii A-1.0_1 A pkg
118+ ii B-1.0_1 B pkg
119+ ii C-1.0_1 C pkg
120+ ii D-1.0_1 D pkg
121+ ii X-1.0_1 X pkg
122+ ii X1-1.0_1 X pkg
123+ ii X2-1.0_1 X pkg
124+ ii X3-1.0_1 X pkg
125+ ii X4-1.0_1 X pkg
126+ ii X5-1.0_1 X pkg
127+ EOF
128+ atf_check -o file:expect -- xbps-query -r root -l
129+ atf_check -o ignore -e ignore -- xbps-remove -r root -dy X
130+ cat << -EOF >expect
131+ ii A-1.0_1 A pkg
132+ ii B-1.0_1 B pkg
133+ ii C-1.0_1 C pkg
134+ ii D-1.0_1 D pkg
135+ ii X1-1.0_1 X pkg
136+ ii X2-1.0_1 X pkg
137+ ii X3-1.0_1 X pkg
138+ ii X4-1.0_1 X pkg
139+ ii X5-1.0_1 X pkg
140+ EOF
141+ atf_check -o file:expect -- xbps-query -r root -l
142+ atf_check -o ignore -e ignore -- xbps-remove -r root -Rdyo
143+ cat << -EOF >expect
144+ ii A-1.0_1 A pkg
145+ ii B-1.0_1 B pkg
146+ ii C-1.0_1 C pkg
147+ ii D-1.0_1 D pkg
148+ EOF
149+ atf_check -o file:expect -- xbps-query -r root -l
150+ }
151+
59152atf_init_test_cases () {
60153 atf_add_test_case tc1
154+ atf_add_test_case tc2
155+ atf_add_test_case tc3
61156}
0 commit comments