Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork0
A pythonic assertion library
License
artisanofcode/python-conjecture
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
A pythonic assertion library.
poetry add conjecturepip install conjectureA basic assertion.
>>>import conjecture>>>assert5== conjecture.has(lambdav: v<10)>>>assert5== conjecture.has(lambdav: v>10)Traceback (most recent call last): File "<stdin>", line 1, in <module>AssertionError
Matching none.
>>>import conjecture>>>assertNone== conjecture.none()
Matching anything.
>>>import conjecture>>>assertNone== conjecture.anything()>>>assert123== conjecture.anything()>>>assert"abc"== conjecture.anything()
Matching keys.
>>>import conjecture>>>assert {"a":1}== conjecture.has_key("a")>>>assert {"a":1}== conjecture.has_key("a",of=1)>>>assert {"a":1}== conjecture.has_key("a",of=conjecture.less_than(5))
Matching instances of a class.
>>>import conjecture>>>assert123== conjecture.instance_of(int)>>>assert"abc"== conjecture.instance_of((str,bytes))
Matching values.
>>>import conjecture>>>assert123== conjecture.equal_to(123)>>>assert"abc"== conjecture.equal_to("abc")
Matching attributes.
>>>import conjecture>>>assert1== conjecture.has_attribute("__class__")>>>assert1== conjecture.has_attribute("__class__",of=int)>>>assert1== conjecture.has_attribute("__class__",of=conjecture.instance_of(type))
Matching lesser values.
>>>import conjecture>>>assert5== conjecture.greater_than(1)>>>assert5== conjecture.greater_than_or_equal_to(1)
Matching greater values.
>>>import conjecture>>>assert1== conjecture.less_than(5)>>>assert1== conjecture.less_than_or_equal_to(5)
Matching empty collections.
>>>import conjecture>>>assertlist()== conjecture.empty()>>>assertset()== conjecture.empty()>>>asserttuple()== conjecture.empty()>>>assertdict()== conjecture.empty()
Matching length of collections.
>>>import conjecture>>>assert [1,2,3,4,5]== conjecture.length_of(5)>>>assert [1,2,3]== conjecture.length_of(conjecture.less_than(5))
Matching string prefixes.
>>>import conjecture>>>assert"foo bar baz"== conjecture.prefixed_with("foo")>>>assertb"foo bar baz"== conjecture.prefixed_with(b"foo")
Matching string suffixes.
>>>import conjecture>>>assert"foo bar baz"== conjecture.suffixed_with("baz")>>>assertb"foo bar baz"== conjecture.suffixed_with(b"baz")
Matching all conditions.
>>>import conjecture>>>assert5== conjecture.has(lambdav: v<=5)& conjecture.has(lambdav:v=>5)>>>assert6== conjecture.has(lambdav: v<=5)& conjecture.has(lambdav:v=>5)Traceback (most recent call last): File "<stdin>", line 1, in <module>AssertionError>>>assert5== conjecture.all_of(... conjecture.has(lambdav: v<=5),... conjecture.has(lambdav:v=>5)... )>>>assert6== conjecture.all_of(... conjecture.has(lambdav: v<=5),... conjecture.has(lambdav:v=>5)... )Traceback (most recent call last): File "<stdin>", line 1, in <module>AssertionError
Matching any conditions.
>>>import conjecture>>>assert0== conjecture.has(lambdav: v==5)| conjecture.has(lambdav: v==0)>>>assert5== conjecture.has(lambdav: v==5)| conjecture.has(lambdav: v==0)>>>assert6== conjecture.has(lambdav: v==5)| conjecture.has(lambdav: v==0)Traceback (most recent call last): File "<stdin>", line 1, in <module>AssertionError>>>assert5== conjecture.any_of(... conjecture.has(lambdav: v==5),... conjecture.has(lambdav: v==0)... )>>>assert6== conjecture.any_of(... conjecture.has(lambdav: v==5),... conjecture.has(lambdav: v==0)... )Traceback (most recent call last): File "<stdin>", line 1, in <module>AssertionError
A negative assertion.
>>>import conjecture>>>assert5!= conjecture.has(lambdav: v==10)>>>assert5==~conjecture.has(lambdav: v==10)>>>assert10==~conjecture.has(lambdav: v==10)Traceback (most recent call last): File "<stdin>", line 1, in <module>AssertionError
This project is licensed under theMIT licence.
All documentation and images are licenced under theCreative Commons Attribution-ShareAlike 4.0 International License.
This project usesSemantic Versioning.
About
A pythonic assertion library
Topics
Resources
License
Code of conduct
Contributing
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Sponsor this project
Uh oh!
There was an error while loading.Please reload this page.
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Contributors3
Uh oh!
There was an error while loading.Please reload this page.