# How can you test that two dictionaries are equal with pytest in python

## How can you test that two dictionaries are equal with pytest in python

Dont spend your time writing this logic yourself. Just use the functions provided by the default testing library `unittest`

```
from unittest import TestCase
TestCase().assertDictEqual(expected_dict, actual_dict)
```

pytests magic is clever enough. By writing

```
assert {a: {b: 2, c: {d: 4} } } == {a: {b: 2, c: {d: 4} } }
```

you will have a nested test on equality.

#### How can you test that two dictionaries are equal with pytest in python

I guess a simple assert equality test should be okay:

```
>>> d1 = {n: chr(n+65) for n in range(10)}
>>> d2 = {n: chr(n+65) for n in range(10)}
>>> d1 == d2
True
>>> l1 = [1, 2, 3]
>>> l2 = [1, 2, 3]
>>> d2[10] = l2
>>> d1[10] = l1
>>> d1 == d2
True
>>> class Example:
stub_prop = None
>>> e1 = Example()
>>> e2 = Example()
>>> e2.stub_prop = 10
>>> e1.stub_prop = a
>>> d1[11] = e1
>>> d2[11] = e2
>>> d1 == d2
False
```