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
Joseph Crail
1fecba3226
tests/{readlink, realpath}: fix tests on Windows
...
I fixed the tests that assumed paths used a Unix directory separator.
2016-03-28 23:24:40 -04:00
Heather
c954b01aa3
Merge pull request #854 from fitzgen/tests-for-tail-bytes
...
Miscellaneous `tail` related commits
2016-03-28 09:05:48 +04:00
Nick Fitzgerald
0d281cf886
tests/tail: Test when -n
is larger than the number of lines in the file
2016-03-27 14:42:45 -07:00
Nick Fitzgerald
9a5209a7a4
tests/tail: Rename INPUT
to FOOBAR_TXT
as there are more than one inputs
2016-03-27 14:41:56 -07:00
Nick Fitzgerald
0bc05e2dcf
tests/tail: Add a test for tail'ing large files in bytes mode
2016-03-27 14:34:59 -07:00
Nick Fitzgerald
1be7d31d5a
tests/tail: Refactor the test_single_big_args
test to use ScopedFile
2016-03-27 14:34:59 -07:00
Nick Fitzgerald
a629bb3076
tests: Create the ScopedFile
type for temporary files in tests
...
This commit adds the `ScopedFile` type, which wraps and derefs to a `File`. When
a `ScopedFile` is dropped, it removes the underlying file from the
filesystem. This is useful for temporary, generated files in tests.
2016-03-27 14:34:59 -07:00
Joseph Crail
ec14be84aa
tests/pwd: fix broken Windows test
...
Due to canonicalize()'s use of GetFinalPathNameByHandleW() on Windows,
the resolved path starts with '\\?\' to extend the limit of a given path
to 32,767 wide characters.
To address this issue, we remove this prepended string if available.
2016-03-27 03:28:55 -04:00
Nick Fitzgerald
9824bc4db3
Add a test for tail -c <BYTES>
from stdin
2016-03-26 11:56:00 -07:00
Nick Fitzgerald
445233389e
Add a test for tail -c <BYTES> <FILE>
2016-03-26 11:52:10 -07:00
Jeremiah Peschka
0bb0c40c36
Adding tests for ls. Corrected issue with ls on the present directory throwing panic!()
2016-03-25 14:25:52 -07:00
Joseph Crail
faedb2dd2e
tests/sort: fix flag for human numeric test
2016-03-25 16:55:58 -04:00
Joseph Crail
55c0b1786f
tests/sort: add tests for month sort
2016-03-25 16:55:58 -04:00
Nick Fitzgerald
d7974c56a0
tests/tail: Add a test for tail'ing large files
...
This tests both large files and iterating backwards through the file when we
need to search backwards further than our BUFFER_SIZE.
2016-03-21 07:51:48 -07:00
Nick Fitzgerald
161f96dc8c
tests/tail: Rename tail test fixture contents to be easier to read
...
The repetition of "foo" and "bar" made for difficult-to-read assertion failures
when hacking on `tail`. I think that having each line have unique contents makes
it a bit easier to parse.
2016-03-21 07:51:42 -07:00
Luca Ottaviano
5dc0a55630
chmod: fix reference option
...
Reference option must have a file path.
Fix C interface using CString.
Better error message if the file doesn't exist.
2016-03-10 20:34:49 +01:00
Chirag B. Jadwani
676e3718c3
uniq: add tests
2016-02-29 11:07:16 +05:30
Nathan Ross
d1e785c1dc
comm: additional tests and status/stderr checking for existing tests
2016-02-22 09:59:06 -05:00
Heather
267a7d043a
Merge pull request #821 from ebfe/cat-test
...
tests/cat: --squeeze-blank test
2016-02-22 09:24:32 +04:00
Nathan Ross
5e764ecf6e
more ergonomic testing
2016-02-18 13:24:36 -05:00
Michael Gehring
c0d91d225f
tests/cat: --squeeze-blank test
2016-02-17 08:06:32 +01:00
Nathan Ross
e44f29a020
basename: tests for bad inputs
2016-02-16 16:47:09 -05:00
Nathan Ross
8190c30a85
basename: tests for remaining options
2016-02-16 16:47:09 -05:00
Nathan Ross
21cee1556b
basename: in tests, assert error-free in usage
2016-02-16 16:47:09 -05:00
Nathan Ross
962fcd7183
base64: tests for incorrect wrap args
2016-02-16 16:47:09 -05:00
Nathan Ross
2bad30b2b0
base64: in tests, test both option forms
2016-02-16 02:20:09 -05:00
Nathan Ross
e32efaa5a1
allow feature-gated integration tests for unimplemented functionality
2016-02-15 23:48:37 -05:00
Nathan Ross
5f88dfe12b
printf: rustfmt pass
2016-02-15 00:48:08 -05:00
Nathan Ross
0892ad3cde
printf: add (spare C99 hex floats)
2016-02-15 00:10:30 -05:00
Michael Gehring
1760f2937b
Merge pull request #814 from shalupov/mark-fixtures-data-as-binary
...
.gitattributes: treat tests/fixtures/** as binary data
2016-02-14 19:21:18 +01:00
Leonid Shalupov
1b48438b44
.gitattributes: treat tests/fixtures/** as binary data to prevent CRLF convertion by git under Windows
2016-02-14 17:09:47 +01:00
Leonid Shalupov
1ae82193f0
tests: do not remove %SYSTEMROOT% from environment variables, it's required to initialize crypto provider (which is required for std::rand)
2016-02-14 16:34:39 +01:00
Michael Gehring
162e21a418
tests/mktemp: fix build on nightly
2016-02-14 03:31:10 +01:00
Michael Gehring
033dd3a0ae
tests/chmod: fix tests on nightly
2016-01-23 05:06:02 +01:00
Arcterus
49d0815588
tests: fix tests that broke when using a symlinked /tmp
2016-01-10 02:50:39 -08:00
Arcterus
d9ad0b185a
tests: fix tests that were failing on OS X
2016-01-10 00:09:05 -08:00
Arcterus
ee669ab55b
chmod: rewrite mode parser
2016-01-04 20:00:34 -08:00
Michael Gehring
1a78be7e37
tests/mktemp: remove unused import
2016-01-04 18:43:03 +01:00
Michael Gehring
73cd23ca71
Merge pull request #781 from KeenS/mktemp
...
Mktemp
2016-01-04 18:40:08 +01:00
Michael Gehring
2bc3001a3a
tests/chmod: disable failing tests
...
See #788
2016-01-04 17:58:15 +01:00
Michael Gehring
83de52f66b
tests: add some basic chmod tests
2016-01-04 17:28:27 +01:00
Sunrin SHIMURA (keen)
881e0892d2
[mktemp] use new API env
2016-01-04 02:11:15 +09:00
Sunrin SHIMURA (keen)
0d4e67929b
Merge remote-tracking branch 'origin/master' into mktemp
2016-01-04 01:58:38 +09:00
Michael Gehring
830ca8c04d
tests: add UCommand::env()
2016-01-03 14:24:15 +01:00
Sunrin SHIMURA (keen)
58d1d66d16
[mktemp] implement mktemp
2016-01-03 19:10:47 +09:00
Michael Gehring
b8ee9424c8
tests/touch: fix tests
...
Fixes #782
2016-01-02 09:55:20 +01:00
Nathan Ross
83295f1e08
appveyor and windows testing tooling updates
2015-12-23 22:59:04 -05:00
Heather
9339bbe50d
Merge pull request #762 from ebfe/expr-and-or
...
expr: implement '|' and '&'
2015-12-22 17:20:58 +04:00
Heather
88710fa01d
Merge pull request #760 from ebfe/disable-stdbuf
...
tests/stdbuf: disable on non-linux os
2015-12-22 17:20:24 +04:00
Michael Gehring
d4e0ee0cde
expr: add basic tests
2015-12-22 14:10:43 +01:00
Michael Gehring
1fc698a17f
tests/stdbuf: disable on non-linux os
2015-12-22 12:55:51 +01:00
Michael Gehring
ec1ec84f0c
tests/env: don't assume vars are ordered
2015-12-22 12:44:05 +01:00
Michael Gehring
cb4f6a2978
dirname: add some tests
2015-12-21 11:17:37 +01:00
Joseph Crail
cf399faad2
Add initial tests for default values
2015-12-12 16:24:48 -05:00
Michael Gehring
2f4ae615ed
comm: add basic tests
2015-11-28 20:51:11 +01:00
Michael Gehring
9365e100d9
Merge pull request #723 from jbcrail/cleanup
...
Fix whitespace, unused file, and warnings.
2015-11-25 10:20:46 +01:00
Joseph Crail
80f83ce15d
Remove unused file.
2015-11-25 04:05:12 -05:00
Michael Gehring
e7398b3ca7
sum: fix sysv_stdin testcase
2015-11-25 09:58:58 +01:00
Joseph Crail
ca1074201f
Split utility files into separate library.
...
Everything in src/common has been moved to src/uucore. This is defined
as a Cargo library, instead of directly included. This gives us
flexibility to make the library an external crate in the future.
Fixes #717 .
2015-11-24 22:20:27 -05:00
Nathan Ross
a21c54e2cd
rewrite tests for cargo compat, decoupled directory, output handling
2015-11-23 02:04:15 -05:00