nushell/crates/nu-command/tests/format_conversions/nuon.rs
JT 10364c4f22
don't use table compaction in to nuon if not a table (#4671)
* don't use table compaction in to nuon if not a table

* Make a proper nuon conversion test

* more nuon tests
2022-02-28 07:10:02 -05:00

104 lines
2 KiB
Rust

use nu_test_support::{nu, pipeline};
#[test]
fn to_nuon_correct_compaction() {
let actual = nu!(
cwd: "tests/fixtures/formats", pipeline(
r#"
open appveyor.yml
| to nuon
| str length
| $in > 500
"#
));
assert_eq!(actual.out, "true");
}
#[test]
fn to_nuon_list_of_numbers() {
let actual = nu!(
cwd: "tests/fixtures/formats", pipeline(
r#"
[1, 2, 3, 4]
| to nuon
| from nuon
| $in == [1, 2, 3, 4]
"#
));
assert_eq!(actual.out, "true");
}
#[test]
fn to_nuon_list_of_strings() {
let actual = nu!(
cwd: "tests/fixtures/formats", pipeline(
r#"
[abc, xyz, def]
| to nuon
| from nuon
| $in == [abc, xyz, def]
"#
));
assert_eq!(actual.out, "true");
}
#[test]
fn to_nuon_table() {
let actual = nu!(
cwd: "tests/fixtures/formats", pipeline(
r#"
[[my, columns]; [abc, xyz], [def, ijk]]
| to nuon
| from nuon
| $in == [[my, columns]; [abc, xyz], [def, ijk]]
"#
));
assert_eq!(actual.out, "true");
}
#[test]
fn to_nuon_bool() {
let actual = nu!(
cwd: "tests/fixtures/formats", pipeline(
r#"
$false
| to nuon
| from nuon
"#
));
assert_eq!(actual.out, "false");
}
#[test]
fn to_nuon_negative_int() {
let actual = nu!(
cwd: "tests/fixtures/formats", pipeline(
r#"
-1
| to nuon
| from nuon
"#
));
assert_eq!(actual.out, "-1");
}
#[test]
fn to_nuon_records() {
let actual = nu!(
cwd: "tests/fixtures/formats", pipeline(
r#"
{name: "foo bar", age: 100, height: 10}
| to nuon
| from nuon
| $in == {name: "foo bar", age: 100, height: 10}
"#
));
assert_eq!(actual.out, "true");
}