2014-05-17 13:47:44 +00:00
|
|
|
use std::io::process::Command;
|
2014-02-27 03:35:50 +00:00
|
|
|
use std::str;
|
2014-02-05 19:46:28 +00:00
|
|
|
|
2014-07-21 17:08:19 +00:00
|
|
|
static PROGNAME: &'static str = "./seq";
|
|
|
|
|
2014-02-05 19:46:28 +00:00
|
|
|
#[test]
|
|
|
|
fn test_count_up() {
|
2014-07-21 17:08:19 +00:00
|
|
|
let p = Command::new(PROGNAME).args(["10"]).output().unwrap();
|
2014-05-17 13:47:44 +00:00
|
|
|
let out = str::from_utf8(p.output.as_slice()).unwrap();
|
|
|
|
assert_eq!(out, "1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n");
|
2014-02-05 19:46:28 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
#[test]
|
|
|
|
fn test_count_down() {
|
2014-07-21 17:08:19 +00:00
|
|
|
let p = Command::new(PROGNAME).args(["--", "5", "-1", "1"]).output().unwrap();
|
2014-05-17 13:47:44 +00:00
|
|
|
let out = str::from_utf8(p.output.as_slice()).unwrap();
|
|
|
|
assert_eq!(out, "5\n4\n3\n2\n1\n");
|
2014-02-05 19:46:28 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
#[test]
|
|
|
|
fn test_separator_and_terminator() {
|
2014-07-21 17:08:19 +00:00
|
|
|
let p = Command::new(PROGNAME).args(["-s", ",", "-t", "!", "2", "6"]).output().unwrap();
|
2014-05-17 13:47:44 +00:00
|
|
|
let out = str::from_utf8(p.output.as_slice()).unwrap();
|
|
|
|
assert_eq!(out, "2,3,4,5,6!");
|
2014-02-05 19:46:28 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
#[test]
|
|
|
|
fn test_equalize_widths() {
|
2014-07-21 17:08:19 +00:00
|
|
|
let p = Command::new(PROGNAME).args(["-w", "5", "10"]).output().unwrap();
|
2014-05-17 13:47:44 +00:00
|
|
|
let out = str::from_utf8(p.output.as_slice()).unwrap();
|
|
|
|
assert_eq!(out, "05\n06\n07\n08\n09\n10\n");
|
2014-02-05 19:46:28 +00:00
|
|
|
}
|