Skip to content

[no-unnecessary-type-assertion] False negative on unknown! #1082

Closed
@ooyyloo

Description

@ooyyloo

Repro

Playground

{
  "rules": {
    "@typescript-eslint/no-unnecessary-type-assertion": ["error"]
  }
}
export class A {
  data?: unknown;
}

export async function test(): Promise<unknown> {
  let a: A = new A();
  return a.data!;
}

Expected Result
no errors

Actual Result
This assertion is unnecessary since it does not change the type of the expression. eslint(@typescript-eslint/no-unnecessary-type-assertion)

Additional Info

Versions

package version
@typescript-eslint/eslint-plugin 2.3.3
@typescript-eslint/parser 2.3.3
TypeScript 3.6.3
ESLint 6.5.1
node 12.10.0
npm 6.10.3

Metadata

Metadata

Assignees

No one assigned

    Labels

    accepting prsGo ahead, send a pull request that resolves this issueenhancementNew feature or requestpackage: eslint-pluginIssues related to @typescript-eslint/eslint-plugin

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions