mirror of
https://github.com/nushell/nushell.git
synced 2024-11-22 16:33:37 +01:00
c4dca5fe03
This PR should close #7147 # Description Merged src/tests into /tests to produce a single binary. ![image](https://github.com/nushell/nushell/assets/94604837/84726469-d447-4619-b6d1-2d1415d0f42e) # User-Facing Changes No user facing changes # Tests + Formatting Moved tests. Tollkit check pr pass. # After Submitting --------- Co-authored-by: Ian Manske <ian.manske@pm.me>
171 lines
4.0 KiB
Rust
171 lines
4.0 KiB
Rust
use crate::repl::tests::{fail_test, run_test, run_test_std, TestResult};
|
|
|
|
#[test]
|
|
fn mutate_nu_config() -> TestResult {
|
|
run_test_std(
|
|
r#"$env.config.footer_mode = 30; $env.config.footer_mode"#,
|
|
"30",
|
|
)
|
|
}
|
|
|
|
#[test]
|
|
fn mutate_nu_config_nested_ls() -> TestResult {
|
|
run_test_std(
|
|
r#"$env.config.ls.clickable_links = false; $env.config.ls.clickable_links"#,
|
|
"false",
|
|
)
|
|
}
|
|
|
|
#[test]
|
|
fn mutate_nu_config_nested_table() -> TestResult {
|
|
run_test_std(
|
|
r#"
|
|
$env.config.table.trim.methodology = wrapping
|
|
$env.config.table.trim.wrapping_try_keep_words = false
|
|
$env.config.table.trim.wrapping_try_keep_words
|
|
"#,
|
|
"false",
|
|
)
|
|
}
|
|
|
|
#[test]
|
|
fn mutate_nu_config_nested_menu() -> TestResult {
|
|
run_test_std(
|
|
r#"
|
|
$env.config.menus = [
|
|
{
|
|
name: menu
|
|
only_buffer_difference: true
|
|
marker: "M "
|
|
type: {}
|
|
style: {}
|
|
}
|
|
];
|
|
$env.config.menus.0.type.columns = 3;
|
|
$env.config.menus.0.type.columns
|
|
"#,
|
|
"3",
|
|
)
|
|
}
|
|
|
|
#[test]
|
|
fn mutate_nu_config_nested_keybindings() -> TestResult {
|
|
run_test_std(
|
|
r#"
|
|
$env.config.keybindings = [
|
|
{
|
|
name: completion_previous
|
|
modifier: shift
|
|
keycode: backtab
|
|
mode: [ vi_normal, vi_insert ]
|
|
event: { send: menuprevious }
|
|
}
|
|
];
|
|
$env.config.keybindings.0.keycode = 'char_x';
|
|
$env.config.keybindings.0.keycode
|
|
"#,
|
|
"char_x",
|
|
)
|
|
}
|
|
|
|
#[test]
|
|
fn mutate_nu_config_nested_color_nested() -> TestResult {
|
|
run_test_std(
|
|
r#"$env.config.color_config.shape_flag = 'cyan'; $env.config.color_config.shape_flag"#,
|
|
"cyan",
|
|
)
|
|
}
|
|
|
|
#[test]
|
|
fn mutate_nu_config_nested_completion() -> TestResult {
|
|
run_test_std(
|
|
r#"$env.config.completions.external.enable = false; $env.config.completions.external.enable"#,
|
|
"false",
|
|
)
|
|
}
|
|
|
|
#[test]
|
|
fn mutate_nu_config_nested_history() -> TestResult {
|
|
run_test_std(
|
|
r#"$env.config.history.max_size = 100; $env.config.history.max_size"#,
|
|
"100",
|
|
)
|
|
}
|
|
|
|
#[test]
|
|
fn mutate_nu_config_nested_filesize() -> TestResult {
|
|
run_test_std(
|
|
r#"$env.config.filesize.format = 'kb'; $env.config.filesize.format"#,
|
|
"kb",
|
|
)
|
|
}
|
|
|
|
#[test]
|
|
fn mutate_nu_config_plugin() -> TestResult {
|
|
run_test_std(
|
|
r#"
|
|
$env.config.plugins = {
|
|
config: {
|
|
key1: value
|
|
key2: other
|
|
}
|
|
};
|
|
$env.config.plugins.config.key1 = 'updated'
|
|
$env.config.plugins.config.key1
|
|
"#,
|
|
"updated",
|
|
)
|
|
}
|
|
|
|
#[test]
|
|
fn reject_nu_config_plugin_non_record() -> TestResult {
|
|
fail_test(r#"$env.config.plugins = 5"#, "should be a record")
|
|
}
|
|
|
|
#[test]
|
|
fn mutate_nu_config_plugin_gc_default_enabled() -> TestResult {
|
|
run_test(
|
|
r#"
|
|
$env.config.plugin_gc.default.enabled = false
|
|
$env.config.plugin_gc.default.enabled
|
|
"#,
|
|
"false",
|
|
)
|
|
}
|
|
|
|
#[test]
|
|
fn mutate_nu_config_plugin_gc_default_stop_after() -> TestResult {
|
|
run_test(
|
|
r#"
|
|
$env.config.plugin_gc.default.stop_after = 20sec
|
|
$env.config.plugin_gc.default.stop_after
|
|
"#,
|
|
"20sec",
|
|
)
|
|
}
|
|
|
|
#[test]
|
|
fn mutate_nu_config_plugin_gc_default_stop_after_negative() -> TestResult {
|
|
fail_test(
|
|
r#"
|
|
$env.config.plugin_gc.default.stop_after = -1sec
|
|
$env.config.plugin_gc.default.stop_after
|
|
"#,
|
|
"must not be negative",
|
|
)
|
|
}
|
|
|
|
#[test]
|
|
fn mutate_nu_config_plugin_gc_plugins() -> TestResult {
|
|
run_test(
|
|
r#"
|
|
$env.config.plugin_gc.plugins.inc = {
|
|
enabled: true
|
|
stop_after: 0sec
|
|
}
|
|
$env.config.plugin_gc.plugins.inc.stop_after
|
|
"#,
|
|
"0sec",
|
|
)
|
|
}
|