File tree 2 files changed +9
-4
lines changed
2 files changed +9
-4
lines changed Original file line number Diff line number Diff line change @@ -55,7 +55,7 @@ def _apply_all(
55
55
if self ._running_avg :
56
56
evaluation .value = self .exec .mean
57
57
58
- if hasattr (self .exec , 'eval_at' ):
58
+ if getattr (self .exec , 'eval_at' , None ):
59
59
evaluation .op_name = f'{ self .exec .__class__ .__name__ } @{ self .exec .eval_at } '
60
60
else :
61
61
evaluation .op_name = self .exec .__class__ .__name__
Original file line number Diff line number Diff line change @@ -137,11 +137,13 @@ def add_matches(doc: jina_pb2.DocumentProto):
137
137
return req
138
138
139
139
140
+ @pytest .mark .parametrize ('eval_at' , [None , 2 ])
140
141
def test_ranking_evaluate_driver_matches_in_chunks (simple_chunk_rank_evaluate_driver ,
141
- eval_request ):
142
+ eval_request ,
143
+ eval_at ):
142
144
# this test proves that we can evaluate matches at chunk level,
143
145
# proving that the driver can traverse in a parallel way docs and groundtruth
144
- simple_chunk_rank_evaluate_driver .attach (executor = PrecisionEvaluator (eval_at = 2 ), runtime = None )
146
+ simple_chunk_rank_evaluate_driver .attach (executor = PrecisionEvaluator (eval_at = eval_at ), runtime = None )
145
147
simple_chunk_rank_evaluate_driver .eval_request = eval_request
146
148
simple_chunk_rank_evaluate_driver ()
147
149
@@ -152,7 +154,10 @@ def test_ranking_evaluate_driver_matches_in_chunks(simple_chunk_rank_evaluate_dr
152
154
assert len (doc .chunks ) == 1
153
155
chunk = doc .chunks [0 ]
154
156
assert len (chunk .evaluations ) == 1 # evaluation done at chunk level
155
- assert chunk .evaluations [0 ].op_name == 'PrecisionEvaluator@2'
157
+ if eval_at :
158
+ assert chunk .evaluations [0 ].op_name == 'PrecisionEvaluator@2'
159
+ else :
160
+ assert chunk .evaluations [0 ].op_name == 'PrecisionEvaluator'
156
161
assert chunk .evaluations [0 ].value == 1.0
157
162
158
163
You can’t perform that action at this time.
0 commit comments