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

Method test_inherited_join

xarray/tests/test_merge.py:907–940  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

905 assert_equal(merged, expected)
906
907 def test_inherited_join(self) -> None:
908 tree1 = xr.DataTree.from_dict({"/a/b": ("x", [0, 1])}, coords={"x": [0, 1]})
909 tree2 = xr.DataTree.from_dict({"/a/c": ("x", [1, 2])}, coords={"x": [1, 2]})
910
911 expected = xr.DataTree.from_dict(
912 {"/a/b": ("x", [0, 1]), "a/c": ("x", [np.nan, 1])}, coords={"x": [0, 1]}
913 )
914 merged = xr.merge([tree1, tree2], join="left")
915 assert_equal(merged, expected)
916
917 expected = xr.DataTree.from_dict(
918 {"/a/b": ("x", [1, np.nan]), "a/c": ("x", [1, 2])}, coords={"x": [1, 2]}
919 )
920 merged = xr.merge([tree1, tree2], join="right")
921 assert_equal(merged, expected)
922
923 expected = xr.DataTree.from_dict(
924 {"/a/b": ("x", [1]), "a/c": ("x", [1])}, coords={"x": [1]}
925 )
926 merged = xr.merge([tree1, tree2], join="inner")
927 assert_equal(merged, expected)
928
929 expected = xr.DataTree.from_dict(
930 {"/a/b": ("x", [0, 1, np.nan]), "a/c": ("x", [np.nan, 1, 2])},
931 coords={"x": [0, 1, 2]},
932 )
933 merged = xr.merge([tree1, tree2], join="outer")
934 assert_equal(merged, expected)
935
936 with pytest.raises(
937 xr.AlignmentError,
938 match=re.escape("cannot align objects with join='exact'"),
939 ):
940 xr.merge([tree1, tree2], join="exact")
941
942 def test_merge_error_includes_path(self) -> None:
943 tree1 = xr.DataTree.from_dict({"/a/b": ("x", [0, 1])})

Callers

nothing calls this directly

Calls 3

assert_equalFunction · 0.90
from_dictMethod · 0.45
mergeMethod · 0.45

Tested by

no test coverage detected