Skip to content

Commit 423722a

Browse files
authored
test: add test cases (#233)
1 parent e9ade08 commit 423722a

9 files changed

+107
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
<script lang="ts">
2+
export let foo: null | boolean = null
3+
4+
const a = foo == null
5+
$: b = foo == null
6+
$: {
7+
let bar: null | boolean = null
8+
c = bar == null
9+
}
10+
</script>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
[
2+
{
3+
"ruleId": "@typescript-eslint/no-unnecessary-condition",
4+
"code": "foo == null",
5+
"line": 4,
6+
"column": 15,
7+
"message": "Unnecessary conditional, both sides of the expression are literal values."
8+
},
9+
{
10+
"ruleId": "@typescript-eslint/no-unnecessary-condition",
11+
"code": "bar == null",
12+
"line": 8,
13+
"column": 13,
14+
"message": "Unnecessary conditional, both sides of the expression are literal values."
15+
}
16+
]
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
/* eslint eslint-comments/require-description: 0, @typescript-eslint/explicit-module-boundary-types: 0 */
2+
import type { Linter } from "eslint";
3+
import { BASIC_PARSER_OPTIONS } from "../../../src/parser/test-utils";
4+
import { rules } from "@typescript-eslint/eslint-plugin";
5+
export function setupLinter(linter: Linter) {
6+
linter.defineRule(
7+
"@typescript-eslint/no-unnecessary-condition",
8+
rules["no-unnecessary-condition"] as never
9+
);
10+
}
11+
12+
export function getConfig() {
13+
return {
14+
parser: "svelte-eslint-parser",
15+
parserOptions: BASIC_PARSER_OPTIONS,
16+
rules: {
17+
"@typescript-eslint/no-unnecessary-condition": "error",
18+
},
19+
env: {
20+
browser: true,
21+
es2021: true,
22+
},
23+
};
24+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<script lang="ts">
2+
export let foo: null | boolean = null
3+
export let bar: string = "foo"
4+
5+
const a = foo ?? bar
6+
$: b = foo ?? bar
7+
$: {
8+
let baz: null | boolean = null
9+
c = baz ?? bar
10+
}
11+
</script>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
[
2+
{
3+
"ruleId": "@typescript-eslint/no-unnecessary-condition",
4+
"code": "foo",
5+
"line": 5,
6+
"column": 15,
7+
"message": "Unnecessary conditional, left-hand side of `??` operator is always `null` or `undefined`."
8+
},
9+
{
10+
"ruleId": "@typescript-eslint/no-unnecessary-condition",
11+
"code": "baz",
12+
"line": 9,
13+
"column": 13,
14+
"message": "Unnecessary conditional, left-hand side of `??` operator is always `null` or `undefined`."
15+
}
16+
]
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
/* eslint eslint-comments/require-description: 0, @typescript-eslint/explicit-module-boundary-types: 0 */
2+
export * from "./no-unnecessary-condition01-setup";
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
<script lang="ts">
2+
export let foo: null | string = "abc"
3+
4+
const a = foo?.length
5+
$: b = foo?.length
6+
$: {
7+
let bar: null | string = "abc"
8+
c = bar?.length
9+
}
10+
</script>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
[
2+
{
3+
"ruleId": "@typescript-eslint/no-unnecessary-condition",
4+
"code": "?.",
5+
"line": 4,
6+
"column": 18,
7+
"message": "Unnecessary optional chain on a non-nullish value."
8+
},
9+
{
10+
"ruleId": "@typescript-eslint/no-unnecessary-condition",
11+
"code": "?.",
12+
"line": 8,
13+
"column": 16,
14+
"message": "Unnecessary optional chain on a non-nullish value."
15+
}
16+
]
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
/* eslint eslint-comments/require-description: 0, @typescript-eslint/explicit-module-boundary-types: 0 */
2+
export * from "./no-unnecessary-condition01-setup";

0 commit comments

Comments
 (0)