lua测试

This commit is contained in:
ranchuan
2023-06-29 18:12:56 +08:00
parent 28889fa479
commit 156d1ceeb4
5 changed files with 84 additions and 19 deletions

View File

@@ -1,6 +1,7 @@
import lupa
from lupa import LuaRuntime
import execjs
class save:
@@ -38,20 +39,39 @@ class save:
if __name__ == "__main__":
sa=save()
print(sa.hex2bit(bytes([0xab,0xcd])))
def lua_test():
# 初始化lua运行环境
lua = LuaRuntime(unpack_returned_tuples=True)
# 初始化全局变量 json
save_json=lua.eval("function(a) json=a end")
with open("file/json.lua",encoding="utf-8") as f:
save_json(lua.execute(f.read()))
# 初始化全局变量 prints
save_prints=lua.eval("function(a) prints=a end")
with open("file/prints.lua",encoding="utf-8") as f:
save_prints(lua.execute(f.read()))
# 初始化全局变量 cfg_name
lua.execute("cfg_name=\"file/checker_ye_cfg.json\"\n")
lua.execute("check_data={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}\n")
# 初始化全局变量 check_data
lua.execute("check_data={0xB5,0x96,0xEC,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0x01,0x00,0x00,0x00,0x00,0x21,0x00,0x12,0x01,0x00,0x00,0x00,0x00,0xB5,0x00,0xB1,0x00,0x6B,0x00,0x00,0x00,0xA5,0x02,0xA4,0x02,0x00,0x00,0xA4,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}\n")
# 执行判定脚本
with open("file/judge.lua",encoding="utf-8") as f:
lua.execute(f.read())
# lua_func = lua.eval('function(a, b) return a+b end')
# print(lua_func(1,2))
a,b=lua.execute(f.read())
print(a,b)
def js_test():
with open("file/judge.js",encoding="utf-8") as f:
context1 = execjs.compile(f.read())
json=open("file/checker_ye_cfg.json",encoding="utf-8").read()
check_data=bytearray([0xB5,0x96,0xEC,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0x01,0x00,0x00,0x00,0x00,0x21,0x00,0x12,0x01,0x00,0x00,0x00,0x00,0xB5,0x00,0xB1,0x00,0x6B,0x00,0x00,0x00,0xA5,0x02,0xA4,0x02,0x00,0x00,0xA4,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00])
a=context1.call("main",1,check_data)
print(a)
if __name__ == "__main__":
sa=save()
print(sa.hex2bit(bytes([0xab,0xcd])))
# lua_test()
js_test()