nushell/crates/nu-command/tests/commands/lines.rs

64 lines
1.3 KiB
Rust
Raw Normal View History

2019-12-17 19:54:39 +01:00
use nu_test_support::{nu, pipeline};
#[test]
fn lines() {
let actual = nu!(
cwd: "tests/fixtures/formats", pipeline(
r#"
open cargo_sample.toml -r
| lines
| skip while $it != "[dependencies]"
| skip 1
| first
2020-05-24 08:41:30 +02:00
| split column "="
| get column1.0
| str trim
"#
));
assert_eq!(actual.out, "rustyline");
}
2020-07-05 02:20:58 +02:00
#[test]
fn lines_proper_buffering() {
let actual = nu!(
cwd: "tests/fixtures/formats", pipeline(
r#"
open lines_test.txt -r
| lines
| str length
2022-02-04 18:34:01 +01:00
| to json -r
2020-07-05 02:20:58 +02:00
"#
));
2021-01-08 02:45:25 +01:00
assert_eq!(actual.out, "[8193,3]");
2020-07-05 02:20:58 +02:00
}
#[test]
fn lines_multi_value_split() {
let actual = nu!(
cwd: "tests/fixtures/formats", pipeline(
r#"
open sample-simple.json
| get first second
| lines
| length
"#
));
2022-02-04 18:34:01 +01:00
assert_eq!(actual.out, "6");
}
/// test whether this handles CRLF and LF in the same input
#[test]
fn lines_mixed_line_endings() {
let actual = nu!(
cwd: "tests/fixtures/formats", pipeline(
r#"
"foo\nbar\r\nquux" | lines | length
"#
));
assert_eq!(actual.out, "3");
}