class script_data(object): enabled = True test_extra = ''' #include "../strings/literal.hpp" #include using tmwa::operator "" _s; #include "../map/script-parse-internal.hpp" static tmwa::Borrowed fake_script() { static const std::vector buffer; return tmwa::borrow(reinterpret_cast(buffer)); } ''' tests = [ ('tmwa::map::script_data(tmwa::map::ScriptDataPos{42})', '{> = {(tmwa::map::ScriptDataPos) = {numi = 42}}, }'), ('tmwa::map::script_data(tmwa::map::ScriptDataInt{123})', '{> = {(tmwa::map::ScriptDataInt) = {numi = 123}}, }'), ('tmwa::map::script_data(tmwa::map::ScriptDataParam{tmwa::map::SIR()})', '{> = {(tmwa::map::ScriptDataParam) = {reg = {impl = 0}}}, }'), ('tmwa::map::script_data(tmwa::map::ScriptDataStr{"Hello"_s})', '{> = {(tmwa::map::ScriptDataStr) = {str = "Hello"}}, }'), ('tmwa::map::script_data(tmwa::map::ScriptDataArg{0})', '{> = {(tmwa::map::ScriptDataArg) = {numi = 0}}, }'), ('tmwa::map::script_data(tmwa::map::ScriptDataVariable{tmwa::map::SIR()})', '{> = {(tmwa::map::ScriptDataVariable) = {reg = {impl = 0}}}, }'), ('tmwa::map::script_data(tmwa::map::ScriptDataRetInfo{fake_script()})', '{> = {(tmwa::map::ScriptDataRetInfo) = {script = }}, }'), ('tmwa::map::script_data(tmwa::map::ScriptDataFuncRef{404})', '{> = {(tmwa::map::ScriptDataFuncRef) = {numi = 404}}, }'), ]