Hypothesis may generate cycles between branch aliases in snapshots strategy so
prevent to encounter such cases in tests using it.
For instance, this is the kind of generated data I observed in a `swh-web` test
using the strategy:
```
swh/web/tests/api/views/test_snapshot.py::test_api_snapshot_null_branch
{'branches': {'\x01': {'target': '\\x00', 'target_type': 'alias'},
'\x01\\x00': None,
'\x02': {'target': '\x01', 'target_type': 'alias'},
'\\x00': None,
'\\x00\\x00': None},
'id': '79e7b5d633f5df64352d5ccc913199c1f372a8dc',
'next_branch': None}
{'branches': {'\x01': {'target': ',', 'target_type': 'alias'},
'\x01\x01\x01\x1a\x1a\x01\x01\x01,': {'target': '0000f9000000000000000000000000009d000000',
'target_type': 'revision',
'target_url': '/api/1/revision/0000f9000000000000000000000000009d000000/'},
'\x1a': None,
',': {'target': '\x01', 'target_type': 'alias'},
'\\x00\\x00\x01\x01\x02': None},
'id': 'a6fec7de6a41c858ebd51b45d690b8f70b327f0d',
'next_branch': None}
```