1import numpy as np 2import pytest 3 4import pandas as pd 5from pandas.core.arrays.floating import Float32Dtype, Float64Dtype 6 7 8@pytest.fixture(params=[Float32Dtype, Float64Dtype]) 9def dtype(request): 10 return request.param() 11 12 13@pytest.fixture 14def data(dtype): 15 return pd.array( 16 list(np.arange(0.1, 0.9, 0.1)) 17 + [pd.NA] 18 + list(np.arange(1, 9.8, 0.1)) 19 + [pd.NA] 20 + [9.9, 10.0], 21 dtype=dtype, 22 ) 23 24 25@pytest.fixture 26def data_missing(dtype): 27 return pd.array([np.nan, 0.1], dtype=dtype) 28 29 30@pytest.fixture(params=["data", "data_missing"]) 31def all_data(request, data, data_missing): 32 """Parametrized fixture giving 'data' and 'data_missing'""" 33 if request.param == "data": 34 return data 35 elif request.param == "data_missing": 36 return data_missing 37