@@ -1193,6 +1193,7 @@ def test_coarse_match_filter_small_dataset_uses_in_filter() -> None:
11931193
11941194 assert num_keys < LARGE_FILTER_THRESHOLD
11951195 assert isinstance (result , In )
1196+ assert isinstance (result .term , Reference )
11961197 assert result .term .name == "id"
11971198 assert len (result .literals ) == num_keys
11981199
@@ -1212,6 +1213,7 @@ def test_coarse_match_filter_threshold_boundary_uses_in_filter() -> None:
12121213 result = create_coarse_match_filter (table , ["id" ])
12131214
12141215 assert isinstance (result , In )
1216+ assert isinstance (result .term , Reference )
12151217 assert result .term .name == "id"
12161218 assert len (result .literals ) == num_keys
12171219
@@ -1401,10 +1403,12 @@ def test_coarse_match_filter_single_value_dataset() -> None:
14011403
14021404 # PyIceberg may optimize In() with a single value to EqualTo()
14031405 if isinstance (result , In ):
1406+ assert isinstance (result .term , Reference )
14041407 assert result .term .name == "id"
14051408 assert len (result .literals ) == 1
1406- assert result .literals [ 0 ] .value == 42
1409+ assert next ( iter ( result .literals )) .value == 42
14071410 elif isinstance (result , EqualTo ):
1411+ assert isinstance (result .term , Reference )
14081412 assert result .term .name == "id"
14091413 assert result .literal .value == 42
14101414 else :
0 commit comments