mirror of
https://github.com/RGBCube/uutils-coreutils
synced 2025-07-29 12:07:46 +00:00
Add initial tests for head.
This commit is contained in:
parent
1580daea7c
commit
133a6c5563
6 changed files with 102 additions and 0 deletions
1
Makefile
1
Makefile
|
@ -170,6 +170,7 @@ TEST_PROGS := \
|
||||||
false \
|
false \
|
||||||
fold \
|
fold \
|
||||||
hashsum \
|
hashsum \
|
||||||
|
head \
|
||||||
mkdir \
|
mkdir \
|
||||||
mv \
|
mv \
|
||||||
nl \
|
nl \
|
||||||
|
|
24
test/fixtures/head/lorem_ipsum.txt
vendored
Normal file
24
test/fixtures/head/lorem_ipsum.txt
vendored
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
Lorem ipsum dolor sit amet,
|
||||||
|
consectetur adipiscing elit.
|
||||||
|
Nunc interdum suscipit sem vel ornare.
|
||||||
|
Proin euismod,
|
||||||
|
justo sed mollis dictum,
|
||||||
|
eros urna ultricies augue,
|
||||||
|
eu pharetra mi ex id ante.
|
||||||
|
Duis convallis porttitor aliquam.
|
||||||
|
Nunc vitae tincidunt ex.
|
||||||
|
Suspendisse iaculis ligula ac diam consectetur lacinia.
|
||||||
|
Donec vel velit dui.
|
||||||
|
Etiam fringilla,
|
||||||
|
dolor quis tempor vehicula,
|
||||||
|
lacus turpis bibendum velit,
|
||||||
|
et pellentesque elit odio a magna.
|
||||||
|
Cras vulputate tortor non libero vehicula euismod.
|
||||||
|
Aliquam tincidunt nisl eget enim cursus,
|
||||||
|
viverra sagittis magna commodo.
|
||||||
|
Cras rhoncus egestas leo nec blandit.
|
||||||
|
Suspendisse potenti.
|
||||||
|
Etiam ullamcorper leo vel lacus vestibulum,
|
||||||
|
cursus semper eros efficitur.
|
||||||
|
In hac habitasse platea dictumst.
|
||||||
|
Phasellus scelerisque vehicula fringilla.
|
1
test/fixtures/head/lorem_ipsum_1_line.expected
vendored
Normal file
1
test/fixtures/head/lorem_ipsum_1_line.expected
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
Lorem ipsum dolor sit amet,
|
1
test/fixtures/head/lorem_ipsum_5_chars.expected
vendored
Normal file
1
test/fixtures/head/lorem_ipsum_5_chars.expected
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
Lorem
|
10
test/fixtures/head/lorem_ipsum_default.expected
vendored
Normal file
10
test/fixtures/head/lorem_ipsum_default.expected
vendored
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
Lorem ipsum dolor sit amet,
|
||||||
|
consectetur adipiscing elit.
|
||||||
|
Nunc interdum suscipit sem vel ornare.
|
||||||
|
Proin euismod,
|
||||||
|
justo sed mollis dictum,
|
||||||
|
eros urna ultricies augue,
|
||||||
|
eu pharetra mi ex id ante.
|
||||||
|
Duis convallis porttitor aliquam.
|
||||||
|
Nunc vitae tincidunt ex.
|
||||||
|
Suspendisse iaculis ligula ac diam consectetur lacinia.
|
65
test/head.rs
Normal file
65
test/head.rs
Normal file
|
@ -0,0 +1,65 @@
|
||||||
|
use std::process::Command;
|
||||||
|
use util::*;
|
||||||
|
|
||||||
|
static PROGNAME: &'static str = "./head";
|
||||||
|
static INPUT: &'static str = "lorem_ipsum.txt";
|
||||||
|
|
||||||
|
#[path = "common/util.rs"]
|
||||||
|
#[macro_use]
|
||||||
|
mod util;
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_stdin_default() {
|
||||||
|
let mut cmd = Command::new(PROGNAME);
|
||||||
|
let result = run_piped_stdin(&mut cmd, get_file_contents(INPUT));
|
||||||
|
assert_eq!(result.stdout, get_file_contents("lorem_ipsum_default.expected"));
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_stdin_1_line_obsolete() {
|
||||||
|
let mut cmd = Command::new(PROGNAME);
|
||||||
|
let result = run_piped_stdin(&mut cmd.args(&["-1"]), get_file_contents(INPUT));
|
||||||
|
assert_eq!(result.stdout, get_file_contents("lorem_ipsum_1_line.expected"));
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_stdin_1_line() {
|
||||||
|
let mut cmd = Command::new(PROGNAME);
|
||||||
|
let result = run_piped_stdin(&mut cmd.args(&["-n", "1"]), get_file_contents(INPUT));
|
||||||
|
assert_eq!(result.stdout, get_file_contents("lorem_ipsum_1_line.expected"));
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_stdin_5_chars() {
|
||||||
|
let mut cmd = Command::new(PROGNAME);
|
||||||
|
let result = run_piped_stdin(&mut cmd.args(&["-c", "5"]), get_file_contents(INPUT));
|
||||||
|
assert_eq!(result.stdout, get_file_contents("lorem_ipsum_5_chars.expected"));
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_single_default() {
|
||||||
|
let mut cmd = Command::new(PROGNAME);
|
||||||
|
let result = run(&mut cmd.arg(INPUT));
|
||||||
|
assert_eq!(result.stdout, get_file_contents("lorem_ipsum_default.expected"));
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_single_1_line_obsolete() {
|
||||||
|
let mut cmd = Command::new(PROGNAME);
|
||||||
|
let result = run(&mut cmd.args(&["-1", INPUT]));
|
||||||
|
assert_eq!(result.stdout, get_file_contents("lorem_ipsum_1_line.expected"));
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_single_1_line() {
|
||||||
|
let mut cmd = Command::new(PROGNAME);
|
||||||
|
let result = run(&mut cmd.args(&["-n", "1", INPUT]));
|
||||||
|
assert_eq!(result.stdout, get_file_contents("lorem_ipsum_1_line.expected"));
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_single_5_chars() {
|
||||||
|
let mut cmd = Command::new(PROGNAME);
|
||||||
|
let result = run(&mut cmd.args(&["-c", "5", INPUT]));
|
||||||
|
assert_eq!(result.stdout, get_file_contents("lorem_ipsum_5_chars.expected"));
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue