| 562 | (pa.binary_view(), pa.BinaryViewScalar), |
| 563 | ]) |
| 564 | def test_binary(value, ty, scalar_typ): |
| 565 | s = pa.scalar(value, type=ty) |
| 566 | assert isinstance(s, scalar_typ) |
| 567 | assert s.as_py() == value |
| 568 | assert str(s) == str(value) |
| 569 | assert repr(value) in repr(s) |
| 570 | assert s.as_py() == value |
| 571 | assert s != b'xxxxx' |
| 572 | |
| 573 | buf = s.as_buffer() |
| 574 | |
| 575 | if value is None: |
| 576 | assert buf is None |
| 577 | with pytest.raises(ValueError): |
| 578 | memoryview(s) |
| 579 | else: |
| 580 | assert buf.to_pybytes() == value |
| 581 | assert isinstance(buf, pa.Buffer) |
| 582 | assert bytes(s) == value |
| 583 | |
| 584 | memview = memoryview(s) |
| 585 | assert memview.tobytes() == value |
| 586 | assert memview.format == 'b' |
| 587 | assert memview.itemsize == 1 |
| 588 | assert memview.ndim == 1 |
| 589 | assert memview.shape == (len(value),) |
| 590 | assert memview.strides == (1,) |
| 591 | |
| 592 | |
| 593 | def test_fixed_size_binary(): |