Пример #1
0
def test_create_default():
    m = Matrix.create(2, 3)

    assert m.get(0, 0) == 0.0
    assert m.get(1, 2) == 0.0

    with pytest.raises(IndexError):
        m.get(2, 2)

    with pytest.raises(IndexError):
        m.get(1, 3)

    with pytest.raises(ValueError):
        Matrix.create(0, 3)

    with pytest.raises(ValueError):
        Matrix.create(2, 0)
Пример #2
0
def test_set():
    m = Matrix.create(2, 3)

    m.set(0, 0, 0.5)
    assert almost_equal(m.get(0, 0), 0.5)

    m.set(1, 2, 0.6)
    assert almost_equal(m.get(1, 2), 0.6)

    with pytest.raises(IndexError):
        m.set(2, 2, 1.0)

    with pytest.raises(IndexError):
        m.set(1, 3, 1.0)
Пример #3
0
def test_get_data():
    m = Matrix.create(2, 3, 1.0)

    expected_data = [
        [1.0, 1.0, 1.0],
        [1.0, 1.0, 1.0],
    ]
    assert m.get_data() == expected_data

    m.set(1, 1, 2.0)
    m.set(1, 2, 3.0)

    expected_data = [
        [1.0, 1.0, 1.0],
        [1.0, 2.0, 3.0],
    ]
    assert m.get_data() == expected_data
Пример #4
0
def test_rows():
    m = Matrix.create(2, 3, 1.0)

    expected_data = [
        [1.0, 1.0, 1.0],
        [1.0, 1.0, 1.0],
    ]
    assert list(m.rows()) == expected_data

    m.set(1, 1, 2.0)
    m.set(1, 2, 3.0)

    expected_data = [
        [1.0, 1.0, 1.0],
        [1.0, 2.0, 3.0],
    ]
    assert list(m.rows()) == expected_data
Пример #5
0
def test_create_with_initial_value():
    m = Matrix.create(2, 3, initial_value=0.5)

    assert m.get(0, 0) == 0.5
    assert m.get(1, 2) == 0.5