(dtype)
| 1567 | |
| 1568 | |
| 1569 | def test_match(dtype) -> None: |
| 1570 | values = xr.DataArray(["fooBAD__barBAD", "foo"]).astype(dtype) |
| 1571 | |
| 1572 | # New match behavior introduced in 0.13 |
| 1573 | pat = values.dtype.type(".*(BAD[_]+).*(BAD)") |
| 1574 | result = values.str.match(pat) |
| 1575 | expected = xr.DataArray([True, False]) |
| 1576 | assert result.dtype == expected.dtype |
| 1577 | assert_equal(result, expected) |
| 1578 | result = values.str.match(re.compile(pat)) |
| 1579 | assert result.dtype == expected.dtype |
| 1580 | assert_equal(result, expected) |
| 1581 | |
| 1582 | # Case-sensitive |
| 1583 | pat = values.dtype.type(".*BAD[_]+.*BAD") |
| 1584 | result = values.str.match(pat) |
| 1585 | expected = xr.DataArray([True, False]) |
| 1586 | assert result.dtype == expected.dtype |
| 1587 | assert_equal(result, expected) |
| 1588 | result = values.str.match(re.compile(pat)) |
| 1589 | assert result.dtype == expected.dtype |
| 1590 | assert_equal(result, expected) |
| 1591 | |
| 1592 | # Case-insensitive |
| 1593 | pat = values.dtype.type(".*bAd[_]+.*bad") |
| 1594 | result = values.str.match(pat, case=False) |
| 1595 | expected = xr.DataArray([True, False]) |
| 1596 | assert result.dtype == expected.dtype |
| 1597 | assert_equal(result, expected) |
| 1598 | result = values.str.match(re.compile(pat, flags=re.IGNORECASE)) |
| 1599 | assert result.dtype == expected.dtype |
| 1600 | assert_equal(result, expected) |
| 1601 | |
| 1602 | |
| 1603 | def test_empty_str_methods() -> None: |
nothing calls this directly
no test coverage detected
searching dependent graphs…