MCPcopy Create free account
hub / github.com/bytecodealliance/wasmtime / coredump_has_defined_globals_and_memory

Function coredump_has_defined_globals_and_memory

tests/all/coredump.rs:171–201  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

169#[test]
170#[cfg_attr(miri, ignore)]
171fn coredump_has_defined_globals_and_memory() -> Result<()> {
172 let mut config = Config::default();
173 config.coredump_on_trap(true);
174 let engine = Engine::new(&config).unwrap();
175
176 let module = Module::new(
177 &engine,
178 r#"
179 (module
180 (global (mut i32) (i32.const 42))
181 (memory 1)
182 (func (export "a")
183 unreachable
184 )
185 )
186 "#,
187 )?;
188
189 let mut store = Store::<()>::new(&engine, ());
190 let instance = Instance::new(&mut store, &module, &[])?;
191
192 let a_func = instance.get_typed_func::<(), ()>(&mut store, "a")?;
193 let err = a_func.call(&mut store, ()).unwrap_err();
194 let core_dump = err.downcast_ref::<WasmCoreDump>().unwrap();
195 assert_eq!(core_dump.globals().len(), 1);
196 assert_eq!(core_dump.memories().len(), 1);
197 assert_eq!(core_dump.instances().len(), 1);
198 let _ = core_dump.serialize(&mut store, "defined-globals-and-memory");
199
200 Ok(())
201}
202
203#[test]
204#[cfg_attr(miri, ignore)]

Callers

nothing calls this directly

Calls 6

OkFunction · 0.85
coredump_on_trapMethod · 0.80
newFunction · 0.50
unwrapMethod · 0.45
callMethod · 0.45
serializeMethod · 0.45

Tested by

no test coverage detected