| 42 | end |
| 43 | |
| 44 | def test_prepare |
| 45 | insert_sql = "INSERT INTO page_view_table VALUES ($1, true)" |
| 46 | block_called = false |
| 47 | options = ArrowFlight::CallOptions.new |
| 48 | options.add_header("x-access-key", "secret") |
| 49 | @sql_client.prepare(insert_sql, options) do |statement| |
| 50 | block_called = true |
| 51 | assert_equal([ |
| 52 | Arrow::Schema.new(count: :uint64, private: :boolean), |
| 53 | Arrow::Schema.new(count: :uint64), |
| 54 | ], |
| 55 | [ |
| 56 | statement.dataset_schema, |
| 57 | statement.parameter_schema, |
| 58 | ]) |
| 59 | counts = Arrow::UInt64Array.new([1, 2, 3]) |
| 60 | parameters = Arrow::RecordBatch.new(count: counts) |
| 61 | statement.set_record_batch(parameters) |
| 62 | assert_equal(3, statement.execute_update) |
| 63 | end |
| 64 | assert_true(block_called) |
| 65 | end |
| 66 | end |
nothing calls this directly
no test coverage detected