Exemplo n.º 1
0
def test_reducer_set_active():
    row_index = 1
    active = [0, 2]
    action = layers.set_active(row_index, active)
    state = layers.reducer({"layers": {
        "index": {
            13: {},
            42: {},
            96: {}
        }
    }}, action)
    assert state["layers"]["index"][42]["active"] == active
Exemplo n.º 2
0
    assert layer_spec.color_spec.name == "Accent"


def test_layer_spec_given_dict():
    color_spec = {"name": "Accent"}
    layer_spec = forest.layers.LayerSpec(color_spec=color_spec)
    assert layer_spec.color_spec.name == "Accent"


@pytest.mark.parametrize("action,expect", [
    ({
        "kind": "ANY"
    }, [{
        "kind": "ANY"
    }]),
    (layers.on_button_group(0, [0, 1, 2]), [layers.set_active(0, [0, 1, 2])]),
])
def test_middleware(action, expect):
    store = redux.Store(layers.reducer)
    result = list(layers.middleware(store, action))
    assert expect == result


def test_middleware_on_save_given_add():
    mode = "add"
    index = 42
    initial_state = {"layers": {"mode": {"state": mode}, "index": {index: {}}}}
    store = redux.Store(layers.reducer, initial_state=initial_state)
    action = layers.on_save({})
    expect = layers.save_layer(index + 1, {})
    result = list(layers.middleware(store, action))
Exemplo n.º 3
0
    color_spec = {"name": "Accent"}
    layer_spec = forest.layers.LayerSpec(color_spec=color_spec)
    assert layer_spec.color_spec.name == "Accent"


@pytest.mark.parametrize(
    "action,expect",
    [
        ({
            "kind": "ANY"
        }, [{
            "kind": "ANY"
        }]),
        (
            layers.on_button_group(0, [0, 1, 2]),
            [layers.set_active(0, [0, 1, 2])],
        ),
    ],
)
def test_middleware(action, expect):
    store = redux.Store(layers.reducer)
    result = list(layers.middleware(store, action))
    assert expect == result


def test_middleware_on_save_given_add():
    mode = "add"
    index = 42
    initial_state = {"layers": {"mode": {"state": mode}, "index": {index: {}}}}
    store = redux.Store(layers.reducer, initial_state=initial_state)
    action = layers.on_save({})