@@ -257,77 +257,32 @@ def test_MECH60001_dynamic_signals_error_with_dB(self):
257257 result = evaluation_function (res , ans , params , include_test_data = True )
258258 assert result ["is_correct" ] is True
259259
260- def test_quantity_with_multiple_of_positive_value (self ):
261- ans = "5 Hz"
262- res = "10 Hz"
263- params = {
264- "strict_syntax" : False ,
265- "physical_quantity" : True ,
266- "elementary functions" : True ,
267- "criteria" : "response > answer"
268- }
269- result = evaluation_function (res , ans , params , include_test_data = True )
270- assert result ["is_correct" ] is True
271-
272- def test_quantity_response_less_than_answer (self ):
273- ans = "15 Hz"
274- res = "10 Hz"
275- params = {
276- "strict_syntax" : False ,
277- "physical_quantity" : True ,
278- "elementary functions" : True ,
279- "criteria" : "response < answer"
280- }
281- result = evaluation_function (res , ans , params , include_test_data = True )
282- assert result ["is_correct" ] is True
283-
284- def test_quantity_response_greater_than_equal_answer (self ):
285- ans = "5 Hz"
286- res = "10 Hz"
287- params = {
288- "strict_syntax" : False ,
289- "physical_quantity" : True ,
290- "elementary functions" : True ,
291- "criteria" : "response >= answer"
292- }
293- result = evaluation_function (res , ans , params , include_test_data = True )
294- assert result ["is_correct" ] is True
295-
296- def test_quantity_response_greater_than_equal_answer_equal (self ):
297- ans = "10 Hz"
298- res = "10 Hz"
299- params = {
300- "strict_syntax" : False ,
301- "physical_quantity" : True ,
302- "elementary functions" : True ,
303- "criteria" : "response >= answer"
304- }
305- result = evaluation_function (res , ans , params , include_test_data = True )
306- assert result ["is_correct" ] is True
307-
308- def test_quantity_response_less_than_equal_answer (self ):
309- ans = "15 Hz"
310- res = "10 Hz"
311- params = {
312- "strict_syntax" : False ,
313- "physical_quantity" : True ,
314- "elementary functions" : True ,
315- "criteria" : "response <= answer"
316- }
317- result = evaluation_function (res , ans , params , include_test_data = True )
318- assert result ["is_correct" ] is True
319-
320- def test_quantity_response_less_than_equal_answer_equal (self ):
321- ans = "10 Hz"
322- res = "10 Hz"
260+ @pytest .mark .parametrize (
261+ "response, answer, order_operator, value" ,
262+ [
263+ ("10 Hz" , "5 Hz" , ">" , True ),
264+ ("5 Hz" , "10 Hz" , ">" , False ),
265+ ("10 Hz" , "10 Hz" , ">" , False ),
266+ ("10 Hz" , "5 Hz" , "<" , False ),
267+ ("5 Hz" , "10 Hz" , "<" , True ),
268+ ("10 Hz" , "10 Hz" , "<" , False ),
269+ ("10 Hz" , "5 Hz" , ">=" , True ),
270+ ("5 Hz" , "10 Hz" , ">=" , False ),
271+ ("10 Hz" , "10 Hz" , ">=" , True ),
272+ ("10 Hz" , "5 Hz" , "<=" , False ),
273+ ("5 Hz" , "10 Hz" , "<=" , True ),
274+ ("10 Hz" , "10 Hz" , "<=" , True ),
275+ ]
276+ )
277+ def test_order_operators (self , response , answer , order_operator , value ):
323278 params = {
324279 "strict_syntax" : False ,
325280 "physical_quantity" : True ,
326281 "elementary functions" : True ,
327- "criteria" : "response <= answer"
282+ "criteria" : "response " + order_operator + " answer"
328283 }
329- result = evaluation_function (res , ans , params , include_test_data = True )
330- assert result ["is_correct" ] is True
284+ result = evaluation_function (response , answer , params , include_test_data = True )
285+ assert result ["is_correct" ] is value
331286
332287 def test_radians_to_frequency (self ):
333288 ans = "2*pi*f radian/second"
0 commit comments