| 1833 | |
| 1834 | @pytest.mark.parametrize("typ", ["array", "chunked_array"]) |
| 1835 | def test_compare_string_scalar(typ): |
| 1836 | if typ == "array": |
| 1837 | def con(values): |
| 1838 | return pa.array(values) |
| 1839 | else: |
| 1840 | def con(values): |
| 1841 | return pa.chunked_array([values]) |
| 1842 | |
| 1843 | arr = con(['a', 'b', 'c', None]) |
| 1844 | scalar = pa.scalar('b') |
| 1845 | |
| 1846 | result = pc.equal(arr, scalar) |
| 1847 | assert result.equals(con([False, True, False, None])) |
| 1848 | |
| 1849 | if typ == "array": |
| 1850 | nascalar = pa.scalar(None, type="string") |
| 1851 | result = pc.equal(arr, nascalar) |
| 1852 | isnull = pc.is_null(result) |
| 1853 | assert isnull.equals(con([True, True, True, True])) |
| 1854 | |
| 1855 | result = pc.not_equal(arr, scalar) |
| 1856 | assert result.equals(con([True, False, True, None])) |
| 1857 | |
| 1858 | result = pc.less(arr, scalar) |
| 1859 | assert result.equals(con([True, False, False, None])) |
| 1860 | |
| 1861 | result = pc.less_equal(arr, scalar) |
| 1862 | assert result.equals(con([True, True, False, None])) |
| 1863 | |
| 1864 | result = pc.greater(arr, scalar) |
| 1865 | assert result.equals(con([False, False, True, None])) |
| 1866 | |
| 1867 | result = pc.greater_equal(arr, scalar) |
| 1868 | assert result.equals(con([False, True, True, None])) |
| 1869 | |
| 1870 | |
| 1871 | @pytest.mark.parametrize("typ", ["array", "chunked_array"]) |