use std::fs::File; use std::io::Read; use gemma::chip8::system_memory::Chip8SystemMemory; use gemma::constants::TEST_ROM_ROOT; #[test] fn system_memory_load_program() { let mut m = Chip8SystemMemory::new(); let mut program_to_load = vec![]; let file_to_load = format!("{}/2-ibm-logo.ch8", TEST_ROM_ROOT); println!( "Attempt to load {} from {}", file_to_load, std::env::current_dir().unwrap().display() ); let mut file_to_load_from = File::open(file_to_load).expect("Unable to load sample rom"); file_to_load_from .read_to_end(&mut program_to_load) .expect("Unable to read sample rom"); m.load_program(program_to_load.clone().into()); let expected_at_200 = program_to_load[0]; assert_eq!(m.peek(0x200), expected_at_200); }