MCPcopy Index your code
hub / github.com/pydata/xarray / test_use_cftime_true

Function test_use_cftime_true

xarray/tests/test_backends.py:7115–7140  ·  view source on GitHub ↗
(calendar, units_year)

Source from the content-addressed store, hash-verified

7113@pytest.mark.parametrize("calendar", _ALL_CALENDARS)
7114@pytest.mark.parametrize("units_year", [1500, 2000, 2500])
7115def test_use_cftime_true(calendar, units_year) -> None:
7116 import cftime
7117
7118 x = [0, 1]
7119 time = [0, 720]
7120 units = f"days since {units_year}-01-01"
7121 original = DataArray(x, [("time", time)], name="x").to_dataset()
7122 for v in ["x", "time"]:
7123 original[v].attrs["units"] = units
7124 original[v].attrs["calendar"] = calendar
7125
7126 decoded_x = cftime.num2date(x, units, calendar, only_use_cftime_datetimes=True)
7127 decoded_time = cftime.num2date(
7128 time, units, calendar, only_use_cftime_datetimes=True
7129 )
7130 expected_x = DataArray(decoded_x, [("time", decoded_time)], name="x")
7131 expected_time = DataArray(decoded_time, [("time", decoded_time)], name="time")
7132
7133 with create_tmp_file() as tmp_file:
7134 original.to_netcdf(tmp_file)
7135 with warnings.catch_warnings(record=True) as record:
7136 decoder = CFDatetimeCoder(use_cftime=True)
7137 with open_dataset(tmp_file, decode_times=decoder) as ds:
7138 assert_identical(expected_x, ds.x)
7139 assert_identical(expected_time, ds.time)
7140 _assert_no_dates_out_of_range_warning(record)
7141
7142
7143@requires_scipy_or_netCDF4

Callers

nothing calls this directly

Calls 8

DataArrayClass · 0.90
open_datasetFunction · 0.90
assert_identicalFunction · 0.90
create_tmp_fileFunction · 0.85
CFDatetimeCoderClass · 0.85
to_datasetMethod · 0.45
to_netcdfMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…