Sha256: d0abd45d42dd4e88471118431e446c00222b3c672846e25ef6b5a491640d9cd1

Contents?: true

Size: 1.97 KB

Versions: 3

Compression:

Stored size: 1.97 KB

Contents

# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements.  See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership.  The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License.  You may obtain a copy of the License at
#
#   http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied.  See the License for the
# specific language governing permissions and limitations
# under the License.

class TestArrowTableReader < Test::Unit::TestCase
  def setup
    @count_field = Arrow::Field.new("count", :uint8)
    @visible_field = Arrow::Field.new("visible", :boolean)
    schema = Arrow::Schema.new([@count_field, @visible_field])
    count_arrays = [
      Arrow::UInt8Array.new([1, 2]),
      Arrow::UInt8Array.new([4, 8, 16]),
      Arrow::UInt8Array.new([32, 64]),
      Arrow::UInt8Array.new([128]),
    ]
    visible_arrays = [
      Arrow::BooleanArray.new([true, false, nil]),
      Arrow::BooleanArray.new([true]),
      Arrow::BooleanArray.new([true, false]),
      Arrow::BooleanArray.new([nil]),
      Arrow::BooleanArray.new([nil]),
    ]
    @count_array = Arrow::ChunkedArray.new(count_arrays)
    @visible_array = Arrow::ChunkedArray.new(visible_arrays)
    @table = Arrow::Table.new(schema, [@count_array, @visible_array])
  end

  def test_save_load_path
    tempfile = Tempfile.open(["red-parquet", ".parquet"])
    @table.save(tempfile.path)
    assert_equal(@table, Arrow::Table.load(tempfile.path))
  end

  def test_save_load_buffer
    buffer = Arrow::ResizableBuffer.new(1024)
    @table.save(buffer, format: :parquet)
    assert_equal(@table, Arrow::Table.load(buffer, format: :parquet))
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
red-parquet-0.16.0 test/test-arrow-table.rb
red-parquet-0.15.1 test/test-arrow-table.rb
red-parquet-0.15.0 test/test-arrow-table.rb