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