| 1687 | |
| 1688 | @pytest.mark.parametrize("typ", ["array", "chunked_array"]) |
| 1689 | def test_compare_string_scalar(typ): |
| 1690 | if typ == "array": |
| 1691 | def con(values): |
| 1692 | return pa.array(values) |
| 1693 | else: |
| 1694 | def con(values): |
| 1695 | return pa.chunked_array([values]) |
| 1696 | |
| 1697 | arr = con(['a', 'b', 'c', None]) |
| 1698 | scalar = pa.scalar('b') |
| 1699 | |
| 1700 | result = pc.equal(arr, scalar) |
| 1701 | assert result.equals(con([False, True, False, None])) |
| 1702 | |
| 1703 | if typ == "array": |
| 1704 | nascalar = pa.scalar(None, type="string") |
| 1705 | result = pc.equal(arr, nascalar) |
| 1706 | isnull = pc.is_null(result) |
| 1707 | assert isnull.equals(con([True, True, True, True])) |
| 1708 | |
| 1709 | result = pc.not_equal(arr, scalar) |
| 1710 | assert result.equals(con([True, False, True, None])) |
| 1711 | |
| 1712 | result = pc.less(arr, scalar) |
| 1713 | assert result.equals(con([True, False, False, None])) |
| 1714 | |
| 1715 | result = pc.less_equal(arr, scalar) |
| 1716 | assert result.equals(con([True, True, False, None])) |
| 1717 | |
| 1718 | result = pc.greater(arr, scalar) |
| 1719 | assert result.equals(con([False, False, True, None])) |
| 1720 | |
| 1721 | result = pc.greater_equal(arr, scalar) |
| 1722 | assert result.equals(con([False, True, True, None])) |
| 1723 | |
| 1724 | |
| 1725 | @pytest.mark.parametrize("typ", ["array", "chunked_array"]) |