Sylvestre Ledru
7ae5f1d751
Merge pull request #2054 from rethab/improve-cksum-test
...
allow ignoring stdin write errors in tests & fix flaky test
2021-04-17 00:49:17 +02:00
Sylvestre Ledru
ff620b5fa4
Merge pull request #2034 from Gilnaa/fix_tests
...
Remove some usage of CmdResult fields in tests
2021-04-17 00:07:16 +02:00
Terts Diepraam
685493f72b
ls: make path platform independent
2021-04-16 23:48:35 +02:00
Sylvestre Ledru
58a2821dce
Also disable on test_three_directories_and_file_and_stdin
2021-04-16 19:44:40 +02:00
Sylvestre Ledru
3aff898acd
Disable test_no_options_big_input on Windows
2021-04-16 18:58:46 +02:00
Jan Scheer
c81cf9b626
chown: refactor tests
2021-04-14 17:36:45 +02:00
Terts Diepraam
2c130ae7c0
ls: take -l
into account with dereference-command-line
2021-04-14 14:42:14 +02:00
Terts Diepraam
5c28ac1b0d
ls: dereference command line
2021-04-14 14:12:00 +02:00
ReggaeMuffin
5f00a0f907
remove the unused imports
2021-04-11 10:49:52 +01:00
Gilad Naaman
4695667c7c
Added sanity checks for test utils
2021-04-11 02:28:47 +03:00
Gilad Naaman
cd3dba2481
Added some tests utils for future refactoring
2021-04-11 02:27:16 +03:00
Gilad Naaman
81d42aa2b3
Fix some tests to not use CmdResult fields
2021-04-10 23:30:50 +03:00
Árni Dagur
eb4971e6f4
cat: Unrevert splice patch ( #2020 )
...
* cat: Unrevert splice patch
* cat: Add fifo test
* cat: Add tests for error cases
* cat: Add tests for character devices
* wc: Make sure we handle short splice writes
* cat: Fix tests for 1.40.0 compiler
* cat: Run rustfmt on test_cat.rs
* Run 'cargo +1.40.0 update'
2021-04-10 22:19:53 +02:00
Sylvestre Ledru
bf1944271c
remove .DS_Store
2021-04-10 21:57:03 +02:00
Michael Debertol
69f4410a8a
sort: dedup using compare_by ( #2064 )
...
compare_by is the function used for sorting, we should use it for dedup
as well.
2021-04-10 19:49:10 +02:00
Michael Debertol
49c9d8c901
sort: implement -k and -t support ( #1996 )
...
* sort: implement basic -k and -t support
This allows to specify keys after the -k flag and a custom field
separator using -t.
Support for options for specific keys is still missing, and the -b flag
is not passed down correctly.
* sort: implement support for key options
* remove unstable feature use
* don't pipe in input when we expect a failure
* only tokenize when needed, remove a clone()
* improve comments
* fix clippy lints
* re-add test
* buffer writes to stdout
* fix ignore_non_printing
and make the test fail in case it is broken :)
* move attribute to the right position
* add more tests
* add my name to the copyright section
* disallow dead code
* move a comment
* re-add a loc
* use smallvec for a perf improvement in the common case
* add BENCHMARKING.md
* add ignore_case to benchmarks
2021-04-10 14:54:58 +02:00
Sylvestre Ledru
e1221ef3f8
Merge pull request #2036 from joppich/issue1930
...
stdbuf: move from getopts to clap
2021-04-10 11:58:01 +02:00
electricboogie
e5113ad00e
Sort: Various fixes and performance improvements ( #2057 )
...
* Various fixes and performance improvements
* fix a typo
Co-authored-by: Michael Debertol <michael.debertol@gmail.com>
Co-authored-by: Sylvestre Ledru <sledru@mozilla.com>
Co-authored-by: Michael Debertol <michael.debertol@gmail.com>
2021-04-10 11:56:20 +02:00
Sivachandran
ee070028e4
install: implement stripping symbol table ( #2047 )
2021-04-10 11:53:29 +02:00
Aleksandar Janicijevic
18191f9212
shred: Implemented --force option ( #2012 )
2021-04-10 10:41:59 +02:00
joppich
c54b5f2d82
stdbuf: move from getopts to clap
2021-04-10 00:39:12 +02:00
Sylvestre Ledru
844e318a67
Merge branch 'master' into pr
2021-04-09 22:02:25 +02:00
Reto Hablützel
d51ca40986
allow ignoring stdin write errors in tests
...
* if we want to test an irregular scenario, ignoring errors caused by
writing to stdin of the command can be uselful.
* for example, when writing some text to stdin of cksum in a scenario
where it doesn't consume this input, the child process might have
exited before the text was written. therefore, this test sometimes
fails with a 'Broken pipe'.
2021-04-09 11:16:36 +02:00
Sylvestre Ledru
9ae4928b7b
Ignore a test ( #2053 )
...
* Disable chksum: test_arg_overrides_stdin
fails often with:
---- test_cksum::test_arg_overrides_stdin stdout ----
current_directory_resolved:
touch: /tmp/.tmpv9hydc/a
run: /target/x86_64-unknown-linux-gnu/debug/coreutils cksum a
thread 'test_cksum::test_arg_overrides_stdin' panicked at 'Broken pipe (os error 32)', tests/common/util.rs:742:37
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
* rustfmt the recent change
2021-04-09 10:14:41 +02:00
electricboogie
8474249e5f
Sort: Implement stable sort, ignore non-printing, month sort dedup, auto parallel sort through rayon, zero terminated sort, check silent ( #2008 )
2021-04-08 22:07:09 +02:00
Terts Diepraam
c65483f4be
tests: improve docstrings a bit
2021-04-07 11:48:21 +02:00
Terts Diepraam
2997413d64
ls: refactor tests
2021-04-07 11:48:01 +02:00
paulotten
52706372aa
Replace outdated time 0.1 dependancy with latest version of chrono ( #2044 )
...
* Replace outdated time 0.1 dependancy with latest version of chrono
I also noticed that times are being miscalculated on linux, so I fixed that.
* Add time test for issue #2042
* Cleanup use declarations
* Tie time test to `touch` feature
- if we compile with the right OS feature flag then we should have it,
even on Windows
2021-04-07 08:41:04 +02:00
Sylvestre Ledru
b2b45d8af2
Merge branch 'master' into fold-backspace-and-carriage-return
2021-04-06 22:53:10 +02:00
Yagiz Degirmenci
c965effe07
fold: move to clap, add tests ( #2015 )
2021-04-06 22:51:27 +02:00
Sylvestre Ledru
f498a970d9
Merge pull request #2032 from jhscheer/test_relpath
...
relpath: refactor tests for #1982
2021-04-06 22:45:44 +02:00
Daniel Rocco
56bc7a44eb
fold: preserve carriage return and overwritten chars in output
2021-04-06 06:55:52 -04:00
Daniel Rocco
0b731dfd1a
fold: preserve backspace and overwritten chars in output
2021-04-06 06:55:52 -04:00
ReggaeMuffin
b1fcb621a8
wsl2: wsl no longer differs in output
...
refactor `is_wsl` to `is_wsl_1` and `is_wsl_2`
On my tests with wsl2 ubuntu2004 all tests pass without special cases
I moved wsl detection into uucore so that it can be shared instead of duplicated
I moved `parse_mode` into uucode as it seemed to fit there better and anyway requires libc feature
2021-04-06 10:58:49 +01:00
Sylvestre Ledru
31e91eb9b0
Merge pull request #2038 from jhscheer/test_refactor
...
Some more test refactors for #1982
2021-04-06 08:53:14 +02:00
Jan Scheer
057ceebdb0
rm: refactor tests for #1982
2021-04-06 00:04:49 +02:00
Jan Scheer
cc30aead22
realpath: refactor tests for #1982
2021-04-05 23:55:02 +02:00
Jan Scheer
de757cb025
tee: refactor tests for #1982
2021-04-05 23:05:07 +02:00
Sylvestre Ledru
f57eb0fdfa
Merge pull request #1993 from cbjadwani/master
...
uniq: Implement --group option
2021-04-05 22:33:04 +02:00
Sylvestre Ledru
7cdeb18dff
Merge pull request #2026 from tertsdiepraam/ls/hide_and_ignore
...
ls: --hide and --ignore
2021-04-05 22:31:23 +02:00
Yagiz Degirmenci
cbe07c93c6
cksum: add tests and fixtures ( #1923 )
2021-04-05 22:21:21 +02:00
Marvin Hofmann
9581fcf688
rm: add verbose output and trim multiple slashes ( #1988 )
...
* rm: add verbose output and trim multiple slashes
Uses the normalize_path used in cargo to strip duplicate slashes
With a link to a std rfc https://github.com/rust-lang/rfcs/issues/2208
This fixes https://github.com/uutils/coreutils/issues/1829
This also touches https://github.com/uutils/coreutils/issues/1768
but does not attempt to fully solve it
2021-04-05 22:18:47 +02:00
Jan Scheer
4dfbbecc26
relpath: refactor tests for #1982
2021-04-05 21:48:39 +02:00
Daniel Rocco
e5c61a28be
fold: variable width tabs, guard treating tab as whitespace
...
Treat tab chars as advancing to the next tab stop rather than having a fixed
8-column width.
Also treat tab as a whitespace split target only when splitting on word
boundaries.
2021-04-05 08:55:07 -04:00
Terts Diepraam
a50eae76a4
ls: some more tests for ignore & hide
2021-04-05 12:17:42 +02:00
Terts Diepraam
bbb27800c9
ls: fix windows tests and commit lock
2021-04-04 23:14:55 +02:00
Terts Diepraam
76308dbec9
ls: tests for invalid patterns for hide and ignore
2021-04-04 22:35:22 +02:00
Terts Diepraam
fa4272a19b
ls: --hide and --ignore
2021-04-04 19:19:56 +02:00
Sylvestre Ledru
bd8b129d9a
Merge pull request #2016 from tertsdiepraam/ls/control_characters
...
ls: show/hide control chars
2021-04-04 18:38:15 +02:00
Sylvestre Ledru
c196f4ae8b
Merge pull request #2023 from ycd/cut
...
cut: move to clap, add gnu like error messages + tests
2021-04-04 14:47:15 +02:00
Chirag Jadwani
19c6a42de5
uniq: implement group option
2021-04-04 15:22:17 +05:30
Daniel Rocco
bad1df9c1b
fold: improve newline handling and test coverage
...
- refactor implementation for readability
- correct handling of files with no trailing newline and/or blank lines
2021-04-03 22:47:38 -04:00
Tyler
4996308753
Builds out arg parsing. Adds support for if, of, & multiplier strings)
...
- Adds support for calling dd fn from cl
- Adds basic cl tests from project root
- Adds support for multiplier strings (c, w, b, kB, KB, KiB, ... EB, E,
EiB.
2021-04-03 12:59:03 -07:00
Yagiz Degirmenci
f47345ec9b
cut: add gnu compatability to error messages
2021-04-03 20:55:10 +03:00
Terts Diepraam
54e9cb09da
ls: add tests for --hide-control-chars
2021-04-03 16:44:12 +02:00
Sylvestre Ledru
7750db4f8e
cat: add a trivial test
2021-04-03 16:06:57 +02:00
Terts Diepraam
9cb0fc2945
ls: forgot to push updated tests
2021-04-03 13:15:19 +02:00
Jamie Quigley
31f5666727
more: add error message if the argument is a directory ( #1983 )
2021-04-02 22:34:02 +02:00
Juliana Rodrigueiro
97da14fcb2
install: Fix behaviour of the -d flag
...
The '-d' flag should create all ancestors (or components) of a
directory regardless of the presence of the "-D" flag.
From the man page:
-d, --directory
treat all arguments as directory names; create all components of the specified directories
With GNU:
$ install -v -d dir1/di2
install: creating directory 'dir1'
install: creating directory 'dir1/di2'
With this version:
$ ./target/release/install -v -d dir3/di4
install: dir3/di4: No such file or directory (os error 2)
install: dir3/di4: chmod failed with error No such file or directory (os error 2)
install: created directory 'dir3/di4'
Also, one of the unit tests misinterprets what a "component" is,
and hence was fixed.
2021-04-02 20:04:25 +01:00
Sylvestre Ledru
4934af0c3d
Merge pull request #2007 from drocco007/fold-preserve-blank-lines
...
fold: preserve blank lines
2021-04-02 20:00:05 +02:00
Daniel Rocco
d12f96d9ca
fold: preserve blank lines
2021-04-02 10:14:11 -04:00
ReggaeMuffin
2eb32d845e
chores: run cargo +1.40.0 fmt
...
Apparently fmt from 1.40.0 is a bit more strict in some places
Let me know if this is worthwhile merging :)
2021-04-02 10:56:49 +01:00
Sylvestre Ledru
de6aa69259
Merge pull request #1997 from sylvestre/polish3
...
Rustfmt+clippy+cargo.lock update
2021-04-02 11:37:56 +02:00
Jan Scheer
4a6176855a
relpath: move from getops to clap ( #1939 ) ( #1990 )
...
* relpath: add tests
* relpath: move from getopts to clap
2021-04-02 09:55:57 +02:00
Paul Otten
7859bf885f
Consistency with GNU version of du
when doing du -h
on an empty file
2021-04-01 19:42:43 -04:00
Sylvestre Ledru
dcbcf01665
Fix some clippy warnings
2021-04-01 23:42:30 +02:00
paulotten
090d29496a
Issue #1622 port du
to windows ( #1788 )
...
* Issue #1622 port `du` to windows
* Attempt to support Rust 1.32
Old version was getting "attributes are not yet allowed on `if`
expressions" on Rust 1.32
* Less #[cfg]
* Less duplicate code.
I need the return and the semicolon after if otherwise the second #[cfg]
leads to unexpected token complilation error
* More accurate size on disk calculations for windows
* Expect the same output on windows as with WSL
* Better matches output from du on WSL
* In the absence of feedback I'm disabling these tests on Windows.
They require `ln`. Windows does not ship with this utility.
* Use the coreutils version of `ln` to test `du`
`fn ccmd` is courtesy of @Artoria2e5
* Look up inodes (file ids) on Windows
* One more #[cfg(windows)] to prevent unreachable statement warning on linux
2021-04-01 23:16:47 +02:00
Terts Diepraam
2941dfd698
ls: quoting style ( #1989 )
2021-04-01 22:50:13 +02:00
Sylvestre Ledru
cc9c846032
Merge pull request #1991 from Mikadore/od_test
...
od: refactor tests for #1982
2021-04-01 09:50:25 +02:00
Mikadore
bb3e93372f
od: refactor tests for #1982
2021-04-01 02:16:15 +02:00
Yagiz Degirmenci
e958864bd9
tac: exit with proper code, move from getopts to clap, add test for invalid inputs ( #1957 )
2021-03-31 21:21:10 +02:00
Mikadore
b8079098f2
fixed panic! formatting
2021-03-31 13:30:06 +02:00
Mikadore
96643d6f91
fix #1970 ( #1980 )
2021-03-31 03:54:16 -07:00
Mikadore
a57f17ac5b
Expand CmdResult
's API ( #1977 )
2021-03-31 02:25:23 -07:00
desbma
be03c948ed
Add pre-commit hook + run fmt ( #1959 )
2021-03-30 21:24:01 +02:00
Árni Dagur
698dab12a6
wc: Don't read() if we only need to count number of bytes (Version 2) ( #1851 )
...
* wc: Don't read() if we only need to count number of bytes
* Resolve a few code review comments
* Use write macros instead of print
* Fix wc tests in case only one thing is printed
* wc: Fix style
* wc: Use return value of first splice rather than second
* wc: Make main loop more readable
* wc: Don't unwrap on failed write to stdout
* wc: Increment error count when stats fail to print
* Re-add Cargo.lock
2021-03-30 20:53:02 +02:00
Jan Scheer
2647a72e9e
chmod: fixed behavior for dangling symlinks ( #1775 )
2021-03-29 22:07:09 +02:00
Ricardo Iglesias
5f17719a59
Implemented --indicator-style flag on ls. ( #1907 )
...
* Implemented --indicator-style flag on ls.
* Rust fmt
* Grouped indicator_style args.
* Added tests for sockets and pipes.
Needed to modify util.rs to add support for pipes (aka FIFOs).
* Updated util.rs to remove FIFO operations on Windows
* Fixed slight error in specifying (not(windows))
* Fixed style violations and added indicator_style test for non-unix systems
2021-03-29 13:10:13 +02:00
Mikadore
8320b1ec5f
Rewrote head ( #1911 )
...
See https://github.com/uutils/coreutils/pull/1911
for the details
2021-03-29 13:08:48 +02:00
electricboogie
da5f2f3a6c
sort: Add a GNU-style Random Sorter ( #1922 )
2021-03-29 13:05:52 +02:00
Yagiz Degirmenci
8cc7a90d7c
sum: fix crash on invalid inputs, move to clap, add tests ( #1952 )
2021-03-29 13:03:56 +02:00
Sylvestre Ledru
acb57ecbd0
Merge pull request #1955 from jhscheer/chmod2clap
...
chmod: move from getopts to clap
2021-03-29 13:02:13 +02:00
Dominik Bittner
3714e2201b
tty: Move from getopts to clap ( #1956 )
...
+ tty: Add some tests
2021-03-29 13:00:47 +02:00
Jan Scheer
a9a3794d5a
chmod: add tests
2021-03-28 20:56:37 +02:00
jaggededgedjustice
88d0bb01c0
Add shuf tests ( #1958 )
...
* Add tests for shuf
* Fixup GNU tests for shuf
2021-03-28 17:52:01 +02:00
Craig Pastro
6d4f70ccb2
shuf: move from getopts to clap ( #1950 )
2021-03-28 15:08:37 +02:00
Sylvestre Ledru
9758219b57
Merge pull request #1953 from sivachandran/pathch-codecov
...
pathchk: improve unit test code coverage with more tests
2021-03-28 15:05:31 +02:00
Sivachandran Paramasivam
dd0addb9c1
pathchk: improve unit test code coverage with more tests
2021-03-28 16:30:49 +05:30
Antonio Gurgel
a655117a5f
std:
🧵 :sleep needs target_os
...
Co-authored-by: Sylvestre Ledru <sledru@mozilla.com>
2021-03-28 00:42:25 -07:00
Antonio Gurgel
ebb4568d52
Forgot to unignore the test
2021-03-27 22:46:57 -07:00
Antonio Gurgel
01eb913c05
test_install: Add sleeps
...
To ensure timestamps don't match. Fixes #1927 .
2021-03-27 19:37:58 -07:00
Sylvestre Ledru
dc879634cb
Merge pull request #1839 from jhscheer/iss1769
...
rm: fix for -d to match GNU's output #1769
2021-03-27 22:56:16 +01:00
Ivan
500771c78d
tee: should match GNU's output if used with /dev/full ( #1944 )
...
+ aligned 'tee' output with GNU tee when one of the files is '/dev/full'
+ don't stop tee when one of the outputs fails; just continue and return
error status from tee in the end
Co-authored-by: Ivan Rymarchyk <irymarchyk@arlo.com>
2021-03-27 20:02:49 +01:00
Yagiz Degirmenci
f66a188414
mkfifo: general refactor, move to clap, add tests ( #1945 )
...
* mkfifo: general refactor, move to clap, add unimplemented flags
* chore: update Cargo.lock
* chore: delete unused variables, simplify multiple lines with crash
* test: add tests
* chore: revert the use of crash
* test: use even more invalid mod mode
2021-03-27 20:00:59 +01:00
Sylvestre Ledru
e9ffaf87ea
ignore test_install_copy_then_compare_file_with_extra_mode
...
see https://github.com/uutils/coreutils/issues/1927
2021-03-27 10:47:28 +01:00
Sylvestre Ledru
75700677ca
fix(install): improve the error output when the test is failing
2021-03-27 10:08:42 +01:00
Antonio Gurgel
35675fdfe7
install: implement -C
/ --compare
( #1811 )
...
* install: implement `-C` / `--compare`
GNU coreutils [1] checks the following: whether
- either file is nonexistent,
- there's a sticky bit or set[ug]id bit in play,
- either file isn't a regular file,
- the sizes of both files mismatch,
- the destination file's owner differs from intended, or
- the contents of both files mismatch.
[1] https://git.savannah.gnu.org/cgit/coreutils.git/tree/src/install.c?h=v8.32#n174
* Add test: non-regular files
* Forgot a #[test]
* Give up on non-regular file test
* `cargo fmt` install.rs
2021-03-27 09:18:47 +01:00
Jan Scheer
3ae714e88c
tests/tee: implemented tests for tee ( #1804 )
...
These tests are ported from `https://github.com/coreutils/coreutils/tests/misc/tee.sh `.
2021-03-27 09:16:45 +01:00
Terts Diepraam
955c547adf
ls: overrideable -n
option ( #1917 )
2021-03-26 19:12:01 +01:00
Max Semenik
62fe68850e
pr: Fixes after rebasing
...
Only the minimum needed to:
* Make everything compile without warnings
* Move files according to the new project structure
* Make tests pass
2021-03-26 17:57:19 +03:00
tilakpatidar
75b35e6002
pr: remove not required tests
2021-03-26 14:11:15 +03:00
tilakpatidar
054c05d5d8
pr: refactor get_lines_for_printing, write_columns, recreate_arguments
...
pr: extract recreate_arguments
pr: refactor get_line_for_printing
pr: refactor get_lines_for_printing
pr: refactor fetch_indexes generate for write_columns
pr: refactor write_columns
pr: refactor write_columns
2021-03-26 14:11:15 +03:00
tilakpatidar
40e7f3d900
pr: add -J and -S option
...
pr: add -J option
pr: add -S option
2021-03-26 14:11:15 +03:00
tilakpatidar
a4b723233a
pr: add more tests for form feed and include page_width option W
2021-03-26 14:11:15 +03:00
tilakpatidar
4bf5b86cde
pr: add last page option in +page
2021-03-26 14:11:15 +03:00
tilakpatidar
3be5dc6923
pr: fix form feed
...
pr: fix form feed
pr: Rustfmt
pr: add test for ff and -l option
2021-03-26 14:11:15 +03:00
Tilak Patidar
847046f3de
pr: add +page and -column
2021-03-26 14:11:14 +03:00
Tilak Patidar
5c6c524334
pr: refactor and fmt fill_missing_lines and error checks
...
pr: Remove unwanted brancing in fill_missing_lines
pr: Remove unnecessary error check
pr: Rename key to group_key in FileLine
pr: Reformat test_pr with rustfmt
2021-03-26 14:11:14 +03:00
Tilak Patidar
5956894d00
pr: add -m and -o option
...
pr: Add -o option
2021-03-26 14:11:14 +03:00
Tilak Patidar
dd07aed4d1
pr: add column separator option
2021-03-26 14:11:14 +03:00
Tilak Patidar
69371ce3ce
pr: add tests for --column with across option
2021-03-26 14:11:14 +03:00
Tilak Patidar
f497fb9d88
pr: read from stdin
2021-03-26 14:11:14 +03:00
Tilak Patidar
d9084a7399
pr: implement across option and fix tests
2021-03-26 14:11:14 +03:00
Tilak Patidar
f3676573b5
pr: print padded string for each column and handle tab issues
...
pr: Print fixed padded string for each column
pr: Fix display length vs str length due to tabs
2021-03-26 14:11:14 +03:00
Tilak Patidar
b578bb6563
pr: add test for -t -l -r option
...
pr: Add test for -l option
pr: Add test for -r suppress error option
2021-03-26 14:11:14 +03:00
Tilak Patidar
b742230dbb
pr: fix page ranges
...
pr: Fix page ranges
2021-03-26 14:11:14 +03:00
Tilak Patidar
88ec02a61c
pr: add suport for -n [char][width] and -N
...
pr: Fix long name for -n
pr: Add -N first line number option
pr: Add -n[char][width] support
2021-03-26 14:11:14 +03:00
Tilak Patidar
afc58eb6ea
pr: add tests for -n -h -d option
...
pr: Add test for -h option
pr: Add test for -d option
2021-03-26 14:11:14 +03:00
tilakpatidar
64e2e1dbac
pr: remove parameter header and get_input_type
...
pr: Remove parameter header from build_options
pr: Remove unnecessary get_input_type
2021-03-26 14:11:14 +03:00
tilakpatidar
629236bd39
pr: add first test
2021-03-26 14:11:14 +03:00
Jan Scheer
aac79d13b3
Merge branch 'master' into iss1769
2021-03-25 23:23:08 +01:00
Jan Scheer
61eb4f250d
rm: add more tests
2021-03-25 23:04:02 +01:00
Terts Diepraam
23b70001a8
ls: version sort ( #1898 )
2021-03-25 20:24:53 +01:00
Jan Scheer
bdf603a65e
rm: make -d/-r obligatory for removing symlink_dir (windows)
2021-03-24 12:42:23 +01:00
Marco Satti
9b2ee1ce06
date: change tests to expect failure ( #1895 )
...
* date: change tests to expect failure
Although these tests contain valid dates, the parsing logic is not
implemented yet. It should be changed to expect success when
the parsing logic is done.
* date: fix test build errors
2021-03-24 08:33:11 +01:00
Yagiz Degirmenci
545fe7d887
feat(unexpand): move from getopts to clap ( #1883 )
...
* feat: move unexpand to clap
* chore: allow muliple files
* test: add test fixture, test reading from a file
* test: fix typo on file name, add test for multiple inputs
* chore: use 'success()' instead of asserting
* chore: delete unused variables
* chore: use help instead of long_help, break long line
2021-03-23 09:42:05 +01:00
Yagiz Degirmenci
5e2e2e8ab6
echo: allow leading hyphens ( #1887 )
...
* fix: use settings to allow leading hyphen and trailing var arg
fixes: https://github.com/uutils/coreutils/issues/1873
* test: add test cases
* test: add more test cases with different order in hyphen values
* chore: add comment to explain why we need TrailingVarArg
2021-03-23 09:40:05 +01:00
Neculai Balaban
a1b50ae0f4
nohup: move from getopts to clap ( #1871 )
...
- changed some error return codes to match GNU implementation
- changed warning/error messages to match GNU nohup
- replaced getopts dependency with clap
- added a test
2021-03-22 20:09:00 +01:00
Terts Diepraam
de3f9b8186
ls: across & commas formats and width parameter ( #1869 )
2021-03-22 18:24:23 +01:00
Yagiz Degirmenci
d86ee34bc6
tsort: move from getopts to clap ( #1867 )
2021-03-22 18:16:28 +01:00
Sylvestre Ledru
f593cf53b2
Merge pull request #1870 from nomius10/document_macros
...
documentation for usual macros
2021-03-22 11:59:11 +01:00
Neculai Balaban
93c7cbe65e
documentation for usual macros
...
- removed repeat_str helper as it's now part of std
- added docstrings for usual macros and test utils
2021-03-22 12:13:38 +02:00
Terts Diepraam
b9662c78a5
ls: possible fix for access time tests ( #1866 )
2021-03-22 10:14:59 +01:00
Yagiz Degirmenci
27b7552ef4
fix(tail): add support for negative indexing ( #1865 )
...
closes: https://github.com/uutils/coreutils/issues/1860
2021-03-22 10:01:54 +01:00
Yagiz Degirmenci
6c98415340
fix(head): check the whether file exists before unwrap ( #1858 )
...
closes https://github.com/uutils/coreutils/issues/1800
2021-03-21 21:27:44 +01:00
Yagiz Degirmenci
f60790dd41
chroot: move to clap from getopts ( #1792 )
...
+ add tests
2021-03-21 16:18:47 +01:00
Terts Diepraam
25d4a08387
ls: long format author, group and owner ( #1850 )
...
This PR adds the options to customize what information is shown in long format regarding author, group & owner. Specifically it adds:
- `--author`: shows the author, which is always the same as the owner. GNU has this feature because GNU/Hurd supports a difference between author and owner, but I don't think Rust supports GNU/Hurd, so I just used the owner.
- `-G` & `--no-group`: hide the group information.
- `-o`: hide the group and use long format (equivalent to `-lG`).
- `-g`: hide the owner and use long format.
The `-o` and `-g` options have some interesting behaviour that I had to account for. Some examples:
- `-og` hides both group and owner.
- `-ol` still hides the group. Same behaviour with variations such as `-o --format=long`, `-gl`, `-g --format=long` and `-ogl`.
- They even retain some information when overridden by another format: `-oCl` (or `-o --format=vertical --format=long`) still hides the group.
My previous solution for handling the behaviour where `-l1` shows the long format did not fit with these additions, so I had to rewrite that as well.
The tests only cover the how many names (author, group and owner) are present in the output, so it can't distinguish between, for example, author & group and group & owner.
2021-03-21 16:18:06 +01:00
Sylvestre Ledru
45acb087b8
Merge pull request #1848 from nomius10/install_bugfix
...
install: fix bug #1823
2021-03-20 20:53:57 +01:00
Neculai Balaban
220ca78c9b
install: normalize test filenames
2021-03-20 20:42:47 +02:00
Neculai Balaban
9b0eee9066
install: added additional tests
2021-03-20 20:07:19 +02:00
Neculai Balaban
ecddaf577a
install: rustfmt test
2021-03-20 15:44:41 +02:00
Dominik Bittner
7a91281976
Install: remove path when copining files
...
- add a test for copying a file from one directory to another
- add the desired behavior
Fixes #1823
2021-03-20 15:35:40 +02:00
Marco Satti
785897efbd
date: add more tests for setting (alt. formats)
2021-03-20 15:17:18 +08:00
Sylvestre Ledru
e76ce1e908
Merge pull request #1844 from tertsdiepraam/ls/si
...
ls: --si flag and more compatible size formatting
2021-03-19 21:18:25 +01:00
Neculai Balaban
c6927d97c8
cp: add support for -x/--one-file-system ( #1840 )
2021-03-19 21:15:35 +01:00
Sylvestre Ledru
9132d32315
Rustfmt the tests
2021-03-19 18:01:43 +01:00
Terts Diepraam
39b07f670f
tests/ls: adapt tests to --si and new size formats
2021-03-19 15:15:24 +01:00
Sylvestre Ledru
e521b46c09
Merge pull request #1820 from tertsdiepraam/master
...
ls: move from getopts to clap and structure configuration
2021-03-19 09:55:27 +01:00
Marco Satti
5ec87dc70a
date: Implement setting the date on Unix & Windows ( #1798 )
...
* date: implement set date for unix and windows
Parsing the date string is not fully implemented yet, as in it relies
on the internals of chrono - things like "Mon, 14 Aug 2006 02:34:56 -0600"
do not work, nor does "2006-08-14 02:34:56" (no TZ / local time). This
is no different to using the "--date" option however, and will get fixed
when `parse_date` is a bit smarter.
Only supports unix and Windows platforms for now.
2021-03-19 09:54:01 +01:00
Sylvestre Ledru
fcccc2a973
Merge pull request #1826 from pfnsec/master
...
head: add support for -z/--zero-terminated
2021-03-18 21:37:12 +01:00
Jan Scheer
58b9372dbe
rm: fix for -d to match GNU's output #1769
2021-03-18 14:46:56 +01:00
Sylvestre Ledru
a482e28798
Merge pull request #1836 from aspenluxxxy/ios-compat
...
Change target_os = "macos" to target_vendor = "apple"
2021-03-18 14:37:26 +01:00
aspen
4e29b693f8
uutils: change every target_os = "macos"
to target_vendor = "apple"
2021-03-18 08:42:53 -04:00
Sylvestre Ledru
1d271991af
Rustfmt new tests
2021-03-18 10:24:30 +01:00
Terts Diepraam
c5792a4c47
tests/ls: add tests for colors
2021-03-17 23:15:03 +01:00
Sylvestre Ledru
99be7a3172
Merge pull request #1810 from jeckersb/nice-clap
...
nice: move from getopts to clap #1794
2021-03-17 22:03:42 +01:00
Sylvestre Ledru
44a7adc9a0
Merge pull request #1812 from konomith/feature/preserve_timestamps_#1758
...
install: Implement --preserve-timestamps (-p)
2021-03-17 22:02:54 +01:00
Sylvestre Ledru
a690ffde41
Merge pull request #1821 from deantvv/expand-clap
...
expand: replace getopts with clap
2021-03-17 22:01:31 +01:00
Sylvestre Ledru
6a109a5069
Merge pull request #1834 from jhscheer/patch-3
...
rm: add an additional flag -R for --recursive
2021-03-17 21:52:02 +01:00
Sylvestre Ledru
ba55ef166e
Merge pull request #1827 from drocco007/numfmt-delimiter
...
numfmt: implement --delimiter
2021-03-17 21:50:47 +01:00
John Eckersberg
64b8c8aac7
nice: move from getopts to clap #1794
2021-03-17 08:52:13 -04:00
Daniel Rocco
fbb9c50050
tr: process octal escape sequences
...
closes #1817
2021-03-17 08:04:45 -04:00
Jan Scheer
867e117c99
Update test_rm.rs
2021-03-17 10:20:08 +01:00
ty
5271427193
Merge branch 'master' of github.com:backwaterred/coreutils into implement-dd-bwtr
2021-03-16 14:37:01 -07:00
ty
af6bf3a224
Begins work on dd
...
- Prototype code.
- Adds project boilerplate for integration with coreutils framework.
2021-03-16 14:32:55 -07:00
Sylvestre Ledru
618d4a4fa5
Merge pull request #1825 from cbjadwani/uniq-utf8-issues
...
uniq: utf-8 issues
2021-03-16 21:18:31 +01:00
Peter Sherman
13e61c3234
head: add support for -z/--zero-terminated
2021-03-15 15:56:11 +00:00
Daniel Rocco
52f2ab6898
numfmt: implement --delimiter
...
closes #1454
2021-03-15 11:55:56 -04:00
Hari
406cd865eb
install: run rustfmt
...
Fix formatting issues based on PR review comments
2021-03-15 11:00:30 -04:00
Andre Julius
53c3fedf33
sleep: Add more test cases
...
As mentioned here:
https://github.com/uutils/coreutils/pull/1777#discussion_r593807712
2021-03-15 14:36:38 +01:00
Dean Li
f608084710
Expand: add test for multiple files
2021-03-15 21:29:28 +08:00
Chirag Jadwani
116e253cc0
uniq: Fix skip fields
...
Current implementation of the skip fields logic does not handle
multibyte code points correctly. It assumes each code point (`char`) is
one byte. If the skipped part of the input line has any multibyte code
points then this can cause fields not being skipped correctly (field
start index is calculated to be before it actually starts).
2021-03-15 18:48:54 +05:30
Chirag Jadwani
ce4342d12e
uniq: Fix panic on invalid utf-8 input
2021-03-15 18:48:54 +05:30
Terts Diepraam
fd957dd148
ls: fix access time on windows
2021-03-15 14:09:29 +01:00
Terts Diepraam
10135dccef
ls: fix unused import and improve coverage
2021-03-15 13:46:21 +01:00
Sylvestre Ledru
2c09556964
rustfmt some tests
2021-03-13 23:30:47 +01:00
Andre Julius
2158b2c5b4
sleep: move from getopts to clap #1735 ( #1777 )
...
and Add some sleep test cases #1735
2021-03-13 23:11:11 +01:00
Terts Diepraam
fd5ec099d0
touch: use an ArgGroup for sources and turn macros into functions ( #1813 )
...
* touch: use arggroup for sources
* tests/touch: add tests for multiple sources
* touch: turn macros into functions
* test/touch: fmt
* touch: constant for the sources ArgGroup
2021-03-13 17:20:39 +01:00
Hari
8471088d6d
Merge branch 'master' of github.com:uutils/coreutils into feature/preserve_timestamps_#1758
2021-03-12 17:47:02 -05:00
Hari
68ec2ed0f3
install: Implement --preserve-timestamps (-p)
...
Last access and last modify timestamps are extracted from the
existing file metadata and are applied to the newly created file.
2021-03-12 16:51:47 -05:00
Jan Scheer
47f50a0f5f
tests/utils: fixed mode for write ( #1802 )
...
added `log_info`
2021-03-12 22:26:27 +01:00
Michael Kefeder
e1626b8c64
ptx: ignore empty regex ( #1808 )
...
* ptx: ignore empty -W regex
* ptx: test to verify empty -W regex is ignored
* tests/ptx: verify word regexp from cmd-line is used
2021-03-12 21:52:37 +01:00
Ali
5ced3a670b
paste: cleanup multi-stdin support ( #1803 )
...
cleaner impl for multi-stdin support
2021-03-12 13:26:09 +01:00
Craig Pastro
3ab114f283
cp: Implement --parents & --parent ( #1797 )
2021-03-12 13:25:15 +01:00
Ali
374a4fde86
paste: support multi-stdin ( #1791 )
...
- added `-` as the default input, since `paste` reads stdin if no file
is provided
- `paste` also supports providing `-` multiple times
- added a test for it
2021-03-10 23:19:12 +01:00
Benjamin Fox
5446ea2abf
cp: implement --strip-trailing-slashes
2021-03-09 12:59:26 +02:00
Daniel Rocco
0e02607dc7
numfmt: implement --field
2021-03-08 10:53:34 -05:00
Chad Brewbaker
c820329efd
muted test not for windows and added windows temp file convention ( #1748 )
...
* muted test not for windows and added windows temp file convention
* Update mktemp.rs
Revert windows mktmp template difference
Co-authored-by: Chad Brewbaker <chad@flyingdogsolutions.com>
2021-03-06 18:26:55 +01:00
Daniel Rocco
d06f91fbe2
numfmt: align format output values with GNU ( #1745 )
...
When converting to SI or IEC, produce values that align with the conventions
used by GNU numfmt.
- values > 10 are represented without a decimal place, so 10000 becomes 10K
instead of 10.0K
- when truncating, take the ceiling of the value, so 100001 becomes 101K
- values < 10 are truncated to the highest tenth, so 1001 becomes 1.1K
closes #1726
2021-03-06 18:26:05 +01:00
Sylvestre Ledru
c06967a45a
rustfmt two files
2021-02-23 20:56:41 +01:00
Chad Brewbaker
bb54669a5d
Fix macOS aarch64 compile errors ( #1724 )
2021-02-23 10:25:06 +01:00
Alex Lyon
5431e947bc
uucore: process: fix exit status processing ( #1743 )
...
* uucore: process: fix exit status processing
* tests: timeout: check whether subcommand exit codes are returned
2021-02-23 10:21:01 +01:00
James Robson
0dbed0fd59
Do not allow seq to run with an increment of zero
2021-02-18 21:10:53 +00:00
Chad Brewbaker
05d8cc59c4
bug(wc): Add a test for unexpected behavior ( #1723 )
2021-02-16 13:36:49 +01:00
Daniel Rocco
f595164063
numfmt: prohibit --header=0 to align with GNU
...
Adjust header option handling to prohibit passing a value of 0 to align
with GNU numfmt. Also report header option parse errors as GNU does.
closes #1708
2021-02-15 08:14:44 +01:00
Daniel Rocco
f8006f47df
numfmt: handle leading whitespace & implied padding ( #1721 )
...
Align with GNU numfmt by trimming leading whitespace from supplied values.
If the user did not specify a padding, calculate an implied padding from
the leading whitespace and the value.
Also track closer to GNU numfmt’s error message format.
2021-02-14 09:04:29 +01:00
Felipe Lema
35a7f01d15
Refactor(split) - migrate from getopts to clap ( #1712 )
2021-02-11 20:45:23 +01:00
Sylvestre Ledru
51383e10e6
Fix: install /dev/null target ( #1646 )
...
* fix(install): workaround the /dev/null bug
Caused by a limitation of fs::copy in rust. see:
https://github.com/rust-lang/rust/issues/79390
2021-02-11 15:59:58 +01:00
Sylvestre Ledru
6c8af26e7f
fix(cp) - make "cp /dev/null target" work ( #1674 )
2021-02-11 15:59:20 +01:00
Sylvestre Ledru
b8987f3d5f
fix(mktemp) - Make mktemp --tempdir foo.XXXXXX works ( #1716 )
...
Used by apt-key
2021-02-11 00:03:23 +01:00
Chad Brewbaker
6c2bca110d
Fixed wc -L no end of line LF bug ( #1714 )
2021-02-08 21:54:48 +01:00
Sylvestre Ledru
cacaf0cde8
bug(fmt): just like the GNU version, fails when -W is bigger than 2500
...
Closes : #1704
2021-01-25 08:45:33 +01:00
Sylvestre Ledru
992c113f09
Remove some old code
2021-01-22 09:40:38 +01:00
Sylvestre Ledru
18370f39b8
Remove some warnings
2021-01-22 09:40:38 +01:00
Sylvestre Ledru
b8d0467da8
test(realpath): improve the coverage
2021-01-19 20:56:27 +01:00
Sylvestre Ledru
e331186fee
unbreak build with rustc 1.32: force tempfile 3.1.0 ( #1695 )
2021-01-19 08:15:53 +01:00
Sylvestre Ledru
013bb285cd
bug(chmod): chmod on symlink pointing to non existing file is failing ( #1694 )
2021-01-18 23:09:00 +01:00
Felipe Lema
88911be6e0
--filter
argument for split
(#1681 )
2021-01-18 14:42:44 +01:00
jaggededgedjustice
18c39daed7
fold: Handle input with newlines ( #1680 )
...
The read_line function appends to the given buffer which is never
cleared. This leads to lines being duplicated.
2021-01-05 09:10:01 +01:00
Sylvestre Ledru
4a23a1a218
feature(ln): Implement -n
2021-01-03 18:55:53 +01:00
Sylvestre Ledru
7f1d47b77a
refactor(ln): move to clap
2021-01-02 22:35:21 +01:00
Sylvestre Ledru
90722c1f3c
Merge pull request #1677 from sylvestre/mktemp-t
...
feature(mktemp): implement -t
2021-01-02 21:10:59 +01:00
Sylvestre Ledru
105e2cb26f
feature(mktemp): implement -t
...
Deprecated but used in various places:
https://sources.debian.org/src/libreoffice/1:7.0.4-1/solenv/gbuild/platform/solaris.mk/?hl=22#L22
https://sources.debian.org/src/glibc/2.31-6/malloc/memusage.sh/?hl=225#L225
https://sources.debian.org/src/sbox-dtc/1.11.7-1/debian/postinst/?hl=20#L20
2021-01-02 13:07:27 +01:00
Sylvestre Ledru
94e293f2bf
fix formatting fr test_seq
2021-01-02 10:14:18 +01:00
Sylvestre Ledru
a2d6c85e44
test(cp): cp /dev/null target is supposed to work. Add a test
2021-01-02 10:02:51 +01:00
Sylvestre Ledru
bc4c82b132
Fix some clippy warnings
2020-12-29 00:47:59 +01:00
Sylvestre Ledru
3a1eb1e05f
Various fixes before landing csplit
2020-12-28 17:22:02 +01:00
Stéphane Campinas
89bf7a726e
csplit: refresh of the previous PR
2020-12-28 17:21:29 +01:00
Sylvestre Ledru
da362ced71
test(rm): Add a test for multiple -f ( #1671 )
2020-12-25 14:21:47 +01:00
Diego Magdaleno
8b12686888
ls: On Windows don't display files hidden by NTFS ( #1662 )
...
This little check, allows us to hide the files that
shouldn't be shown on the listing on Windows operating
systems.
Just like the "dot" in UNIX based operating systems
Windows uses its own file attributes to determine if a file
is hidden or not.
The lack of support for this option is normally an annoyance
for many users, this commit adds full support for this feature
2020-12-19 17:54:28 +01:00
Sylvestre Ledru
469abf2427
bug(seq) - Allow 'seq 6 -1 0'
...
Was failing with
```
Found argument '-1' which wasn't expected, or isn't valid in this context
```
otherwise
2020-12-19 11:55:43 +01:00
Sylvestre Ledru
dbc716546b
fix(mkdir) - Add --parent as alias of --parents
...
It is used this way sometimes:
https://sources.debian.org/src/php-symfony-polyfill/1.21.0-2/debian/rules/?hl=49#L49
https://sources.debian.org/src/firebird3.0/3.0.7.33374.ds4-1/debian/functions.sh/?hl=24#L24
https://sources.debian.org/src/postfix/3.5.6-1/debian/configure-instance.sh/?hl=67#L67
2020-12-18 14:41:59 +01:00
Sylvestre Ledru
718695d541
fix(install) - Install was failing with '-m 0333'
...
The parse_numeric was getting ' 0333' as input
and showing 'mode is too large ( 0333 > 7777) as error
Syntax used: https://sources.debian.org/src/firebird3.0/3.0.7.33374.ds4-1/debian/functions.sh/?hl=145#L145
2020-12-18 13:36:55 +01:00
Sylvestre Ledru
c506b5402b
fix clippy warnings
2020-12-17 21:34:10 +01:00
Sylvestre Ledru
5a62dcafaa
bug(cp): like gnu/cp, don't show any message when --no-clobber is used
...
Simple example:
touch bar
rm -rf /tmp/foo
mkdir -p /tmp/foo
cp -pnL -v bar /tmp/foo
echo $?
cp -pnL -v bar /tmp/foo
echo $?
rm -rf /tmp/foo
mkdir -p /tmp/foo
./target/debug/coreutils cp -pnL -v bar /tmp/foo
echo $?
./target/debug/coreutils cp -pnL bar /tmp/foo
echo $?
2020-12-17 20:50:38 +01:00
Sylvestre Ledru
b133e28d3e
test(ls) - also test the -h option
2020-12-15 14:06:17 +01:00
Sylvestre Ledru
2de9abf52b
test(ls): add more ls tests
2020-12-15 12:10:12 +01:00
Sylvestre Ledru
b687a2742c
test(ls): also test ls -R
2020-12-13 17:13:56 +01:00
Sylvestre Ledru
4068195a94
test(ls): add more tests
2020-12-13 12:14:34 +01:00
Sylvestre Ledru
cd97adb39d
Minor fixes in the tests
2020-12-13 12:11:42 +01:00
Sylvestre Ledru
dca1f28085
install: various improvements in output & tests
2020-12-12 14:36:23 +01:00
Sylvestre Ledru
3024ade071
refactor(chgrp, install): Show the error in the program instead of the lib
2020-12-12 14:28:50 +01:00
Sylvestre Ledru
55c660b986
feature(install): move chown functions into uucore and have install owner support use it
2020-12-12 14:27:59 +01:00
Sylvestre Ledru
015e18731f
feature(install): install group support
2020-12-12 14:27:03 +01:00
Sylvestre Ledru
576aa29f0f
refactor(chmod): move from walker to walkdir, simplify the code and add tests ( #1645 )
2020-12-12 10:31:12 +01:00
Sylvestre Ledru
49b32ea68d
refactor(chown): move to clap & add tests ( #1648 )
2020-12-12 00:14:00 +01:00
Sylvestre Ledru
068fee2ebd
feature(uname): Implement -p & -i ( #1649 )
...
Just return 'unknown' for both
Closes : #1636
2020-12-11 22:46:36 +01:00
Sylvestre Ledru
516839e081
refactor(mv): move to clap ( #1652 )
2020-12-10 22:28:17 +01:00
Piyush Jaipuriayar
3ca8ba997c
hashsum: added blake2 as a hashing algorithm ( #1651 )
2020-12-08 23:32:02 +01:00
Sylvestre Ledru
c483fa501b
feature(cp): also implement --dereference/-L
2020-11-29 20:48:29 +01:00
Sylvestre Ledru
f76a0ec972
feature(cp): implement archive + add missing tests
2020-11-29 20:48:23 +01:00
Sylvestre Ledru
b07f496b70
fix(install): 'install file_a file_b' should just copy the file
2020-11-29 16:33:46 +01:00
Sylvestre Ledru
11ecf80a25
feature(sync): add --data & --file-system ( #1639 )
2020-11-29 16:32:21 +01:00
Sylvestre Ledru
89f8624936
bug(install) - install -d can be run on an existing directory ( #1643 )
...
GNU:
$ install -d foo
$ install -d foo
Rust:
$ install -d foo
$ install -d foo
install: cannot create directory 'foo': File exists
install: foo: File exists (os error 17)
2020-11-29 16:31:26 +01:00
Sylvestre Ledru
df44534a3e
test(install): Add tests which should be working but aren't
...
I will work on the fixes
2020-11-25 13:48:04 +01:00
Sylvestre Ledru
63bf6cc599
Add a test to verify that install can be used just to copy a simple file
...
example:
touch bar.txt && ./target/debug/coreutils install bar.txt foo.txt
2020-11-25 13:41:46 +01:00
Sylvestre Ledru
bfba889f8e
refactor(touch): Move to clap + add a test ( #1629 )
2020-11-21 09:53:13 +01:00
Sylvestre Ledru
5efaa0bf32
refactor(id) - move to clap and add more tests ( #1628 )
2020-11-21 09:52:50 +01:00
Sylvestre Ledru
41ba5ed913
refactor(uniq): Move to clap + add a test ( #1626 )
2020-11-21 09:52:40 +01:00
Sylvestre Ledru
7bbb4c98e8
Merge pull request #1623 from sylvestre/clap-pwd
...
refactor(pwd): move to clap + add a test
2020-11-21 00:49:30 +01:00
Sylvestre Ledru
8271faf3a2
Merge branch 'master' into clap-pwd
2020-11-19 22:32:02 +01:00
Sylvestre Ledru
252f527b55
Merge branch 'master' into uptime-refresh
2020-11-19 22:30:33 +01:00
Sylvestre Ledru
62265656b4
Merge pull request #1630 from sylvestre/clap-mkdir
...
refactor(mkdir): Move to clap + add a test
2020-11-17 13:01:09 +01:00
Sylvestre Ledru
5eaab5327c
Merge pull request #1632 from sylvestre/clap-rm
...
refactor(rm): Move to clap + add a test
2020-11-17 13:00:35 +01:00
Sylvestre Ledru
eada6e58e5
Merge pull request #1637 from sylvestre/clap-install
...
refactor(install): move to clap
2020-11-17 13:00:04 +01:00
Sylvestre Ledru
2edfe32c48
refactor(install): move to clap
2020-11-13 18:21:56 +01:00
Sylvestre Ledru
2febd13733
refactor(sync): Move to clap + add tests
2020-11-11 22:57:55 +01:00
Sylvestre Ledru
61520546a5
refactor(rm): Move to clap + add a test
2020-11-09 10:27:58 +01:00
Sylvestre Ledru
897bcb2e67
refactor(mkdir): Move to clap + add a test
2020-11-08 17:51:04 +01:00
Sylvestre Ledru
92d5d47434
refactor(pwd): move to clap + add a test
2020-11-03 23:12:16 +01:00
Sylvestre Ledru
8bd533ffe8
refactor(uptime): some minor improvements
2020-11-03 23:10:32 +01:00
Roy Ivy III
94e240a2fc
tests/factor ~ refactor for readability + improve DRY
2020-10-26 15:06:29 -05:00
Roy Ivy III
c5296f00d0
tests/factor ~ test first 100000 integers for expected results
2020-10-26 15:06:29 -05:00
Roy Ivy III
2615abe9cc
tests/factor ~ update RNG usage and variable reports to ease debugging
2020-10-26 15:06:28 -05:00
Sylvestre Ledru
b4969c6cc2
test(seq): add a test to check that we don't accept more than 3 args
2020-10-25 10:44:50 -05:00
Sylvestre Ledru
f888616c0b
tests(truncate): Add more tests
2020-10-23 00:36:09 +02:00
Kevin Burke
7fc1b16115
sort: fix panic on write to closed pipe
...
If the output of sort is piped to another program that closes the file
descriptor, sort currently panics. The GNU coreutils is able to handle
this case.
Replacing panic with crash_if_err reports the closed pipe and exits
with a return code, which seems like the correct behavior. Tested on
my Mac and the panic disappears.
Add a test which pipes data to sort - it won't protect against this
specific regression, but it increases the test coverage, at least.
Fixes #1608 .
2020-10-21 16:55:10 -07:00
Roy Ivy III
96092b01fc
tests/cp ~ disable intermittent failures on MacOS (includes FixME comments)
...
- track repair progress at GH:uutils/coreutils/issues/1590
2020-10-16 20:24:57 -05:00
Roy Ivy III
02e4226c26
refactor/polish ~ cargo make format
2020-10-02 16:03:21 -05:00
Roy Ivy III
0fa249a944
Fix tr
argument handling for missing arguments ( #1601 )
...
* tests/tr ~ confirm failure for missing argument(s)
* fix/tr ~ mimic GNU error reponse for missing argument(s)
2020-10-02 22:43:57 +02:00
Jens Humrich
bfca334ec1
style issues
2020-09-17 12:40:48 +02:00
Jens Humrich
5a75905476
Add additional-suffix option to split
2020-09-16 17:59:39 +02:00
Roy Ivy III
c6274b4003
tests ~ disable failing tail
test under windows code coverage (with future FixME)
...
* FixME/note: test_mktemp::test_mktemp_make_temp_dir, test_mktemp::test_mktemp_mktemp, and test_mktemp::test_mktemp_suffix are also failing locally though not for CICD coverage builds
2020-08-16 17:02:19 -05:00
nicoo
b0ac07296f
head: Ignore known-failing tests introduced in #1579 ( #1586 )
...
This caused tests to fail on all unrelated work.
In particular, CI went red fall all pull requests.
2020-08-09 18:51:04 +02:00
Roy Ivy III
b38abbce5e
tests: (head) cargo fmt
2020-08-08 23:04:29 -05:00
Chad Brewbaker
c1f518e586
Adding failing GNU head tests ( #1579 )
...
Co-authored-by: Chad Brewbaker <chad@flyingdogsolutions.com>
2020-08-08 22:26:49 -05:00
Felipe Lema
ba6b55f117
feature[env]: Add support for --chdir=DIR
in env
( fixes #1568 ) ( #1569 )
2020-08-08 22:26:49 -05:00
Alex Lyon
700d51a92b
Merge pull request #1528 from sylvestre/cp-no-deref
...
feature(cp) implement -P/--no-deference
2020-06-23 23:05:26 -07:00
Roy Ivy III
f3ee45171f
tests/factor ~ re-enable factor tests (with additional detail for failures)
...
- probably fixes #1531 (via #1529 ) per @nbraud
2020-06-21 12:17:46 -05:00
Sylvestre Ledru
2d62097843
feature(cp): Manage -P & -R
2020-06-20 10:49:15 +02:00
Sylvestre Ledru
280fafed8a
feature(cp) implement -P/--no-deference
2020-06-20 09:38:39 +02:00
Sylvestre Ledru
f17a112781
feature(ln): implement -r ( #1540 )
...
* bump the minimal version of rustc to 1.32
* feature(ln): implement -r
* fix two issues
* Use cow
* rustfmt the change
* with cargo.lock 1.31
* try to unbreak windows
2020-06-18 00:54:18 -07:00
Roy Ivy III
3a661e1f9e
tests ~ suppress failing WSL logname test (add investigate ToDO)
2020-06-14 23:38:30 -05:00
Roy Ivy III
6dfe2dd4a3
tests ~ disable failing 'test_hostname::test_hostname_ip' test on MacOS
...
- also adds FixME to prompt future correction
2020-06-14 23:38:30 -05:00
Roy Ivy III
cbac6cc903
tests ~ increase test detail to diagnose MacOS hostname test failure
2020-06-14 23:38:30 -05:00
Roy Ivy III
b055ec34e7
tests ~ disable randomly failing test ('test_factor::test_random_big') under CI
...
- avoid randomly failing builds; reactivate when fixed
- ref: #1531
2020-06-14 23:38:30 -05:00
Roy Ivy III
2c5d154b67
fix ~ compiler warning (unused import)
2020-06-14 23:38:30 -05:00
Roy Ivy III
d144182add
tests/refactor ~ use is_ci()
for CI host platform testing
2020-06-14 12:20:31 -05:00
Roy Ivy III
407d455b12
tests ~ add is_ci()
test
2020-06-14 12:20:31 -05:00
Sylvestre Ledru
7b452f3bfe
style(nproc): reformat with rustfmt
2020-06-09 13:38:29 +02:00
Sylvestre Ledru
ac34d136f2
refactor(global): Move from tempdir to tempfile:
...
* the crate has been deprecated
2020-06-09 11:30:19 +02:00
Alex Lyon
80987250d2
Merge pull request #1521 from sylvestre/nproc
...
Add tests for nproc + clap migration
2020-06-08 19:18:00 -07:00
Sylvestre Ledru
358af0939c
Merge pull request #1534 from sylvestre/logname
...
Logname - add test and simplify the code a bit
2020-06-08 09:34:42 +02:00
Sylvestre Ledru
f87b041e27
test(hostid) add a test for hostid ( #1533 )
2020-06-08 09:09:44 +02:00
Sylvestre Ledru
332dc5d2f2
test(logname) add a test for logname
2020-06-07 17:53:54 +02:00
Sylvestre Ledru
c33f52baf1
test(nproc): add a test
2020-06-02 23:29:18 +02:00
Sylvestre Ledru
a7de28a714
test(groups): Add tests
2020-06-02 22:14:35 +02:00
Roy Ivy III
ebb2c3dfb4
tests ~ use build.rs build list of test_UTIL module files
2020-06-02 12:17:30 -05:00
Roy Ivy III
1b3bb56e66
tests ~ add missing test_UTIL module files (with 'ToDO' comments)
...
- common_core utils
- additional 'windows' utils
- additional 'unix' utils
2020-06-02 11:25:09 -05:00
Roy Ivy III
b10649f14f
tests ~ (test_factor.rs) fix module import path
2020-06-01 18:30:04 -05:00
Roy Ivy III
de0375f909
tests ~ reorganize tests
2020-06-01 18:30:04 -05:00
Roy Ivy III
923c47a408
refactor ~ remove outdated clippy attributes
2020-05-30 01:36:02 -05:00
Roy Ivy III
6c9784cb4b
tests ~ disable whoami
test using id
for 'windows' ( fixes #1519 )
...
- `id` does not exist on common/usual Windows installations
2020-05-29 22:59:48 -05:00
Roy Ivy III
403a6a3935
tests ~ fix 'edition=2018' module import errors
...
- ref: <https://users.rust-lang.org/t/imports-can-only-refer-to-extern-crate-names/24388 > @@ <https://archive.is/iCaXp >
2020-05-29 22:59:47 -05:00
Roy Ivy III
039638de0e
tests ~ use CARGO_PKG_NAME as name of binary used for testing
2020-05-29 22:59:47 -05:00
Roy Ivy III
8a91f1dea4
tests/stat ~ fix testing algorithm to correctly allow unknown values (with/without trailing newlines)
2020-05-29 22:59:47 -05:00
Roy Ivy III
6cb609aeee
docs/codespell ~ fix spelling errors
2020-05-29 22:59:47 -05:00
Roy Ivy III
db2e950918
change ~ make all sub-crates independent
2020-05-29 22:59:40 -05:00
Sylvestre Ledru
817a237821
Merge pull request #1513 from sylvestre/uptime-since
...
feature(uptime): add option --since
2020-05-21 22:18:52 +02:00
Sylvestre Ledru
186c173559
test(hostname): Test more options ( #1515 )
2020-05-18 23:07:21 +02:00
Sylvestre Ledru
719f2bf8ae
feature(uptime): add option --since
...
For this, I:
* moved from getops to clap
* remove the millisecond maths
2020-05-17 11:50:08 +02:00
Roy Ivy III
8e886c30dc
Merge pull request #1511 from sylvestre/more
...
fix(more) handle no arguments without panic; add test and a FixME
2020-05-15 19:17:01 -05:00
Sylvestre Ledru
62901490e1
test(more): add a test for more when called without arg
2020-05-15 18:17:57 -05:00
Sylvestre Ledru
2c90932ec0
test(uptime): Add a test ( #1512 )
2020-05-15 18:09:10 -05:00
Sylvestre Ledru
601690b079
test(expand): Add some tests for expand ( #1505 )
2020-05-15 18:09:10 -05:00
Sylvestre Ledru
0ca5132a06
test(whoami): Add test for whoami ( #1506 )
...
* test(whoami): Add test for whoami
Side effect: also tests "id -un"
2020-05-15 14:19:40 +02:00
Roy Ivy III
9052bc4de7
Merge pull request #1503 from sylvestre/arch
...
test(arch): add tests and description text
2020-05-10 20:11:10 -05:00
Anuvrat Parashar
ce064dc62e
feature(head): Introduce NLines to handle negative lines parameters
2020-05-10 21:32:48 +02:00
Roy Ivy III
7b96432eff
Merge pull request #1504 from sylvestre/fmt
...
test(fmt): add some small initial tests
2020-05-10 12:25:18 -05:00
Sylvestre Ledru
9fb00df9b3
test(id): add tests for id
2020-05-09 00:14:10 +02:00
elgris
71ba8b3fd6
sort: add "dictionary-order" flag.
...
The flag makes 'sort' command ignore non-dictionary symbols
(non-alphanumeric and non-spaces). The only difference with GNU sort is
that it takes ALL alphanumeric symbols, not only ASCII ones.
2020-05-07 23:08:24 +02:00
Sylvestre Ledru
16bf4b1893
test(arch): Add some tests
2020-05-06 00:39:13 +02:00
Sylvestre Ledru
9b0129716f
test(fmt): Add some tests for fmt
...
Even if it is a bit broken for now
2020-05-06 00:38:22 +02:00
Sylvestre Ledru
a93d007cde
test(uname): Add a test for the -o/--operating-system flag
2020-05-05 13:37:33 -05:00
Sylvestre Ledru
ce047e8330
test(users): Introduce two tests
2020-05-04 15:12:38 -05:00
Roy Ivy III
30c14f1025
Merge pull request #1492 from sylvestre/test_printenv
...
test(printenv): add some tests
2020-05-03 15:15:43 -05:00
Roy Ivy III
f12c27a57d
Merge pull request #1487 from sylvestre/df-human
...
refactor and fix some `df` build and cosmetic issues
2020-05-03 15:15:14 -05:00
Sylvestre Ledru
fc83024ebe
refactor(df): use number_prefix like 'ls' instead of doing the display by hand
2020-05-03 13:29:55 -05:00
Sylvestre Ledru
bee8ab744e
test(printenv): add some tests
2020-05-03 13:24:47 -05:00
Roy Ivy III
78dc71630c
Merge pull request #1490 from sylvestre/uname
...
Add `uname` test + doc update regarding testing
2020-05-03 13:00:21 -05:00
Sylvestre Ledru
1f1edc5a33
test(date): add tests
2020-05-03 12:26:17 -05:00
Sylvestre Ledru
4c1774e918
test(uname): Add uname tests
2020-05-03 12:18:28 -05:00
Sylvestre Ledru
c85756e509
fix(df): Linux: Fix the mount path and type
2020-05-03 11:51:33 -05:00
Sylvestre Ledru
6e8c901204
fix: typo fixes found by codespell
2020-05-01 23:36:33 +02:00
Sylvestre Ledru
d5228b5a64
feat(df) add 'df' uutil
2020-04-28 13:05:55 -05:00
Roy Ivy III
15b2bfca18
change ~ fixup paths (within tests)
2020-04-14 13:46:19 -05:00
Sylvestre Ledru
cf35d75491
rustfmt the tests
2020-04-13 20:36:03 +02:00
Roy Ivy III
75f05df119
refactor/polish ~ fix cargo clippy
complaints (redundant_static_lifetimes)
2020-04-11 18:50:10 -05:00
Roy Ivy III
b5d541a814
refactor/polish ~ inhibit useless warning (within 'tests/tests.rs')
2020-04-11 18:50:10 -05:00
Roy Ivy III
3ec47ff717
tests ~ refactor real{link,path} tests for easier diagnosis of failures
2020-04-11 18:50:10 -05:00
Roy Ivy III
6adddcf9e9
tests ~ fix CICD 'linux' test variations (whitespace variations)
2020-04-11 18:50:10 -05:00
Roy Ivy III
bcc1cc0326
tests ~ fix CICD 'macos' test variation
2020-04-11 18:50:10 -05:00
Roy Ivy III
5af8503a5e
cargo fmt
2020-01-28 00:05:06 -06:00
Roy Ivy III
15722e3ace
refactor/polish ~ fix cargo clippy
complaints (unused imports)
2020-01-28 00:04:41 -06:00
Roy Ivy III
b3846bf8f1
tests/fix ~ (stat) remove '%a', '%d', '%f' from file system test format due to race conditions
2020-01-27 21:33:47 -06:00
Roy Ivy III
823fc17c2c
tests/fix ~ (stat) refactor '%w' and '%W' tests due to stat
limitations
...
- allow actual outputs to differ from expected (ie, `stat`) if `stat` is reporting "unknown" creation time
.# [why]
For many *nix flavors, `stat` is unable to detect birth/creation date
for directories/files. The information is available via the `statx()`
system call (for linux kernels >= v4.11), and rust supplies that
information via fs::MetadataExt for v1.40+. So, for rust v1.40+, there
will likely be a mismatch between the output of the system `stat` and
this ('uutils') `stat`.
* ref: <https://askubuntu.com/questions/470134/how-do-i-find-the-creation-time-of-a-file > @@ <https://archive.is/IsEAJ >
2020-01-27 21:33:47 -06:00
Roy Ivy III
14c3f3aa17
tests ~ fix WSL testing
...
+ ToDO added ~ when possible, test under WSL2 and differentiate/liberalize if possible
2020-01-27 21:33:47 -06:00
Roy Ivy III
25d4fb71ca
tests/refactor ~ change to use of common code (TestScenario::...
) for testing
2020-01-27 21:33:47 -06:00
Roy Ivy III
d0f6f3d07e
tests/refactor ~ change output test macros to 'actual = expected' format
...
- rust usually uses `assert_eq!(ACTUAL, EXPECTED)`
- ref: https://users.rust-lang.org/t/assert-eq-expected-and-actual/20304/3 @@ https://archive.is/xPp9R
2020-01-27 21:33:47 -06:00
Roy Ivy III
b4b0ee40d7
refactor/polish ~ convert to try!
to ?
syntax
...
- convert to newer `?` syntax, fixing compiler warnings
+ requires MinSRV >= v1.13.0
.# [why]
The `?` operator was stabilized in rust v1.13.0.
Warnings requesting conversion from the old `try!` macro to the `?` operator
were introduced in rust v1.39.0.
* ref: <https://github.com/rust-lang/rust/blob/master/RELEASES.md >
2020-01-27 21:33:47 -06:00
Gabriel Ganne
edaf2d85cb
ls: implement --color flag
...
GNU coreutils ls command implements the --color option as follow:
--color[=WHEN]
colorize the output; WHEN can be 'always' (default if omitted),
'auto', or 'never'
With --color=auto, ls emits color codes only when standard output is connected
to a terminal.
Also, add support for the following aliases:
- ‘always’, ‘yes’, ‘force’
- ‘never’, ‘no’, ‘none’
- ‘auto’, ‘tty’, ‘if-tty’
Signed-off-by: Gabriel Ganne <gabriel.ganne@gmail.com>
2019-06-23 10:35:30 +02:00
Alex Lyon
18b19715f9
env: refactor and move away from pre-1.0 Rust conventions
2019-05-13 04:03:10 -07:00
Alex Lyon
b73a664677
Split off uucore into its own repository
2019-05-12 22:42:20 -07:00
Alex Lyon
179de609b5
Replace trim_{left,right} with trim_{start,end} and co. (using Rerast)
2019-05-01 21:14:25 -07:00
Alex Lyon
c7d115b1ad
Convert all try!() to ?
2019-05-01 21:14:25 -07:00
Alex Lyon
220e07dc95
Test on FreeBSD using Cirrus CI and link to the Discord in the README
2019-05-01 21:14:25 -07:00
Roy Ivy III
31655fc004
env: add support for new '--file' option (includes testing)
...
.# Discussion
This commit adds support for a '-f'/'--file' option which reads "KEY=VALUE" lines from
a config (or ini) style text file and sets the corresponding environment key. This is
modeled after the same option in the `dotenv` and `godotenv` commands. Notably, this
commit does *not* add automatic loading of ".env" configuration files.
The environment variables set by reading the configuration file are set prior to any
unset (eg, `-u BAR`) or set (eg, `FOO=bar`) actions. Files are loaded in order with
later files overwriting any overlapping environment variables, then, unset actions (in
command line order) are executed, then, finally, set actions (in command line order)
are executed.
[1] [`dotenv`](https://github.com/bkeepers/dotenv )
[2] [`godotenv`](https://github.com/joho/godotenv )
2019-04-29 09:50:22 -05:00
Roy Ivy III
f72fff7b42
augment UCommand with #[derive(Debug)]
to allow improved test diagnostics
2019-04-29 09:46:15 -05:00
Roy Ivy III
c512ae0c52
env: add test for "env
fails echo on windows"
2019-04-29 09:32:00 -05:00
Reto Habluetzel
2d2042c8fc
env: reject program with --null, error stderr
2019-04-28 11:17:44 +02:00
Pascal Winkelmann
e18b5a5096
replace deprecated functions
2019-04-24 01:35:52 +02:00
Alex Lyon
01966e8aab
Merge pull request #1356 from Arcterus/echo-locked-stdout
...
echo: write using locked stdout
2019-04-08 15:57:02 -07:00
Alex Lyon
cefbe6c1f2
Merge pull request #1319 from rivy/fix.touch
...
fix ~ touch: fix and test for windows
2019-04-08 15:16:26 -07:00
Roy Ivy III
2cf92a3e69
touch: fix ~ activate tests on non-unix platforms
2019-04-07 09:14:46 -05:00
Alex Lyon
e248730140
echo: update tests to check for ending newlines
2019-04-05 22:27:25 -07:00
Alex Lyon
42794e9f11
echo: write using locked stdout
2019-04-05 22:23:01 -07:00
Alex Lyon
23f6dbf2d3
Merge pull request #1306 from rinconjc/1235
...
tests: untrimmed stdout assertion (fix #1235 )
2019-04-05 22:22:18 -07:00
Alex Lyon
dbc9527b00
Merge pull request #1336 from rinconjc/1321
...
Fix #1321 tsort handle self-loops
2019-04-05 19:15:23 -07:00
Alex Lyon
100f6df2bf
Merge pull request #1354 from ccbrown/rewrite-echo
...
echo: rewrite for readability and tests
2019-04-05 18:39:18 -07:00
Christopher Brown
1e223b0b58
echo: rewrite for readability and tests
2019-04-05 18:55:48 -04:00
Alex Lyon
dd753e2c78
Merge pull request #1315 from rivy/fix.rm
...
fix ~ rm: fix dir-type symlink removal on windows
2019-04-03 15:53:00 -07:00
Alex Lyon
9817f297b7
Merge pull request #1304 from rivy/fix.cp
...
fix "`cp` always creates backup"
2019-04-03 15:51:18 -07:00
Julio Rincon
63bc9985e0
Fix #1321 tsort handle self-loops
2019-02-14 07:45:11 +11:00
Julio Rincon
29c6ad5f6a
tests: untrimmed stdout assertion ( fix #1235 )
2019-02-08 07:54:48 +11:00
Roy Ivy III
f3d43d775a
fix ~ correct symlink creation in tests
2019-02-07 08:30:51 -06:00
Roy Ivy III
332767e548
cp: add test for "cp
always creates backup"
2019-02-07 08:22:41 -06:00
Roy Ivy III
31ca885c9c
mv: add test for "mv
fails transfers between dirs"
2019-02-07 08:19:22 -06:00
Roy Ivy III
e00d586af1
mv: fix failing tests
2019-02-07 08:19:22 -06:00
Roy Ivy III
6f75331bf4
mv: expand testing to windows platforms
2019-02-07 07:46:43 -06:00
Alex Lyon
5a17daa963
Merge pull request #1281 from rivy/alt/win-cli-globbing
...
Add command line globbing to all utilities (for windows targets)
2019-02-06 23:21:53 -08:00
Roy Ivy III
a046d94e75
fix: gate unix-only imports
2018-10-14 00:41:14 -05:00
Roy Ivy III
197bd2e10c
fix: gate unix-only macros (silences "unused" warnings)
2018-10-14 00:41:14 -05:00
Jamie McClymont
f3a71215bc
numfmt: support neither or both of --to and --from
...
matches GNU behaviour
2018-09-25 01:42:11 +12:00
cnd
35b1e47a63
Merge pull request #1285 from arsdragonfly/master
...
numfmt: add suffixes and fix negative numbers
2018-09-05 10:39:26 +04:00
Zheyu Shen
1af0484360
numfmt: add suffixes and fix negative numbers
...
Also refactors the code.
2018-09-04 18:27:21 -04:00
xplorld
47f5f12759
sort: treat "NaN" as string in numeric sort
2018-09-03 22:28:18 -07:00
bootandy
4756eb5c19
Fix expr
...
expr now detects overflows and logs to stderr instead of overflowing the
input
https://github.com/uutils/coreutils/issues/1194
2018-07-08 21:24:25 +01:00
dependabot[bot]
374fb4d4f1
Bump filetime from 0.1.15 to 0.2.1
...
Bumps [filetime](https://github.com/alexcrichton/filetime ) from 0.1.15 to 0.2.1.
- [Release notes](https://github.com/alexcrichton/filetime/releases )
- [Commits](https://github.com/alexcrichton/filetime/compare/0.1.15...0.2.1 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-13 14:15:48 -07:00
Konstantin Pospelov
e9fd9d623d
join: implement option to suppress joined lines
2018-06-09 12:11:58 +03:00
Alex Lyon
4d89c2d796
Merge pull request #1197 from c-edw/master
...
mkdir: Silently fail in recursive mode if unable to create directories.
2018-05-03 02:12:24 -07:00
Alex Lyon
646382f9c1
Merge pull request #1188 from ProgVal/test-language
...
Don't assume tests are running on a computer with an English locale.
2018-05-02 08:31:33 -07:00
Connor E
9d5631228a
mkdir: Use std create_dir_all for recursive operations.
2018-05-01 12:42:11 +01:00
Alex Jiang
58b4075566
hostname: bug fix for non-windows xgethostname and add test case
...
Cstr::from_bytes_with_nul needs input bytes null terminated. Current
version does not include the last null byte, hence
Cstr::from_bytes_with_nul will panic with error 'FromBytesWithNulError {
kind: NotNulTerminated }'
2018-04-22 21:04:51 +08:00
Valentin Lorentz
248f480b41
Don't assume tests are running on a computer with an English locale.
2018-04-22 08:07:38 +02:00
Konstantin Pospelov
4b8d4bfc05
join: fix autoformat
...
There was an issue with autoformat when the files had a different
number of columns in the first line. This commit fixes the issue and
extends the related test to cover this case.
2018-04-15 17:42:52 +03:00
Konstantin Pospelov
7dc8ff62cc
join: support headers
2018-04-11 22:55:44 +03:00
bootandy
838ce7b3e3
Fix issues raised in review
...
spelling
use POSIXLY_CORRECT and BLOCKSIZE env variables to determine block size.
move statics to const
use show_error! not show_info!
2018-03-24 18:03:34 -04:00
bootandy
8530db90c4
du: Fix tests for linux.
...
Running du on mac gives different answers to linux. Hence our asserts
must differ for each platform
2018-03-21 10:14:18 -04:00
bootandy
ea504bf0ec
du: add test for -d flag
2018-03-20 17:55:31 -04:00
bootandy
b6c7771087
du: Fix double counting of hard links.
...
hard linked files are no longer counted - this mimcs the behaviour of
the original du.
2018-03-20 16:59:29 -04:00
bootandy
e253406026
du: Fix incorrect block size assumption.
...
du and other tools like stat assume a 512 byte block. ls is the only
tool to use 1024.
Add Simple set of tests
2018-03-20 16:59:29 -04:00
Alex Lyon
880a4973c1
Format everything using rustfmt
2018-03-12 01:20:58 -07:00
Alex Lyon
d8e738c49b
tests: disable some chgrp tests when part of the root group
...
Some tests failed when run using Docker because they assumed the
user would never be root. This is more of a band-aid solution.
An actual fix would be to test see if something like these tests
were to succeed when the user is root.
2018-03-03 12:04:22 -08:00
Konstantin Pospelov
642633fe3b
join: check line order
2018-02-11 18:23:12 +03:00
Konstantin Pospelov
128a38965e
join: support custom empty filler
2018-01-17 23:26:00 +03:00
Alex Lyon
e9f32fe170
realpath, relpath, tests: fix build on nightly
2018-01-16 15:11:46 -08:00
Konstantin Pospelov
12c5c951fb
join: implement the -o option
2018-01-06 22:49:07 +03:00
Sunrin SHIMURA (keen)
ee34206520
install: allow to install a file to a file
2017-12-27 17:31:19 +09:00
Alex Lyon
a1cf262414
rm: exit normally when -f is used with no operand
2017-12-26 15:36:21 -08:00
Konstantin Pospelov
4e0a0cf7bb
join: implement the -t option
2017-12-24 16:22:48 +03:00
Konstantin Pospelov
b33ce67d91
join: implement basic functionality
...
The basic implementation of join with some tests. The supported
options: -1, -2, -j, -a, -i.
2017-12-14 00:02:42 +03:00
Alex Lyon
6829ca3d10
chmod, install: move mode parsing into uucore
2017-12-10 20:11:05 -08:00
shutefan
38cd8edb5b
install: add high bits to file permissions in tests
2017-12-08 20:54:59 +01:00
shutefan
957d489604
chmod: make error message clearer
2017-12-08 20:54:59 +01:00
shutefan
bf5151d4a5
chmod: add 100 to permissions in chmod tests
2017-12-08 20:54:59 +01:00
Alex Lyon
4ef2ef29cd
Fix broken tests due to updating Cargo.lock
2017-11-18 17:52:28 -08:00
Alex Lyon
f7b97dc3d4
Merge pull request #1089 from flyrry/fix_env
...
fix --help and --version
2017-11-15 13:06:31 -08:00
Yury Krivopalov
b2ad51839b
Add numfmt
2017-11-09 00:23:24 +03:00
Sergei Mironenko
f0aa68aa1e
fix --help and --version
2017-10-28 17:42:40 +03:00
Alex Lyon
f2b952db54
Merge pull request #1082 from flyrry/finish_basename
...
basename: add -a, -s and -z flags
2017-10-09 11:33:06 -07:00
Sergei Mironenko
0b5a2c8743
basename: add -a, -s and -z flags
2017-10-09 11:02:12 +03:00
shutefan
ddbfafa684
tr: add truncate flag
2017-10-06 01:09:17 +02:00
Alex Lyon
618531b366
Merge pull request #1079 from shutefan/add-quiet-flag-to-tail
...
tail: suppress headers when --quiet flag is used
2017-10-05 14:43:12 -07:00
shutefan
bf2a591b0a
tail: suppress headers when --quiet flag is used
2017-10-05 21:25:21 +02:00
Ian Douglas Scott
1a28a48ca3
Merge branch 'master' into expr-regex
2017-10-01 10:09:06 -07:00
Yury Krivopalov
ac375d8b7d
tr: add squeeze option
2017-09-21 22:15:05 +03:00
Ian Douglas Scott
b92c6edf14
Fix cp -r test
2017-08-10 16:04:25 -07:00
Joshua Miller
7dafb649d5
implement many copy flags
...
- Refactored towards extensibility
2017-07-16 19:20:07 -05:00
Alex Lyon
7ef27acb05
Merge pull request #1046 from Matt8898/cp
...
cp: Add -r flag
2017-07-02 14:12:08 -07:00
Alex Lyon
7cfe0465ee
Update for changes in regex
2017-06-29 20:59:20 -07:00
Alex Lyon
eb75085595
Merge pull request #1035 from shinh/ln
...
ln: Fix how it selects the form
2017-06-29 20:33:33 -07:00
Matt8898
1121146de2
cp: add test for -r/--recursive
2017-06-02 13:37:31 +02:00
Shinichiro Hamaji
8f58a4a58a
Fix the windows failure
...
by not using slashes in symlink targets.
2017-04-11 12:04:55 +09:00
Shinichiro Hamaji
d556c9e398
ln: Fix how it selects the form
...
ln had a bunch of problems:
1. `ln -s target` didn't work (2nd form in help).
2. `ln -t tmp` wasn't an error. We should check if files are
empty first.
3. `ln -s file dir` didn't create dir/file.
4. `ln -s -T file dir` was removing `dir`.
5. Test cases for 4 say this is for compatibility with GNU
coreutils but I couldn't find this feature.
2017-04-09 02:32:57 +09:00
Shinichiro Hamaji
416c2b7f89
rm: Remove invalid symlinks
...
Checking with file.exists() was not good for this purpose as
Path::exists() returns false for invalid symlinks.
2017-04-09 01:33:07 +09:00
Alex Lyon
5f1cb07df8
Merge pull request #1033 from shinh/rm-dir-link
...
rm: Remove symlinks to directories without -r
2017-04-03 08:35:37 -07:00
Alex Lyon
a2de3997b9
Merge pull request #1031 from shinh/mkdir-dup
...
mkdir: Fix the behavior for existing files
2017-04-02 20:50:22 -07:00
Shinichiro Hamaji
4f6841df32
rm: Remove symlinks to directories without -r
...
Path::is_dir follows symlinks so it returns true for symlinks
to directories. Use symlink_metadata instead so you can remove
symlinks to directories without -r flag.
2017-04-01 23:45:34 +09:00
Shinichiro Hamaji
fc235e360e
mkdir: Fix the behavior for existing files
...
Currently, mkdir always succeeds for existing files and it
even modifies their mode. With this change, only mkdir -p for
existing directories will be allowed.
2017-04-01 23:43:13 +09:00
Shinichiro Hamaji
47acbb0e82
ln: Use basename when target directory is specfied
...
The following should work, but without this patch, it tries
to create the link as x/y and it fails with EEXIST.
$ mkdir -p x/y
$ ln -s -t . x/y
2017-04-01 23:22:14 +09:00
Andrew Savchyn
f5d08336fb
pinky: fix tests on MacOS
2017-03-17 19:41:46 +01:00
Jian Zeng
daba29b832
Merge pull request #1026 from evestera/cat-numlines-notrailing
...
cat: fix for numbered lines w/ no trailing newline
2017-01-23 06:39:31 -06:00
Erik Vesteraas
81996915df
cat: fix for numbered lines w/ no trailing newline
...
Make at_line_start persist between printing each file. This fixes an
issue when numbering lines in the output and one of the input files
does not have a trailing newline.
2017-01-23 03:34:47 +01:00
Anthony Deschamps
6dc1eb54c0
sort: Implement ignore-case
...
Test included.
2017-01-21 13:30:22 -05:00
Alex Lyon
e0bfbc3c23
Merge pull request #1020 from KeenS/ls-inode
...
ls: implement -i option
2017-01-10 00:34:35 -08:00
Joshua Miller
133934f7cf
add cat support for unix domain sockets
...
- adds conditional supports for unix domain sockets
- adds unix domain socket test
- adds Results to functions, removing unwraps
- uutils `cat` used to panic on broken stdout pipes (e.g. `cat
/dev/zero | head -c1`). this is fixed in this PR
- updated to exit 0 on success, and 1 if an error occurs.
- adds docstrings
- adds an error log on printing a directory
- adds categorization of other filetypes for extensible
differentiation of behaviors
- adds OutputOptions struct to replace params for extensibility
- adds correct status code on exit
2017-01-08 19:56:35 -06:00
Sunrin SHIMURA (keen)
8a51ddf6fb
ls: implement -i option
2016-12-25 14:39:29 +09:00
Alexander Batischev
67ac0c13b8
mkdir: trying to create existing dir is fine
...
Fixes #1017 .
test_mkdir_dup_dir asserted that creating an existing directory is an
error, but that's not how GNU coreutils behaves. This has been reported
in #121 , but wasn't fixed (only the `-p` case was).
2016-12-23 18:47:38 +03:00
Jian Zeng
65b46314a2
Merge pull request #1015 from Minoru/feature/846-tail-pid
...
tail: implement --pid
2016-12-22 07:24:45 -06:00
Alexander Batischev
f2166fed0a
tail: implement --pid. Closes #846 .
...
Kudos to zHz for helping out with Windows API part.
2016-12-22 01:32:09 +03:00
knight42
fdbbb08aef
tests: expand $OUT_DIR at compile time
2016-12-20 03:28:47 +08:00
Alexander Batischev
655804cff4
tests/chmod: protect umask with a mutex
...
`test_chmod_ugoa` and `test_chmod_many_options` both change umask, which
is global state. Since tests run concurrently, this might lead to
a situation where one of the tests changes umask to a value that screws
another test's checks. To prevent this, we introduce a mutex that should
be held by any test that changes umask.
Unfortunately, there's no way to hide umask behind this mutex and
enforce its usage: programmers will have to maintain the discipline
themselves.
2016-12-19 13:14:38 +03:00
Alexander Batischev
60f6f61ac9
tests/chmod: don't make assumptions about umask
...
`test_chmod_many_options` relied on user's umask not denying read access
for anyone. 022, which is the default umask for many, indeed allows read
access for everyone. I'm using 027, which disallows read for everyone
but owner and group. This made tests fail.
Now tests set and reset umask, ensuring checks are run in a reliable,
predictable environment.
2016-12-19 13:07:18 +03:00
knight42
a0ff0f623a
Temporary fix for errors in testing
...
The errors were caused by the missing env $OUT_DIR which should be set by
cargo.
[Related issue](https://github.com/rust-lang/cargo/issues/3368 ).
2016-12-08 12:36:07 +08:00
Alex Lyon
7ec754ec1b
Merge pull request #985 from knight42/fix-preserve-root
...
chgrp: fix bug in option --preserve-root
2016-11-30 02:59:19 -08:00
Michael Gehring
7122f265b0
Merge pull request #997 from wimh/stat-travis
...
stat: fix test on travis
2016-11-26 09:40:05 +01:00
Joseph Crail
45ebfdf35f
Fix test
2016-11-25 14:58:42 -05:00
Joseph Crail
78d2e8db27
Fix comment spelling
2016-11-25 14:36:56 -05:00
Joseph Crail
b3680a5baf
Fix clippy warnings
2016-11-25 14:14:46 -05:00
Wim Hueskes
e2519bf0b3
stat: fix test on travis
...
/dev/pts/ptmx seems to be the only character special file in /dev
which is not a bind-mount in the docker container run by travis.
gnu stat does not detect these mounts, so produces a different
output for /dev/zero.
2016-11-21 19:36:23 +01:00
Wim Hueskes
2550e0f3c7
od: several small changes after review
...
* update status in README.md
* enable busybox tests
Adding `CONFIG_DESKTOP` and `CONFIG_LONG_OPTS` to busybox config.
These flags also enable other tests, but those utilities are not
included in `TEST_PROGS`. (eg. awk)
* fix whitespace and small issues
* fix Eq imp for FormatWriter on nightly + beta
* fix indention in multifilereader.rs
* fix intermittent errors in tests
2016-11-09 20:26:55 +01:00
Wim Hueskes
99f70ba648
od: implement 16-bit floating point type
2016-09-03 21:47:36 +02:00
Wim Hueskes
184c4af76d
od: fix zero width user input (-w0)
2016-09-02 21:27:06 +02:00
Wim Hueskes
2f12b06ba1
od: implement --traditional
2016-09-02 21:24:29 +02:00
Wim Hueskes
26ec46835c
od: implement +size to skip bytes
2016-09-01 00:24:29 +02:00
Wim Hueskes
9e33c3a48c
od: fix command-line parsing of file names
2016-09-01 00:23:34 +02:00
Wim Hueskes
e8eab8d3e8
od: implement ascii dump
2016-09-01 00:23:11 +02:00
Wim Hueskes
cea4297fdf
od: implement --format / -t
2016-09-01 00:20:02 +02:00
Wim Hueskes
d15604b2e4
od: fix and add tests for simple format args
2016-09-01 00:19:37 +02:00
Wim Hueskes
69bde1170d
od: finish multi-byte support
2016-09-01 00:14:50 +02:00
Wim Hueskes
459db47c2b
od: implement --skip-bytes and --read-bytes
2016-09-01 00:14:25 +02:00
Wim Hueskes
bd0424fa0c
od: start with multi-byte support
2016-09-01 00:13:21 +02:00
Wim Hueskes
1164b9e118
od: fix file byte offset for non-octal types
...
removed binary offset, added no offset.
2016-09-01 00:12:59 +02:00
Wim Hueskes
24fb6d66c4
od: proper align different sized output
2016-09-01 00:12:37 +02:00
Wim Hueskes
45895be96d
od: use structs to specify possible dump formats
...
remove extra padding too - preparing proper allignment
2016-09-01 00:12:11 +02:00
Wim Hueskes
f7d7beb79b
od: implement --endian
2016-09-01 00:11:52 +02:00
Wim Hueskes
4770690823
od: suppress duplicates
2016-09-01 00:11:23 +02:00
Wim Hueskes
36b88f268d
od: enable hexadecimal output
2016-09-01 00:10:23 +02:00
Wim Hueskes
167d7d3ca9
od: implement -w (width)
2016-09-01 00:09:45 +02:00
Wim Hueskes
1b01f02e9e
od: remove trailing spaces in output
...
can't find documentation confirming this behaviour
besides it does not work correctly on all formats
see also uutils/coreutils#922
2016-09-01 00:09:25 +02:00
Wim Hueskes
104f8eb509
od: implement 64-bit floating point output
2016-09-01 00:08:41 +02:00
Wim Hueskes
f53aefa7e9
od: implement 32-bit floating point output
2016-09-01 00:08:25 +02:00
Wim Hueskes
a900b42a1f
od: refactor: readability of expected output
...
use multiple lines in source too and use unindent crate to fix spacing
2016-09-01 00:00:52 +02:00
Alex Lyon
362cabe1a6
hashsum: implement SHAKE-128 and SHAKE-256
2016-08-30 17:33:18 -07:00
knight42
f8bd9e2a1b
chown,chgrp: fix bug in option --preserve-root
2016-08-29 11:19:15 +08:00
knight42
c277793f38
touch: add test
2016-08-28 07:12:58 +08:00
nathanross
b667fce8ba
clone atpath to avoid borrow issue
2016-08-23 08:57:13 -04:00
nathanross
aa6ee03be3
tests: remove helper function boilerplate via macros
2016-08-23 08:04:02 -04:00
Nathan Ross
ae0e1c4768
Merge pull request #977 from knight42/chgrp
...
Implement chgrp
2016-08-21 06:39:54 -04:00
Knight
d2d9fcd628
chgrp: add tests
2016-08-21 17:40:46 +08:00
Knight
a4bf852207
mv: cleanup the code
2016-08-21 14:57:28 +08:00
mpkh
2981eb5112
Merge pull request #975 from nathanross/normalize-coreopts-squashed
...
DRYer code and more UX consistency through use of coreopts
2016-08-20 18:44:17 +00:00
Nathan Ross
36503a77c7
impl: use coreopts for brevity and consistent UX
2016-08-20 10:07:24 -04:00
Michael Gehring
dcefbd54c6
Merge pull request #974 from knight42/fix-bugs
...
Fix bugs of `pinky` and `who`
2016-08-20 15:16:19 +02:00
Jian Zeng
14a34b48bf
Merge pull request #969 from robertclancy/tail-f-dev-stdin-bug
...
tail: fix bug when following /dev/stdin
2016-08-20 20:25:08 +08:00
Knight
34d2224098
pinky: correct the test
2016-08-20 20:22:18 +08:00
Robert Clancy
3a0c23561e
tail: fix bug when following /dev/stdin
...
main panics when following /dev/stdin since /dev/stdin is not seekable.
Check to see if file is seekable and use unbounded_seek if so.
Also `tail -f` with no files should not follow stdin.
2016-08-20 11:47:02 +01:00
Knight
40e01b94f3
chown: use uucore::entries
2016-08-20 03:10:36 +08:00
Nathan Ross
99b39e4237
tests: normalize around chaining asserts
...
Although for some tests this adds characters
we still use them there because the
brevity cost is now worth the benefit in
terms of instant, natural-language readability
and recognizability for people not familiar
with this tests of this module or even the project
2016-08-13 17:59:21 -04:00
Nathan Ross
9d2616442a
Merge pull request #963 from alsuren/sort--merge
...
Implement sort --merge
2016-08-12 20:42:30 -04:00
David Laban
87daf9dd8d
sort: use stdout_only_fixture in tests
2016-08-13 00:42:44 +01:00
David Laban
3531c46fb8
sort --merge --unique
...
This uses Itertools' dedup() rather than Vec::dedup(). There is probably
a cleaner, more polymorphic way to do this. Suggestions welcome.
2016-08-13 00:42:44 +01:00
David Laban
e1af1520e7
sort: make compare_by honour settings.reverse
...
This allows sort --merge --reverse to work as well.
2016-08-13 00:42:43 +01:00
David Laban
8a8319a337
sort --merge works, but ignores --unique and --reverse
...
FileMerger receives Lines Iterables of the pre-sorted input files
via push_file() It implements Iterator, which yields lines from the
input files in (merged) sorted order. If the input files are not sorted,
then the behavior is undefined.
Internally, FileMerger uses a
std::collections::BinaryHeap<MergeableFile>.
MergeableFile is an internal helper that implements Ord in a way that
BinaryHeap can use (note that we want smallest-first, but BinaryHeap
returns largest first, so MergeableFile::cmp() calls reverse() on
whatever compare_by() returns.
2016-08-13 00:42:43 +01:00
Knight
f19d361013
uniq: add test for case-insensitive comparison
2016-08-13 02:04:19 +08:00
mpkh
96e8748336
Merge pull request #945 from nathanross/cut-fix-chars-ranges
...
cut: make chars mode use byte mode behavior
2016-08-12 04:56:47 +00:00
Nathan Ross
4a2532fc12
cut: chars mode has same behavior as byte mode
2016-08-11 18:49:20 -04:00
nathanross
bf2260ead6
tests/echo: complete tests excepting help, version
2016-08-11 18:00:09 -04:00
Knight
7637115e51
who: add tests
2016-08-11 15:37:39 +08:00
mpkh
588b4e2718
Merge pull request #956 from nathanross/tests-common-communicative-assertions
...
tests/common: more communicative assertion failure messages
2016-08-09 14:11:24 +04:00
mpkh
6d2bc03e47
Merge pull request #954 from nathanross/tests-basename-use-chaining
...
tests/basename: use chaining for brevity and consistency
2016-08-09 08:15:21 +04:00
Nathan Ross
ffb801c893
tests/basename: use chaining for brevity and consistency
2016-08-08 21:12:58 -04:00
Nathan Ross
5aaff02195
cut: implement zero-terminated option
...
no changes to char mode because removal
of specialized char mode behavior is pending
2016-08-08 20:15:53 -04:00
Nathan Ross
fae1e92767
tests/common: more communicative assertion failure messages
...
often when stdout is wrong, differences in stderr are
more useful for determining the cause
2016-08-08 02:54:22 -04:00
Nathan Ross
1880c46acd
Merge pull request #946 from ChrisNikkel/feature/zero_terminated
...
uniq: add -z option to allow for zero terminated input and output
2016-08-06 22:49:10 -04:00
Chris Nikkel
c0b2da7c01
uniq: add test for zero terminated input and output
2016-08-06 18:41:39 -07:00
Nathan Ross
cb6f84e3d8
tests/cut: positive testcases for feature complete
2016-08-06 17:11:54 -04:00
Knight
a23f1a13e7
Remove useless crates
2016-08-07 01:23:49 +08:00
Knight
cfc28ebc05
tests: extern crates in separated test modules
2016-08-07 01:12:19 +08:00
Knight
0d48744c0f
base64: simplified
2016-08-07 00:41:53 +08:00
Knight
b0097d0565
base32: add tests
2016-08-07 00:41:53 +08:00
Knight
833d50e192
pinky: obtain correct timestamp
2016-08-04 23:39:30 +08:00
Nathan Ross
63c17e5b42
Merge pull request #932 from alsuren/sort--stable
...
implement sort --stable
2016-08-03 06:52:39 -04:00
David Laban
6751d2c708
implement sort --stable
...
Made a new function sort_by(lines, compare_fns), which accepts a
list of compare_fns and calls lines.sort_by() with a closure that
calls each compare_fn in turn until one returns something other
than equal.
Default behavior ensures that String::cmp is the last element in the
compare_fns list (referred to as 'last resort' sorting by man sort).
Passing --stable (-s) turns this behaviour off.
Test cases provided for `sort --month` and `sort --month --stable`.
2016-08-03 07:56:40 +01:00
Nathan Ross
569cd162d3
tests: refactor conventional TestScenario usage
...
Updates to individual integration tests
- use proposed conventional approach to beginning tests
- use new convenience functions for using fixtures
- use new names for TestScenario
Updates to integration test modules
- add proposed conventional module-level functions
Updates to test/common/util.rs
- rename TestSet, and its methods, for semantic clarity
- create convenience functions for use of fixtures
- delete convenience functions obsoleted by new conventions
2016-08-01 13:42:00 -04:00
Knight
5ef26aad1c
stat: remove warning in test
2016-07-29 21:19:52 +08:00
mpkh
da0de488e6
Merge pull request #913 from knight42/pinky
...
Implement pinky
2016-07-26 13:38:53 +04:00
Knight
be20d8605d
pinky: add tests
2016-07-26 17:26:22 +08:00
Knight
6fff3a7665
pinky: cleanup the code
2016-07-26 16:44:30 +08:00
mpkh
1c0114b1b2
Merge pull request #921 from nathanross/tests-minor-cleanup
...
Tests: minor refactor for dryness of base64 and cat tests
2016-07-17 22:04:40 +04:00
Nathan Ross
be22cf2e20
tests: cat minor refactor for dryness
2016-07-17 13:39:57 -04:00
Nathan Ross
eb976214d8
tests/common: use more idiomatic asserts
2016-07-17 13:33:03 -04:00
Nathan Ross
df618d60ea
tests: base64 minor refactor for dryness
2016-07-17 12:56:11 -04:00
mpkh
5a3b792d4f
Merge pull request #919 from nathanross/addl-documentation-util
...
tests/common: document more structs and functions of util.rs
2016-07-17 16:07:13 +04:00
Nathan Ross
fa11f277ea
tests/common: document more structs and functions of util.rs
2016-07-17 05:20:33 -04:00
Nathan Ross
03e47a8658
tests: feature-complete cat integration tests
2016-07-17 04:40:18 -04:00
Nathan Ross
f22d724fc6
base64: refactor tests to be more terse
2016-07-17 02:44:16 -04:00
Jeremy Neptune
b59016cbd7
cp: fixed failing tests due to git's weirdness with files
...
Made variable names in test_cp.rs more descriptive
2016-07-15 15:29:47 -04:00
Jeremy Neptune
97bb134fc9
cp: added fixtures required for testing
2016-07-15 13:23:12 -04:00
Jeremy Neptune
567a63257a
cp: wrote tests for the -t flag, and copying to and from directories
2016-07-15 13:17:30 -04:00
Ben Eills
fa2145bb84
Allow specification of mode strings for install
...
We now accept symbolic and numeric mode strings using the
--mode or -m option for install. This is used either when
moving files into a directory, or when creating component
directories with the -d option. This feature was designed
to mirror the GNU implementation, including the possibly
quirky behaviour of `install --mode=u+wx file dir`
resulting in dir/file having exactly permissions 0300.
Extensive integration tests are included.
This chnage required a higher libc dependency.
2016-07-13 15:29:24 +02:00
Ben Eills
b15fff6269
Implement creation of component directories (-d option)
...
Tested in two integration test:
- One creating three component directories
- One trying to create an already existing directory
2016-07-13 12:56:30 +02:00
Ben Eills
823ffbd1dd
Copy rather than move files
...
Test this with one integration test. Also document functions
and add an '(unimplemented)' marker to some arguments in help.
2016-07-13 12:27:11 +02:00
Ben Eills
a5d97323db
Test for unimplemented command line arguments
...
We check if the user has given one of the (many)
not yet implemented command line arguments. Upon
catching this, we display the specific transgressor
to stderr and exit with return code 2.
This behaviour is tested in one new integration test.
2016-07-13 10:37:08 +02:00
Ben Eills
8a5719561d
Implement basic installation of file to directory
...
Bare minimum functionality of `install file dir` implemented.
Also added TODO markers in code for outstanding parameters
and split main function into smaller logical chunks.
2016-07-12 22:58:44 +02:00
Ben Eills
e72ec4a5bb
Implement skeleton install utility
...
Add install utility skeleton source, based on
mv, including the getopts setup mirroring
GNU's `man install` documentation. Also
add a single test and build system code.
2016-07-12 20:56:21 +02:00
Knight
f77c4f2b1a
chown: Fix error on mac
2016-07-04 22:50:54 +08:00
Knight
7e4a708e7c
chown: refactor
2016-07-04 22:50:22 +08:00
Knight
19676a3ca2
chown: Add tests
2016-06-22 21:39:46 +08:00
Knight
7423c5e644
chmod: fix #831
2016-06-19 22:52:56 +08:00
Heather
3a3fbc2840
Merge pull request #901 from knight42/mktemp-dir
...
Improve mktemp
2016-06-18 18:16:22 +04:00
Knight
2c91ddb56d
mktemp: add tests
2016-06-18 17:54:52 +08:00
Heather
2c65aad3cf
Merge pull request #900 from knight42/reorganize-tests
...
Reorganize tests
2016-06-17 19:45:50 +04:00
Knight
e486fefa0f
test::common::util::read_size: prolong the sleep
2016-06-17 22:45:35 +08:00
Knight
13d06ff800
dircolors: reorganize tests
2016-06-17 16:17:22 +08:00
Knight
02dc461cf8
stat: implement ' format directive & add tests
2016-06-17 16:15:50 +08:00
Heather
46c420bdf0
Merge pull request #898 from palaviv/improve-sort
...
Improve sort
2016-06-15 01:05:12 +04:00
palaviv
3fd8136423
sort: Support check
2016-06-14 22:21:30 +03:00
palaviv
3bc5a5f769
sort: support multiple input files
2016-06-14 21:25:29 +03:00
palaviv
87455f998a
sort: Version sort support
2016-06-14 20:33:09 +03:00
Knight
1695441880
Conditionally compile test modules
2016-06-12 15:04:10 +08:00
palaviv
d4ffbe0526
sort: unique option support
2016-06-11 15:46:41 +03:00
Heather
461a4e72b0
Merge pull request #893 from knight42/stat
...
Implement stat
2016-06-07 16:35:01 +04:00
Knight
48968f3d8a
stat: Add tests
2016-06-05 11:38:56 +08:00
Knight
ab17a5e544
stat: Add entries
2016-06-04 13:33:08 +08:00
Mariano Casco
abb9501894
tail: test -f with no files
2016-05-31 17:40:06 -03:00
Mariano Casco
9c584bab9d
tail: test following multiple files
...
The test_follow_multiple() test verifies that input is read upon append
on both files and that headers are printed when expected.
2016-05-30 17:34:53 -03:00
Heather
145f2efe89
Merge pull request #885 from jbcrail/refactor-tests
...
Refactor and fix tests
2016-05-23 09:35:34 +04:00
Joseph Crail
56c9ccc347
tests/common: remove prefixed chars on Windows
2016-05-22 22:54:45 -04:00
Christopher Ian Stern
e909e665f0
od: take more format options, respect their order.
2016-05-22 15:46:20 -05:00
Joseph Crail
53c62db8d6
pathchk: make Unix only
2016-05-22 16:41:36 -04:00
Joseph Crail
a7a10f357a
tests: remove scoped files
...
Scoped files were deprecated by scoped temporary directories used by the
test harness.
2016-05-22 15:31:02 -04:00
Joseph Crail
8d42cecc5f
tests: remove unused comment
2016-05-22 15:15:57 -04:00
Joseph Crail
6652e6b57d
tests: un-hardcode executable artifact
2016-05-22 15:10:46 -04:00
Joseph Crail
de7b6202a8
tests: move pathchk into new format
2016-05-22 15:10:16 -04:00
Joseph Crail
89b600628d
tests: move macros into separate module
2016-05-22 15:10:06 -04:00
Heather
bdc1ca7426
Merge pull request #882 from jbcrail/fix-windows-build
...
Improve Windows build
2016-05-22 16:02:03 +04:00
ibabushkin
d504ae18c9
pathchk implemented (see #841 ) ( #860 )
...
* Added pathchk
2016-05-22 15:59:57 +04:00
Joseph Crail
7ef4bb37a8
tests: consolidate into one crate
...
The main motivation is to move toward running those tests for a specific
target, that is, if a test won't run on Windows, then we shouldn't build
it. This was previously the default behavior and prevented a successful
run on AppVeyor.
I borrowed this pattern from the tests in the Cargo project.
2016-05-22 03:46:54 -04:00
Knight
92e95c7263
dircolors: tests added
2016-05-11 00:43:51 +08:00
Heather
1fafde8c27
Merge pull request #845 from peschkaj/master
...
Basic implementation of ls
2016-05-01 00:56:11 +04:00
Heather
f47fafb28d
Merge pull request #830 from lucaotta/fix-788
...
Fix #788
2016-05-01 00:41:15 +04:00
modelorganism
caebd834c6
od: fix failing test unable to find temp dir on linux
2016-04-29 20:17:51 -05:00
modelorganism
3f356a4190
od: take input from stdin, as well as files.
2016-04-26 23:17:00 -05:00
modelorganism
365b342792
od: create first tests for od
2016-04-25 22:06:38 -05:00
Valentin Lorentz
8ff308740c
Fix test on Rust Stable.
...
https://github.com/rust-lang/rust/issues/32801
2016-04-07 20:54:22 +02:00
Valentin Lorentz
e673a102b6
tail: Add test for tail -f
.
2016-04-03 11:47:33 +02:00
Valentin Lorentz
4ba6ea7aad
tests: Move part of UCommand::run to a new function
2016-04-03 11:46:33 +02:00
Valentin Lorentz
fe5bc47971
tests: Simplify logic of UCommand::run.
2016-04-03 11:46:33 +02:00
Nick Fitzgerald
3972c6eb53
tail: Clean up and test suffix multiplier
...
Makes `parse_size` return a `Result` where the `Err` part indicates whether
there was a parsing error, or the parse size is too big to store. Also makes the
value parsed a `u64` rather than a `usize`.
Adds unit tests for `parse_size` and integration tests using the suffix
multiplier in a number passed with the `-n` flag.
2016-04-02 14:16:11 -07:00
Valentin Lorentz
2fd7164cda
tail: Implement tail -z
.
...
This options makes tail use NULL instead of newline as a line
delimiter.
2016-04-02 12:32:33 +02:00
Luca Ottaviano
f0186271ec
tests/chmod: add test with both reference and symbolic mode
...
Only reference should be taken into account.
2016-04-02 10:30:19 +02:00
Luca Ottaviano
bbe54bc0a8
tests/chmod: add missing test for many symbolic permissions at once
2016-04-02 10:29:57 +02:00
Luca Ottaviano
2686ea75d7
chmod: handle -octal and -[rwx]
...
The main issue is that -octal or -[rwx] is interpreted as an option by
getopts.
Search the args for such a pattern, remove it before parsing and
manually handle it afterwards.
Fixes #788 .
2016-04-02 10:29:57 +02:00
Luca Ottaviano
9005ae7dbf
tests/chmod: refactor tests to only create reference file once
2016-04-02 10:29:35 +02:00
Joseph Crail
fb0e6a9dee
tests/sort: simplify input to helper
2016-03-29 00:58:24 -04:00
Joseph Crail
6b129887d6
tests/sort: add test for default mode
2016-03-29 00:58:24 -04:00
Joseph Crail
b290c10845
tests/sort: refactor to match other tests
...
Instead of using numerals to denote individual cases, I used descriptive
case names. I also changed the extension for the expected output fixture
to match other tests.
I removed one redundant test and another unnecessary helper function.
2016-03-29 00:58:24 -04:00
Joseph Crail
91df9b14da
tests: remove unused method
2016-03-28 23:25:50 -04:00
Joseph Crail
7d103a0a64
tests: fix whitespace
2016-03-28 23:25:26 -04:00