tests: add test for locale decimal processing
[coreutils.git] / tests / misc / truncate-fail-diag.sh
blobdbf02ffbd7ae7a9ea7c9a1716249f01859a251a2
1 #!/bin/sh
2 # make sure truncate gives reasonable diagnostics
3 # Note open() checks for trailing '/' before checking for existence
4 # open (".", O_CREAT & (O_WRONLY | O_RDWR), ...) -> EISDIR
5 # open ("missing/", O_CREAT & (O_WRONLY | O_RDWR), ...) -> EISDIR
6 # open ("missing/file", O_CREAT & (O_WRONLY | O_RDWR), ...) -> ENOENT
8 # Copyright (C) 2008-2019 Free Software Foundation, Inc.
10 # This program is free software: you can redistribute it and/or modify
11 # it under the terms of the GNU General Public License as published by
12 # the Free Software Foundation, either version 3 of the License, or
13 # (at your option) any later version.
15 # This program is distributed in the hope that it will be useful,
16 # but WITHOUT ANY WARRANTY; without even the implied warranty of
17 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 # GNU General Public License for more details.
20 # You should have received a copy of the GNU General Public License
21 # along with this program. If not, see <https://www.gnu.org/licenses/>.
23 . "${srcdir=.}/tests/init.sh"; path_prepend_ ./src
24 print_ver_ truncate
25 skip_if_root_
28 d1=no
30 dir=$d1/such-dir
31 truncate -s0 $dir > out 2>&1 && fail=1
32 cat <<EOF > exp
33 truncate: cannot open '$dir' for writing: No such file or directory
34 EOF
35 compare exp out || fail=1
37 dir=$d1/
38 truncate -s0 $dir > out 2>&1 && fail=1
39 #The following can be returned at least
40 #truncate: cannot open '$dir' for writing: Not a directory
41 #truncate: cannot open '$dir' for writing: Is a directory
43 Exit $fail