def test_widget_link_no_transform_error(): t1 = DatetimeInput() t2 = TextInput() with pytest.raises(ValueError) as excinfo: t1.jslink(t2, value='value') assert "Cannot jslink \'value\' parameter on DatetimeInput object" in str(excinfo)
def test_widget_link_no_target_transform_error(): t1 = DatetimeInput() t2 = TextInput() with pytest.raises(ValueError) as excinfo: t2.jslink(t1, value='value') assert ( "Cannot jslink 'value' parameter on TextInput object to 'value' parameter on DatetimeInput" ) in str(excinfo)
def test_datetime_input(document, comm): dt_input = DatetimeInput(value=datetime(2018, 1, 1), start=datetime(2017, 12, 31), end=datetime(2018, 1, 10), name='Datetime') widget = dt_input._get_root(document, comm=comm) assert isinstance(widget, dt_input._widget_type) assert widget.title == 'Datetime' assert widget.value == '2018-01-01 00:00:00' dt_input._comm_change({'value': '2018-01-01 00:00:01'}) assert dt_input.value == datetime(2018, 1, 1, 0, 0, 1) assert widget.title == 'Datetime' dt_input._comm_change({'value': '2018-01-01 00:00:01a'}) assert dt_input.value == datetime(2018, 1, 1, 0, 0, 1) assert widget.title == 'Datetime (invalid)' dt_input._comm_change({'value': '2018-01-11 00:00:00'}) assert dt_input.value == datetime(2018, 1, 1, 0, 0, 1) assert widget.title == 'Datetime (out of bounds)' dt_input._comm_change({'value': '2018-01-02 00:00:01'}) assert dt_input.value == datetime(2018, 1, 2, 0, 0, 1) assert widget.title == 'Datetime' with pytest.raises(ValueError): dt_input.value = datetime(2017, 12, 30)
def test_datetime_input(document, comm): dt_input = DatetimeInput(value=datetime(2018, 1, 1), end=datetime(2018, 1, 10), name='Datetime') box = dt_input._get_model(document, comm=comm) assert isinstance(box, WidgetBox) widget = box.children[0] assert isinstance(widget, dt_input._widget_type) assert widget.title == 'Datetime' assert widget.value == '2018-01-01 00:00:00' dt_input._comm_change({'value': '2018-01-01 00:00:01'}) assert dt_input.value == datetime(2018, 1, 1, 0, 0, 1) assert widget.title == 'Datetime' dt_input._comm_change({'value': '2018-01-01 00:00:01a'}) assert dt_input.value == datetime(2018, 1, 1, 0, 0, 1) assert widget.title == 'Datetime (invalid)' dt_input._comm_change({'value': '2018-01-11 00:00:00'}) assert dt_input.value == datetime(2018, 1, 1, 0, 0, 1) assert widget.title == 'Datetime (out of bounds)' dt_input._comm_change({'value': '2018-01-02 00:00:01'}) assert dt_input.value == datetime(2018, 1, 2, 0, 0, 1) assert widget.title == 'Datetime'