rustpy 0.3.0

Bindings of Rust programming language primitives.
Documentation
from typing import Tuple

from hypothesis import given

from tests.utils import Float
from . import strategies


@given(strategies.finite_floats_pairs)
def test_basic(pair: Tuple[Float, Float]) -> None:
    first, second = pair

    result = first + second

    assert isinstance(result, type(first))


@given(strategies.finite_floats_pairs)
def test_commutativity(pair: Tuple[Float, Float]) -> None:
    first, second = pair

    result = first + second

    assert result == second + first


@given(strategies.finite_floats_with_zeros)
def test_neutral_element(float_with_zero: Tuple[Float, Float]) -> None:
    float_, zero = float_with_zero

    assert float_ + zero == float_ == zero + float_