| 589 | assert isinstance(da.xindexes[name], MultiDimIndex) |
| 590 | |
| 591 | def test_equals_and_identical(self) -> None: |
| 592 | orig = DataArray(np.arange(5.0), {"a": 42}, dims="x") |
| 593 | |
| 594 | expected = orig |
| 595 | actual = orig.copy() |
| 596 | assert expected.equals(actual) |
| 597 | assert expected.identical(actual) |
| 598 | |
| 599 | actual = expected.rename("baz") |
| 600 | assert expected.equals(actual) |
| 601 | assert not expected.identical(actual) |
| 602 | |
| 603 | actual = expected.rename({"x": "xxx"}) |
| 604 | assert not expected.equals(actual) |
| 605 | assert not expected.identical(actual) |
| 606 | |
| 607 | actual = expected.copy() |
| 608 | actual.attrs["foo"] = "bar" |
| 609 | assert expected.equals(actual) |
| 610 | assert not expected.identical(actual) |
| 611 | |
| 612 | actual = expected.copy() |
| 613 | actual["x"] = ("x", -np.arange(5)) |
| 614 | assert not expected.equals(actual) |
| 615 | assert not expected.identical(actual) |
| 616 | |
| 617 | actual = expected.reset_coords(drop=True) |
| 618 | assert not expected.equals(actual) |
| 619 | assert not expected.identical(actual) |
| 620 | |
| 621 | actual = orig.copy() |
| 622 | actual[0] = np.nan |
| 623 | expected = actual.copy() |
| 624 | assert expected.equals(actual) |
| 625 | assert expected.identical(actual) |
| 626 | |
| 627 | actual[:] = np.nan |
| 628 | assert not expected.equals(actual) |
| 629 | assert not expected.identical(actual) |
| 630 | |
| 631 | actual = expected.copy() |
| 632 | actual["a"] = 100000 |
| 633 | assert not expected.equals(actual) |
| 634 | assert not expected.identical(actual) |
| 635 | |
| 636 | def test_equals_failures(self) -> None: |
| 637 | orig = DataArray(np.arange(5.0), {"a": 42}, dims="x") |