コード例 #1
0
def test_mod():
    d1 = uniform_scalar_distribution(range(1,7))
    d2 = uniform_scalar_distribution(range(2))
    d3 = uniform_scalar_distribution(range(1,3))
    d4 = ScalarDistribution([0,1],[3/4,1/4])
    assert_true((d1%2).is_approx_equal(d2))
    assert_true((5%d3).is_approx_equal(d2))
    assert_true((d1%d3).is_approx_equal(d4))
コード例 #2
0
ファイル: test_npscalardist.py プロジェクト: psychon7/dit
def test_mod():
    d1 = uniform_scalar_distribution(range(1, 7))
    d2 = uniform_scalar_distribution(range(2))
    d3 = uniform_scalar_distribution(range(1, 3))
    d4 = ScalarDistribution([0, 1], [3 / 4, 1 / 4])
    assert (d1 % 2).is_approx_equal(d2)
    assert (5 % d3).is_approx_equal(d2)
    assert (d1 % d3).is_approx_equal(d4)
コード例 #3
0
def test_floordiv():
    d1 = uniform_scalar_distribution(range(1, 7))
    d2 = ScalarDistribution([0,1,2,3], [1/6,1/3,1/3,1/6])
    d3 = ScalarDistribution([1,2,3,6], [1/2,1/6,1/6,1/6])
    d4 = uniform_scalar_distribution(range(1, 3))
    d5 = ScalarDistribution([0,1,2,3,4,5,6],[1/12,1/4,1/4,1/6,1/12,1/12,1/12])
    assert_true((d1//2).is_approx_equal(d2))
    assert_true((6//d1).is_approx_equal(d3))
    assert_true((d1//d4).is_approx_equal(d5))
コード例 #4
0
def test_sub():
    d1 = uniform_scalar_distribution(range(3))
    d2 = uniform_scalar_distribution(range(1, 4))
    d3 = ScalarDistribution([-2, -1, 0, 1, 2], [1/9, 2/9, 3/9, 2/9, 1/9])
    assert_true((d2-1).is_approx_equal(d1))
    assert_true((3-d2).is_approx_equal(d1))
    assert_true((d1).is_approx_equal(d2-1))
    assert_true((d1).is_approx_equal(3-d2))
    assert_true((d1-d1).is_approx_equal(d3))
コード例 #5
0
def test_add():
    d1 = uniform_scalar_distribution(range(3))
    d2 = uniform_scalar_distribution(range(1, 4))
    d3 = ScalarDistribution([0, 1, 2, 3, 4], [1/9, 2/9, 3/9, 2/9, 1/9])
    assert_true((d1+1).is_approx_equal(d2))
    assert_true((1+d1).is_approx_equal(d2))
    assert_true((d2).is_approx_equal(d1+1))
    assert_true((d2).is_approx_equal(1+d1))
    assert_true((d1+d1).is_approx_equal(d3))
コード例 #6
0
def test_div():
    d1 = uniform_scalar_distribution([2,4,6])
    d2 = uniform_scalar_distribution([1,2,3,4,6])
    d3 = uniform_scalar_distribution([1,2,3])
    d4 = uniform_scalar_distribution([12,6,4,3,2])
    d5 = uniform_scalar_distribution([1,2])
    d6 = ScalarDistribution([1,2,3,4,6], [1/6,1/3,1/6,1/6,1/6])
    assert_true((d1/2).is_approx_equal(d3))
    assert_true((12/d2).is_approx_equal(d4))
    assert_true((d1/d5).is_approx_equal(d6))
コード例 #7
0
ファイル: test_npscalardist.py プロジェクト: psychon7/dit
def test_add():
    d1 = uniform_scalar_distribution(range(3))
    d2 = uniform_scalar_distribution(range(1, 4))
    d3 = ScalarDistribution([0, 1, 2, 3, 4],
                            [1 / 9, 2 / 9, 3 / 9, 2 / 9, 1 / 9])
    assert (d1 + 1).is_approx_equal(d2)
    assert (1 + d1).is_approx_equal(d2)
    assert (d2).is_approx_equal(d1 + 1)
    assert (d2).is_approx_equal(1 + d1)
    assert (d1 + d1).is_approx_equal(d3)
コード例 #8
0
ファイル: test_npscalardist.py プロジェクト: psychon7/dit
def test_sub():
    d1 = uniform_scalar_distribution(range(3))
    d2 = uniform_scalar_distribution(range(1, 4))
    d3 = ScalarDistribution([-2, -1, 0, 1, 2],
                            [1 / 9, 2 / 9, 3 / 9, 2 / 9, 1 / 9])
    assert (d2 - 1).is_approx_equal(d1)
    assert (3 - d2).is_approx_equal(d1)
    assert (d1).is_approx_equal(d2 - 1)
    assert (d1).is_approx_equal(3 - d2)
    assert (d1 - d1).is_approx_equal(d3)
コード例 #9
0
ファイル: test_npscalardist.py プロジェクト: psychon7/dit
def test_floordiv():
    d1 = uniform_scalar_distribution(range(1, 7))
    d2 = ScalarDistribution([0, 1, 2, 3], [1 / 6, 1 / 3, 1 / 3, 1 / 6])
    d3 = ScalarDistribution([1, 2, 3, 6], [1 / 2, 1 / 6, 1 / 6, 1 / 6])
    d4 = uniform_scalar_distribution(range(1, 3))
    d5 = ScalarDistribution(
        [0, 1, 2, 3, 4, 5, 6],
        [1 / 12, 1 / 4, 1 / 4, 1 / 6, 1 / 12, 1 / 12, 1 / 12])
    assert (d1 // 2).is_approx_equal(d2)
    assert (6 // d1).is_approx_equal(d3)
    assert (d1 // d4).is_approx_equal(d5)
コード例 #10
0
ファイル: test_npscalardist.py プロジェクト: psychon7/dit
def test_div():
    d1 = uniform_scalar_distribution([2, 4, 6])
    d2 = uniform_scalar_distribution([1, 2, 3, 4, 6])
    d3 = uniform_scalar_distribution([1, 2, 3])
    d4 = uniform_scalar_distribution([12, 6, 4, 3, 2])
    d5 = uniform_scalar_distribution([1, 2])
    d6 = ScalarDistribution([1, 2, 3, 4, 6],
                            [1 / 6, 1 / 3, 1 / 6, 1 / 6, 1 / 6])
    assert (d1 / 2).is_approx_equal(d3)
    assert (12 / d2).is_approx_equal(d4)
    assert (d1 / d5).is_approx_equal(d6)
コード例 #11
0
def test_mul():
    d1 = uniform_scalar_distribution(range(1, 3))
    d2 = ScalarDistribution([1, 2, 4], [0.25, 0.5, 0.25])
    d3 = ScalarDistribution([2, 4], [0.5, 0.5])
    assert_true((d1*d1).is_approx_equal(d2))
    assert_true((d1*2).is_approx_equal(d3))
    assert_true((2*d1).is_approx_equal(d3))
コード例 #12
0
ファイル: test_npscalardist.py プロジェクト: psychon7/dit
def test_mul():
    d1 = uniform_scalar_distribution(range(1, 3))
    d2 = ScalarDistribution([1, 2, 4], [0.25, 0.5, 0.25])
    d3 = ScalarDistribution([2, 4], [0.5, 0.5])
    assert (d1 * d1).is_approx_equal(d2)
    assert (d1 * 2).is_approx_equal(d3)
    assert (2 * d1).is_approx_equal(d3)
コード例 #13
0
ファイル: test_npscalardist.py プロジェクト: psychon7/dit
def test_matmul():
    d1 = uniform_scalar_distribution(range(1, 7))
    d2 = Distribution(list(product(d1.outcomes, repeat=2)), [1 / 36] * 36)
    assert (d1.__matmul__(d1)).is_approx_equal(d2)
コード例 #14
0
ファイル: test_npscalardist.py プロジェクト: psychon7/dit
def test_ge():
    d1 = uniform_scalar_distribution(range(1, 7))
    d2 = uniform_scalar_distribution(range(2))
    d3 = ScalarDistribution([True], [1])
    assert (d1 >= 4).is_approx_equal(d2)
    assert (d1 >= d2).is_approx_equal(d3)
コード例 #15
0
ファイル: test_npscalardist.py プロジェクト: psychon7/dit
def test_gt():
    d1 = uniform_scalar_distribution(range(1, 7))
    d2 = uniform_scalar_distribution(range(2))
    d3 = ScalarDistribution([True, False], [11 / 12, 1 / 12])
    assert (d1 > 3).is_approx_equal(d2)
    assert (d1 > d2).is_approx_equal(d3)
コード例 #16
0
ファイル: test_npscalardist.py プロジェクト: psychon7/dit
def test_ne():
    d1 = uniform_scalar_distribution(range(1, 7))
    d2 = ScalarDistribution([True, False], [5 / 6, 1 / 6])
    assert (d1 != 6).is_approx_equal(d2)
    assert (d1 != d1).is_approx_equal(d2)
コード例 #17
0
def test_ge():
    d1 = uniform_scalar_distribution(range(1,7))
    d2 = uniform_scalar_distribution(range(2))
    d3 = ScalarDistribution([True], [1])
    assert_true((d1 >= 4).is_approx_equal(d2))
    assert_true((d1 >= d2).is_approx_equal(d3))
コード例 #18
0
def test_ne():
    d1 = uniform_scalar_distribution(range(1,7))
    d2 = ScalarDistribution([True, False], [5/6, 1/6])
    assert_true((d1 != 6).is_approx_equal(d2))
    assert_true((d1 != d1).is_approx_equal(d2))
コード例 #19
0
def test_matmul_fail():
    d1 = uniform_scalar_distribution(range(1,7))
    assert_raises(NotImplementedError, lambda x: x.__matmul__('0'), d1)
コード例 #20
0
def test_cmp_fail():
    d1 = uniform_scalar_distribution(range(1,7))
    assert_raises(NotImplementedError, lambda x: x + '0', d1)
コード例 #21
0
def test_matmul():
    d1 = uniform_scalar_distribution(range(1,7))
    d2 = Distribution(list(product(d1.outcomes, repeat=2)), [1/36]*36)
    assert_true((d1.__matmul__(d1)).is_approx_equal(d2))
コード例 #22
0
ファイル: test_npscalardist.py プロジェクト: psychon7/dit
def test_cmp_fail():
    d1 = uniform_scalar_distribution(range(1, 7))
    with pytest.raises(NotImplementedError):
        (lambda x: x + '0')(d1)
コード例 #23
0
ファイル: test_npscalardist.py プロジェクト: psychon7/dit
def test_matmul_fail():
    d1 = uniform_scalar_distribution(range(1, 7))
    with pytest.raises(NotImplementedError):
        (lambda x: x.__matmul__('0'))(d1)
コード例 #24
0
def test_gt():
    d1 = uniform_scalar_distribution(range(1,7))
    d2 = uniform_scalar_distribution(range(2))
    d3 = ScalarDistribution([True, False], [11/12, 1/12])
    assert_true((d1 > 3).is_approx_equal(d2))
    assert_true((d1 > d2).is_approx_equal(d3))