Skip to content
/ surer Public
forked from gabrielfalcao/sure

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

License

Notifications You must be signed in to change notification settings

getmoto/surer

This branch is 11 commits ahead of, 41 commits behind gabrielfalcao/sure:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

author
Moto Admin
Jan 8, 2023
3fc34b4 · Jan 8, 2023
Jan 7, 2023
Jan 8, 2023
Jan 8, 2023
Jan 8, 2023
Oct 17, 2016
May 16, 2018
Jan 7, 2023
Jun 21, 2021
Nov 3, 2022
Jun 29, 2016
Jan 7, 2023
Jan 8, 2023
Jan 25, 2020
Jan 7, 2023
Jan 7, 2023
Jan 7, 2023
Dec 20, 2019
Jan 8, 2023
Jan 7, 2023

Repository files navigation

surer

https://img.shields.io/pypi/dm/surer https://img.shields.io/readthedocs/sure https://img.shields.io/github/license/getmoto/surer?label=Github%20License https://img.shields.io/pypi/v/surer https://img.shields.io/pypi/l/surer?label=PyPi%20License https://img.shields.io/pypi/format/surer https://img.shields.io/pypi/status/surer https://img.shields.io/pypi/pyversions/surer https://img.shields.io/pypi/implementation/surer

An idiomatic testing library for python with powerful and flexible assertions, created by Gabriel Falcão. Sure's developer experience is inspired and modeled after RSpec Expectations and should.js.

This is a fork of Gabriel's sure library, maintained at http://github.com/getmoto/surer. It provides support for more recent Python-versions, but does not differ in functionality.

Installing

$ pip install surer

Documentation

Available in the website or under the docs directory.

You can also build the documentation locally using sphinx:

make docs

Here is a tease

Equality

(number).should.equal(number)

import surer

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

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

Assert dictionary and its contents

{'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

"Awesome ASSERTIONS".lower().split().should.equal(['awesome', 'assertions'])

About

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

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 97.2%
  • Makefile 2.8%