All Projects → gabrielfalcao → Sure

gabrielfalcao / Sure

Licence: gpl-3.0
idiomatic assertion toolkit with human-friendly failure messages, inspired by RSpec Expectations and should.js

Programming Languages

python
139335 projects - #7 most used programming language

sure

.. image:: https://img.shields.io/pypi/dm/sure :target: https://pypi.org/project/sure

.. image:: https://github.com/gabrielfalcao/sure/workflows/Sure%20Tests/badge.svg :target: https://github.com/gabrielfalcao/sure/actions?query=workflow%3A%22Sure+Tests%22

.. image:: https://img.shields.io/readthedocs/sure :target: https://sure.readthedocs.io/

.. image:: https://img.shields.io/github/license/gabrielfalcao/sure?label=Github%20License :target: https://github.com/gabrielfalcao/sure/blob/master/LICENSE

.. image:: https://img.shields.io/pypi/v/sure :target: https://pypi.org/project/sure

.. image:: https://img.shields.io/pypi/l/sure?label=PyPi%20License :target: https://pypi.org/project/sure

.. image:: https://img.shields.io/pypi/format/sure :target: https://pypi.org/project/sure

.. image:: https://img.shields.io/pypi/status/sure :target: https://pypi.org/project/sure

.. image:: https://img.shields.io/pypi/pyversions/sure :target: https://pypi.org/project/sure

.. image:: https://img.shields.io/pypi/implementation/sure :target: https://pypi.org/project/sure

.. image:: https://img.shields.io/github/v/tag/gabrielfalcao/sure :target: https://github.com/gabrielfalcao/sure/releases

.. image:: https://img.shields.io/badge/pydoc-web-ff69b4.svg :target: http://pydoc.net/sure

An idiomatic testing library for python with powerful and flexible created by Gabriel Falcão <https://github.com/gabrielfalcao>. Sure's developer experience is inspired and modeled after RSpec Expectations <http://rspec.info/documentation/3.5/rspec-expectations/> and should.js <https://github.com/shouldjs/should.js>_.

Installing

.. code:: bash

$ pip install sure

Documentation

Available in the website <https://sure.readthedocs.io/en/latest/>__ or under the docs directory.

You can also build the documentation locally using sphinx:

.. code:: bash

make docs

Here is a tease

Equality


(number).should.equal(number)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

.. code:: python

    import sure

    (4).should.be.equal(2 + 2)
    (7.5).should.eql(3.5 + 4)

    (3).shouldnt.be.equal(5)

Assert dictionary and its contents
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

.. code:: python

    {'foo': 'bar'}.should.equal({'foo': 'bar'})
    {'foo': 'bar'}.should.have.key('foo').which.should.equal('bar')

"A string".lower().should.equal("a string") also works
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

.. code:: python

    "Awesome ASSERTIONS".lower().split().should.equal(['awesome', 'assertions'])
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].