mirror of
https://github.com/nushell/nushell.git
synced 2024-11-22 16:33:37 +01:00
1a864ea6f4
- Replaced `start`/`end` with span. - Fixed standard library. - Add `help` option. - Add a couple more errors for invalid record types. Resolve #10914 # Description # User-Facing Changes - **BREAKING CHANGE:** `error make` now takes in `span` instead of `start`/`end`: ```Nushell error make { msg: "Message" label: { text: "Label text" span: (metadata $var).span } } ``` - `error make` now has a `help` argument for custom error help.
42 lines
948 B
Rust
42 lines
948 B
Rust
use nu_test_support::nu;
|
|
|
|
#[test]
|
|
fn error_label_works() {
|
|
let actual = nu!("error make {msg:foo label:{text:unseen}}");
|
|
|
|
assert!(actual.err.contains("unseen"));
|
|
assert!(actual.err.contains("╰──"));
|
|
}
|
|
|
|
#[test]
|
|
fn no_span_if_unspanned() {
|
|
let actual = nu!("error make -u {msg:foo label:{text:unseen}}");
|
|
|
|
assert!(!actual.err.contains("unseen"));
|
|
}
|
|
|
|
#[test]
|
|
fn error_start_bigger_than_end_should_fail() {
|
|
let actual = nu!("
|
|
error make {
|
|
msg: foo
|
|
label: {
|
|
text: bar
|
|
span: {start: 456 end: 123}
|
|
}
|
|
}
|
|
");
|
|
|
|
assert!(!actual.err.contains("invalid error format"));
|
|
assert!(!actual
|
|
.err
|
|
.contains("`$.label.start` should be smaller than `$.label.end`"));
|
|
}
|
|
|
|
#[test]
|
|
fn check_help_line() {
|
|
let actual = nu!("error make {msg:foo help: `Custom help line`}");
|
|
|
|
assert!(actual.err.contains("Custom help line"));
|
|
}
|