]> git.ipfire.org Git - thirdparty/util-linux.git/blob - tests/ts/libfdisk/mkpart-full
tests: add remaining stderr outputs
[thirdparty/util-linux.git] / tests / ts / libfdisk / mkpart-full
1 #!/bin/bash
2 #
3 # This file is part of util-linux.
4 #
5 # This file is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 2 of the License, or
8 # (at your option) any later version.
9 #
10 # This file is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
14 #
15 #
16 # Create partition in non-interactive mode; like mkpart, but partition is fully
17 # specifuied by partno, start and size.
18 #
19
20 TS_TOPDIR="${0%/*}/../.."
21 TS_DESC="mkpart-full"
22
23 . $TS_TOPDIR/functions.sh
24 ts_init "$*"
25
26 TESTPROG="$TS_HELPER_LIBFDISK_MKPART_FULLSPEC"
27 ts_check_test_command "$TESTPROG"
28 ts_check_test_command "$TS_CMD_SFDISK"
29 ts_check_test_command "$TS_CMD_WIPEFS"
30
31 TEST_IMAGE_NAME=$(ts_image_init 15)
32
33 ts_init_subtest "mbr-primary"
34 ts_run $TESTPROG --label mbr --device ${TEST_IMAGE_NAME} \
35 1,2048,2048 \
36 2,4096,2048 \
37 3,6144,2048 \
38 4,8192,22528 \
39 >> $TS_OUTPUT 2>> $TS_ERRLOG
40 $TS_CMD_SFDISK --list ${TEST_IMAGE_NAME} >> $TS_OUTPUT 2>> $TS_ERRLOG
41 ts_fdisk_clean ${TEST_IMAGE_NAME}
42 ts_finalize_subtest
43
44 $TS_CMD_WIPEFS --all --force ${TEST_IMAGE_NAME} &> /dev/null
45
46
47 ts_init_subtest "mbr-primary-nopartno"
48 ts_run $TESTPROG --label mbr --device ${TEST_IMAGE_NAME} -- \
49 -,2048,2048 \
50 -,4096,2048 \
51 -,6144,2048 \
52 -,8192,22528 \
53 >> $TS_OUTPUT 2>> $TS_ERRLOG
54 $TS_CMD_SFDISK --list ${TEST_IMAGE_NAME} >> $TS_OUTPUT 2>> $TS_ERRLOG
55 ts_fdisk_clean ${TEST_IMAGE_NAME}
56 ts_finalize_subtest
57
58 $TS_CMD_WIPEFS --all --force ${TEST_IMAGE_NAME} &> /dev/null
59
60 ## no extended but partno > 4 requested
61 ts_init_subtest "mbr-err-primary"
62 ts_run $TESTPROG --label mbr --device ${TEST_IMAGE_NAME} \
63 1,2048,2048 \
64 2,4096,2048 \
65 7,6144,2048 \
66 >> $TS_OUTPUT 2>> $TS_ERRLOG
67 $TS_CMD_SFDISK --list ${TEST_IMAGE_NAME} >> $TS_OUTPUT 2>> $TS_ERRLOG
68 ts_fdisk_clean ${TEST_IMAGE_NAME}
69 ts_finalize_subtest
70
71 $TS_CMD_WIPEFS --all --force ${TEST_IMAGE_NAME} &> /dev/null
72
73 ## no extended but partno > 4 requested
74 ts_init_subtest "mbr-err-nospace"
75 ts_run $TESTPROG --label mbr --device ${TEST_IMAGE_NAME} \
76 1,2048,2048 \
77 2,4096,2048 \
78 3,4096,2048 \
79 >> $TS_OUTPUT 2>> $TS_ERRLOG
80 $TS_CMD_SFDISK --list ${TEST_IMAGE_NAME} >> $TS_OUTPUT 2>> $TS_ERRLOG
81 ts_fdisk_clean ${TEST_IMAGE_NAME}
82 ts_finalize_subtest
83
84 $TS_CMD_WIPEFS --all --force ${TEST_IMAGE_NAME} &> /dev/null
85
86
87 ts_init_subtest "mbr-logical"
88 ts_run $TESTPROG --label mbr --device ${TEST_IMAGE_NAME} \
89 1,2048,2048 \
90 2,4096,2048 \
91 3,6144,2048 \
92 4,8192,22528 \
93 5,10240,2048 \
94 6,14336,2048 \
95 7,18432,12288 \
96 >> $TS_OUTPUT 2>> $TS_ERRLOG
97 $TS_CMD_SFDISK --list ${TEST_IMAGE_NAME} >> $TS_OUTPUT 2>> $TS_ERRLOG
98 ts_fdisk_clean ${TEST_IMAGE_NAME}
99 ts_finalize_subtest
100
101 $TS_CMD_WIPEFS --all --force ${TEST_IMAGE_NAME} &> /dev/null
102
103 ts_init_subtest "mbr-nopartno"
104 ts_run $TESTPROG --label mbr --device ${TEST_IMAGE_NAME} -- \
105 -,2048,2048 \
106 -,4096,2048 \
107 -,6144,2048 \
108 -,8192,22528 \
109 -,10240,2048 \
110 -,14336,2048 \
111 -,18432,12288 \
112 >> $TS_OUTPUT 2>> $TS_ERRLOG
113 $TS_CMD_SFDISK --list ${TEST_IMAGE_NAME} >> $TS_OUTPUT 2>> $TS_ERRLOG
114 ts_fdisk_clean ${TEST_IMAGE_NAME}
115 ts_finalize_subtest
116
117 $TS_CMD_WIPEFS --all --force ${TEST_IMAGE_NAME} &> /dev/null
118
119 ### 6th partition (logical) out of extended
120 ts_init_subtest "mbr-err-logical"
121 ts_run $TESTPROG --label mbr --device ${TEST_IMAGE_NAME} \
122 1,2048,2048 \
123 2,4096,2048 \
124 3,6144,2048 \
125 4,8192,22528 \
126 5,10240,2048 \
127 6,4096,2048 \
128 7,18432,12288 \
129 >> $TS_OUTPUT 2>> $TS_ERRLOG
130 $TS_CMD_SFDISK --list ${TEST_IMAGE_NAME} >> $TS_OUTPUT 2>> $TS_ERRLOG
131 ts_fdisk_clean ${TEST_IMAGE_NAME}
132 ts_finalize_subtest
133
134 $TS_CMD_WIPEFS --all --force ${TEST_IMAGE_NAME} &> /dev/null
135
136 ts_init_subtest "mbr-space-gap"
137 ts_run $TESTPROG --label mbr --device ${TEST_IMAGE_NAME} \
138 1,2048,2048 \
139 2,6144,2048 \
140 3,8192,2048 \
141 >> $TS_OUTPUT 2>> $TS_ERRLOG
142 $TS_CMD_SFDISK --list ${TEST_IMAGE_NAME} >> $TS_OUTPUT 2>> $TS_ERRLOG
143 ts_fdisk_clean ${TEST_IMAGE_NAME}
144 ts_finalize_subtest
145
146 $TS_CMD_WIPEFS --all --force ${TEST_IMAGE_NAME} &> /dev/null
147
148 ts_init_subtest "gpt"
149 ts_run $TESTPROG --label gpt --device ${TEST_IMAGE_NAME} \
150 1,2048,2048 \
151 2,4096,2048 \
152 3,6144,2048 \
153 4,8192,2048 \
154 5,10240,2048 \
155 6,12288,2048 \
156 7,14336,2048 \
157 >> $TS_OUTPUT 2>> $TS_ERRLOG
158 $TS_CMD_SFDISK --list ${TEST_IMAGE_NAME} >> $TS_OUTPUT 2>> $TS_ERRLOG
159 ts_fdisk_clean ${TEST_IMAGE_NAME}
160 ts_finalize_subtest
161
162 $TS_CMD_WIPEFS --all --force ${TEST_IMAGE_NAME} &> /dev/null
163
164 ts_init_subtest "gpt-nopartno"
165 ts_run $TESTPROG --label gpt --device ${TEST_IMAGE_NAME} -- \
166 -,2048,2048 \
167 -,4096,2048 \
168 -,6144,2048 \
169 -,8192,2048 \
170 -,10240,2048 \
171 -,12288,2048 \
172 -,14336,2048 \
173 >> $TS_OUTPUT 2>> $TS_ERRLOG
174 $TS_CMD_SFDISK --list ${TEST_IMAGE_NAME} >> $TS_OUTPUT 2>> $TS_ERRLOG
175 ts_fdisk_clean ${TEST_IMAGE_NAME}
176 ts_finalize_subtest
177
178 $TS_CMD_WIPEFS --all --force ${TEST_IMAGE_NAME} &> /dev/null
179
180 ### 4th partition overlap 4th and 5th
181 ts_init_subtest "gpt-err-overlap"
182 ts_run $TESTPROG --label gpt --device ${TEST_IMAGE_NAME} \
183 1,2048,2048 \
184 2,4096,2048 \
185 3,6144,2048 \
186 4,5000,2048 \
187 5,10240,2048 \
188 6,12288,2048 \
189 7,14336,2048 \
190 >> $TS_OUTPUT 2>> $TS_ERRLOG
191 $TS_CMD_SFDISK --list ${TEST_IMAGE_NAME} >> $TS_OUTPUT 2>> $TS_ERRLOG
192 ts_fdisk_clean ${TEST_IMAGE_NAME}
193 ts_finalize_subtest
194
195 $TS_CMD_WIPEFS --all --force ${TEST_IMAGE_NAME} &> /dev/null
196
197 ts_init_subtest "gpt-partno-gap"
198 ts_run $TESTPROG --label gpt --device ${TEST_IMAGE_NAME} \
199 1,2048,2048 \
200 2,4096,2048 \
201 4,6144,2048 \
202 5,8192,2048 \
203 7,10240,2048 \
204 8,12288,2048 \
205 9,14336,2048 \
206 >> $TS_OUTPUT 2>> $TS_ERRLOG
207 $TS_CMD_SFDISK --list ${TEST_IMAGE_NAME} >> $TS_OUTPUT 2>> $TS_ERRLOG
208 ts_fdisk_clean ${TEST_IMAGE_NAME}
209 ts_finalize_subtest
210
211 $TS_CMD_WIPEFS --all --force ${TEST_IMAGE_NAME} &> /dev/null
212
213 ts_init_subtest "gpt-space-gap"
214 ts_run $TESTPROG --label gpt --device ${TEST_IMAGE_NAME} \
215 1,2048,2048 \
216 2,6144,2048 \
217 3,8192,2048 \
218 4,12288,2048 \
219 5,14336,2048 \
220 >> $TS_OUTPUT 2>> $TS_ERRLOG
221 $TS_CMD_SFDISK --list ${TEST_IMAGE_NAME} >> $TS_OUTPUT 2>> $TS_ERRLOG
222 ts_fdisk_clean ${TEST_IMAGE_NAME}
223 ts_finalize_subtest
224
225 ts_finalize