1+ import logging
12from dataclasses import dataclass
23from datetime import datetime , timedelta
34from typing import List
1819from tests .integration .feature_repos .universal .entities import driver
1920from tests .integration .feature_repos .universal .feature_views import driver_feature_view
2021
22+ logger = logging .getLogger (__name__ )
23+
2124
2225def populate_test_configs (offline : bool ):
2326 entity_type_feature_dtypes = [
@@ -106,14 +109,19 @@ def get_fixtures(request):
106109 field_mapping = {"ts_1" : "ts" },
107110 )
108111 fv = create_feature_view (
112+ request .fixturename ,
109113 config .feature_dtype ,
110114 config .feature_is_list ,
111115 config .has_empty_list ,
112116 data_source ,
113117 )
114118
115119 def cleanup ():
116- type_test_environment .data_source_creator .teardown ()
120+ try :
121+ type_test_environment .data_source_creator .teardown ()
122+ except Exception : # noqa
123+ logger .exception ("DataSourceCreator teardown has failed" )
124+
117125 type_test_environment .feature_store .teardown ()
118126
119127 request .addfinalizer (cleanup )
@@ -151,7 +159,11 @@ def test_feature_get_historical_features_types_match(offline_types_test_fixtures
151159 environment , config , data_source , fv = offline_types_test_fixtures
152160 fs = environment .feature_store
153161 fv = create_feature_view (
154- config .feature_dtype , config .feature_is_list , config .has_empty_list , data_source
162+ "get_historical_features_types_match" ,
163+ config .feature_dtype ,
164+ config .feature_is_list ,
165+ config .has_empty_list ,
166+ data_source ,
155167 )
156168 entity = driver ()
157169 fs .apply ([fv , entity ])
@@ -197,7 +209,11 @@ def test_feature_get_historical_features_types_match(offline_types_test_fixtures
197209def test_feature_get_online_features_types_match (online_types_test_fixtures ):
198210 environment , config , data_source , fv = online_types_test_fixtures
199211 fv = create_feature_view (
200- config .feature_dtype , config .feature_is_list , config .has_empty_list , data_source
212+ "get_online_features_types_match" ,
213+ config .feature_dtype ,
214+ config .feature_is_list ,
215+ config .has_empty_list ,
216+ data_source ,
201217 )
202218 fs = environment .feature_store
203219 features = [fv .name + ":value" ]
@@ -230,7 +246,9 @@ def test_feature_get_online_features_types_match(online_types_test_fixtures):
230246 assert isinstance (feature , expected_dtype )
231247
232248
233- def create_feature_view (feature_dtype , feature_is_list , has_empty_list , data_source ):
249+ def create_feature_view (
250+ name , feature_dtype , feature_is_list , has_empty_list , data_source
251+ ):
234252 if feature_is_list is True :
235253 if feature_dtype == "int32" :
236254 value_type = ValueType .INT32_LIST
@@ -249,7 +267,8 @@ def create_feature_view(feature_dtype, feature_is_list, has_empty_list, data_sou
249267 value_type = ValueType .FLOAT
250268 elif feature_dtype == "bool" :
251269 value_type = ValueType .BOOL
252- return driver_feature_view (data_source , value_type = value_type ,)
270+
271+ return driver_feature_view (data_source , name = name , value_type = value_type ,)
253272
254273
255274def assert_expected_historical_feature_types (
0 commit comments