Пример #1
0
def test_convert_datetime_type_pandas_types(pd):
    assert bus.convert_datetime_type(bus._pd_timestamp(3000000)) == 3.0
    assert bus.convert_datetime_type(pd.Period('1900',
                                               'A-DEC')) == -2208988800000.0
    assert bus.convert_datetime_type(pd.Period(
        '1900',
        'A-DEC')) == bus.convert_datetime_type(np.datetime64("1900-01-01"))
Пример #2
0
def test_daterangeslider_value_as_date_when_set_as_timestamp():
    start = date(2017, 8, 9)
    end = date(2017, 8, 10)
    s = mws.DateRangeSlider(start=start, end=end,
            # Bokeh serializes as ms since epoch, if they get set as numbers (e.g.)
            # by client side update, this is the units they will be
            value=(convert_datetime_type(start), convert_datetime_type(end)))
    assert s.value_as_date == (start, end)
Пример #3
0
def test_daterangeslider_value_as_datetime_when_set_as_timestamp():
    start = datetime(2017, 8, 9, 0, 0)
    end = datetime(2017, 8, 10, 0, 0)
    s = mws.DateRangeSlider(start=start, end=end,
            # Bokeh serializes as ms since epoch, if they get set as numbers (e.g.)
            # by client side update, this is the units they will be
            value=(convert_datetime_type(start), convert_datetime_type(end)))
    assert s.value_as_datetime == (start, end)
Пример #4
0
def test_convert_datetime_type_pandas_types(pd) -> None:
    assert bus.convert_datetime_type(pd.Timestamp(3000000)) == 3.0
    assert bus.convert_datetime_type(pd.Period('1900',
                                               'A-DEC')) == -2208988800000.0
    assert bus.convert_datetime_type(pd.Period(
        '1900',
        'A-DEC')) == bus.convert_datetime_type(np.datetime64("1900-01-01"))
    assert np.isnan(bus.convert_datetime_type(pd.NaT))
Пример #5
0
def test_daterangeslider_value_as_date_when_set_mixed():
    start = date(2017, 8, 9)
    end = date(2017, 8, 10)
    s = mws.DateRangeSlider(start=start, end=end,
            value=(start, convert_datetime_type(end)))
    assert s.value_as_date == (start, end)

    s = mws.DateRangeSlider(start=start, end=end,
            value=(convert_datetime_type(start), end))
    assert s.value_as_date == (start, end)
Пример #6
0
    def test_value_as_datetime_when_set_mixed(self) -> None:
        start = datetime(2017, 8, 9, 0, 0)
        end = datetime(2017, 8, 10, 0, 0)
        s = mws.DateRangeSlider(start=start, end=end,
                value=(start, convert_datetime_type(end)))
        assert s.value_as_datetime == (start, end)

        s = mws.DateRangeSlider(start=start, end=end,
                value=(convert_datetime_type(start), end))
        assert s.value_as_datetime == (start, end)
Пример #7
0
def test_daterangeslider_value_as_datetime_when_set_mixed():
    start = datetime(2017, 8, 9, 0, 0)
    end = datetime(2017, 8, 10, 0, 0)
    s = mws.DateRangeSlider(start=start, end=end,
            value=(start, convert_datetime_type(end)))
    assert s.value_as_datetime == (start, end)

    s = mws.DateRangeSlider(start=start, end=end,
            value=(convert_datetime_type(start), end))
    assert s.value_as_datetime == (start, end)
Пример #8
0
def test_convert_datetime_type():
    assert bus.convert_datetime_type(datetime.datetime(2018, 1, 3, 15, 37, 59, 922452)) == 1514993879922.452
    assert bus.convert_datetime_type(datetime.datetime(2018, 1, 3, 15, 37, 59)) == 1514993879000.0
    assert bus.convert_datetime_type(datetime.datetime(2016, 5, 11)) == 1462924800000.0
    assert bus.convert_datetime_type(datetime.timedelta(3000)) == 259200000000.0
    assert bus.convert_datetime_type(datetime.date(2016, 5, 11)) == 1462924800000.0
    assert bus.convert_datetime_type(datetime.time(3, 54)) == 14040000.0
    assert bus.convert_datetime_type(np.datetime64("2016-05-11")) == 1462924800000.0
    assert bus.convert_datetime_type(np.timedelta64(3000, 'ms')) == 3000.0
    assert bus.convert_datetime_type(pd.Timedelta("3000ms")) == 3000.0
    assert bus.convert_datetime_type(bus._pd_timestamp(3000000)) == 3.0
Пример #9
0
    def test_value_and_value_throttled(self) -> None:
        start = datetime(2021, 1, 1)
        end = datetime(2021, 12, 31)
        value = (convert_datetime_type(datetime(2021, 2, 1)), convert_datetime_type(datetime(2021, 2, 28)))

        s0 = mws.DateRangeSlider(start=start, end=end)
        with pytest.raises(UnsetValueError):
            s0.value
        with pytest.raises(UnsetValueError):
            s0.value_throttled

        s1 = mws.DateRangeSlider(start=start, end=end, value=value)
        assert s1.value == value
        assert s1.value_throttled == value
