]> git.proxmox.com Git - ceph.git/blob - ceph/src/arrow/c_glib/test/gandiva/test-function-registry.rb
import quincy 17.2.0
[ceph.git] / ceph / src / arrow / c_glib / test / gandiva / test-function-registry.rb
1 # Licensed to the Apache Software Foundation (ASF) under one
2 # or more contributor license agreements. See the NOTICE file
3 # distributed with this work for additional information
4 # regarding copyright ownership. The ASF licenses this file
5 # to you under the Apache License, Version 2.0 (the
6 # "License"); you may not use this file except in compliance
7 # with the License. You may obtain a copy of the License at
8 #
9 # http://www.apache.org/licenses/LICENSE-2.0
10 #
11 # Unless required by applicable law or agreed to in writing,
12 # software distributed under the License is distributed on an
13 # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14 # KIND, either express or implied. See the License for the
15 # specific language governing permissions and limitations
16 # under the License.
17
18 class TestGandivaFunctionRegistry < Test::Unit::TestCase
19 include Helper::DataType
20
21 def setup
22 omit("Gandiva is required") unless defined?(::Gandiva)
23 @registry = Gandiva::FunctionRegistry.new
24 end
25
26 sub_test_case("lookup") do
27 def test_found
28 native_function = @registry.native_functions[0]
29 assert_equal(native_function,
30 @registry.lookup(native_function.signatures[0]))
31 end
32
33 def test_not_found
34 signature = Gandiva::FunctionSignature.new("nonexistent",
35 [],
36 boolean_data_type)
37 assert_nil(@registry.lookup(signature))
38 end
39 end
40
41 def test_native_functions
42 assert_equal([Gandiva::NativeFunction],
43 @registry.native_functions.collect(&:class).uniq)
44 end
45 end