def test_server_title_updates(self, bokeh_server_page) -> None: def modify_doc(doc): plot = Plot(height=400, width=400, x_range=Range1d(0, 1), y_range=Range1d(0, 1), min_border=0) slider = DateSlider(start=start, end=end, value=value, css_classes=["foo"], width=300) def cb(attr, old, new): slider.title = "baz" slider.on_change('value', cb) doc.add_root(column(slider, plot)) page = bokeh_server_page(modify_doc) drag_slider(page.driver, ".foo", 150) sleep(1) # noUiSlider does a transition that takes some time assert get_slider_title_text(page.driver, ".foo") > "04 Aug 2017"
def test_displays_title_scientific(self, bokeh_model_page) -> None: slider = RangeSlider(start=0, end=10e-6, step=1e-6, value=(1e-6, 8e-6), title="bar", format=BasicTickFormatter(precision=2), css_classes=["foo"], width=300) page = bokeh_model_page(slider) el = page.driver.find_element_by_css_selector('.foo') assert len( el.find_elements_by_css_selector('div.bk-input-group > div')) == 2 # XXX: WebElement.text returns undecoded UTF-8 byte strings as str (!) (not bytes) def decode(s: str) -> str: return bytes(map(ord, s)).decode("utf-8") t0 = decode(get_slider_title_text(page.driver, ".foo")) t1 = decode(get_slider_title_value(page.driver, ".foo")) assert t0 == "bar: 1.00e\u22126 .. 8.00e\u22126" assert t1 == "1.00e\u22126 .. 8.00e\u22126" assert page.has_no_console_errors()
def test_displays_title(self, bokeh_model_page) -> None: slider = Slider(start=0, end=10, value=1, title="bar", css_classes=["foo"], width=300) page = bokeh_model_page(slider) el = page.driver.find_element_by_css_selector('.foo') assert len(el.find_elements_by_css_selector('div.bk-input-group > div')) == 2 assert get_slider_title_text(page.driver, ".foo") == "bar: 1" assert float(get_slider_title_value(page.driver, ".foo")) == 1 assert page.has_no_console_errors()
def test_displays_title(self, bokeh_model_page) -> None: slider = DateSlider(start=start, end=end, value=value, css_classes=["foo"], width=300) page = bokeh_model_page(slider) el = page.driver.find_element_by_css_selector('.foo') assert len(el.find_elements_by_css_selector('div.bk-input-group > div')) == 2 assert get_slider_title_text(page.driver, ".foo") == "04 Aug 2017" assert get_slider_title_value(page.driver, ".foo") == "04 Aug 2017" assert page.has_no_console_errors()
def test_displays_title(self, bokeh_model_page: BokehModelPage) -> None: slider = DateSlider(start=start, end=end, value=value, width=300) page = bokeh_model_page(slider) children = find_elements_for(page.driver, slider, "div.bk-input-group > div") assert len(children) == 2 assert get_slider_title_text(page.driver, slider) == "04 Aug 2017" assert get_slider_title_value(page.driver, slider) == "04 Aug 2017" assert page.has_no_console_errors()
def test_displays_title(self, bokeh_model_page: BokehModelPage) -> None: slider = Slider(start=0, end=10, value=1, title="bar", width=300) page = bokeh_model_page(slider) children = find_elements_for(page.driver, slider, "div.bk-input-group > div") assert len(children) == 2 assert get_slider_title_text(page.driver, slider) == "bar: 1" assert float(get_slider_title_value(page.driver, slider)) == 1 assert page.has_no_console_errors()
def test_displays_title_scientific(self, bokeh_model_page) -> None: slider = RangeSlider(start=0, end=10e-6, step=1e-6, value=(1e-6, 8e-6), title="bar", format=BasicTickFormatter(precision=2), css_classes=["foo"], width=300) page = bokeh_model_page(slider) el = page.driver.find_element_by_css_selector('.foo') assert len(el.find_elements_by_css_selector('div.bk-input-group > div')) == 2 assert get_slider_title_text(page.driver, ".foo") == "bar: 1.00e-6 .. 8.00e-6" assert get_slider_title_value(page.driver, ".foo") == "1.00e-6 .. 8.00e-6" assert page.has_no_console_errors()
def test_displays_title(self, bokeh_model_page: BokehModelPage) -> None: slider = DatetimeRangeSlider(start=start, end=end, value=value, width=300) page = bokeh_model_page(slider) children = find_elements_for(page.driver, slider, "div.bk-input-group > div") assert len(children) == 2 assert get_slider_title_text( page.driver, slider) == '02 Feb 2022 05:04:03 .. 24 Mar 2022 12:34:56' assert get_slider_title_value( page.driver, slider) == '02 Feb 2022 05:04:03 .. 24 Mar 2022 12:34:56' assert page.has_no_console_errors()
def test_displays_title_scientific( self, bokeh_model_page: BokehModelPage) -> None: slider = RangeSlider(start=0, end=10e-6, step=1e-6, value=(1e-6, 8e-6), title="bar", format=BasicTickFormatter(precision=2), width=300) page = bokeh_model_page(slider) children = find_elements_for(page.driver, slider, "div.bk-input-group > div") assert len(children) == 2 t0 = get_slider_title_text(page.driver, slider) t1 = get_slider_title_value(page.driver, slider) assert t0 == "bar: 1.00e\u22126 .. 8.00e\u22126" assert t1 == "1.00e\u22126 .. 8.00e\u22126" assert page.has_no_console_errors()
def test_server_title_updates(self, bokeh_server_page: BokehServerPage) -> None: slider = Slider(start=0, end=10, value=1, title="bar", width=300) def modify_doc(doc): plot = Plot(height=400, width=400, x_range=Range1d(0, 1), y_range=Range1d(0, 1), min_border=0) def cb(attr, old, new): slider.title = "baz" slider.on_change('value', cb) doc.add_root(column(slider, plot)) page = bokeh_server_page(modify_doc) drag_slider(page.driver, slider, 150) sleep(1) # noUiSlider does a transition that takes some time assert get_slider_title_text(page.driver, slider) == "baz: 6"