def test_gte(x):
    """
    Given two numeric values where one is greater than or equal to the other,
    when gte() is called with the smaller value, then it returns a function
    that will return the value passed to it when called with the larger value.
    """
    sm, lg = x
    validator = mod.gte(sm)
    assert validator(lg) == lg
def test_gte(x):
    """
    Given two numeric values where one is greater than or equal to the other,
    when gte() is called with the smaller value, then it returns a function
    that will return the value passed to it when called with the larger value.
    """
    sm, lg = x
    validator = mod.gte(sm)
    assert validator(lg) == lg
def test_gte_reverse(x):
    """
    Given two numeric values where one is greater than or equal to the other,
    when gte() is called with the larger value, then it returns a function that
    will raise Validation error when passed the smaller value.
    """
    sm, lg = x
    validator = mod.gte(lg)
    with pytest.raises(ValueError):
        validator(sm)
def test_gte_reverse(x):
    """
    Given two numeric values where one is greater than or equal to the other,
    when gte() is called with the larger value, then it returns a function that
    will raise Validation error when passed the smaller value.
    """
    sm, lg = x
    validator = mod.gte(lg)
    with pytest.raises(ValueError):
        validator(sm)