示例#1
0
def BokehApplication(applications, server, prefix="/", template_variables={}):
    prefix = prefix or ""
    prefix = "/" + prefix.strip("/")
    if not prefix.endswith("/"):
        prefix = prefix + "/"

    extra = toolz.merge({"prefix": prefix}, template_variables)

    apps = {
        k: functools.partial(v, server, extra)
        for k, v in applications.items()
    }
    apps = {k: Application(FunctionHandler(v)) for k, v in apps.items()}
    kwargs = dask.config.get(
        "distributed.scheduler.dashboard.bokeh-application").copy()
    extra_websocket_origins = create_hosts_whitelist(
        kwargs.pop("allow_websocket_origin"), server.http_server.port)

    application = BokehTornado(
        apps,
        prefix=prefix,
        use_index=False,
        extra_websocket_origins=extra_websocket_origins,
        **kwargs,
    )
    return application
示例#2
0
def test_create_hosts_whitelist_bad_host_raises():
    with pytest.raises(ValueError):
        util.create_hosts_whitelist([""], 1000)

    with pytest.raises(ValueError):
        util.create_hosts_whitelist(["a:b:c"], 1000)

    with pytest.raises(ValueError):
        util.create_hosts_whitelist([":80"], 1000)
示例#3
0
def test_create_hosts_whitelist_bad_host_raises():
    with pytest.raises(ValueError):
        util.create_hosts_whitelist([""], 1000)

    with pytest.raises(ValueError):
        util.create_hosts_whitelist(["a:b:c"], 1000)

    with pytest.raises(ValueError):
        util.create_hosts_whitelist([":80"], 1000)
示例#4
0
def test_create_hosts_whitelist_host_non_int_port_raises():
    with pytest.raises(ValueError):
        util.create_hosts_whitelist(["foo:xyz"], 1000)
示例#5
0
def test_create_hosts_whitelist_host_without_port_use_port_80():
    hosts = util.create_hosts_whitelist(["foo"], 1000)
    assert hosts == ["foo:80"]

    hosts = util.create_hosts_whitelist(["foo","bar"], 1000)
    assert hosts == ["foo:80","bar:80"]
示例#6
0
def test_create_hosts_whitelist_host_value_with_port_use_port():
    hosts = util.create_hosts_whitelist(["foo:1000"], 1000)
    assert hosts == ["foo:1000"]

    hosts = util.create_hosts_whitelist(["foo:1000","bar:2100"], 1000)
    assert hosts == ["foo:1000","bar:2100"]
示例#7
0
def test_create_hosts_whitelist_no_host():
    hosts = util.create_hosts_whitelist(None, 1000)
    assert hosts == ["localhost:1000"]

    hosts = util.create_hosts_whitelist([], 1000)
    assert hosts == ["localhost:1000"]
示例#8
0
def test_create_hosts_whitelist_host_non_int_port_raises():
    with pytest.raises(ValueError):
        util.create_hosts_whitelist(["foo:xyz"], 1000)
示例#9
0
def test_create_hosts_whitelist_host_without_port_use_port_80():
    hosts = util.create_hosts_whitelist(["foo"], 1000)
    assert hosts == ["foo:80"]

    hosts = util.create_hosts_whitelist(["foo","bar"], 1000)
    assert hosts == ["foo:80","bar:80"]
示例#10
0
def test_create_hosts_whitelist_host_value_with_port_use_port():
    hosts = util.create_hosts_whitelist(["foo:1000"], 1000)
    assert hosts == ["foo:1000"]

    hosts = util.create_hosts_whitelist(["foo:1000","bar:2100"], 1000)
    assert hosts == ["foo:1000","bar:2100"]
示例#11
0
def test_create_hosts_whitelist_no_host():
    hosts = util.create_hosts_whitelist(None, 1000)
    assert hosts == ["localhost:1000"]

    hosts = util.create_hosts_whitelist([], 1000)
    assert hosts == ["localhost:1000"]