예제 #1
0
def test_infinity_raises_value_error():
    with raises(ValueError):
        to_factoradic(float('Inf'))
예제 #2
0
def test_non_integers_raise_value_error(n):
    assume(int(n) != n)
    with raises(ValueError):
        to_factoradic(n)
예제 #3
0
def test_nan_raises_value_error():
    with raises(ValueError):
        to_factoradic(float('nan'))
예제 #4
0
def test_coefficients_are_less_than_or_equal_to_index(n):
    assert all(coefficient <= index
               for index, coefficient in enumerate(to_factoradic(n)))
예제 #5
0
def test_negative_integers_raise_value_error(n):
    with raises(ValueError):
        to_factoradic(n)
예제 #6
0
def test_roundtrip(n):
    assert from_factoradic(to_factoradic(n)) == n
예제 #7
0
def test_first_place_is_always_zero(n):
    assert to_factoradic(n)[0] == 0
예제 #8
0
def test_5():
    assert to_factoradic(5) == [0, 1, 2]
예제 #9
0
def test_6():
    assert to_factoradic(6) == [0, 0, 0, 1]
예제 #10
0
def test_4():
    assert to_factoradic(4) == [0, 0, 2]
예제 #11
0
def test_3():
    assert to_factoradic(3) == [0, 1, 1]
예제 #12
0
def test_2():
    assert to_factoradic(2) == [0, 0, 1]
예제 #13
0
def test_1():
    assert to_factoradic(1) == [0, 1]
예제 #14
0
def test_0():
    assert to_factoradic(0) == [0]