diff options
Diffstat (limited to 'tests/integration/fmt_tests.rs')
-rw-r--r-- | tests/integration/fmt_tests.rs | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/integration/fmt_tests.rs b/tests/integration/fmt_tests.rs index 6588ae10a..417454888 100644 --- a/tests/integration/fmt_tests.rs +++ b/tests/integration/fmt_tests.rs @@ -1,8 +1,10 @@ // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license. +use deno_core::serde_json::json; use test_util as util; use test_util::itest; use util::assert_contains; +use util::assert_not_contains; use util::PathRef; use util::TestContext; use util::TestContextBuilder; @@ -351,3 +353,28 @@ fn fmt_with_glob_config_and_flags() { assert_contains!(output, "Found 2 not formatted files in 2 files"); } + +#[test] +fn opt_out_top_level_exclude_via_fmt_unexclude() { + let context = TestContextBuilder::new().use_temp_cwd().build(); + let temp_dir = context.temp_dir().path(); + temp_dir.join("deno.json").write_json(&json!({ + "fmt": { + "exclude": [ "!excluded.ts" ] + }, + "exclude": [ "excluded.ts", "actually_excluded.ts" ] + })); + + temp_dir.join("main.ts").write("const a = 1;"); + temp_dir.join("excluded.ts").write("const a = 2;"); + temp_dir + .join("actually_excluded.ts") + .write("const a = 2;"); + + let output = context.new_command().arg("fmt").run(); + output.assert_exit_code(0); + let output = output.combined_output(); + assert_contains!(output, "main.ts"); + assert_contains!(output, "excluded.ts"); + assert_not_contains!(output, "actually_excluded.ts"); +} |