MCPcopy
hub / github.com/pydata/xarray / test_full_like

Method test_full_like

xarray/tests/test_dataset.py:7162–7203  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

7160 assert result3.attrs == {}
7161
7162 def test_full_like(self) -> None:
7163 # For more thorough tests, see test_variable.py
7164 # Note: testing data_vars with mismatched dtypes
7165 ds = Dataset(
7166 {
7167 "d1": DataArray([1, 2, 3], dims=["x"], coords={"x": [10, 20, 30]}),
7168 "d2": DataArray([1.1, 2.2, 3.3], dims=["y"]),
7169 },
7170 attrs={"foo": "bar"},
7171 )
7172 actual = full_like(ds, 2)
7173
7174 expected = ds.copy(deep=True)
7175 # https://github.com/python/mypy/issues/3004
7176 expected["d1"].values = [2, 2, 2] # type: ignore[assignment,unused-ignore]
7177 expected["d2"].values = [2.0, 2.0, 2.0] # type: ignore[assignment,unused-ignore]
7178 assert expected["d1"].dtype == int
7179 assert expected["d2"].dtype == float
7180 assert_identical(expected, actual)
7181
7182 # override dtype
7183 actual = full_like(ds, fill_value=True, dtype=bool)
7184 expected = ds.copy(deep=True)
7185 expected["d1"].values = [True, True, True] # type: ignore[assignment,unused-ignore]
7186 expected["d2"].values = [True, True, True] # type: ignore[assignment,unused-ignore]
7187 assert expected["d1"].dtype == bool
7188 assert expected["d2"].dtype == bool
7189 assert_identical(expected, actual)
7190
7191 # with multiple fill values
7192 actual = full_like(ds, {"d1": 1, "d2": 2.3})
7193 expected = ds.assign(d1=("x", [1, 1, 1]), d2=("y", [2.3, 2.3, 2.3]))
7194 assert expected["d1"].dtype == int
7195 assert expected["d2"].dtype == float
7196 assert_identical(expected, actual)
7197
7198 # override multiple dtypes
7199 actual = full_like(ds, fill_value={"d1": 1, "d2": 2.3}, dtype={"d1": bool})
7200 expected = ds.assign(d1=("x", [True, True, True]), d2=("y", [2.3, 2.3, 2.3]))
7201 assert expected["d1"].dtype == bool
7202 assert expected["d2"].dtype == float
7203 assert_identical(expected, actual)
7204
7205 def test_combine_first(self) -> None:
7206 dsx0 = DataArray([0, 0], [("x", ["a", "b"])]).to_dataset(name="dsx0")

Callers

nothing calls this directly

Calls 6

copyMethod · 0.95
assignMethod · 0.95
DatasetClass · 0.90
DataArrayClass · 0.90
full_likeFunction · 0.90
assert_identicalFunction · 0.90

Tested by

no test coverage detected