source: vendor/sed/current/testsuite/badenc.sh

Last change on this file was 3611, checked in by bird, 11 months ago

vendor/sed/current: GNU sed 4.9 (sed-4.9.tar.xz sha256:6e226b732e1cd739464ad6862bd1a1aba42d7982922da7a53519631d24975181)

  • Property svn:executable set to *
File size: 1.4 KB
Line 
1#!/bin/sh
2
3# Test runner for old 'badenc' test
4
5# Copyright (C) 2017-2022 Free Software Foundation, Inc.
6
7# This program is free software: you can redistribute it and/or modify
8# it under the terms of the GNU General Public License as published by
9# the Free Software Foundation, either version 3 of the License, or
10# (at your option) any later version.
11
12# This program is distributed in the hope that it will be useful,
13# but WITHOUT ANY WARRANTY; without even the implied warranty of
14# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15# GNU General Public License for more details.
16
17# You should have received a copy of the GNU General Public License
18# along with this program. If not, see <https://www.gnu.org/licenses/>.
19. "${srcdir=.}/testsuite/init.sh"; path_prepend_ ./sed
20print_ver_ sed
21
22require_en_utf8_locale_
23
24# The input (and also the expected output)
25# containing an invalid multibyte sequences in utf-8 (octet \320 = 0xD0).
26printf "abc\nde\320f\nghi\njkl\nmno\npqr\nstu\nvwx\nyz\n" > badenc-inp \
27 || framework_failure_
28
29
30# The progarm: using 'z' to clear the pattern-space even
31# if it contains invalid multibyte sequences.
32# Using 's/.*//' would not be able to clear the pattern-space.
33cat << \EOF > badenc.sed || framework_failure_
34/.*/ { H ; g ; s/\n// ; p ; z ; x }
35EOF
36
37
38env LC_ALL=en_US.UTF-8 sed -nf badenc.sed badenc-inp > badenc-out || fail=1
39remove_cr_inplace badenc-out
40compare badenc-inp badenc-out || fail=1
41
42
43Exit $fail
Note: See TracBrowser for help on using the repository browser.