Пример #10
0
def test_convert_datetime_type_with_tz() -> None:
    # This ensures datetimes are sent to BokehJS timezone-naive
    # see https://github.com/bokeh/bokeh/issues/6480
    for tz in pytz.all_timezones:
        assert bus.convert_datetime_type(
            datetime.datetime(2016, 5, 11,
                              tzinfo=datetime.tzinfo(tz))) == 1462924800000.0
Пример #11
0
def test_convert_datetime_type():
    assert bus.convert_datetime_type(datetime.datetime(2016, 5, 11)) == 1462924800000.0
    assert bus.convert_datetime_type(datetime.timedelta(3000)) == 259200000000.0
    assert bus.convert_datetime_type(datetime.date(2016, 5, 11)) == 1462924800000.0
    assert bus.convert_datetime_type(datetime.time(3, 54)) == 14040000.0
    assert bus.convert_datetime_type(np.datetime64("2016-05-11")) == 1462924800000.0
    assert bus.convert_datetime_type(np.timedelta64(3000, 'ms')) == 3000.0
    assert bus.convert_datetime_type(pd.Timedelta("3000ms")) == 3000.0
    assert bus.convert_datetime_type(bus._pd_timestamp(3000000)) == 3.0
def test_convert_datetime_type():
    assert bus.convert_datetime_type(datetime.datetime(2016, 5, 11)) == 1462924800000.0
    assert bus.convert_datetime_type(datetime.timedelta(3000)) == 259200000000.0
    assert bus.convert_datetime_type(datetime.date(2016, 5, 11)) == 1462924800000.0
    assert bus.convert_datetime_type(datetime.time(3, 54)) == 14040000.0
    assert bus.convert_datetime_type(np.datetime64("2016-05-11")) == 1462924800000.0
    assert bus.convert_datetime_type(np.timedelta64(3000, 'ms')) == 3000.0
    assert bus.convert_datetime_type(pd.Timedelta("3000ms")) == 3000.0
    assert bus.convert_datetime_type(bus._pd_timestamp(3000000)) == 3.0
Пример #13
0
 def test_value_as_datetime_when_set_as_timestamp(self) -> None:
     start = datetime(2017, 8, 9, 0, 0)
     end = datetime(2017, 8, 10, 0, 0)
     s = mws.DateSlider(start=start, end=end,
         # Bokeh serializes as ms since epoch, if they get set as numbers (e.g.)
         # by client side update, this is the units they will be
         value=convert_datetime_type(start))
     assert s.value_as_datetime == start
Пример #14
0
def test_convert_datetime_type_non_pandas_types() -> None:
    assert bus.convert_datetime_type(datetime.datetime(2018, 1, 3, 15, 37, 59, 922452)) == 1514993879922.452
    assert bus.convert_datetime_type(datetime.datetime(2018, 1, 3, 15, 37, 59)) == 1514993879000.0
    assert bus.convert_datetime_type(datetime.datetime(2016, 5, 11)) == 1462924800000.0
    assert bus.convert_datetime_type(datetime.time(3, 54)) == 14040000.0
    assert bus.convert_datetime_type(datetime.date(2016, 5, 11)) == 1462924800000.0
    assert bus.convert_datetime_type(np.datetime64("2016-05-11")) == 1462924800000.0
Пример #15
0
def test_convert_datetime_type_non_pandas_types():
    assert bus.convert_datetime_type(datetime.datetime(2018, 1, 3, 15, 37, 59, 922452)) == 1514993879922.452
    assert bus.convert_datetime_type(datetime.datetime(2018, 1, 3, 15, 37, 59)) == 1514993879000.0
    assert bus.convert_datetime_type(datetime.datetime(2016, 5, 11)) == 1462924800000.0
    assert bus.convert_datetime_type(datetime.date(2016, 5, 11)) == 1462924800000.0
    assert bus.convert_datetime_type(datetime.time(3, 54)) == 14040000.0
    assert bus.convert_datetime_type(np.datetime64("2016-05-11")) == 1462924800000.0
Пример #16
0
def test_convert_datetime_type_with_tz():
    # This ensures datetimes are sent to BokehJS timezone-naive
    # see https://github.com/bokeh/bokeh/issues/6480
    for tz in pytz.all_timezones:
        assert bus.convert_datetime_type(datetime.datetime(2016, 5, 11, tzinfo=datetime.tzinfo(tz))) == 1462924800000.0
Пример #17
0
def test_convert_datetime_type_pandas_types(pd):
    assert bus.convert_datetime_type(bus._pd_timestamp(3000000)) == 3.0
    assert bus.convert_datetime_type(pd.Period('1900', 'A-DEC')) == -2208988800000.0
    assert bus.convert_datetime_type(pd.Period('1900', 'A-DEC')) == bus.convert_datetime_type(np.datetime64("1900-01-01"))
    assert np.isnan(bus.convert_datetime_type(pd.NaT))