diff --git a/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition01-input.svelte b/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition01-input.svelte new file mode 100644 index 00000000..0cbde574 --- /dev/null +++ b/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition01-input.svelte @@ -0,0 +1,10 @@ + diff --git a/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition01-output.json b/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition01-output.json new file mode 100644 index 00000000..e998aae6 --- /dev/null +++ b/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition01-output.json @@ -0,0 +1,16 @@ +[ + { + "ruleId": "@typescript-eslint/no-unnecessary-condition", + "code": "foo == null", + "line": 4, + "column": 15, + "message": "Unnecessary conditional, both sides of the expression are literal values." + }, + { + "ruleId": "@typescript-eslint/no-unnecessary-condition", + "code": "bar == null", + "line": 8, + "column": 13, + "message": "Unnecessary conditional, both sides of the expression are literal values." + } +] \ No newline at end of file diff --git a/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition01-setup.ts b/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition01-setup.ts new file mode 100644 index 00000000..92947a97 --- /dev/null +++ b/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition01-setup.ts @@ -0,0 +1,24 @@ +/* eslint eslint-comments/require-description: 0, @typescript-eslint/explicit-module-boundary-types: 0 */ +import type { Linter } from "eslint"; +import { BASIC_PARSER_OPTIONS } from "../../../src/parser/test-utils"; +import { rules } from "@typescript-eslint/eslint-plugin"; +export function setupLinter(linter: Linter) { + linter.defineRule( + "@typescript-eslint/no-unnecessary-condition", + rules["no-unnecessary-condition"] as never + ); +} + +export function getConfig() { + return { + parser: "svelte-eslint-parser", + parserOptions: BASIC_PARSER_OPTIONS, + rules: { + "@typescript-eslint/no-unnecessary-condition": "error", + }, + env: { + browser: true, + es2021: true, + }, + }; +} diff --git a/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition02-input.svelte b/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition02-input.svelte new file mode 100644 index 00000000..97e29e59 --- /dev/null +++ b/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition02-input.svelte @@ -0,0 +1,11 @@ + diff --git a/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition02-output.json b/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition02-output.json new file mode 100644 index 00000000..cb04666c --- /dev/null +++ b/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition02-output.json @@ -0,0 +1,16 @@ +[ + { + "ruleId": "@typescript-eslint/no-unnecessary-condition", + "code": "foo", + "line": 5, + "column": 15, + "message": "Unnecessary conditional, left-hand side of `??` operator is always `null` or `undefined`." + }, + { + "ruleId": "@typescript-eslint/no-unnecessary-condition", + "code": "baz", + "line": 9, + "column": 13, + "message": "Unnecessary conditional, left-hand side of `??` operator is always `null` or `undefined`." + } +] \ No newline at end of file diff --git a/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition02-setup.ts b/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition02-setup.ts new file mode 100644 index 00000000..3ba264cf --- /dev/null +++ b/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition02-setup.ts @@ -0,0 +1,2 @@ +/* eslint eslint-comments/require-description: 0, @typescript-eslint/explicit-module-boundary-types: 0 */ +export * from "./no-unnecessary-condition01-setup"; diff --git a/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition03-input.svelte b/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition03-input.svelte new file mode 100644 index 00000000..42598ff2 --- /dev/null +++ b/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition03-input.svelte @@ -0,0 +1,10 @@ + \ No newline at end of file diff --git a/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition03-output.json b/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition03-output.json new file mode 100644 index 00000000..cc333254 --- /dev/null +++ b/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition03-output.json @@ -0,0 +1,16 @@ +[ + { + "ruleId": "@typescript-eslint/no-unnecessary-condition", + "code": "?.", + "line": 4, + "column": 18, + "message": "Unnecessary optional chain on a non-nullish value." + }, + { + "ruleId": "@typescript-eslint/no-unnecessary-condition", + "code": "?.", + "line": 8, + "column": 16, + "message": "Unnecessary optional chain on a non-nullish value." + } +] \ No newline at end of file diff --git a/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition03-setup.ts b/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition03-setup.ts new file mode 100644 index 00000000..3ba264cf --- /dev/null +++ b/tests/fixtures/integrations/type-info-tests/no-unnecessary-condition03-setup.ts @@ -0,0 +1,2 @@ +/* eslint eslint-comments/require-description: 0, @typescript-eslint/explicit-module-boundary-types: 0 */ +export * from "./no-unnecessary-condition01-setup";