예제 #1
0
def test_mul_calculation(n1, n2, d1, d2):
    xt = omk.TimeSignature(n1, d1)
    yt = omk.TimeSignature(n2, d2)

    xf = Frac(n1, d1)
    yf = Frac(n2, d2)

    assert xt * yt == xf * yf
예제 #2
0
def test_mul_commutative(n1, n2, d1, d2):

    x = omk.TimeSignature(n1, d1)
    y = omk.TimeSignature(n2, d2)
    assert x * y == y * x

    z = Frac(n2, d2)
    assert x * z == z * x

    i = n2
    assert x * i == i * x
예제 #3
0
def test_add_commutative(n1, n2, d1, d2):

    x = omk.TimeSignature(n1, d1)
    y = omk.TimeSignature(n2, d2)
    assert x + y == y + x

    z = Frac(n2, d2)
    assert x + z == z + x

    i = n2
    assert x + i == i + x
예제 #4
0
def test_true_div(n1, n2, d1, d2):

    x = omk.TimeSignature(n1, d1)
    y = omk.TimeSignature(n2, d2)
    assert (x / y) * y == x
    assert (y / x) * x == y

    z = Frac(n2, d2)
    assert (x / z) * z == x
    assert (z / x) * x == z

    i = n2
    assert (x / i) * i == x
    assert (i / x) * x == i
예제 #5
0
def test_sub_commutative(n1, n2, d1, d2):

    x = omk.TimeSignature(n1, d1)
    y = omk.TimeSignature(n2, d2)
    assert (x - y) + y == x
    assert (y - x) + x == y

    z = Frac(n2, d2)
    assert (x - z) + z == x
    assert (z - x) + x == z

    i = n2
    assert (x - i) + i == x
    assert (i - x) + x == i
예제 #6
0
def test_add_different_denom(n1, n2, d1, d2):

    x = omk.TimeSignature(n1, d1)
    y = omk.TimeSignature(n2, d2)
    assert (x + y)._d == max([d1, d2])  # True for powers of two
예제 #7
0
def test_add_same_denom(n1, n2, d):

    assert (omk.TimeSignature(n1, d) + omk.TimeSignature(n2, d))._d == d
예제 #8
0
def test_str(n, d):

    assert omk.TimeSignature(n, d)._str == "{}/{}".format(n, d)