void () { runWithLanguageLevel( LanguageLevel.getLatest(), () -> doTestByText(""" from typing import TypedDict class C(TypedDict): foo: str def f(x: C) -> None: pass y = {} z = {'foo': 'bar'} n = {"foo": "", "quux": 3} f(<warning descr="Expected type 'C', got 'dict' instead">y</warning>) f(<warning descr="Expected type 'C', got 'dict[str, int | str]' instead">n</warning>) f(z) f(x=<warning descr="Expected type 'C', got 'dict' instead">y</warning>) f(x=<warning descr="Expected type 'C', got 'dict[str, int | str]' instead">n</warning>) f(x=z) z2: C = <warning descr="Expected type 'C', got 'dict' instead">y</warning> z2: C = <warning descr="Expected type 'C', got 'dict[str, int | str]' instead">n</warning> z2: C = z""") ); }