Skip to content

Commit eb0182d

Browse files
committed
Add coredump with more complicated class data
1 parent 44dd6d6 commit eb0182d

2 files changed

Lines changed: 10 additions & 0 deletions

File tree

1.95 MB
Binary file not shown.

src/lib.rs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,10 @@ pub fn coredump_3_3_0() -> CoreDump {
7070
load_coredump("ruby-coredump-3.3.0.gz").unwrap()
7171
}
7272

73+
pub fn coredump_3_3_0_with_classes() -> CoreDump {
74+
load_coredump("ruby-coredump-with-classes-3.3.0.gz").unwrap()
75+
}
76+
7377
/// Allows testing offline with a core dump of a Ruby process.
7478
pub struct CoreDump {
7579
raw_memory: Vec<u8>,
@@ -199,5 +203,11 @@ mod tests {
199203
let buf = &mut [0u8; 16];
200204
coredump.read(0x7f7ff21f1868, buf).expect("read failed");
201205
assert_eq!(buf, &[16, 3, 62, 88, 13, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);
206+
207+
let coredump = load_coredump("ruby-coredump-with-classes-3.3.0.gz").unwrap();
208+
assert_eq!(coredump.elf_section_headers.len(), 125);
209+
let buf = &mut [0u8; 16];
210+
coredump.read(0x7f327f1e3c60, buf).expect("read failed");
211+
assert_eq!(buf, &[220, 16, 0, 0, 0, 0, 0, 0, 144, 193, 35, 128, 108, 85, 0, 0]);
202212
}
203213
}

0 commit comments

Comments
 (0)