Michael Debertol
44981cab01
refactor/uucore ~ correct implementation of executable!() for multicall
...
- Use an atomic bool to track whether the utility name is the second
or the first argument.
- Add tests
2021-08-14 14:01:34 +02:00
Roy Ivy III
4da46d93c7
tests ~ fix tests for new execution_phrase!()
and usage phrasing
2021-08-14 14:01:34 +02:00
Terts Diepraam
f9559fea80
Merge pull request #2569 from jtracey/master
...
join: add support for full outer joins
2021-08-13 14:38:15 +02:00
Justin Tracey
1bb0237281
join: add support for full outer joins
2021-08-12 23:52:35 -04:00
Sylvestre Ledru
a7797c01c0
Merge branch 'master' into chgrp/no-err
2021-08-13 01:35:21 +02:00
Sylvestre Ledru
8f55c79c9b
Merge pull request #2566 from miDeb/ls/width
...
ls: correct output width
2021-08-13 01:31:52 +02:00
Sylvestre Ledru
f98415051b
Merge pull request #2567 from miDeb/pr/tests
...
pr: reduce test flakiness
2021-08-13 01:30:19 +02:00
Michael Debertol
ce1323ce1c
cp: do not set the current directory in tests
...
Setting the current directory in tests affects other tests, even if the
change is reverted after, because tests are run in parallel.
This should fix the flaky cp tests.
2021-08-12 22:42:40 +02:00
Michael Debertol
1725bf6a36
pr: reduce test flakiness
...
Since some tests run multiple commands, we have to re-calculate the
expected result for every run.
This is because the expected results depend on file timestamps, but the
files are re-created for every new TestScenario.
2021-08-12 17:03:06 +02:00
Michael Debertol
0af244ac42
ls: default to one-line output if stdout is not a tty
2021-08-11 22:03:41 +02:00
Michael Debertol
988cc49d4a
ls: print a single line when width is set to 0
...
This means that we treat a width=0 as infinite width.
2021-08-11 19:12:45 +02:00
Michael Debertol
13a62489c5
ls: correct fallbacks for terminal width
...
If options::WIDTH is not given, we should try to use the terminal width.
If that is unavailable, we should fall back to the 'COLUMNS' environment variable.
If that is unavailable (or invalid), we should fall back to a default of 80.
2021-08-11 19:12:37 +02:00
Michael Debertol
1c30fb42d2
chgrp: handle empty group
2021-08-11 19:03:41 +02:00
Michael Debertol
0edc9b01b9
factor: prevent writing incomplete lines
...
This makes it possible to execute multiple `factor` instances that write
to the same output in parallel, without having them interfere.
2021-08-10 00:14:51 +02:00
Sylvestre Ledru
966cf79747
Merge pull request #2551 from uutils/od-hang
...
od: fix reading from file while supplying a format argument
2021-08-09 12:36:31 +02:00
Sylvestre Ledru
ee98efd92e
Merge pull request #2552 from miDeb/cat/show-crlf
...
cat: show `\r\n` as `^M$` when `-E` is enabled
2021-08-09 12:23:59 +02:00
Michael Debertol
312e1ce9e0
chgrp: don't output an empty error
2021-08-09 01:33:02 +02:00
Michael Debertol
03ceb6750e
cat: check if the input file is also the output file
2021-08-08 01:32:22 +02:00
Michael Debertol
7229360217
cat: remove all per-file state
...
cat cannot keep per-file state, so move all remaining state (one_blank_kept)
to the global state.
2021-08-07 23:04:25 +02:00
Michael Debertol
5be4c48546
cat: show \r\n as ^M$ when -E is enabled
...
This functionality was recently added to GNU cat, but had a bug.
This implementation will be commpatible with gnu once the bug in gnu is fixed.
2021-08-07 21:18:15 +02:00
Jeremy Soller
6af3f774f1
od: fix reading from file while supplying a format argument
...
The following test case read stdin instead of file:
```
echo abcdefg > file
cargo run -- od --format x1 file
```
This is because the -t/--format argument was able to absorb multiple
arguments after it. This has now been fixed, and a test case is added
to ensure it will not happen again.
2021-08-06 15:07:38 -06:00
Sylvestre Ledru
32d281bbcc
Merge pull request #2544 from miDeb/sort/delete-tmps
...
sort: delete temporary files when sort is terminated
2021-08-06 11:52:06 +02:00
Michael Debertol
0ae9e10ed3
sort: delete the temporary directory when sort is terminated
...
When hitting Ctrl+C sort now deletes any temporary files. To make this easier I
created a new struct `TmpDirWrapper` that handles the creation of new temporary
files and the registration of the signal handler.
2021-08-06 11:29:24 +02:00
Sylvestre Ledru
50b9d9f9a3
Merge branch 'master' into master
2021-08-06 09:26:39 +02:00
Koutheir Attouchi
090be5bb94
chcon: added implementation and integration tests
...
The ToDo list was updated to mark `chcon` as done.
Building and testing `chcon` requires enabling the `feat_selinux` feature. If `make` is used for building, then please specify `SELINUX_ENABLED=1` if building and testing on a system where SELinux is not enabled.
2021-08-05 22:57:57 -04:00
Michael Debertol
b8c383e210
basenc: add utility
...
basenc is a brand-new gnu core utility (added less than 3 years ago!),
which enables some more encodings.
2021-08-06 00:07:19 +02:00
backwaterred
2c41838166
Merge branch 'uutils:master' into master
2021-08-04 12:47:47 -07:00
Tyler
0864234e3d
Removes unused macros from windows & macos builds
2021-08-04 12:47:03 -07:00
Tyler
601c9fc620
Merge branch 'master' of https://github.com/uutils/coreutils into uutils-master-2
2021-08-03 17:33:43 -07:00
Michael Debertol
9700f0503d
base32/64: adjust error message to match gnu
2021-08-04 00:04:25 +02:00
Michael Debertol
44ae927969
base32/64: print the first extra operand, not the one before
...
Only one operand is allowed, so when there are multiple arguments we
should print the second argument in the error.
2021-08-03 23:37:20 +02:00
Sylvestre Ledru
26cc2ed440
Merge pull request #2517 from jfinkels/tac-null-separator
...
tac: support null separator (-s "")
2021-08-03 09:22:50 +02:00
Sylvestre Ledru
afb2e422fd
Merge pull request #2529 from jfinkels/tests-improve-link-arg-names
...
tests: better arg names in link helper functions
2021-08-03 09:21:36 +02:00
Jan Scheer
010565c8fb
Merge branch 'master' into id_selinux_context
2021-08-02 10:40:45 +02:00
Jeffrey Finkelstein
2a4c0a867a
tests: better arg names in link helper functions
...
Change the argument names in
* `AtPath::hard_link()`,
* `AtPath::symlink_file()`, and
* `AtPath::symlink_dir()`,
from `src` and `dest` to `original` and `link` to match the arguments of
the corresponding functions from the Rust standard library. For example,
see `std::os::unix::fs::symlink()`.
2021-08-01 19:50:58 -04:00
Jeffrey Finkelstein
d74fb62df7
tac: support null separator
2021-08-01 19:47:21 -04:00
Sylvestre Ledru
24b1822cba
Merge pull request #2468 from thomasqueirozb/tail_stdin
...
tail: handle `-` as an alias for stdin
2021-08-02 00:24:28 +02:00
Thomas Queiroz
6127ea9642
tests/tail: add test for as an alias for stdin
2021-08-01 17:20:30 -04:00
James Robson
0e04f959c2
Add Physical mode to realpath
...
This adds the 'Physical Mode' and 'Logical Mode' switches to realpath, which control when symlinks are resolved.
2021-08-01 17:06:09 +01:00
Michael Debertol
450a487d76
sort: ignore broken pipes in a test
...
Since sort exits early due to the nonexistent file, it might no longer
be around when we try to send it the input.
This is "by design" and can be ignored.
2021-08-01 18:02:52 +02:00
Michael Debertol
af47c66a00
sort: improve tests
2021-08-01 17:12:35 +02:00
Jeffrey Finkelstein
8f5b785180
fixup! basename: handle paths comprising only slashes
2021-08-01 10:05:01 -04:00
Sylvestre Ledru
2d84c68f20
Merge branch 'master' into sort/input-is-output
2021-08-01 13:51:19 +02:00
Jeffrey Finkelstein
0d348f05f2
basename: handle paths comprising only slashes
...
Fix an issue where `basename` would print the empty path when provided
an input comprising only slashes (for example, "/" or "//" or
"///"). Now it correctly prints the path "/".
2021-07-31 18:57:02 -04:00
Michael Debertol
663c9751a1
sort: do not exit with failure for "--version" or "--help"
2021-08-01 00:05:08 +02:00
Michael Debertol
418f5b7692
sort: handle empty merge inputs
2021-07-31 21:02:20 +02:00
Michael Debertol
5bf4536bdd
sort: ignore failure to truncate the output file
2021-07-31 21:02:20 +02:00
Michael Debertol
849086e9c5
sort: handle cases where the output file is also an input file
...
In such cases we have to create a temporary copy of the input file to prevent
overwriting the input with the output. This only affects merge sort, because it
is the only mode where we start writing to the output before having read all inputs.
2021-07-31 21:02:18 +02:00
Sylvestre Ledru
103a9d52ff
Merge pull request #2521 from miDeb/sort/rand
...
sort: improve compatibility of --random-sort
2021-07-31 21:00:18 +02:00
Michael Debertol
3564dc5792
sort: compare strings before comparing hashes
...
Since lines that compare equal should be sorted together, we need to first
compare the lines (taking settings into account). Only if they do not compare
equal we should compare the hashes.
2021-07-31 20:07:05 +02:00
Michael Debertol
f851fb6454
sort: initialize the salt when the random setting is on a key as well
...
Additionall, change the type of `salt` from `String` to `Option<[u8; 16]>`.
2021-07-31 20:07:05 +02:00
Michael Debertol
095e53aed2
sort: disallow equal lines for --check with --unique
2021-07-31 19:57:41 +02:00
Sylvestre Ledru
6b73ddcd12
Silent the spell checker on a test examples
2021-07-31 10:38:32 +02:00
Sylvestre Ledru
1eb3b62c46
Merge pull request #2537 from jfinkels/expand-improve-tabs-argument-2
...
expand: expand support for --tabs arguments
2021-07-31 10:33:08 +02:00
Sylvestre Ledru
638b31a877
Merge pull request #2520 from miDeb/sort/fixes
...
sort: fix some exit codes and error messages
2021-07-31 10:11:12 +02:00
Sylvestre Ledru
8620220298
Merge pull request #2511 from dezgeg/stat-t
...
stat: Support \t in --printf format
2021-07-31 09:52:42 +02:00
Sylvestre Ledru
fd02ef2dc1
Merge pull request #2516 from jfinkels/tac-read-dir-error-message
...
tac: correct error message when reading from directory
2021-07-31 09:49:54 +02:00
Sylvestre Ledru
00f6fce89d
Merge pull request #2518 from jfinkels/tac-no-line-separators-in-file
...
tac: handle no line separators in file
2021-07-31 09:44:29 +02:00
Sylvestre Ledru
938f79aebc
Merge branch 'master' into sort/fixes
2021-07-31 09:42:35 +02:00
Jeffrey Finkelstein
fb477360b2
expand: expand support for --tabs arguments
...
Add support for
* space-separated list of tab stops, like `--tabs="2 4 6"`,
* mixed comma- and space-separated lists, like `--tabs="2,4 6"`,
* the slash specifier in the last tab stop, like `--tabs=1,/5`,
* the plus specifier in the last tab stop, like `--tabs=1,+5`.
2021-07-30 23:46:02 -04:00
Michael Debertol
1bb530eebb
sort: validate input files at startup
2021-07-30 23:41:18 +02:00
Michael Debertol
a33b6d87b5
sort: open the output file at the beginning
...
This causes us to print an error message about an invalid output file
right at the start of the invocation, but *after* verifying other arguments.
2021-07-30 23:40:53 +02:00
Michael Debertol
c6e044927c
sort: print check messages to stderr, not stdout
2021-07-30 23:37:35 +02:00
Michael Debertol
891d25cebd
sort: fix exit codes and error messages
2021-07-30 23:37:35 +02:00
Michael Debertol
a214ca60bd
sort: allow null bytes for -t
2021-07-30 23:30:52 +02:00
Jeffrey Finkelstein
2648f330e4
tac: handle no line separators in file
...
Change the behavior of `tac` when there are no line separators in the
input. Previously, it was appending an extra line separator; this commit
prevents that from happening. The input is now writted directly to
stdout.
2021-07-25 15:19:29 -04:00
Jeffrey Finkelstein
abf4c69b28
tac: correct error message when reading from dir.
...
Correct the error message produced by `tac` when trying to read from a
directory. Previously if the path 'a' referred to a directory, then
running `tac a` would produce the error message
dir: read error: Invalid argument
after this commit it produces
a: read error: Invalid argument
which matches GNU `tac`.
2021-07-25 13:55:24 -04:00
Daniel Rocco
d8d71cc477
test: handle additional parentheses edge cases
...
Handle additional edge cases arising from test(1)’s lack of reserved words.
For example, left parenthesis followed by an operator could indicate
either
* string comparison of a literal left parenthesis, e.g. `( = foo`
* parenthesized expression using an operator as a literal, e.g. `( = != foo )`
2021-07-24 23:02:02 -04:00
Tyler
d1907edd65
Adds additional words to exclude list. Improves documentation in dd.rs.
2021-07-24 16:38:08 -07:00
Tyler
076ff32e85
Removes project-specific cspell files.
2021-07-23 14:53:24 -07:00
Tuomas Tynkkynen
46a2491727
stat: Support \t in --printf format
2021-07-23 19:04:18 +03:00
Tyler
885a875552
Addresses build errors
...
- Adds words to cspell exceptions
- Converts test macros to use Default trait.
- Converts parser to use Default trait.
- Adds Windows-friendly test files for block/unblock when nl is present
in test/spec file.
2021-07-22 16:04:35 -07:00
Tyler
989849eca7
Ignores linux-only tests on non-linux platforms.
2021-07-21 18:24:31 -07:00
Tyler
95d9f03cff
Merge branch 'master' of github.com:backwaterred/coreutils
2021-07-21 17:33:18 -07:00
backwaterred
7c94bbe238
Merge branch 'uutils:master' into master
2021-07-21 17:33:07 -07:00
Tyler
9d9267e08b
Addresses code-quality issues from testsdiepraam and miDeb.
...
- Removes dd from feat_require_unix (keeps it in feat_common_core)
- Changes name of make_linux_iflags parameter from oflags to iflags.
- Removes roughed out SIGINFO impl.
- Renames plen -> target_len.
- Removes internal fn def for build_blocks and replaces with a call to
chunks from std.
- Renames apply_ct to the more descriptive apply_conversion
- Replaces manual swap steps in perform_swab with call to swap from std.
- Replaces manual solution with chunks where appropriate (in Read, and Write impl).
- Renames xfer -> transfer (in local variable names).
- Improves documentation for dd_filout/dd_stdout issue.
- Removes commented debug_assert statements.
- Modifies ProdUpdate to contain ReadStat and WriteStat rather than
copying their fields.
- Addresses verbose return in `Output<File>::new(...)`
- Resoves compiler warning when built as release when signal handler fails to
register.
- Derives _Default_ trait on ReadStat.
- Adds comments for truncated lines in block unblock tests
- Removes `as u8` in block unblock tests.
- Removes unecessary `#[inline]`
- Delegates multiplier string parsing to uucore::parse_size.
- Renames 'unfailed' -> 'succeeded' for clairity.
- Removes #dead_code warnings. No clippy warnings on my local machine.
- Reworks signal handler to better accomodate platform-specific signals.
- Removes explicit references to "if" and "of" in dd.rs.
- Removes explicit references to "bs", "ibs", "cbs" and "status" in
parseargs.rs.
- Removes `#[allow(deadcode)]` for OFlags, and IFlags.
- Removes spellchecker ignore from all dd files.
- Adds tests for 'traditional' and 'modern' CLI.
2021-07-21 17:25:10 -07:00
Syukron Rifail M
37c986b005
test_du: ignore unsupported --time=birth
2021-07-19 06:55:11 +07:00
Jan Scheer
36a192c5f6
id: fix error handling for id_print()
2021-07-13 11:25:03 +02:00
Jan Scheer
7abc6a665e
id: add conditional compilation for selinux
2021-07-13 00:22:10 +02:00
Tyler
94e0145d51
fixes more minor issues
2021-07-12 12:54:39 -07:00
Terts Diepraam
337d257e8d
tests/sleep: fmt
2021-07-12 20:21:20 +02:00
Son Nguyen
6c26976edb
sleep: use UResult ( #2492 )
...
* sleep: use UResult in util
* sleep: add in error + test for it
* sleep: UResult - removed some verbosity
2021-07-12 20:20:23 +02:00
Tyler
994b4d9a3e
Merge remote-tracking branch 'upstream/master'
2021-07-12 10:22:20 -07:00
Tyler
88363858d5
Minor changes.
2021-07-12 10:13:47 -07:00
Jan Scheer
92bc647ac3
Merge branch 'master' into id_selinux_context
2021-07-12 17:30:21 +02:00
Sylvestre Ledru
caf984bd55
fix various clippy issues
2021-07-11 11:22:33 +02:00
Sylvestre Ledru
52c6593ef5
Merge pull request #2486 from hbina/hbina-tr-return-err-when-extra-args
...
`tr` should error out when if user provides more than 2 sets
2021-07-10 20:51:27 +02:00
Jan Scheer
30b80d0c82
tr: fix squeeze and complement with two sets ( #2485 )
2021-07-09 23:05:00 +02:00
Hanif Bin Ariffin
c4c6819dae
Reimplemented simply using args
...
Signed-off-by: Hanif Bin Ariffin <hanif.ariffin.4326@gmail.com>
2021-07-09 23:51:37 +08:00
Sylvestre Ledru
2177b8dc37
Merge pull request #2481 from Funky185540/fix/test_du_bytes_nondynamic_on_linux
...
test: du: Skip nondynamic comparison on linux for test_du_bytes
2021-07-09 09:11:52 +02:00
Jan Scheer
cf2c712e6b
Merge branch 'master' into id_selinux_context
2021-07-09 00:21:05 +02:00
Tyler
9aac61c672
Merge branch 'master' of github.com:backwaterred/coreutils
2021-07-08 11:12:25 -07:00
Tyler
47806ddd39
build issues
...
- Address Rust fmt issue
- ignores run-without-noatime test which fails on some build machines
- adds cspell:disable to all project files.
- adds .../dd/fixtures/cspell.json to ignore test fixtures.
2021-07-08 11:10:48 -07:00
backwaterred
fdfe2dcc1f
Merge branch 'uutils:master' into master
2021-07-08 10:47:51 -07:00
Jan Scheer
14b348dd4b
tests: fix tests for CICD environment
2021-07-08 11:17:18 +02:00
Tyler
4f7dda4be9
Completes final? issues barring PR
...
- Adds cspell.json. Hopefully this will make you happy, spellchecker.
- Removes non-functional spellchecker-ignore tags
- Adds a sleep call to the no noatime test. Some systems were did not notice a changed
atime without the option present.
- Adds a test with a unicode filename.
- Addresses clippy lints and rustfmt issues.
2021-07-07 17:34:31 -07:00
Jan Scheer
d59cd4fc4a
Merge branch 'master' into refactor_expected_result
2021-07-08 00:44:32 +02:00
Jan Scheer
d57f474ae1
test_whoami: refactor use expected_result and whoami from common/util.rs
2021-07-08 00:21:28 +02:00
Jan Scheer
abc59fbe85
tests/common: refactor: use TestScenario instead of util_name for expected_result()
2021-07-07 22:46:16 +02:00
Jan Scheer
31aa8b2062
test_du: refactor use expected_result from common/util.rs
2021-07-07 22:09:01 +02:00
Jan Scheer
735ec4014e
test_who: refactor use expected_result from common/util.rs
2021-07-07 17:26:59 +02:00
Jan Scheer
805e024794
test_stat: refactor use expected_result from common/util.rs
2021-07-07 15:54:03 +02:00
Jan Scheer
90de4257b1
test_pinky: refactor use expected_result from common/util.rs
2021-07-07 15:53:46 +02:00
Jan Scheer
c2bd7ae9b1
test_id: refactor use expected_result from common/util.rs
2021-07-07 15:53:26 +02:00
Jan Scheer
9631d8cf2b
test_groups: refactor use expected_result from common/util.rs
2021-07-07 15:52:56 +02:00
Sylvestre Ledru
df683f8c84
Merge pull request #2465 from miDeb/install-test
...
[: install test as [ as well
2021-07-07 15:43:38 +02:00
Jan Scheer
c447863c8d
tests/common: refactor to reduce duplicate code
...
* move fn expected_result to common/util.rs
* move fn check_coreutil_version to common/util.rs
* move fn whoami to common/util.rs
* move macro unwrap_or_return to common/macros.rs
* add documentation
* add tests
2021-07-07 14:59:14 +02:00
Sylvestre Ledru
7018ff8925
Merge pull request #2477 from dhodder/uname_target_env
...
uname: don't report OS as "GNU/Linux" without GNU
2021-07-07 08:46:50 +02:00
Tyler
2e9e984b3a
Adds test with unicode filename
...
Filenames should be the only spot where unicode can appear in dd's cli.
2021-07-06 18:17:30 -07:00
Tyler
74e0071cfe
fixes conv=nocreat test failure
2021-07-06 17:47:26 -07:00
backwaterred
96f93488ef
Merge branch 'uutils:master' into master
2021-07-06 15:59:03 -07:00
Dave Hodder
330f797378
tests/uname: add --operating-system
test
2021-07-06 23:40:38 +01:00
Tyler
d2cebad931
addresses a few more issues from PR#2474
...
- adds project header to multiple files
- updates spell check skip words
- removes linux only flags direct,noatime from mac_os build
- applies rustfmt to test_dd
2021-07-06 15:35:48 -07:00
Tyler
1ad89c5e89
Addresses issues raised in PR#2474
...
- runs rustfmt on test_dd.rs
- eliminates compiler warnings
- adds many words to spellchecker ignore list
- adds sanity test for vexing conv=nocreat issue. Still WIP.
2021-07-06 11:52:48 -07:00
Andreas Hartmann
f64b708410
test: du: Skip nondynamic comparison on linux for test_du_bytes
...
The `test_du_bytes` testcase for the `du --bytes` command is written to perform
a dynamic comparison on linux hosts, i.e. it compares the output of the command
to that of the hosts `du` from the GNU coreutils.
Previously the test was written such that it would *first* perform the dynamic
comparison, and *after that* continue to a static comparison which may fail for
specific hosts that have a filesystem different from what the test expects.
This patch excludes linux hosts from the static comparison to ensure the test
performs only the dynamic comparison.
2021-07-06 19:45:06 +02:00
Michael Debertol
8ace291b32
sort: make -k only take one argument per flag
...
This makes it so that `sort -k 1 file` treats `file` as the input file
and not the second key.
2021-07-06 15:47:32 +02:00
Jan Scheer
e53f4db33a
Merge branch 'master' into id_selinux_context
2021-07-06 13:29:50 +02:00
Michael Debertol
bc0727cc4d
[: add support for --help and --version
...
I copied the help text verbatim from GNU, I hope that's ok.
2021-07-06 13:15:07 +02:00
Sylvestre Ledru
1136221f6f
rustfmt the recent change
2021-07-04 13:01:31 +02:00
Sylvestre Ledru
ae1935c3cb
Merge branch 'master' into master
2021-07-04 11:57:59 +02:00
Sylvestre Ledru
91078cfcb3
Merge pull request #2445 from syukronrm/du-inodes
...
du: add `--inodes`
2021-07-04 11:28:03 +02:00
Sylvestre Ledru
d3652cc3c0
Merge pull request #2457 from Funky185540/install-implement-backup
...
install: implement --backup, -b and -S
2021-07-04 09:57:45 +02:00
Tyler
5b030b4855
Minor cleanup
...
- Removes compiler warnings.
- Renames conv=nocreat test to be more descriptive.
2021-07-02 11:50:33 -07:00
backwaterred
9c38583c6b
Merge pull request #2 from uutils/master
...
catchup with uutils main
2021-07-02 11:34:22 -07:00
Tyler
92281585a7
Merge branch 'master' of https://github.com/uutils/coreutils into uutils-master
2021-07-01 14:33:30 -07:00
Terts Diepraam
7a0a7aecc4
Merge pull request #2461 from miDeb/sort/check-no-out
...
sort: disable -o with -C and -c
2021-07-01 13:07:05 +02:00
Terts Diepraam
6213a2a967
Merge pull request #2462 from miDeb/sort/version
...
sort/ls: implement version cmp matching GNU spec
2021-07-01 13:02:59 +02:00
Tyler
17cfba41cc
Implements project testfing from root.
...
- conv=FLAG testing. (1) WIP conv=nocreat
- iflag & oflag testing.
- conv=CONV ascii,...,ucase,...,block,...sync tests at unit-test-level
(project root is todo)
2021-06-30 14:47:48 -07:00
Terts Diepraam
73a7ead857
mktemp: adapt to standardized error handling
2021-06-28 13:55:55 +02:00
Syukron Rifail M
27e0507844
du: more tests
2021-06-28 07:51:17 +07:00
Syukron Rifail M
d8a33da5b3
du: add --inodes
2021-06-28 07:51:17 +07:00
Michael Debertol
d3732e08c4
sort: disable -o with -C and -c
2021-06-27 16:21:18 +02:00
Michael Debertol
233a778963
sort/ls: implement version cmp matching GNU spec
...
This reimplements version_cmp, which is used in sort and ls to sort
according to versions.
However, it is not bug-for-bug identical with GNU's implementation.
I reported a bug with GNU here:
https://lists.gnu.org/archive/html/bug-coreutils/2021-06/msg00045.html
This implementation does not contain the bugs regarding the handling of
file extensions and null bytes.
2021-06-27 15:29:17 +02:00
Andreas Hartmann
69e8838b27
tests: install: Add tests for '--backup'
...
Tests the '--backup' option for the install utility. Most of the code is
adapted from the respective tests for 'mv'.
2021-06-27 09:55:10 +02:00
Michael Debertol
548a895cd6
sort: compatibility of human-numeric sort
...
Closes #1985 .
This makes human-numeric sort follow the same algorithm as GNU's/FreeBSD's sort.
As documented by GNU in https://www.gnu.org/software/coreutils/manual/html_node/sort-invocation.html ,
we first compare by sign, then by si unit and finally by the numeric value.
2021-06-25 18:19:00 +02:00
Sylvestre Ledru
ab5d581fa4
Merge pull request #2439 from tertsdiepraam/numfmt/round-and-c-locale
...
`numfmt`: add `--round` and other minor improvements
2021-06-24 21:18:59 +02:00
Sylvestre Ledru
5d7cf61128
Merge pull request #2429 from miDeb/install/target-dir
...
install: support --target-directory
2021-06-24 21:06:44 +02:00
Sylvestre Ledru
3b2d0d17fa
Merge pull request #2446 from jhscheer/groups_gnu_testsuite
...
groups: fixes to pass GNU's Testsuite
2021-06-23 20:15:12 +02:00
Sylvestre Ledru
44c770d234
Merge pull request #2450 from jhscheer/id_refactor_identifier
...
id: refactor identifiers
2021-06-23 19:05:57 +02:00
Jan Scheer
11f36eae3b
tests/groups: fix/add tests for (multiple) username(s)
2021-06-23 16:50:03 +02:00
Sylvestre Ledru
d40fc65ee6
Merge branch 'master' into numfmt/round-and-c-locale
2021-06-23 12:39:55 +02:00
Sylvestre Ledru
a73e71ba74
Merge pull request #2437 from miDeb/cp/reflink-auto
...
cp: default to --reflink=auto on linux and macos
2021-06-23 12:37:44 +02:00
Sylvestre Ledru
87eaf6e80a
Merge pull request #2447 from jhscheer/locale_c
...
fix some issues with locale (replace "LANGUAGE" with "LC_ALL")
2021-06-23 12:36:40 +02:00
Jan Scheer
4b3da59b0e
id: refactor identifiers
...
* change of identifier names and spelling according to the suggestions in the review of #2446
2021-06-23 12:27:01 +02:00
Jan Scheer
c0be979611
fix some issues with locale (replace "LANGUAGE" with "LC_ALL")
...
`LANGUAGE=C` is not enough, `LC_ALL=C` is needed as the environment
variable that overrides all the other localization settings.
e.g.
```bash
$ LANGUAGE=C id foobar
id: ‘foobar’: no such user
$ LC_ALL=C id foobar
id: 'foobar': no such user
```
* replace `LANGUAGE` with `LC_ALL` as environment variable in the tests
* fix the the date string of affected uutils
* replace `‘` and `’` with `'`
2021-06-23 11:30:28 +02:00
Sylvestre Ledru
178399c20e
Merge pull request #2449 from miDeb/temp-win
...
Make tests pass on a windows VM
2021-06-23 08:40:30 +02:00
Michael Debertol
ce0801db90
tests/mv: test uutils mv instead of system util
...
Calling `cmd_keepenv("mv")` spawned the system `mv` instead of
the uutils `mv`. Also, `keepenv` isn't necessary because it doesn't
need to inherit environment variables.
We now actually check the stderr, because previously the result of
`ends_with` was not used, making the test pass even when it shouldn't.
I disabled the test on windows because `mkdir` does not support `-m` on
windows, making the test fail because there will be no permission error.
On FreeBSD there isn't a permission error either, and `mv` succeeds.
2021-06-23 00:58:19 +02:00
Michael Debertol
622504467f
mktemp: note that windows uses a different env var for tmpdir
...
On windows `std::env::temp_dir` uses the `TMP` environment variable
instead of `TMPDIR`.
2021-06-22 17:44:45 +02:00
Michael Debertol
e5a7bcbb9d
tests: keep env vars for the temporary directory
...
On some Windows machines this would otherwise cause `std::env::temp_dir`
to fall back to a path that is not writeable (C:\\Windows).
Since by default integration tests don't inherit env vars from the
parent, we have to override this in some cases.
2021-06-22 17:43:46 +02:00
Sylvestre Ledru
e48ff9dd9e
Merge pull request #2441 from siebenHeaven/ls_dangling_symlinks
...
ls: Fix problems dealing with dangling symlinks
2021-06-21 22:34:15 +02:00
Sylvestre Ledru
2f11a23016
Merge pull request #2431 from miDeb/pr/races
...
tests/pr: include one more possible minute
2021-06-21 22:30:37 +02:00
Tyler
47464f50a1
Begin project level testing. Minor fixes.
2021-06-21 11:17:47 -07:00
Jan Scheer
f1d317147b
id: add support for showing SELinux context (--context/-Z)
2021-06-20 13:44:41 +02:00
Anup Mahindre
ffb6b7152f
tests: Fix ls dangling symbolic links test output for windows
...
On windows we do not print inode numbers at all, so skip checking for ?
for dangling symbolic links in expected output
2021-06-20 16:58:28 +05:30
Anup Mahindre
d0039df8c3
tests: Add test for dangling symlinks with ls
...
Add test similar to gnu dangling symlinks test
2021-06-20 13:50:38 +05:30
Roy Ivy III
f5edc500e0
tests ~ fix spelling errors
2021-06-19 18:40:22 -05:00
Terts Diepraam
3086e95702
numfmt: add round and use C locale style for errors
2021-06-20 00:21:14 +02:00
Sylvestre Ledru
115eb5eb52
Merge pull request #2432 from dezgeg/test-bracket-syntax
...
test: Implement [ expr ] syntax
2021-06-19 19:14:20 +02:00
Michael Debertol
9fb927aa85
cp: always delete the destination for symlinks
2021-06-19 18:59:57 +02:00
Tuomas Tynkkynen
7b9814c778
test: Implement [ expr ] syntax
...
When invoked via '[' name, last argument must be ']' or we bail out with
syntax error. Then the trailing ']' is simply disregarded and processing
happens like usual.
2021-06-19 18:49:21 +03:00
Sylvestre Ledru
5ba69d4a35
Merge pull request #2412 from syukronrm/du-dereference
...
du: add `--dereference`
2021-06-19 12:05:18 +02:00
Sylvestre Ledru
ac98960f32
Merge pull request #2427 from miDeb/ln/recursive-relative
...
ln: don't return an empty path in `relative_path`
2021-06-19 12:03:59 +02:00
Sylvestre Ledru
e2a00b67ed
Merge pull request #2428 from jhscheer/cut_2424
...
cut: fix `-d=` (#2424 )
2021-06-19 08:46:42 +02:00
Michael Debertol
285eeac1fb
tests/pr: include one more possible minute
2021-06-18 18:49:39 +02:00
Terts Diepraam
f1e043ca1b
Merge pull request #2361 from jhscheer/id_zero_2351
...
id: revamp to pass more of GNU's Testsuite
2021-06-18 18:10:49 +02:00
Terts Diepraam
e273cb8e4f
Merge pull request #2426 from miDeb/cp/symlinks
...
cp: improve symlink handling
2021-06-18 17:27:50 +02:00
Michael Debertol
4e62c9db71
install: support target-directory
2021-06-18 16:45:36 +02:00
Jan Scheer
65f47be5ee
cut: fix -d=
( #2424 )
2021-06-18 12:10:40 +02:00
Michael Debertol
3d3af5c8ca
ln: don't return an empty path in relative_path
2021-06-18 11:53:29 +02:00
Tuomas Tynkkynen
d05964a8cb
test: Implement -k
...
parser.rs already accepts this, finish the implementation.
2021-06-18 00:03:08 +03:00
Michael Debertol
12a1c87cb8
cp: improve symlink handling
2021-06-17 22:26:13 +02:00
Terts Diepraam
439b7e0ca5
Merge pull request #2415 from miDeb/touch/date-epoch
...
touch: support @<timestamp> date format
2021-06-17 10:36:03 +02:00
Syukron Rifail M
bc8415c9db
du: add --dereference
2021-06-17 14:06:41 +07:00
Michael Debertol
816c55dce4
sort: avoid sigpipe errors
...
By calling `unwrap` we get a panic instead of an abort, and since we
mute sigpipe panics for all utilites, no error message will be printed.
2021-06-17 00:06:39 +02:00
Terts Diepraam
ce6d439a1b
Merge pull request #2381 from miDeb/sort/merge-improvements
...
sort: delete temporary files as soon as possible
2021-06-17 00:00:59 +02:00
Jan Scheer
39aa5312ed
id/tests: skip tests for multiple_user feature if there's not at least coreutils id
version 8.31 in $PATH
2021-06-16 23:52:55 +02:00
Jan Scheer
88367c6fb4
Merge branch 'fix_getgrouplist' into id_zero_2351
2021-06-16 19:20:34 +02:00
Jan Scheer
54cbb69d37
id/tests: fix tests if run on macOS
2021-06-16 19:16:29 +02:00
Michael Debertol
4c5ee1dbd7
tty: correct exit code for write errrors
2021-06-16 17:55:48 +02:00
Michael Debertol
aeaf2cebfb
tests/tty: fix test inputs
...
calling `pipe_in("</dev/null")` does not pipe in the `/dev/null` file,
but the raw string "</dev/null".
Closes https://github.com/uutils/coreutils/issues/2301
2021-06-16 17:43:49 +02:00
Hanif Bin Ariffin
23de181171
Added tests for cp --preserve without args
...
Signed-off-by: Hanif Bin Ariffin <hanif.ariffin.4326@gmail.com>
2021-06-16 11:32:15 +08:00
Michael Debertol
84affa2137
touch: support @<timestamp>
date format
...
parse `@<seconds since epoch>` as a valid date.
2021-06-15 22:43:40 +02:00
Michael Debertol
d4914b6943
sort: add a test for --batch-size
2021-06-15 19:09:22 +02:00
Daniel Rocco
22fbf16b2c
test: implement user, group ownership checks
...
closes #2337
2021-06-14 14:30:17 -04:00
Terts Diepraam
553f70b06a
Merge pull request #2408 from Foryah/issue-2346
...
touch: change the error message to match the GNU error message #2346
2021-06-14 13:43:44 +02:00
David Suilea
25240ba61c
touch: change the error message to match the GNU error message #2346
2021-06-14 13:03:14 +02:00
Terts Diepraam
dfe0314d8d
Merge pull request #2397 from miDeb/sort/args
...
sort: refactor command line arguments
2021-06-14 12:49:19 +02:00
Terts Diepraam
05c8883b1a
Merge pull request #2395 from miDeb/timeout/cmd-args
...
timeout: handle arguments for the command to run
2021-06-14 12:01:31 +02:00
Terts Diepraam
b6f27a9a63
Merge pull request #2358 from siebenHeaven/du_threshold
...
Implement du threshold argument handling
2021-06-14 10:58:30 +02:00
Jan Scheer
052202ca19
Merge branch 'master' into id_zero_2351
2021-06-13 11:30:43 +02:00
Jan Scheer
17c6f4c13a
id: add more tests to be consistent with GNU testsuite tests (tests/id/zero.sh)
2021-06-13 11:11:04 +02:00
Michael Debertol
d8c8e6774f
tests/pr: formatting
2021-06-12 18:03:00 +02:00
Michael Debertol
bb029193e2
tests/pr: prevent races
...
Allow any timestamp from the start of the command to its end to show up
in stdout.
2021-06-12 18:03:00 +02:00
Michael Debertol
98088db9ff
tests: add _any
functions
...
This should make it easier to write tests that could have different
valid outputs depending on timing.
2021-06-12 18:03:00 +02:00
Michael Debertol
8e7eedebe7
tests: take slices in stdout_is_fixture
2021-06-12 18:03:00 +02:00
Anup Mahindre
fa12b46c51
tests: Add test for du threshold feature
2021-06-12 19:56:05 +05:30
Michael Debertol
af6e92e012
Merge branch 'master' of https://github.com/uutils/coreutils into sort/args
2021-06-12 13:16:46 +02:00
Michael Debertol
a69c2d52f9
Merge branch 'master' of https://github.com/uutils/coreutils into timeout/cmd-args
2021-06-12 13:14:16 +02:00
Terts Diepraam
440eba628c
Merge pull request #2338 from miDeb/ln/dst-symlink
...
ln: canonicalize the parent directory of the destination, not the destination itself
2021-06-12 11:28:19 +02:00
Terts Diepraam
8afc923796
Merge pull request #2237 from wfscheper/wfscheper/issue2118
...
chgrp: replace getopts with clap (#2118 )
2021-06-12 11:20:24 +02:00