Ejemplo n.º 1
0
def test_heterogeneous_tree_section():
    participant = ExperimentSection.new(make_heterogeneous_tree())
    assert participant.level == 'participant'
    assert len(participant) == 3
    practice_session = participant[1]
    test_sessions = participant[2:]
    assert practice_session.level == test_sessions[0].level == test_sessions[1].level == 'session'
    assert len(practice_session) == 1
    assert len(test_sessions[0]) == len(test_sessions[1]) == 2
    practice_block = practice_session[1]
    assert practice_block.level == 'block'
    assert practice_block.data['design'] == 'practice'
    assert practice_block.data['block'] == 1 and practice_block.data['session'] == 1
    assert len(practice_block) == 2*20
    assert all(trial.data['difficulty'] in (1, 2) for trial in practice_block)
    test_block = test_sessions[1][2]
    assert test_block.level == 'block'
    assert test_block.data['design'] == 'test'
    assert test_block.data['block'] == 2 and test_block.data['session'] == 3
    assert len(test_block) == 4*5
    assert all(trial.data['difficulty'] in (1, 3, 5, 7) for trial in test_block)
Ejemplo n.º 2
0
import numpy as np
import pytest

from experimentator import yaml
from tests.test_design import make_heterogeneous_tree


@pytest.mark.parametrize('data', [
    np.random.randn(5),
    1 + 1j,
    np.array([1, 1 + 1j, 1j]),
    np.arange(200, 220),
    make_heterogeneous_tree(),
])
def test_round_trip(data):
    cmp = yaml.load(yaml.dump(data)) == data
    if isinstance(cmp, np.ndarray):
        assert np.all(cmp)
    else:
        assert cmp
Ejemplo n.º 3
0
import numpy as np
import pytest

from experimentator import yaml
from tests.test_design import make_heterogeneous_tree


@pytest.mark.parametrize('data', [
    np.random.randn(5),
    1+1j,
    np.array([1, 1+1j, 1j]),
    np.arange(200, 220),
    make_heterogeneous_tree(),
])
def test_round_trip(data):
    cmp = yaml.load(yaml.dump(data)) == data
    if isinstance(cmp, np.ndarray):
        assert np.all(cmp)
    else:
        assert cmp