Update tests

This commit is contained in:
2025-02-14 20:07:31 +00:00
parent 518ada8f3e
commit eaa86e14ba
5 changed files with 22 additions and 4 deletions

3
.gitignore vendored
View File

@@ -1,3 +1,4 @@
/target
.idea
/roms
/roms
.DS_Store

View File

@@ -170,7 +170,6 @@ impl Instruction {
let x = (instruction & 0xf00) >> 8;
Instruction::GetKey(x as usize)
}
//TODO add tests from here
0xF if (instruction & 0xff) == 0x29 => {
let x = (instruction & 0xf00) >> 8;
Instruction::SetIndexToFontCharacter(x as usize)

View File

@@ -29,6 +29,8 @@ mod util;
mod sdl_adapters;
mod rom;
const WINDOW_TITLE: &str = "porcel8";
fn main() -> EmulatorResult<()> {
SimpleLogger::new().with_level(LevelFilter::Info).env().init().unwrap();
let Porcel8ProgramArgs { filename, new_chip8_behaviour, draw_scale, halt_on_invalid } = Porcel8ProgramArgs::parse();
@@ -144,7 +146,7 @@ fn try_initiate_sdl(draw_scale: f32) -> EmulatorResult<(WindowCanvas, EventPump,
let window_width = (Device::FRAME_BUFFER_WIDTH as f32 * draw_scale) as u32;
let window_height = (Device::FRAME_BUFFER_HEIGHT as f32 * draw_scale) as u32;
let window = video_subsystem.window("porcel8", window_width, window_height)
let window = video_subsystem.window(WINDOW_TITLE, window_width, window_height)
.position_centered()
.build()?;
let mut canvas = window.into_canvas().build()?;

View File

@@ -37,4 +37,4 @@ impl SdlGraphicsAdapter {
window_canvas.copy(&tex, None, None)?;
Ok(())
}
}
}

View File

@@ -60,3 +60,19 @@ impl SdlKeyboardAdapter {
}
}
#[cfg(test)]
mod tests{
use crate::device::keyboard::Key;
use super::SdlKeyboardAdapter;
#[test]
fn test_keycode_to_key(){
assert_eq!(Some(Key::K7), SdlKeyboardAdapter::keycode_to_key(sdl2::keyboard::Keycode::A));
}
#[test]
fn test_keycode_to_key_no_key(){
assert_eq!(None, SdlKeyboardAdapter::keycode_to_key(sdl2::keyboard::Keycode::L));
}
}