()
| 622 | |
| 623 | |
| 624 | def test_BufferWriter_edge_cases(): |
| 625 | # edge cases, see cuda-test.cc for more information: |
| 626 | size = 1000 |
| 627 | cbuf = global_context.new_buffer(size) |
| 628 | writer = cuda.BufferWriter(cbuf) |
| 629 | arr, buf = make_random_buffer(size=size, target='host') |
| 630 | |
| 631 | assert writer.buffer_size == 0 |
| 632 | writer.buffer_size = 100 |
| 633 | assert writer.buffer_size == 100 |
| 634 | |
| 635 | writer.write(buf.slice(length=0)) |
| 636 | assert writer.tell() == 0 |
| 637 | |
| 638 | writer.write(buf.slice(length=10)) |
| 639 | writer.buffer_size = 200 |
| 640 | assert writer.buffer_size == 200 |
| 641 | assert writer.num_bytes_buffered == 0 |
| 642 | |
| 643 | writer.write(buf.slice(offset=10, length=300)) |
| 644 | assert writer.num_bytes_buffered == 0 |
| 645 | |
| 646 | writer.write(buf.slice(offset=310, length=200)) |
| 647 | assert writer.num_bytes_buffered == 0 |
| 648 | |
| 649 | writer.write(buf.slice(offset=510, length=390)) |
| 650 | writer.write(buf.slice(offset=900, length=100)) |
| 651 | |
| 652 | writer.flush() |
| 653 | |
| 654 | buf2 = cbuf.copy_to_host() |
| 655 | assert buf2.size == size |
| 656 | arr2 = np.frombuffer(buf2, dtype=np.uint8) |
| 657 | np.testing.assert_equal(arr, arr2) |
| 658 | |
| 659 | |
| 660 | def test_BufferReader(): |
nothing calls this directly
no test coverage detected