Example #1
0
def test_middleware_given_set_name_emits_set_numbers():
    store = redux.Store(colors.reducer)
    action = colors.set_palette_name("Blues")
    result = list(colors.palettes(store, action))
    assert result == [
        colors.set_palette_numbers(colors.palette_numbers("Blues")),
        colors.set_palette_name("Blues"),
    ]
Example #2
0
def test_middleware_given_incomplete_state_emits_set_colorbar():
    store = redux.Store(
        colors.reducer, initial_state={"colorbar": {"low": -1}}
    )
    action = {"kind": "ANY"}
    result = list(colors.palettes(store, action))
    settings = {**colors.defaults(), **{"low": -1}}
    expect = [action, colors.set_colorbar(settings)]
    assert expect == result
Example #3
0
def test_middleware_given_inconsistent_number():
    store = redux.Store(colors.reducer)
    store.dispatch(colors.set_palette_number(1000))
    action = colors.set_palette_name("Viridis")
    result = list(colors.palettes(store, action))
    assert result == [
        colors.set_palette_numbers(colors.palette_numbers("Viridis")),
        colors.set_palette_number(256),
        colors.set_palette_name("Viridis"),
    ]
Example #4
0
def test_middleware_given_empty_state_emits_set_colorbar():
    store = redux.Store(colors.reducer)
    action = {"kind": "ANY"}
    result = list(colors.palettes(store, action))
    expect = [action, colors.set_colorbar(colors.defaults())]
    assert expect == result
Example #5
0
def test_middleware_given_fixed_allows_source_limit_actions():
    store = redux.Store(colors.reducer)
    action = colors.set_source_limits(0, 100)
    assert list(colors.palettes(store, action)) == [action]
Example #6
0
def test_middleware_given_fixed_swallows_source_limit_actions():
    store = redux.Store(colors.reducer, middlewares=[colors.palettes])
    store.dispatch(colors.set_fixed(True))
    action = colors.set_source_limits(0, 100)
    assert list(colors.palettes(store, action)) == []
    assert store.state == {"colorbar": {"fixed": True}}