@@ -301,4 +301,24 @@ def test_info_modules(env):
301301 env .assertEqual ( 'ai_self_used_cpu_user' in ret , True )
302302 env .assertEqual ( 'ai_children_used_cpu_sys' in ret , True )
303303 env .assertEqual ( 'ai_children_used_cpu_user' in ret , True )
304- env .assertEqual ( 'ai_queue_CPU_bthread_#1_used_cpu_total' in ret , True )
304+ env .assertEqual ( 'ai_queue_CPU_bthread_#1_used_cpu_total' in ret , True )
305+
306+ def test_lua_multi (env ):
307+ con = env .getConnection ()
308+ ret = con .execute_command ('MULTI' )
309+ env .assertEqual (ret , b'OK' )
310+ ret = con .execute_command ('AI.MODELRUN' , "no_model{1}" , "INPUTS" , "no_input{1}" , "OUTPUTS" , "no_output{1}" )
311+ env .assertEqual (ret , b'QUEUED' )
312+ try :
313+ ret = con .execute_command ('EXEC' )
314+ except Exception as e :
315+ exception = e
316+ env .assertEqual (type (exception ), redis .exceptions .ResponseError )
317+ env .assertEqual ("ERR Cannot run RedisAI command within a transaction or a LUA script" , exception .__str__ ())
318+ try :
319+ ret = con .execute_command ('EVAL' , "return redis.pcall('AI.MODELRUN', 'no_model{1}', 'INPUTS', 'NO_INPUT{1}',"
320+ " 'OUTPUTS', 'NO_OUTPUT{1}')" , 0 )
321+ except Exception as e :
322+ exception = e
323+ env .assertEqual (type (exception ), redis .exceptions .ResponseError )
324+ env .assertEqual ("Cannot run RedisAI command within a transaction or a LUA script" , exception .__str__ ())
0 commit comments