dry-python / dry-python/classes
Hypothesis integration
- Langage dominant
- Python
- Étoiles
- 730
- Forks
- 30
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
Right now we don't test `classes` with `hypothesis` at all.
But, I have a great idea (at least it seems to me like so) of adding a hypothesis plugin, similar to one we have in `returns`: https://github.com/dry-python/returns/blob/master/returns/contrib/hypothesis/laws.py
What should it do?
- `check_typeclass(typeclass_instance)` will check that for all existing types and protocols some valid return type is produced. For example, `@typeclass def some(instance) -> str` must produce `str` for all `instance`, `protocol`, and supported types and it must produce `NotImplementedError` for types that are not supported
- Looks like `check_typeclass` must have `allow_instances`, `allow_protocols`, `allow_unknown` kw `bool` arguments to configure what types we actually need in a resulting strategy
It would be a nice companion to our `mypy` check.
@Zac-HD do you like it? Maybe you have any other ideas?
Guide de contribution
Ouvrir le guide de contribution
Évaluation
Cette issue n'a pas encore été évaluée.