summaryrefslogtreecommitdiff
path: root/tests/functional/u/unhashable_member.py
blob: c788668c479e0c54bed873f24f7c822fdf24a39a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# pylint: disable=missing-docstring,expression-not-assigned,too-few-public-methods,pointless-statement


class Unhashable:
    __hash__ = list.__hash__

# Subscripts
{}[[1, 2, 3]] # [unhashable-member]
{}[{}] # [unhashable-member]
{}[Unhashable()] # [unhashable-member]
{}[1:2]  # [unhashable-member]
{'foo': 'bar'}['foo']
{'foo': 'bar'}[42]

# Keys
{[1, 2, 3]: "tomato"}  # [unhashable-member]
{
    [1, 2, 3]: "tomato",  # [unhashable-member]
    [4, 5, 6]: "celeriac",  # [unhashable-member]
}
{[1, 2, 3]}  # [unhashable-member]
{"tomato": "tomahto"}
{dict: {}}
{lambda x: x: "tomato"}  # pylint: disable=unnecessary-lambda


class FromDict(dict):
    ...

{FromDict: 1}