Python-Type-Challenges icon indicating copy to clipboard operation
Python-Type-Challenges copied to clipboard

Create a challenge for PEP 698 `@override`

Open laike9m opened this issue 2 years ago • 1 comments

PEP 698

laike9m avatar Nov 28 '23 07:11 laike9m

I find it hard to come up with a challenge for @override. We can have something like the following, but # expect-type-error always needs to resides with @override, and it's impossible to have @override in user code and # expect-type-error in test code.

"""
TODO:
Annotate the methods of class `Tiger`.
"""

class Animal:
    def eat(self, food):
        ...

from typing import override

class Tiger(Animal):
    @override
    def eat(self):  # expect-type-error
        ...

    @override
    def eat(self, food):
        ...

    @override
    def fly(self):  # expect-type-error
        ...

laike9m avatar Dec 10 '23 04:12 laike9m