Skip to content

Commit ab6c874

Browse files
committed
Finish sed tests
1 parent 225b91b commit ab6c874

File tree

1 file changed

+105
-0
lines changed

1 file changed

+105
-0
lines changed

tests/test_sed.sh

Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -189,3 +189,108 @@ check 'End of line' \
189189
'testing tests' \
190190
's/s$/x/g' \
191191
'testing testx'
192+
193+
# Captures and groups
194+
195+
checkb 'Capturing group' \
196+
'Name is Remi!' \
197+
's/^.*is \(.*\)!$/\1/' \
198+
'Remi'
199+
checke 'Capturing group' \
200+
'Name is Remi!' \
201+
's/^.*is (.*)!$/\1/' \
202+
'Remi'
203+
204+
checkb 'Non-capturing parentheses' \
205+
'Some (dumb)text' \
206+
's/(.*)//g' \
207+
'Some text'
208+
checke 'Non-capturing parentheses' \
209+
'Some (dumb)text' \
210+
's/\(.*\)//g' \
211+
'Some text'
212+
213+
checkb 'Backreference' \
214+
'ab be cd cc df' \
215+
's/\([a-z]\)\1/xx/g' \
216+
'ab be cd xx df'
217+
checke 'Backreference' \
218+
'ab be cd cc df' \
219+
's/([a-z])\1/xx/g' \
220+
'ab be cd xx df'
221+
222+
# Look-around not supported in POSIX
223+
224+
# Multiplicity
225+
226+
checkb '0 or 1' \
227+
'bb bab baab baa?b baaab' \
228+
's/baa\?b/x/g' \
229+
'bb x x baa?b baaab'
230+
checke '0 or 1' \
231+
'bb bab baab baa?b baaab' \
232+
's/baa?b/x/g' \
233+
'bb x x baa?b baaab'
234+
235+
checkb '0 or 1 (negative)' \
236+
'bb bab baab baa?b baaab' \
237+
's/baa?b/x/g' \
238+
'bb bab baab x baaab'
239+
checke '0 or 1 (negative)' \
240+
'bb bab baab baa?b baaab' \
241+
's/baa\?b/x/g' \
242+
'bb bab baab x baaab'
243+
244+
checkb '1 or more' \
245+
'bb bab baab ba+b baaab' \
246+
's/ba\+b/x/g' \
247+
'bb x x ba+b x'
248+
checke '1 or more' \
249+
'bb bab baab ba+b baaab' \
250+
's/ba+b/x/g' \
251+
'bb x x ba+b x'
252+
253+
checkb '1 or more (negative)' \
254+
'bb bab baab ba+b baaab' \
255+
's/ba+b/x/g' \
256+
'bb bab baab x baaab'
257+
checke '1 or more (negative)' \
258+
'bb bab baab ba+b baaab' \
259+
's/ba\+b/x/g' \
260+
'bb bab baab x baaab'
261+
262+
checkb 'Specific number (1)' \
263+
'bb bab baab baaab baaaab' \
264+
's/ba\{2\}b/x/g' \
265+
'bb bab x baaab baaaab'
266+
checke 'Specific number (1)' \
267+
'bb bab baab baaab baaaab' \
268+
's/ba{2}b/x/g' \
269+
'bb bab x baaab baaaab'
270+
271+
checkb 'Specific number (closed)' \
272+
'bb bab baab baaab baaaab' \
273+
's/ba\{1,3\}b/x/g' \
274+
'bb x x x baaaab'
275+
checke 'Specific number (closed)' \
276+
'bb bab baab baaab baaaab' \
277+
's/ba{1,3}b/x/g' \
278+
'bb x x x baaaab'
279+
280+
checkb 'Specific number (open left)' \
281+
'bb bab baaab baaaab' \
282+
's/ba\{,3\}b/x/g' \
283+
'x x x baaaab'
284+
checke 'Specific number (open left)' \
285+
'bb bab baaab baaaab' \
286+
's/ba{,3}b/x/g' \
287+
'x x x baaaab'
288+
289+
checkb 'Specific number (open right)' \
290+
'bb bab baaab baaaab' \
291+
's/ba\{2,\}b/x/g' \
292+
'bb bab x x'
293+
checke 'Specific number (open right)' \
294+
'bb bab baaab baaaab' \
295+
's/ba{2,}b/x/g' \
296+
'bb bab x x'

0 commit comments

Comments
 (0)