# 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. # This file is called from a test in test_pandas.py. from threading import Thread import pandas as pd from pyarrow.pandas_compat import _pandas_api if __name__ == "__main__": wait = True num_threads = 10 df = pd.DataFrame() results = [] def rc(): while wait: pass results.append(_pandas_api.is_data_frame(df)) threads = [Thread(target=rc) for _ in range(num_threads)] for t in threads: t.start() wait = False for t in threads: t.join() assert len(results) == num_threads assert all(results), "`is_data_frame` returned False when given a DataFrame"