Simplified struct code generation for WASM bindings

PiperOrigin-RevId: 827878780
Change-Id: I97ab732eb11c63a6aaf7fa95add0b51bc0a56525
This commit is contained in:
Matija Kecman
2025-11-04 02:50:09 -08:00
committed by Copybara-Service
parent c22d94e470
commit 3d59b20b65
6 changed files with 122 additions and 137 deletions
+9 -29
View File
@@ -25,15 +25,13 @@ class StructsParserTest(absltest.TestCase):
def setUp(self):
super().setUp()
self.wrapped_structs = structs_parser.generate_wasm_bindings(
structs_wrappers_data.create_wrapped_structs_set_up_data([
"mjModel",
"mjData",
"mjVisualGlobal",
"mjVisualQuality",
"mjVisual",
])
)
self.wrapped_structs = structs_parser.generate_wasm_bindings([
"mjModel",
"mjData",
"mjVisualGlobal",
"mjVisualQuality",
"mjVisual",
])
def test_sort_structs_by_dependency(self):
mock_introspect_structs = {
@@ -83,27 +81,9 @@ class StructsParserTest(absltest.TestCase):
def test_generate_wasm_bindings_with_error(self):
with self.assertRaises(RuntimeError):
structs_parser.generate_wasm_bindings(
structs_wrappers_data.create_wrapped_structs_set_up_data(
["mjFakeStruct"]
)
)
structs_parser.generate_wasm_bindings(["mjFakeStruct"])
with self.assertRaises(RuntimeError):
structs_parser.generate_wasm_bindings(
structs_wrappers_data.create_wrapped_structs_set_up_data(
["mjFakeAnonymousStruct"]
)
)
def test_get_default_func_name_mjv(self):
self.assertEqual(
structs_parser.get_default_func_name("mjvPerturb"), "mjv_defaultPerturb"
)
def test_get_default_func_name(self):
self.assertEqual(
structs_parser.get_default_func_name("mjOption"), "mj_defaultOption"
)
structs_parser.generate_wasm_bindings(["mjFakeAnonymousStruct"])
if __name__ == "__main__":