forked from extern/nushell
ecc820a8c1
# Description Previously, `par-each` acted like a `flatmap`: first mapping the data, then applying a `flatten`. This is unlike `each`, which just maps the data. Now `par-each` works like `each` in this regard, leaving nested data unflattened. Fixes #8497 # User-Facing Changes Previously: `[1 2 3] | par-each {|e| [$e, $e] }` --> `[1,1,2,2,3,3]` Now: `[1 2 3] | par-each {|e| [$e, $e] }` --> `[[1,1],[2,2],[3,3]]` # Tests This adds one test that verifies the lack of flattening for `par-each`.
13 lines
333 B
Rust
13 lines
333 B
Rust
use nu_test_support::{nu, pipeline};
|
|
|
|
#[test]
|
|
fn par_each_does_not_flatten_nested_structures() {
|
|
// This is a regression test for issue #8497
|
|
let actual = nu!(
|
|
cwd: ".", pipeline(
|
|
r#"[1 2 3] | par-each { |it| [$it, $it] } | sort | to json --raw"#
|
|
));
|
|
|
|
assert_eq!(actual.out, "[[1,1],[2,2],[3,3]]");
|
|
}
|