Here the idea is to create a new VM, which is similar to the benchmark vm, where the script code is read (the script code is a single string). Later use this string in the VM to select a test strategy. The test strategies are all implemented in c++.
if script_code = "emit_metadata":
result_handler.emit(metadata.script_user)
...
if script_code = "forward_input":
...
Then define tests in python that call these strategies and compare the results, as we have it for python and so on.
Here the idea is to create a new VM, which is similar to the benchmark vm, where the script code is read (the script code is a single string). Later use this string in the VM to select a test strategy. The test strategies are all implemented in c++.
if script_code = "emit_metadata":
result_handler.emit(metadata.script_user)
...
if script_code = "forward_input":
...
Then define tests in python that call these strategies and compare the results, as we have it for python and so on.